For those interested in some sweet PWM sounds: https://youtu.be/L4EiY6hNRdQ
I want to learn about Site Reliability Engineering and System Programming next year. I recently moved to an infrastructure team so I’m excited about expanding my knowledge into that area. I also want to improve my triaging/ debugging skills, get back into public speaking and do some mentoring.
Mostly going to focus on learning guitar. After owning a guitar for 25 years, knowing a few chords and able to butcher a solo, about 18 months ago I started to actually practice; and the enjoyment I get now that I can play along to songs with the original recordings is an immense difference. I want to continue learning, and be able to make music. Maybe play with others in a band? Just for fun, that is: I’m 40 and have a family to support; I’m under no illusions of making it big, and I don’t plan on giving up the day job just yet :-)
If I find room for some tech learning I’d probably learn ClojureScript. I’ve done backend stuff all my life, and would love to be able to make simple frontends for the games backends I’m toying with.
Son is incredibly into Minecraft, and loves mods, so I’ve considered trying to learn more about mod creation etc. Might be a nice oppurtunity to learn to reverse engineer on the JVM.
Playing with other people is the best possible way to get better, at least along those axes you are interested in. I do some scales and exercises, but never have more fun than when Old Man Band manages to get together. In particular, having a drummer is key.
I’m 47, and have two kids under the age of four, so time is precious, but one night a week or so jamming out has made me a significantly better player.
In addition to jamming with other people, having a teacher for a while helps to avoid practicing your own mistakes.
When you don’t have enough time a daily practice plan is helpful, it’s better to practice a little every day than practicing a lot one day week and adding structure to your sessions will help you to improve faster. The tuner and the metronome are a new player’s best friends, always practice in tune and in time :D.
Are you planning on writing anything about any of the men involved in pioneering computing? Babbage? Zuse? Shannon?
While I can understand the reasons behind representing women in pioneering roles, the fact that not a single man is featured feels like it’s womanwashing history a little. But clearly it’s early days, and it’s not a bad thing if it focuses exclusively on women - I just think that if that’s the plan, it might be a good idea to be more up-front about it. To put it another way, it looks somewhat odd subtitling it “Pioneers of the Computing Age” without any men covered.
What he said. In vein of whitewashing, womenwashing would be making people think women were responsible for what men created. The article claims to show us the “Pioneers of Computing.” Most inventing or leading key aspects of computing weren’t women. So, it would mostly be men. People new to computer history reading this might think it was all women inventing stuff between the title and women-only list. So, it fits his phrase.
The goal of the article is clearly to highlight women in computing with their gender taking priority over any man with greater, technical achievements. That’s fine with me if it’s an activist work bringing attention to women to balancing things out a bit in field with lots of gender discrimination. However, an accurate title for that would be “Pioneering Women in Computing” to honestly convey the article’s goal. The current title gives impression the list will be merit-based or inclusive of all genders rather than just one gender with merit sacrificed.
And if someone did it other way around, you bet there would be howling about men taking credit for women’s achievements. Like when they rightly gripe that women don’t get credit for doing a lot of the programming back in the day when it was considered clerical work. Once men took over, they manwashed them out of many historical tributes.
Thanks for writing this, it’s pretty much exactly what I was thinking. I used the term somewhat tongue-in-cheek (and judging by threads below should’ve made it clear with a big sign somewhere in neon lights).
We get a lot of stuff on the Internet where pieces refer to people in a field, cover just men, and women who made a substantial and valuable contributable are excluded. Rightly, we call this sort of thing out. Because the post uses gender neutral terms, then does this effectively in reverse, it stands out. I’m just highlighting the standing out aspect.
As I said earlier, I’m happy with a “pioneering women of the computing age” piece. If the authors don’t want the odd standing out element, a change in title may be useful. If they don’t really care, then it isn’t.
I didn’t write it, it’s not my piece, it’s not up to me to police what other people write.
The title of the collection is a play on A Room of One’s Own. Maybe the subtitle could be tweaked, but I think they’re being up-front with the intent.
I’m not sure how tongue-in-cheek you meant “womanwashing history” to be, but I think we shouldn’t compare promoting minority groups in tech to erasing minority groups in film.
Having not read Woolf, I didn’t make the link with the title. I was however, being pretty tongue in cheek, using it as a reference to the zillions of pieces on “pioneers of computing” out there that only talk about men.
I suspect we’re on the same page, maybe the same paragraph but possibly different sentences.
What would be the problem if they don’t cover men in the advent calendar? There’s plenty of content about men in computing out there.
There’s no problem. I didn’t take the time to write it. I certainly haven’t had the time to read all of it.
It’s immediately clear from the link that 1 - there’s an advent calendar, 2 - it’s solely about women. As such, the combination of gender neutral language in the subtitle with gender exclusion makes for a strange juxtaposition. I don’t mind it, but it wasn’t clear to me whether or not they were aiming for it. If they are, cool. If they’re not, maybe it’s worth reviewing to include women in the subtitle. Either way, it doesn’t bother me, I just thought I’d point it out.
Let’s say the supermarket always sells milk to you .25 more expensive, the day you realise do you settle down for being charged the same as the rest of people from that moment on or would you at least want your money back? I haven’t suffered any problems for being a man in tech as some of my friends have suffered just for being women, so I welcome this kind of initiatives where they highlight the work we sometimes invisiblize. I don’t see anything negative with this, maybe programmers get offended too easily with progressive views?
Let’s say the supermarket always sells milk to you .25 more expensive, the day you realise do you settle down for being charged the same as the rest of people from that moment on or would you at least want your money back?
I do not follow this analogy.
I don’t see anything negative with this, maybe programmers get offended too easily with progressive views?
I would consider myself politically left-leaning and liberal. However — as do many other left-leaning liberal people — I view Affirmative Action as immoral, illiberal, and regressive, regardless of how much the Western world today insists this is “progressive”.
I do not believe my occupation is at all relevant.
If this perspective is controversial to you, I can only point you towards the wise words of this guy — who even happens to not be a cisgender heterosexual white male!
I think compensating for past discrimination is fine instead of starting with a blank slate, we disagree on our views on affirmative action then :).
(at @jgt too)
I was trying to find examples to understand the problem that could bring it to a wider audience. Here’s one I came up with on a Thanksgiving with the family: the game of Monopoly. In it, people start out equal in terms of money and turns available. Each turn, a combination of their strategy and luck lets them own property. The more property they have, the more advantage they get over other players in terms of taking their money and forcing them into lesser properties. This cycle keeps getting stronger where those with existing properties with high rent and/or people hit a lot just let them buy even more properties.
Applying this to reality, whites had advantages getting them more physical property, better properties, money (esp for investments), positions in companies, positions in government and so on. They’re like someone in monopoly that had most of the property. Further, they got those properties by cheating: the other players weren’t allowed to buy specific properties with high value, some couldn’t buy at all, and some had no turns to play while white player did. After so many turns and whites have most property/money, they announce they’re going to fix the situation by forcing everyone to finally play fair. Each person will get a turn and the paltry starting money with everyone following the rules from that moment on, keeping whatever they got up to that point. The white player keeps their property, money, power over other players, ability to take most of their money no matter what decision they make, and get out of jail more often.
Is this actually fair and equal? Would anyone continue to play a game of Monopoly with a player who is allowed to keep the proceeds of non-stop cheating? And paying them rent for rest of game on good properties while “fairly” competing over low-value properties? Or would they remedy the cheating by reseting the game or seizing control of some of their properties with fines on their earnings? In other words, wouldn’t we fix the situation the cheating caused if not otherwise punishing the player?
We would. That’s a table top game with low stakes. This is real life with high stakes. The basic principles apply. Even on physical property people pay rent for given the effects of redlining’s effects are still with us. Clearly, any real remedy would roll back the problems caused by the systematic discrimination. It should be done in minimally-disruptive, maximally-fair way wherever possible. That’s why I push for shifting more investments into minority talent plus blind evaluation and random promotion. Both focusing on actual, measured results of work so only those that earn it get in. If that’s not feasible, then we might do quotas bringing in otherwise good people followed by developing their talent further (aka fixing the discrepency).
The funny part, though, about white males saying they don’t want systematic discrimination based on politics instead of performance is that they do it all the time at the executive levels. Then they give each other piles of money they don’t earn just because they can. This is probably wasting way more money than whatever difference exists between a white or black coder doing .NET. Or doing some occasional bootcamps. Or just paying for in-person tests of folks who learned on their own time via Edx [1], Coursera, private practice, etc. Most of the resistance is to the lesser version of performance-second, politics-first philosophy. It should be going toward the racist, sexist, overpaid capitalists perpetuation most of our problems. Note I use those adjectives to differentiate them from capitalist executives and board members who are not behaving that way who are at worst overpaid.
[1] See what I did there applying my own recommended form of remedial discrimination? ;)
Alright. In that case, I believe there’s a family in Germany who owe me a house.
Can you guess my heritage?
n.b. I’m not that disillusioned that I’ll believe any proponent of Affirmative Action would ever say it also applies to me, given that I have white skin.
We usually only take things so far back under the theory that the effects of harm spread out or dilute so much that it’s hard to say a remedy really is a remedy. That was a counter to reparations solution of just giving folks in specific categories a pile of money for stuff going back to slavery days. The discrimination of the past my game was talking about is so nearby that there’s people currently alive that were either affected by it or were the people doing the discrimination. The practices also continue into the present rather than being an old thing to fix. That means we’re arguing about whether people being discriminated against today as a matter of official or unofficial policy should have another policy countering that discrimination.
I’ll happily take in whatever alternative ideas you have that counter discrimination in hiring and promotions with existing majorities with highly-biased reviews of such candidates. As in, they never were doing it only about fair, performance/character evaluation. They’re not today. They won’t in near future. Most people in middle to top positions got there via political maneuvering or being the in-crowd (see Silicon Valley esp). So, your method has to convince them to risk their own upward momentum and/or hire/promote people they don’t like to improve the status quo. I’ve actually tried suggesting better performance management to such people, esp like Topgrader (pdf) with blind reviews, with some support. None implemented any of them, though.
You indicate you’re against two strategies that worked so far: quotas on hiring and/or increased investment in minority education or career fairs. Since they’re getting results, we need an alternative that works on uncooperative, discriminating organizations at least as well as they did. What’s your solution? And we do need a solution given Civil Rights Movement was decades ago with similar problems happening today.
From my cursory Googling, slavery in America ended in 1865. My great-grandfather was a slave in a Nazi PoW camp. While I didn’t meet him, I do remember his wife — my great-grandmother — and I’m still a young guy (28). She died a nonagenarian just a few years ago. US slavery is still a hot social/political topic. Genocide in Poland — not so much, even though it’s far more recent. I think the lines drawn around who gets what reparations and for how long are totally arbitrary.
I’ll happily take in whatever alternative ideas you have that counter discrimination in hiring and promotions with existing majorities with highly-biased reviews of such candidates.
I won’t pretend to have a simple solution; it’s a complex topic, and I believe the hiring biases are a symptom of a wider societal issue. This is more prevalent in certain societies than others — Americans in particular appear to be hyper-focused on categorising people. When you ask your average Joe American where he’s from, he’ll typically say something like “I’m Irish”, or “I’m Italian”, regardless of whether he has ever been there, knows the culture/language/idioms/etc.
I agree with your approach of blind evaluation where feasible. Beyond that, as I’ve already hinted, it’s a more general issue which warrants a more general approach.
You indicate you’re against two strategies that worked so far: quotas on hiring and/or increased investment in minority education or career fairs.
To be clear, I’m only against one of those things. I am totally in support of career fairs or similar in less prosperous communities. But then I’m discriminating against financial status, which I think is reasonable given we’re talking about careers/money.
Within a generation of the Civil War, black men made up a significant portion of the government. Then Jim Crow was enacted, and we started the affirmative action brigade as soon as Jim Crow was ended. Now there are just two black Senators, one R one D, and black people have almost no representation in state governments. Things were more equal between the Civil War and Jim Crow, and that’s why I am against affirmative action.
It’s probably the analogy where others pay for their milk in part by working more overtime, getting more hazard pay and birthing fewer children.
That’s why your milk should have a compensated price instead of accepting and celebrating that people want different types of milk, or that milk has been traditionally enjoyed by family units more than individuals.
But I can’t be sure because all analogies lie.
Addendum: I think the list is a fine idea. Not everything has to be super political just because it reminds us women have been more than relevant throughout computing history and otherwise.
Addendum: I think the list is a fine idea. Not everything has to be super political just because it reminds us women have been more than relevant throughout computing history and otherwise.
If you see my original comment, I agreed that such a list is a fine idea. I looked at the list in good faith. It’s true, not everything has to be political, but this is political.
I’d like to read interesting stories about technical pioneers, but not with any kind of political agenda behind it.
However, I did take a look through other things by one of the contributors (blog, Twitter feed), and I don’t see any of the usual flags of SJW craziness.
I also don’t know what the gender split of technical pioneers of that era is. Maybe it was mostly women at the time? I don’t know.
So, maybe this collection is totally reasonable. Until I see something to suggest there’s some strong political agenda here [and I don’t care to put much effort into looking], I’m taking this at face value as just a nice collection of interesting profiles.
edit: Actually, I’ve just seen this:
Advent Calendar — Help us make it a book! From December 1st until December 24th we plan to release one article each day, highlighting the life of one of the many women that have made today’s computing industry as amazing as it is: From early compilers to computer games, from chip design to distributed systems, we will revisit the lives of these pioneers.
So, yeah. It’s a political thing.
I think focused collections like this are important because they help counteract negative stereotypes and biases against women in computing. The explicit goal is to raise awareness.
they help counteract negative stereotypes and biases against women in computing
Is there any evidence of this? As far as I can tell, diversity initiatives divide communities more than they unite them. This was covered rather well on Penn & Teller: Bullshit! S06E07 over a decade ago.
The explicit goal is to raise awareness.
As the GP comment already noted, it wasn’t immediately made explicit. I didn’t see an explicit mention of political agenda until I read to the bottom of one of the profiles.
I found their style somewhat uncomfortable so I only watched the opening part of the episode, let me know if you think I’m misrepresenting their view and if there are highlights I should watch. The gist of Penn and Teller’s argument seems to be that we should ignore someone’s physical characteristics and focus as much as possible on objective measures of skill when evaluating performance.
I think this is an idealistic mindset that can be dangerous. People aren’t easily able to flip off their biases, and finding clear objective metrics for evaluating performance in technology is difficult. There’s a constant risk that our decisions are being made from a biased perspective. To continue making progress, I think it’s important to second-guess ourselves frequently and consider that someone’s age, gender, race, lifestyle, everything could be influencing us, so that we can get as close to making an objective decision as possible.
Second-guessing myself forces me to confront a lot of uncomfortable truths. I tend to downplay the accomplishments of women on my team in my head. I tend to assume that older women on teams are in management positions or lack technical background. I tend to chat more casually with men on my team, which leads me to understand their work better and trust them more for code reviews. This feels really gross to think about and write, but I’ve seen this from myself and from other people all over the place in tech.
When I see collections of articles like OP’s, I realize “Oh, right, I tend to lean towards men in software when I think about computing history, but there’s a richer set of stories here”. It’s positive for people like me who struggle with bias. I guess instead of speaking in the abstract, I should have focused on myself when I said these things counteract negative stereotypes.
So unfortunately, I don’t have evidence to point you to (I’m not well-read and I’m unsure that the effects of raising awareness are well-researched at this point), but I have a bunch of sad anecdotal evidence from myself and others that I could spew out, sad stories of people I like getting hurt by impulses people like me struggle to control. I care a lot about this stuff as a result. I’m sad that I’m getting hung up on the discussion around the type of content instead of focusing on the actual content itself.
Sorry for the rant.
Is there any evidence of this?
A shit ton of it. I should get it together sometime trying to filter the stuff that might be BS or wasn’t replicated as much. Alternatively, identify the best-looking ones that need more review and replication. One of the best ones I’ve seen recently was this work that proved VC’s were systematically discriminating against women with hard data. Rather than just shaming, they saw it as an opportunity to improve the situation: literally just question the women the same way they do the men.
Just for extra emphasis, that shit has been going on a long time with people asking the question you asked every year with nobody noticing or admitting they were treating women totally different. More likely, it was internal with them told to stop whining or get lost as is more typically the case.
I’m sorry, I might not have been clear enough.
Discrimination is ubiquitous and basically self-evident. No argument there.
I was asking if there is any evidence that initiatives like this collection of CS pioneer profiles actually help counteract the discrimination. I’m not sure “raising awareness” that there are women who write software is an effective way of countering discrimination. Incidentally, I’m not suggesting I have an answer to what would counter discrimination either; it’s a complex topic.
Oh that’s a more reasonable position. Ive called folks out on same thing. I think one of easiest methods is simply linking to their work, inviting good ones to conferences, trying to boost them in companies, etc. I notice some submissions are already doing that to a degree.
Kudos, that helps people already in the pipeline. I’m assuming the target audience for the book will be schools and the relatives of young girls and women. You buy this book for your daughter/niece/student to show them that yes, there are women in computing who have done significant or interesting things, assuming you aren’t one already.
I suppose it’s too mildly political for me to really care ;P
But about the gender split, a lot of men were off fighting wars and quite messed up afterwards. I’ve heard this cited as a reason for why so many women, during and after WWII, got deeper into computing than just being operators.
I don’t know how true it is, never bothered to look into it, but it sounds reasonable.
Also:
In 1965, Sister Mary Kenneth Keller became the first American woman to earn a doctorate in computer science. Keller helped develop BASIC while working as a graduate student at Dartmouth, where the university “broke the ‘men only’ rule” so she could use its computer science center.
Granted, if they are going chronologically (I can’t really tell, they aren’t mentioning years), she would come later. But, I predict she wont even be mentioned.
My only plans are having fun with my family and work on the new single of my Synthwave project. I’m on-call this weekend, so I’ll just hangout at home and my neighborhood.
I decided to write a “component Pascal” compiler this week and will hopefully find some time to continue working on it.
That sounds interesting! Are you following some specification or making your own flavor? I wanted to learn Pascal when I was a teen after doing some Basic, but my cousin semi-forced me to learn C instead haha (BTW I wasn’t a genius coding child or anything, just made a couple lame programs)
so, basically Component Pascal != Turbo Pascal.
Basically N. Wirth, a professor from the ETH Zürich created the original Pascal language as a teaching language back in the days, it didn’t even include a module system, as a teaching language. Wirth has a habit of creating simple Languages, simple for the programmer, and simple for the person writing the compiler. So all around the globe people started to implement their own pascal compilers and write software for it. Usually adding features along the way. Fast forward, a fairly popular dialect was “Turbo Pascal” by Borland which ended up as “Delphi”.
Nikolaus Wirth, however, didn’t stop building compilers and languages and came up with his own descendants. First the MODULA series of programming languages. I guess he in the end felt that MODULA had accumulated a few too many features, and he slimmed it down into OBERON. For someone who did a fair amount of pascal programming, OBERON feels familiar in many ways, it definitely is different from Pascal though.
Why Component PascalIts one of the ideas that never really goes away. I want at least once in my life have implemented a compiler. I had one or two past attempts that I had abandoned and with those I did not reimplement an existing language, but kind of also tried to design my own programming language, and I guess that meant too many moving targets for me. So this time I want to implement a specified programming language, so I can focus on getting the implementation done instead of contemplating syntactic or semantic design choices.
I first thought I could implement Pascal and researched what specs or dialects are available. This is when I saw oberon which had a few properties I really liked about it. First of all the syntax of Pascal has deficits, especially since it retrospectively was extended by Borland and others. Oberon fixes a lot of these things. Oberon also has interesting low-level OOP features that I find interesting and I would love to explore. So I actually might use my compiler for some other pet project afterwards.
Now I plan to implement “Component Pascal”, which is roughly an Oberon dialect that was named “Component Pascal” for marketing reasons. The reason I picked component oberon is that it has a nice and concise specification http://www.oberon.ch/pdf/CP-Lang.pdf Cannot really tell whether the description of the semantics is complete, but I guess I will see if it is. In the best case, I can avoid ordering and reading all these published books on various revisions of the Oberon language by focussing on this single spec.
Turbo-Pascal-Style PascalIf you are interested in Pascal, your best bet at the moment probably is http://freepascal.org .
Would you consider making it target the Dalvik VM as the output/assembly format? I thought recently that Oberon could be an interesting alternative language for writing Android apps without having to download the whole Android Studio. On the other hand, I suppose for you personally a more future-proof target could be WebAsm. I believe it’s on its way to become the lingua franca of OSes, VMs, and maybe even processors? (Very curious if the latter is possible; can it displace even RISC-V?)
I haven’t thought much about code generation yet to be honest. I might just plug in llvm or target risc-V for a start. Let’s see. Dalvik might be interesting too.
Webasm probably does not strike my personal motivation.
If by off chance you’d fancy to choose Dalvik in the end, I’d be super grateful if you let me know. It’d be very interesting for me. Also I might or might not then get tempted into randomly throwing some contributions to your project whether you like it or not ;)
I googled about Dalvik a bit while I was on the train. You’ll be happy to hear I haven’t ruled it out yet. One question I have is, it seemed like people would generate JVM bytecode and then have Dalvik tooling compile it down to Dalvik. Is this how it’s typically done or is this just the workflow that people use who use compilers targetting the JVM?
Yes, people generate JVM bytecode and then have Android Studio compile it to Dalvik. That’s why I’m interested in compiling straight to Dalvik — to avoid having to install the hundreds of MBs (and growing) of Android Studio :)
Hmm; so, I know of Genymotion; other than that, not sure… some googling shows some others too, including reportedly some emulator in Android Studio. Don’t know of a FOSS one, or a more “barebones” one. I believe Genymotion is quite accurate w.r.t. emulating full Android environment; or at least was some years ago.
edit: hmmm; I believe this slideshow apparently has some info how to compile the Dalvik Virtual Machine from Android Studio, and use it from command line (see slide 42 and slides leading to it).
I’m not doing anything programming related, I’m producing a new Synthwave song for my project Velvet System 82, my first 2 singles had a good reception and when you are just starting you need to keep the momentum. I’m also learning more about how to promote my music.
I play guitar. It’s hard to keep getting better but I keep at it. I’m thinking about recording/YouTube, as a challenge. I’m also thinking about buying yet another guitar, so.. got to find balance.
I also watch a lot of StarCraft II, more than I play, anyway. I don’t feel it’s time wasted.
I like to read “pop math” books, you know not the serious little yellow books for grad students, but paperbacks. Gamma, E, stuff like that. Most of it goes over my head.
Edit: I also like to tie knots. Useful ones, pretty ones.
I also dabble in guitar. I’ve owned one for 25 years, but last year I decided to actually improve beyond the “can play a few riffs” stage and took some lessons. Through that I realised the truth of the difference between performance (which was what I’d been doing, badly) and practice (which I’d not really been doing, and accounted for my utter stagnation) and started looking into resources to help my practice. I went through the https://www.justinguitar.com beginner course and improved significantly! (Let’s say from incompetent beginner to somewhat competent beginner?) I have a lot more fun now, and am learning some songs before starting Justin’s (also free!) intermediate course.
I have about 20 guitars. I feel like I always need more. I use most of them pretty often, so .. you know..
I love watching StarCraft as well. I haven’t played it in years! But I always follow the big tournaments.
I like John Frusciante / Hendrix type stuff, but Nuno Bettencourt is my favorite. He’s got a very percussive style that’s kinda both rhythm & lead at the same time. I just recently started buying sheet music, turns out I was playing (& practicing!) a lot of stuff wrong. Got a long way to go
That’s cool and hard stuff. Sometimes a couple of lessons with a good teacher can help not to practice your mistakes. I have a lot of bad habits in keyboard and guitar because I’m self-taught, so when I picked up the bass I took some lessons to don’t fall in the same trap again.
I used to do a lot more stuff, but now my only hobby is making music. I play guitar, bass and synths and lately I’ve been focusing on electronic music.
My latest project is making Synthwave under the Velvet System 82 alias, all the sounds are ITB but I’m looking to also add my hardware synths to future tracks.
I have on hold my Surf Rock/Instrumental project where I play guitar and bass, plus sequenced drums or synths.
For those not into music production: ITB is “in the box”, which is when you use only the computer instead of physical instruments, effects, etc.
Glad you liked it! I’ve been a fan of Surf Rock and 60s instrumentals in general since many years ago, so I started making my own in some point :D
I’m kind of speechless. This looks truly genuine, and it makes me hopeful for the Linux kernel community (and all the other open-source communities it influences!) in a way I hadn’t predicted would ever happen.
I feel quite the opposite. I think it’s very sad that the reddit/twitter bandwagon of people that never actually contribute anything to open source but love to rip those that do to shreds have finally go to him.
This argument is a classic to be found in all of those discussions, but doesn’t hold any water.
The no-contribution Twitter crowd, right?
The list could go on and on. Find another angle, this one insults the intelligence of everyone at the discussion table. It only works if you don’t name names, if you do, you suddenly find that these people do contribute.
Finally, as someone managing a huge FOSS project with > 100 maintainers, I think this gatekeeping isn’t part of open standards. If your project is open and contribution is free to everyone, the barrier for criticising your projects methods and practices should be as low as the barrier for contributing anything else: as close to zero as possible. This is also important for practices to travel between projects.
And very recently, Alexander Popov, no lightweight by any measure. https://lwn.net/SubscriberLink/764325/09702eb949176f55/.
I’m sympathetic to Torvalds critique, if not his wording. It seems bizarre to just live with kernel code that uses uninitialized data structures and doesn’t cross check pointers and hope that some complex mechanism will ameliorate the problem.
Sure, his technical arguments were probably sound, as usual, but his abuse of Popov left the latter “emotionally dead for weeks”. Popov might’ve gotten the fixes made and thus the patch committed much sooner had Linus not abused him so the project also loses.
I am not convinced the patch ever became worthwhile - but I agree that Linus’s argument style was counterproductive and abusive.
I think you’ve got a selection bias in which criticism you’re seeing. From my perspective, the people who I hear take the most issue with Linus’s conduct are largely people who’ve quit kernel development as a result of it, or people with many years of OSS experience (such as myself).
I’m not an advocate of the absurdly excessive personal attacks for which Linus is known but at the same time I think quitting kernel development because of those personal attacks shows a lack of awareness of how OSS and specifically Linux operates. The reality is that Linux is Linus’s project and he’s incentivized to take your patches to make his project better, not to build a cooperative community. The community, if one could call it that, is incidental to Linus’s incentives.
If a person quits because of Linus’s behavior, it signals to me that their motivation had something to do with the approval of others and unfortunately those motivations are incompatible with Linux’s development process. Linus’s insults are just the tip of the iceberg when it comes to all the other problems that will arise due to the mismatched expectations. A famous example was when Ingo Molnar rewrote Con Konlivas’s CFS, or the multiple times grsecurity’s patches were rewritten by others.
Linus basically doesn’t owe anyone anything, and it’s not because he’s a jerk (though maybe he is), it’s because of the emergent social phenomena around OSS. Similarly, no one owes Linus anything. Many actors out there are using Linux to facilitate their billions of revenue and not paying Linus anything. If you write code and put it out there, there is no obligation that what you want to happen with it will happen, and it’s not unlikely that what happens with it will hurt your ego. If someone quits kernel development because of Linus’s behavior, they really should reexamine why they want to write OSS code in the first place and whether or not OSS development is the best way to reach their goals.
All that said I don’t necessarily disagree with Linus’s recent decision. It shows a conscious effort on his part to change the strategy used to sustain the project. I’m only criticizing those who may have mismatched expectations of the potential outcomes in OSS work.
The reality is that Linux is Linus’s project and he’s incentivized to take your patches to make his project better, not to build a cooperative community.
Linus is an employee of the Linux Foundations, a nonprofit corporation with stakeholders like Red Hat, Google, and Intel, and he owes his employers their money’s worth as much as anybody else who works for hire.
I would agree with you if this was still the Linux that wasn’t going to become a big thing like Hurd. But Linus chose to remain the project lead even as the job became less technical and more political, and when they decided to pay him to work on it full-time, he accepted. There’s money, there’s a trademark, and there’s inertia undermining any claim that the situation is totally voluntary and that nobody owes anybody anything.
And that’s before we even consider the fact that there is a huge and informal web of soft obligations because human beings don’t work the way you say they do.
Linus owns the trademark and even if he didn’t work for the Linux Foundation he would still be the maintainer of Linux. The entire development structure is centered on him. No company could successfully and sustainably fork Linux if Linus decided to operate against their goals.
I made no claim as to how human beings work. My claim is simply that OSS is essentially a free-for-all and those that aren’t acutely aware of that and incorrectly treat OSS like a traditional organization that has inbuilt obligations to their well-being will be inevitably burned. Linux is not a cathedral, it’s a bazaar. http://www.catb.org/~esr/writings/cathedral-bazaar/cathedral-bazaar/
No I’m talking about the much larger crowd of people applauding him for ‘moderating himself’ and other such nonsense. I’m talking about the huge crowd of people that act like every message he sends is a scathing personal attack on someone for indenting something incorrectly.
Well, perhaps it’s just that our perception of the (ultimately utterly pointless) social media reactions is colored by our preconceptions. I’ve mostly seen people praise and defend him.
I’m not sure what the resistance is about. It seems to me that all these CoCs are just a way of codifying “don’t be an asshole”, and it’s perplexing that people get so angry about it. But it cannot be that, right? Surely you and others are not against “don’t be an asshole” as a work ethic?
If not that, then what? I’ve listened to Sam Harris quite a lot recently, so I have some feeling about the problem of identity politics et al, especially in the US. I’m just still not exactly convinced, because I don’t see it happening. Perhaps it’s not that big a problem in Europe?
I’m not sure what the resistance is about. It seems to me that all these CoCs are just a way of codifying “don’t be an asshole”, and it’s perplexing that people get so angry about it. But it cannot be that, right? Surely you and others are not against “don’t be an asshole” as a work ethic?
I think a lot of this is related to the “hacker identity” which is strongly tied up with counterculture, stepping outside/dismissing/rebelling against social conventions. For example, in the genre of cyberpunk (which I’d consider a hacker’s dream world, even if it’s a dystopia) there is almost no law and order or even anarchy, everyone does their own thing and your skill is the only thing that counts.
So I think a lot of the reaction is “who are you to come in and police the way we’ve always been doing things?”. I suppose a lot of these people claiming are seen as outside intruders enforcing their “outside” morals on the hacker “community” at alrge (if there is even such a thing). For this reason I think it’s important that people like Linus, who are truly regarded as being “from” the community, are signaling that change needs to come. We’re all human, not machines.
I think there are two big issues. One is that “hacker culture” has historically attracted people with social issues. I know that it appealed to me as an unpopular, nerdy, shy kid: I didn’t have a lot of outlets, so computers and the Internet helped me form my personality. That’s great; I don’t know where I’d be without it. That leads into the second issue, though, which is that it’s utterly dismissive of all the traditions we call the “humanities.” I am lucky, I think, in that I’ve always been “into” literature, philosophy, theology, and so on, and could balance my computer-nerddom with those fields. (In fact, my only college degree is a BA in English.) Without that tempering influence, it’s very easy to get caught up in an aspiration-to-Spock sort of behavioral cycle.
Surely you and others are not against “don’t be an asshole” as a work ethic?
Who defines what an ‘asshole’ is?
My problem is that Codes of Conduct explicitly and implicitly privelege some groups but not others for protection, and that even when de jure they protect some groups, de facto they do not.
Moreover, I find the idea that we should generally value social etiquette more than technical excellence to be troublesome. Are there people who are so socially rude that they should be shunned? Sure. But should shunning be our go-to? I don’t think so.
I find the idea that we should generally value social etiquette more than technical excellence to be troublesome.
Is that what’s actually happening? I thought this was about valuing both.
It seems to me that all these CoCs are just a way of codifying “don’t be an asshole”, and it’s perplexing that people get so angry about it.
I can’t speak for all opponents, but for me at least I disagree with it being “codified”, or rather formalized what essentially isn’t formal. People contributing to software won’t just suddenly become good people because there is a CoC. It’s like wanting to prevent a husband from abusing his wife by requiring him to hold up his hands whenever they are in the same room.
What I usually fear from these kinds of things is that they one the one hand subvert genuine communities, customs and practices, while possibly encouraging the harmful parts of these communities to discreetly and dishonestly live on, much harder to fight or criticize. Essentially it’s taking a passive stance towards real issues people should actively and collectively oppose – say harassment or insulting people.
Turning issues of civility and decency into rules, especially if these are too vague, always bears the danger of being on the one hand abused by those trying to evade then (“oh, that’s not what I meant”) and on the other hand by those enforcing them (“rules are rules”)…
But then again, I’m not a Linux contributer (although I would be honored to managed to get there one day), and I can just hope it turns out well for them, and the issue doesn’t get instrumentalised.
People contributing to software won’t just suddenly become good people because there is a CoC. It’s like wanting to prevent a husband from abusing his wife by requiring him to hold up his hands whenever they are in the same room.
I find that analogy deeply flawed (and somewhat bizarre). The CoC doesn’t require anyone to do anything as ridiculous as hold their hands in the air while in the same room as their wife.
Essentially it’s taking a passive stance towards real issues people should actively and collectively oppose – say harassment or insulting people.
So you’re saying that rather than having a CoC it would be better if, every time Linus or some other kernel developer was offensive, other developers stepped in and told them off? How do you make that happen? Do you not think the CoC is a step towards making that happen?
The CoC doesn’t require anyone to do anything as ridiculous as hold their hands in the air while in the same room as their wife
Of course not literally, but for many people they have to adjust their own behavior in unusual (and often enough unknown) ways. I’ve experienced communities on the Internet which banned their users for using any phrase that has to do with eyesight disabilities (e.g “I can’t see what’s wrong”), and most people simply just didn’t know about this.
And the point of my analogy still remains, the issue with the husband beating his wife isn’t that he can but that he wants to, consciously or unconsciously. Just saying “Don’t” won’t help solve the problems in the long term, just suppresses them.
So you’re saying that rather than having a CoC it would be better if, every time Linus or some other kernel developer was offensive, other developers stepped in and told them off?
The way I see it, this would obviously be better. This means that the community has a strong sense of internal solidarity and openness that they manage to enforce by their own means. Essentially this means that the goals of the CoC come naturally and authentically to the members.
How do you make that happen? Do you not think the CoC is a step towards making that happen?
I really can’t say, nor do I know. Nothing I’m saying is authoritative or really substantial, I’m just trying to give a more reasonable criticism of codes of conducts than certain other people in this thread.
Just saying “Don’t” won’t help solve the problems in the long term, just suppresses them.
Suppressing the problem does help, though. I don’t want to continue the husband/wife analogy as I find it distasteful, but once you establish norms of good (or at least better) behaviour, people do adjust. And by having the CoC, even though it doesn’t cover every case, it sets up some basic guidelines about what will and won’t be accepted - so you remove the excuse of “no this is fine, everyone talks this way, deal with it” from the outset. This alone can make people who otherwise feel vulnerable, and/or belong to marginalised groups etc, to feel more comfortable.
I’d prefer we didn’t need CoCs, but clearly we need something to make development groups less unpleasant to participate in. And even if you don’t think they’re effective, I can’t see how they hurt.
I guess we just have different views on the question if issues are to be addressed or suppressed (in my eyes willfully ignored). But that’s fine. There’s more I could say, but I won’t for the sake of brevity, except that a CoC should (imo) be always the last resort when everything else has failed. A kind of martial law. Since they aren’t just guidelines or tips, but can justify very drastic behavior.
I guess we just have different views on the question if issues are to be addressed or suppressed
I think that’s a mis-characterization. We both seem to think that offensive behaviour should be addressed by other people stepping in as appropriate, but I see the CoC as prompting this to happen, whereas you are saying that you don’t know how to make it happen and that the existence of a CoC will make people suppress their bad behaviour and that this is bad (for some reason which I’m not clear on).
I would say that the existence of a CoC may make people suppress an urge to spout off an offensive rant against another developer, and that’s a good thing. I also think that it lends a stronger position to anyone who does step in when offensive behaviour does occur (despite the existence of the CoC). I think it’s more likely that, rather than completely suppressing offensive behaviour, the CoC causes more people to respond and challenge such behaviour, which is the outcome that we both seem to think is ideal (and which leads to less of the behaviour occurring in future). Now if you disagree that the CoC will lead to that happening, that’s fine, but:
A kind of martial law. Since they aren’t just guidelines or tips, but can justify very drastic behavior.
That’s just ridiculous. A CoC is nothing like martial law. The only behaviour it justifies is that of stepping in to control other, offensive, behaviour:
… to ban temporarily or permanently any contributor for other behaviors that they deem inappropriate, threatening, offensive, or harmful.
Maintainers who do not follow or enforce the Code of Conduct in good faith may face temporary or permanent repercussions as determined by other members of the project’s leadership.
These are the only behaviours that are actually “justified”, to use your word, rather than expressly prohibited, by the CoC. I think saying these are “drastic” and comparing to martial law is clearly an immense level of exaggeration.
but I see the CoC as prompting this to happen, whereas you are saying that you don’t know how to make it happen and that the existence of a CoC will make people suppress their bad behaviour and that this is bad (for some reason which I’m not clear on).
I don’t want this to go on for too long, so I’ll just quickly clarify my two main points:
So it’s not that it’s irrelevant, but that it may go wrong, specifically when applied to quickly or without introduction. But again, maybe not.
A CoC is nothing like martial law.
You’re right, I should have put “martial law” in quotes. My point is that it shouldn’t be a permanent solution, but as you said try to push a community in a better direction, “stabilize” a situation so to speak. Even here between us we see how different background, invoke different images and connotations with examples as simple as metaphors.
You’re right, I should have put “martial law” in quotes. My point is that it shouldn’t be a permanent solution
Ok, I understand now what you meant.
banning obvious misbehavior won’t change people
I am not sure that I agree with this. For one thing, “obvious misbehaviour” may be generally understood but is not obvious to everyone. You will see many people arguing that Linus’ rants are perfectly acceptable, for various reasons. By making a clear statement that “behaviour X is wrong” you are removing the doubt.
at worst invite them to a passive aggressive game of trying to evade the rules while still trying to be mean or hurtful
I believe that the Contributors’ Covenant deliberately avoids trying to produce an exhaustive list of disallowed behaviour, precisely so that the rules can’t be avoided in this way. Yes, there will always be some problematic individuals who push the limits regardless. But is it better that they are at least constrained in this way, rather than being able to be openly offensive? I think so. And I think this anyway is somewhat irrelevant to the issue of a CoC; even if you generally enforce good behaviour without a CoC, there can always be trouble-makers who test the limits.
a CoC is a principally passive stance, where active action is necessary trying to address and resolve issues. Suppressing discussion where necessary may (again) lead to a overall harmful atmosphere
A CoC is just a document, so it is passive in that sense, yes. But it doesn’t prevent any affirmative action - it encourages it.
What this seems to boil down to, if I’m reading you correctly, is that you’re saying that it’s better to allow offensive behaviour to occur - and then to have the perpetrator reprimanded - than it is to document what is considered offensive behaviour so that it will be deliberately avoided. I cannot see how that is better. If someone’s response to a rule is to try to find underhanded ways to work around that rule, what difference does it make whether the rule is written down or enforced only by-the-way?
For one thing, “obvious misbehaviour” may be generally understood but is not obvious to everyone. You will see many people arguing that Linus’ rants are perfectly acceptable, for various reasons.
Ok, but these people would say these rants are good because they are brutal or some kind of “not nice”. Nobody, or at least nobody I’ve seen, claims that Linus is always “kind” and “civil” and people are just misunderstanding him.
Yes, there will always be some problematic individuals who push the limits regardless. But is it better that they are at least constrained in this way, rather than being able to be openly offensive? I think so. And I think this anyway is somewhat irrelevant to the issue of a CoC; even if you generally enforce good behaviour without a CoC, there can always be trouble-makers who test the limits.
I get your point. I still belive there to be a difference between the two cases – maybe not immediately visible, but on a more symbolic level. In the first case the trouble-maker stands in conflict with the (official, formal) document and will try to defend his or her behavior on semantic issues and misreadings, while in the second case the conflict is more direct with the “community”. This is not to say that no rules should be made or no behavior should be sanctioned – just that in the long term this should be a internal and organic (eg. self-made (maybe even unofficial) “community guidelines”, that serve to introduce new members) process not ordained from above.
you’re saying that it’s better to allow offensive behaviour to occur - and then to have the perpetrator reprimanded - than it is to document what is considered offensive behaviour so that it will be deliberately avoided
I wouln’t phrase it that way, since to me many of these terms are too vague. Anyways, in my eyes this seems to be unrelated to CoC: from my experience most people encounter a CoC not by reading it before they do anything, but by people using it as “legislation” – they make a mistake and are then banned and excluded – often enough permanently because it’s just the easiest thing for moderators to do. Either way, the “offensive act” has taken place – with a quick and formal process leading to confusion on the one side and a honest attempt to point out what a person has done (on a case-to-case basis) in the other.
For one thing, “obvious misbehaviour” may be generally understood but is not obvious to everyone. You will see many people arguing that Linus’ rants are perfectly acceptable, for various reasons.
Ok, but these people would say these rants are good because they are brutal or some kind of “not nice”. Nobody, or at least nobody I’ve seen, claims that Linus is always “kind” and “civil” and people are just misunderstanding him.
That’s my point. The CoC makes it clear that we are expected to be civil. Therefore if anyone goes on an uncivil rant, you can’t claim that it’s ok because [whatever reason], as it’s been explicitly stated that it’s not acceptable. You’re making the community rules about what certain unacceptable behaviour explicit, and removing the inevitable and fruitless debates over whether it’s ok to swear at someone for submitting a bad patch etc.
Whereas now, people don’t understand that it’s not ok to be uncivil.
Either way, the “offensive act” has taken place – with a quick and formal process leading to confusion on the one side and a honest attempt to point out what a person has done (on a case-to-case basis) in the other.
Other than anecdotal examples where it may have been the case with some unknown number of other projects (links to relevant mailing list posts would be interesting to see), I don’t see any evidence that a CoC will necessarily lead to confusion nor to people being wantonly banned from participating for one-off infractions; I certainly don’t think it’s designed or intended for that.
I’ve experienced communities on the Internet which banned their users for using any phrase that has to do with eyesight disabilities (e.g “I can’t see what’s wrong”), and most people simply just didn’t know about this.
As a visually impaired person with several friends who are totally blind, this strikes me as ridiculous. I have no problem with such everyday use of “see” and related words. I think my blind friends would agree.
What’s so bad about people in positions of power to stop being abusive? Isn’t it something to applaud?
It’s possible the CoC, the heart-warming public statement and Linus taking a time-out is a double-blind.
Well he could actually be a little burnt out as well, which is also totally fine.
I totally support him which ever way the pendulum falls.
Of course I do. It may not be very comfortable, but unlike an external bad, it doesn’t restrict your movement, and that’s a big advantage.
The article is aice data collection and visualization effort.
A “mobile” phone in a pocket surely restricts my movements, especially sitting. Personally sometimes I use a briefcase just for my phone and keys. It’s heavier but you may put it on your knees. Also it looks better than stuffed pockets. Article and presentations are very nice indeed.
For the briefcase you need one hand, ot you need to be sitting in order to put it on your lap. I intentionally choose phones that fit in a pocket comfortably, and I’m not happy with that stupid trend of phone size increasing to the point when even men’s pockets are not enough.
I carry my phone, phones, house keys, work keycard and tissues, I wouldn’t survive with women’s pockets.
I usually add a wallet and a small bottle of alcohol-based hand sanitizer which is really great if you are eating something on the go.
I’d like to add that roughly one in 15 people worldwide has a form of diabetes and that a large portion of them also carries medication and a sugary and a salty snack as treatment.
Not if the pocket is deep enough. I have pants that I can fit my phone in the pocket and it’s no issue because the phone sits lower on my leg.
Cool visualisations, although I wonder how well they’ll work without Javascript or on mobile. Kudos to them for adding ‘Heads up, you’re about to experience some scroll-driven animations. If you’d like to skip that, you can jump ahead to the final state.’
The issue itself is pretty funny. There are some pretty obvious solutions, like buying jeans with bigger pockets. I suspect the reason is relatively simple: pockets are needed less when most women carry a bag with them everywhere they go, while most men don’t.
Probably better not to have too many gender politics posts here tho.
My wife carries bags mostly because pockets on women’s clothes are ridiculous and because your solution while theoretically sound, fails miserably in practice if you cannot find such clothes.
This issue might be funny to you, but at this point is just frustration for her and to be honest for me too.
Off-topic: At this point the “make x great again” titles are so annoying, it’s like a “x macht frei” or other fash boy stuff.
I plan to learn about networks, site reliability engineering, and computer systems in general this year. I have a lot of books in my list, so probably it’s gonna take me two years instead of one. In order of priority:
Also as reference books, where I plan to read a couple of chapters only and leave the rest when I need to understand better a topic:
Urbit still seems entirely ridiculous to me. It sets off every scam/cult alarm in my body, and I’m not the sort of person who dismisses these things out of hand (in fact, I’m generally a very early adopter on weird tech stuff like this).
The only other alternative I can think of is that Urbit is some sort of performance art. I made a similar comment on HN a year or two back and one of the urbit guys politely invited me over for a chat, but unfortunately travel schedules got in the way. On account of that effort to reach out I’m willing to give them the benefit of the doubt, but it’s challenging. Just look at the YouTube videos on their website. No explanation of anything, just weird culty videos with weird culty music and a lot of buzzwords.
If someone could concisely and correctly explain why urbit is useful, I would really appreciate it. Right now it seems to me like an ill-conceived and mostly pointless vaporware attempt to (poorly) reinvent the wheel (but with some NRx artistic flare) without any clear justification for doing so.
It’s a VM running programs in their new, custom language. Networking allows distributed computation, but the entire system is a hierarchy designed to give the creators total power. There’s more the last time Urbit came up.
That other thread had some good stuff in it–I recall it well, especially the more entertaining revelations about Yarvin’s feudalism in constructing Urbit.
I posted this link mainly because the infamously clunky nomenclature of Urbit now has Ethereum rubbed all over it for good measure.
designed to give the creators total power
It’s actually designed to be eventually distributed, just like Ethereum or Bitcoin or IPFS. As the network grows, the creators have less power: https://urbit.org/docs/about/objections/#-urbit-isn-t-even-really-decentralized-it-has-a-government
I have already had this conversation.
You’re deliberately spreading misinformation because you think the people behind Urbit are untrustworthy. That’s a little bit ironic, isn’t it?
I mean this is basically the ruse that many “communists” pulled. I’ll only be a dictator for a bit but then once things are really moving then we’ll have a government ruled by the public. Once you have power it’s easy to use that power to maintain power, so ceding power at the beginning is a really dumb strategy.
The only other alternative I can think of is that Urbit is some sort of performance art.
If it is, one totally should consider the artist.
It seems to be a “dump” of the NRx ideology into a codebase. I think it’s fair to think that is some sort of performance art.
It’s not a vaporware in that it has working code. Lots of it: deterministic VM, bootstrapped compiler, cryptographic infrastructure, overlay network, and (hopefully cryptographically secure) mechanism to do live update of everything above VM. Whether it’s (or will be) useful is an open question, but in my opinion the current codebase is self-evidently exciting.
Please try and post here productively and in good faith–cute pith that grossly misrepresents the source material wastes everyone’s time and lowers the quality of discourse.
Scala is from the Latin word scāla, which means stairs or in some romance languages, steps.
I can see why a Spanish speaker not familiar with English would pick that tag for a tutorial.
Below is an implementation of the Bubblesort algorithm written in Charly. It is part of the standard library which is also written in Charly.
Heh. Why is a bubble sort part of the standard library?!
The author is a 16 years old student, maybe they were not aware of / could’t implement a more efficient algorithm.
Does anyone know if there’s a transcript or slides of this video available?
There are slides: http://homepages.inf.ed.ac.uk/wadler/papers/go/chalmers.pdf