There is nothing inherently superior about "I think this patch could use work" vs "This patch is garbage", outside of emotional response, and to some people, the first is actually worse, for the reasons he stated. And just as it would be out of place for someone in google to state "You ought to be expressing your code reviews with less weasel words and more profanity to be more honest", it is wholly out of place for someone to come in to the linux kernel mailing lists and demand everyone stop swearing as much to be more "professional".
They think your communication sucks because it is indirect and dishonest. You think their communication sucks because it is vulgar and excessive. Maybe the best solution is to understand that in a different culture, similar ideas may be expressed differently, and be tolerant of these cultural and personal differences?
I've been online since the 80s, and I have seen this attitude over and over, that somehow, SHOUTING and INSULTS are "just part of the process" of engineering culture, and if "you can't stand the heat, get out of the kitchen"
It's really an excuse for people, in many cases with ego problems, to justify behavior that most people find distasteful. It's no wonder many people are turned off from STEM fields where this kind of "alpha male" behavior is wide spread.
We need more Vulcan and less Klingon, especially in fields where people consider themselves intellectually superior, more educated, and supposedly, more rational.
The question might be that because Jobs/Linus/Gates are in positions of power and management, should they have to adjust their personality when working with other people?
I'm not convinced that should be the case. Choosing to work with someone is largely voluntary.
[1] http://www.seattlepi.com/business/article/No-Bull-Bill-Gates...
Sure, you can fork the kernel, but good luck with that!
The only barrier to forking is the fact that most kernel developers are not bothered by Linus. Which raises the question of why we should want a fork if nobody wants a fork...
The other barrier is the effort required to compete with what is currently the most used Linux kernel base. It's not like forking OpenOffice, KDevelop, or Eclipse where you can compete as an alternative on top of a standard OS. It's replacing the basis of the OS that everything else is written to work for.
The problems with forking are social. You are only going to have a handful of people working with you instead of Linus (because nobody cares that Linus can be a meanie) and as a consequence you are only going to have a handful of people using your fork instead of Linus' (because nobody cares that Linus can be a meanie). Because of this progress on Linux will progress faster than progress on your fork, which will make your fork obsolete (but nobody would care, because nobody would be using it, because nobody cares that Linus is a meanie).
These are not problems with forking Linux. These are problems with forking anything if nobody cares about your fork.
The thing with being abusive is that people won't actually tell you what they really think.
You're setting up quite a straw man there by making it look as though Linus's first reply to things he doesn't like is "this is a piece of shit". In fact, if you go through these threads, in almost every case there is an escalation where he explains his reasoning first, in detail and repeatedly. When someone really doesn't get it, he will indeed escalate to foul language. Is that a bad thing? I don't think so. Unlike established corporations, the Linux community doesn't have options like subtly threatening to fire someone.
Yes it's true, his first responds isn't "this is a piece of shit". It's "YOU are a piece of shit".
Here is the C++ rant: http://thread.gmane.org/gmane.comp.version-control.git/57643...
As far as I can see, that was his first post to that thread. He said his target was "full of bullshit", then proceeded into a rant about how C++ programmers are so bad he wants to deliberately keep them off his projects by pissing them off.
I think it's a good example because there are plenty of criticisms of C++ one could make but Linus does a terrible job of putting forward those criticisms. He seems to be so blinded with rage that he can barely form a coherent argument.
Additionally, as far as I can tell the people involved here were not old timer core git contributors, they were new people making an honest attempt to contribute, so the argument being put about that he only targets old hands who have a thick skin isn't true.
Come on, you should be able to construct an argument without making up quotes to support your point:
DK: "No idea why [Git is written in pure C instead of C++]. Please don't talk about portability, it's BS."
LT: "YOU are full of bullshit. C++ is a horrible language. [7 paragraphs explaining why]"
People notice his swearing but not who he attacks. My observation has been that he's exquisitely careful about picking his targets, always picking people who've been in the group for a while, and never attacking a noob. This sets an extremely egalitarian tone for the group: nobody is immune, and anybody can be questioned on their actions.
(I'm a lot less sanguine than him, though, about the effect this confrontational ethos has on the participation of women in the group.)
This slippery slope argument is garbage and YOU are a piece of shit for advocating it! You must watch Fox news and are a devotee of "shock jock" radio that tickles your reptilian brain and amps up the right neurotransmitters in the risk reward system to crave impolite and rude behavior!
(I hope I drove home the point with that bogus rant that individuality-through-angry-shouting doesn't elevate the debate at all, it just incentivizes the other party to become even more recalcitrant and unreasonable)
Hot tempers and passionate are not the problem. Strongly worded rebuttals are not a problem. Direct ad hominem attacks are just unnecessary. You can be strong and aggressive without telling people to "SHUT THE FUCK UP"
Trust me, being a dick isn't only way to be adversarial.
That observation aside, I easily see what your point is, but I don't agree with the principle of it. In this case this wasn't a direct ad hominem attack by Linus. I fail to see that given the rest of the email thread. More importantly however is the fact that the individualism involved is what makes things interesting and gets the points across. Since you like literature it seems, you should surely understand the importance of the reviews and critics of such works. Often these were quite brutal, but again they drove home the points, whether they are right or wrong isn't the issue either. A sugar coated world just isn't a reflection of a real world.
Literally? No. Nobody is suggesting that we weigh down others with chains.
Of course I don't think Vonnegut was being literal either...
But criticism of developers is apparently too difficult for him. He doesn't distiguish between "this code is bad" and "YOUR code is bad" - indeed, he seems to enjoy pinning the perp and assuming they are an idiot and not just ignorant.
And? I mean, it's tasteless right after his death, but is it equivalence to personal attack and intimation?
Is the world black and white, and if someone says even one negative thing, then it's a full equivalence?
You can delete the Stallman reference, and the point still stands.
Clearly, that was an angry denouncement... /sarcasm
We used to think that DRM on desktop PCs was bad, but for mobile devices it's 10x worse.
Now, see how I just explained the issue with Steve Jobs, instead of saying "He was a piece of shit who passed of Woz's work as his own, lied to him about money, denied paternity of his daughter, verbally abused employees and kept them in a state of fear, maintained an 'enemy list' of journalists, .....!" That's inflammatory rhetoric, and not relevant. The only thing that is relevant is the sea change in DRM'ed computing platforms have been popularized and his role in them, which is what Stallman was alluding too -- the effects of his leadership.
But there are lots of other companies that are successful where people don't act like jackasses. For example, Google culture is anti-jackass, Googley means not being a dickhead. If you have a problem, explain what's wrong calmly and coherently, it's more efficient. Simply telling someone that they, or their code, is a piece of shit is not likely to be as efficient.
IBM is another, when I worked at T.J. Watson, people were very civil.
Civility is not about being "fake" or "politically correct", it's about being able to communicate your position by reason instead of by emotion, by shouting, by abuse, by reptilian brain.
Linus gets a lot of leeway because of his work on Linux, and we will forever be thankful for that. But I don't believe good works earns you a pass from criticism of behavior. The founders of the United States are forever thanked for the Constitution, but that doesn't let them off for being slaveholders.
I expect there will be some reflexive downvoting on this for criticizing the prophet, but honestly, Linus makes geeks look bad socially. Say what you will about Richard Stallman, there are lots of things he says I disagree with, but he says them with integrity and positivism and love, and not with angry denouncements.