The sad truth is that, no matter how terrible it is, Linus won’t change. He has made it abundantly clear every time it comes up that he is fine with being a jerk, and that it is the problem of everyone else to adapt to him. So a blog post talking about why he should change his mind is good in that it gives people a clear way of formulating their opposition to Torvalds, but it won’t ever make Torvalds change.
the conversations are still valuable to have, because in their absence the default assumption is that the community is fine with linus being a jerk, and people who do object are reluctant to speak up and be the lone dissenting voice.
Moreover, if ithe community becomes sufficiently motivated, it will demand changes from Linus, oust him, or fork.
This sort of post is important as a consensus-building piece of communication.
Fork? Really? Useless forking is nearly always a bad idea.
Yup, useless forking is useless. But forking to create a nicer community is not useless. A good example is EGLIBC fork of GLIBC: one of the reason to fork was Ulrich Drepper’s personality.
I am not saying that Linux should be forked for the same reason. I am saying that forking to exclude a problematic leader can be reasonable, has happened, and can succeed with a good result.
GCC is also an example: today’s GCC is actually based on a fork called EGCS. Reason: problems with maintainer behaviour/opinions.
Absolutely. I am perhaps being a bit too cynical about the possibility of change. As I see it, these conversations are useful to exorcise frustrations, not to effect real change in the system. Nonetheless, they are necessary conversations, and encouraging lone dissenting voices to speak is good.
Many (but not all) of the times I’ve seen people complain about Linus, he was simply being honest or blunt. Perhaps it’s a cultural thing, we Americans frequently get offended by hearing things we don’t like, and sugar-coating is a way of life for us. In contrast, in many European countries, being honest and factual (or blunt) is the norm and not in any way considered insulting.
There’s a distinction between being blunt/honest about someone’s contribution (“the code is not good”) and their ability/person (“FUCK YOU”, “you probably will never be good enough to contribute”, etc). The latter doesn’t have a place in open source.
I think the question is how many Linus posts fall into which category. As journeysquid said, many (but not all) are commentary about the code, not the person. I think Linus can be personally dickish, but also impersonally dickish, and many times evidence of the latter is conflated with the former.
The problem with expletives is that they tend to miss the target and hit the person. I personally have no (moral) issue with them, but avoid them due to that fact.
We’re not in a court, there is no “evidence”, we’re talking about people interacting and a certain expectation of harm-free interaction.
[Comment removed by author]
“I’m not a nice person, and I don’t care about you. I care about the technology and the kernel—that’s what’s important to me.”
Yeah, I think that’s a mistake on his part. It is probably true that recruiting female, or non-caucasian developers to meet a quota of “at least n%” is a stupid thing to do in short term, but in long term it will grow the pool of high quality developers overall. That is, by showcasing female developers we might eventually reach the equality and then reap the benefits. And according to some, just having different genders, races on a team tends to improve overall team function, so why wait for someone else to get girls back into IT?
i’d warrant that “shut the fuck up” is insulting in anyone’s culture, especially over a public mailing list.
Look at it from the point of view of user space developers for a while.
One of them reported an issue with the mighty kernel and the developer responsible for the issue have 1. tried to shift blame back to user space and 2. attempted to justify an obvious regression. Well, that’s not very productive way to have a discussion about broken systems. I would guess that he probably started to feel a little bit powerless and disappointed, kernel developers breaking some of their promises and all.
Then the senior developer comes and shouts the junior down in front of the user space developer and rest of his community, re-stating the broken promises and thus renewing the trust and confidence between the two teams.
The junior then attempts to save his face, failing to comprehend the core issue and senior does some explaining to finally get him understand. After that, junior makes some effort to salvage his reputation by accepting the mistakes he made and explains their complicated context.
In my eyes “shifting blame” => “getting shouted at” makes sense. So… another example?
Sorry, but I can’t help but thinking of “The flogging will continue until the morale improves”.
There is a perfectly appropriate response here: just state that you do not want to engage in the discussion further and are not interested in how the patch came to be. Just that you are unwilling to merge it. That takes one or two sentences.
That’s blunt and direct and certainly not nice. People are perfectly good at understanding blunt, short statements with boundaries and they give just as much respect. Keeping the statement short also gives almost no point to argue about it. That’s exactly what you want: it keeps the discussion short.
When I decided I wanted to get into open source, I was kind of scared at first, because I remembered that there were a lot of open source developers with this kind of attitude, and I really can’t stand that. When I first approached some open-source projects, the first people I ran into were rude and abusive in the exact way I’d come to expect. I’m not sure I ever really recovered from that. I didn’t interact much with open-source projects and I lost hope in the idea that there were enjoyable open-source communities that could develop quality software.
It means a lot to me to see people condemning this kind of behavior. I hope that one day I’ll be able to find an open source project upholding the ideals that these people champion.