Why This Hacker Stood Up Against ‘Verbal Abuse’ in Linux Land
wired.com
wired.com
But I read Linus e-mail explaining his attitude, and I am more inclined to agree with him instead.
I am one that sometimes people called caustic or whatnot, including in my current startup, no matter how much I made a great effort to be polite and make clear I was not attacking anyone, every time I said the artist did something wrong, he would get pissed off and offended.
After a while I gave up, and started to write in my usual "caustic looking" style, and the artist started to understand me more, make less mistakes, and now we can make jokes and work with other without issues.
I personally hate the "corporate" style culture of being passive agressive, avoiding confrontations, being polite all the times and whatnot.
If you annoys me, I will tell you that you annoy me, and if you insist, I will throw a "fuck you".
I remember how much I hated every environment that I was, where "verbal abuse" was curtailed, because I never knew if someone was saying the truth or not, and in the end I started to behave like if everyone was a serial liar, and when you cannot trust anyone, it is hard to get anything done.
Also I can't help but agree to Linus' response mail.
Maybe all politeness is fake to some degree (you're interfacing with someone by being nice regardless of what that person does), but we say "fake politeness" when you're spending a lot of energy to keep the politeness filter on.
Tell me if you have a theory about real vs fake politeness.
Linus knows what a colleague is, and Wikipedia doesn't - over there they have enemies, not opponents. The headline calls it "verbal abuse", but they don't seem to have a grasp what abuse is.
I agree that I would much rather work with Linus than Wikipedians, but I'd also prefer working with people who I trust to give me their honest opinion without a needless verbal shelacking.
You could also ask me if i'd prefer to have my hand or my foot cut off (foot for the record), but personally my preference is to find a way to keep all of my limbs intact.
The point over which I absolutely support Sarah Sharp is that what Linus is doing is essentially hazing. He's trying to enforce societal norms by handing out verbal beatings, and trying to encourage others to enforce his norms via his methods.
That is a problem. Tart replies regarding criticism of code, or how code is managed is one thing. Trying to encourage a culture of verbal abuse is entirely another.
------------------------------------
Sidebar: There are organizations that do work these sorts of verbal dressing downs as a systematic tactic. The Marines are famous for it. The objective is to provide shared hardship to encourage bonding amongst a group of trainees. They're also famous for fucking it up (so much so that we've got films like Full Metal Jacket to memorialize the experience).
But FOSS and Kernel contribution is not like the Marines. There is no inherent unit of social support to fall into. If you're lucky enough to be part of a group, or to have someone say "oh yeah, that's how Linus is" then maybe you get over it and inure yourself to the abuse. Or maybe you just stop contributing to the Kernel.
I'm sure there are many potential contributors who have dropped out due to discomfort with communications. (Although it seems Linus reserves the most emotional tirades for long-time contributors whose performance he feels has declined.) However, does it make any sense to argue that the kernel needs more contributors? ISTM the kernel is moving as fast as can be expected or desired: some distros lag the kernel by increasing amounts.
> In fact, people who swear tend to be more honest than those who don't
[citation needed]There's a whole lot of context involved here. Yes, there are very honest people who curse like sailors (fishermen especially [1]), likewise there are honest people who wouldn't throw about farthing filth about fornication willy-nilly[2].
I would add that ideas, in addition to actions, are fair game.
[1] Deadliest Catch
[2] Ex-Mormon colleague"Hey John, thanks for contributing. I see you updated X. There's a lot of good there but this algorithm really needs to run faster and use less memory. Check out how Sarah did it here when working with Y. Additionally, here's some resources. Thanks."
Obviously we're dealing in hypotheticals here and I guess if it is the case that none of John's code works well then your approach is probably the only decent approach. If there is some code of John's that does work well than I find a lot of times it's easier to give a little compliment prior to your criticism just so they know that yes, we do appreciate your work and contributions, but in order to be more effective here is what you have to do.
If you have, you'll know that your job in that situation is to get the best results from the team - over a variety of time-scales. Sometimes you have to crack the whip, but mostly its important to be somewhat diplomatic and respectful while still being clear and direct, because the team is made of people who (unless it has some kind of dysfunctional brogramming-type culture) have a need for fulfilment in the work they're doing.
Some cultures are more direct (eg. Dutch, Israeli, Finnish) than others (eg. Japan). If everyone on a team expects the same norms then they are going to get along well. The problem for Linus is that the "team" is a pan-cultural community with a spread of norms and (it seems to me) that Linus want to be the Linux benevolent-dictator-for-life while everyone else expects him to be a leader.
"There's a lot of good there but this algorithm really needs to run faster and use less memory" - Another lie (unless there actually is a lot of good there). What if there's not a lot of good? Should we just prefix our statement with this banal clause?
"Check out how Sarah did it here when working with Y. Additionally, here's some resources." So now someone who's time is worth a lot (top tier linux maintainer) is responsible to LMGTFY for everyone who contributes?
If there's not a lot of good, I was assuming perhaps it was one part of his contribution, but if there isn't any good at all then how about "Thanks for contributing but in order to be an effective member of the team you're really going to need to work on X, Y, and Z. Unfortunately we cannot commit your patch to the code repository until this is the case. If you do work on X, Y, and Z though you should be at a point where you can contribute to quite a wide variety of areas within this project and will be a quite a valued member! We need people like you with dedication. And don't worry about it, if you look at version 0.a.b you'll see I made a bunch of the same mistakes!"
If you have the time to dole out harsh criticism of someones patch you can't take the time to provide a helpful comment instead of an overtly negative one? "Oh I spent all this time reviewing your code and it sucks." is better to you than taking the what, ten or fifteen minutes to compose a quality reply? I understand the top tier linux manager's time is valuable. But if you can tell the code is wrong, then give reasons for why it is wrong, tell them you can not commit until those reasons are corrected, and do so in a polite manner. In addition, by providing resources, you make your own job easier as the quality of patches continues to improve in quality, you retain talent, and foster new talent within the software community.
If you don't want to provide resources then perhaps a "Hey, if you have any questions trying to work through X, Y, and Z try to contact me here although you'll get far quicker responses on irc.freenode.net #linux".
One of the problems with assumptions here is that kernel maintainers by definition shall know that their code is wrong and why it is wrong . If this is not true, they shall not be kernel maintainers.
Another one is that Linus does not need to retain talent that can not perform to acceptable standards.
Please note that acceptable standards are different for different people.
If you do not know why the code is wrong, then tell them what it is doing wrong in a similar fashion. "Hey John, I see you updated this patch. Thanks but it seems to be hogging memory. What can you do about that?"
Perhaps you point them to people who have worked in that area before. "Well you working on I/O, you know Tim over here has worked in that area before, he might be busy but if you can't figure it out on your own maybe you can shoot him a question and see if replies."
I guess a kernel maintainer may never make a mistake since you assume it is a tautology that all kernel maintainers by definition know when and where and why their code is wrong or they could not be kernel maintainers. Or you're implying that any kernel retainer will, upon being notified, no matter the language of the rebuke, immediately know how to fix it and will also be willing to do so.
There are also different levels of experience for different people. It doesn't mean you should throw them off the ship or so harshly rebuke them that they never return to the project.
And if there are different standards than you probably don't need to give everyone the harshest standard.
Alright but I've posted enough in this thread.
I'm debating the fake politeness that is expected when a patch is in fact rubbish. It's more impolite to lie to someone and make them feel better by phrasing such as "It's good but...". It's much better to simply cut to the "but" part and tell it how it is.
Fellow developers are not clients who are our responsibility to make feel good at the end of the day.
But I agree with your point, not everyone has the skills and mentality to be mentors and/or teachers to others who may wish to learn. It's just too bad so many have to be complete assholes about going about informing people of this fact.
Sometimes the student just isn't worth investing your time and effort into.
But I don't think it should be up to a bad teacher to decide who is a bad student.
"Hello John, we recently received your contribution. It is clear you are aligned with our goal of leveraging core-competencies of a diverse group of synergistic A-players in our problem space. Your algorithm is proactive but we need it aligned to the specific performance/memory axis to support the rest of the product synergies. Sarah is a fantastic and robust resource that is empowered to impact this area of the value-add proposition. If you need to plug into any further best of breed enablement engines, please do as we are committed to our future-shapers building their capabilities to their fullest potential."
Agreed. If only that were what she's talking about:
To me, being "professional" means treating each other with respect. I
can show emotion, express displeasure, be direct, and still show respect
for my fellow developers.
For example, I find the following statement to be both direct and
respectful, because it's criticizing code, not the person:
"This code is SHIT! It adds new warnings and it's marked for stable
when it's clearly *crap code* that's not a bug fix. I'm going to revert
this merge, and I expect a fix from you IMMEDIATELY."
https://lkml.org/lkml/2013/7/18/340 We're adults, not high schoolers. We can figure out how to deliver
harsh technical criticism without resorting to name calling, cussing at
people, or personal attacks.
https://lkml.org/lkml/2013/7/16/554 You are in a position of power. Stop verbally abusing your developers.
https://lkml.org/lkml/2013/7/15/427Sweary people like to direct their frustration outwards, but that doesn't necessarily make them direct. I see little relationship between people who throw hissyfits and people who are honest in the way I like. The honesty I like cuts down the search space for reaching pragmatic solutions; it doesn't simply tell me that Billy's blood sugar is getting low.
Sarah was not passive aggressive, and she did the opposite of avoid confrontation on this matter. It seems odd to me that she is accused of wanting these aspects of corporate style.
It is perfectly possible to be assertive without being aggressive - to be certain, and strong-sounding without belittling the person you're talking to.
It does require more effort, to many people, than simply screaming at them. But if you want to get the best results out of them, and avoid putting off people who simply don't want to be around someone who screams, then it's worth investing the time.
There are genuinely intelligent people out there who look up to Linus and people like him. And the problem is that they look up to these people and identify with their behaviour because they want to be seen as uncompromising geniuses. They identify with a contrarian attitude and view conventional social idioms (for a lack of a better word at the moment) as ineffective in technical discussions. And so telling these people that the way they are behaving is not appropriate is essentially viewed by them as a personal insult. It all ends in a very divisive, two-sided argument.
The problem with Linus isn't Linus; it's that people want to be like Linus. They want to be seen as strong, assertive, and uncompromising technical leaders. They don't want peoples' feelings to interfere with their work. They view themselves as contrarians and will seek to identify with leaders in their community which reinforce their world-view. And the problem with that is one of misplaced attribution.
It's not wrong to use wit and a little strong language in a debate. Christopher Hitchens, a famous contrarian, employed such tactics from time to time with great effect. The difference however between someone like Hitchens and someone moderating a contributions to an open source project is that Hitchens was trained in rhetoric, elocution, and debate. He knew how to use insults and jabs in appropriate situations with practiced intent. Someone who views themselves as a contrarian and identifies with someone like Hitchens or Linus is prone to believe they understand these things when in fact they do not.
Very few schools teach such subjects today and I suspect even fewer programmers have ever bothered to take them.
However articles like OP's don't serve to forward the discussion. If we attempt to tell people who consider themselves to be intelligent contrarians that they are behaving inappropriately then they will immediately appeal to their heroes' success. This only starts the discussion off as a personal attack and devolves it into a polarized argument. Hardly useful.
Instead there must be a way to convince ourselves that losing your temper on a mailing list and denigrating the efforts and skills of other contributors is not the proper way to behave. There are other, more effective ways of being assertive and uncompromising that won't insult people and cause so many needless flame wars.
This nails it.
It's not that Linus or his style are right or wrong, it's that that some people assume that his abrasiveness is the cause of his genius rather than an unrelated personal trait.
<mchehab@redhat.com> wrote:
>
> Are you saying that pulseaudio is entering on some weird loop if the
> returned value is not -EINVAL? That seems a bug at pulseaudio.
Mauro, SHUT THE FUCK UP!
It's a bug alright - in the kernel. How long have you been a
maintainer? And you *still* haven't learnt the first rule of kernel
maintenance?
If a change results in user programs breaking, it's a bug in the
kernel. We never EVER blame the user programs. How hard can this be to
understand?
To make matters worse, commit f0ed2ce840b3 is clearly total and utter
CRAP even if it didn't break applications. ENOENT is not a valid error
return from an ioctl. Never has been, never will be. ENOENT means "No
such file and directory", and is for path operations. ioctl's are done
on files that have already been opened, there's no way in hell that
ENOENT would ever be valid.
> So, on a first glance, this doesn't sound like a regression,
> but, instead, it looks tha pulseaudio/tumbleweed has some serious
> bugs and/or regressions.
Shut up, Mauro. And I don't _ever_ want to hear that kind of obvious
garbage and idiocy from a kernel maintainer again. Seriously.
I'd wait for Rafael's patch to go through you, but I have another
error report in my mailbox of all KDE media applications being broken
by v3.8-rc1, and I bet it's the same kernel bug. And you've shown
yourself to not be competent in this issue, so I'll apply it directly
and immediately myself.
WE DO NOT BREAK USERSPACE!
Seriously. How hard is this rule to understand? We particularly don't
break user space with TOTAL CRAP. I'm angry, because your whole email
was so _horribly_ wrong, and the patch that broke things was so
obviously crap. The whole patch is incredibly broken shit. It adds an
insane error code (ENOENT), and then because it's so insane, it adds a
few places to fix it up ("ret == -ENOENT ? -EINVAL : ret").
The fact that you then try to make *excuses* for breaking user space,
and blaming some external program that *used* to work, is just
shameful. It's not how we work.
Fix your f*cking "compliance tool", because it is obviously broken.
And fix your approach to kernel programming.
Linus
329 words. Here is the same email with the dramatic noise removed, and patched up for clarity when necessary: <mchehab@redhat.com> wrote:
>
> Are you saying that pulseaudio is entering on some weird loop if the
> returned value is not -EINVAL? That seems a bug at pulseaudio.
It's a bug alright - in the kernel.
If a change results in user programs breaking, it's a bug in the
kernel. We never EVER blame the user programs.
To make matters worse, commit f0ed2ce840b3 is [broken] even
if it didn't break applications. ENOENT is not a valid error
return from an ioctl. Never has been, never will be. ENOENT
means "No such file and directory", and is for path
operations. ioctl's are done on files that have already been
opened, there's no way in hell that ENOENT would ever be valid.
> So, on a first glance, this doesn't sound like a regression,
> but, instead, it looks tha pulseaudio/tumbleweed has some serious
> bugs and/or regressions.
[This is wrong.]
I'd wait for Rafael's patch to go through you, but I have another
error report in my mailbox of all KDE media applications being
broken by v3.8-rc1, and I bet it's the same kernel bug. [Your
patch doesn't work] so I'll apply it directly and immediately
myself.
WE DO NOT BREAK USERSPACE!
The whole patch is broken. It adds an incorrect error
code (ENOENT), and then because it's wrong, it adds a few places
to fix it up ("ret == -ENOENT ? -EINVAL : ret").
Breaking user space, and blaming some external program that
*used* to work, is wrong. It's not how we work.
Fix your "compliance tool", because it is obviously broken.
Linus
209 words: a savings of more than 33%.Let's look at the history quickly: Linus sits down to write an OS as a hobby. It's a huge success and he shares it for free with everyone who wants to use it. Some big corporations like Intel see how good the thing that Linus has made is, and they employ people to help him out.
They then turn around and say Linux is now a big corporate project, and Linus needs to watch his manners? Fuck them, they wouldn't have Linux without him. It's beyond rude for these people to demand Linus fit their corporate culture. I'd say they are welcome to communicate privately with Linus - with a lot of respect owed to him - and convince him to the merits of behaving differently. But to go to the press and make a public statement on how Linus needs to change himself? It's simply disgusting.
Linus is free to act however he wants, and anybody dealing with him is free to walk away. They won't though - Linus has shown incredible ability in managing contributors and also great 'taste' in keeping the kernel working smoothly. This article, however, is plain rude.
Living beings have pressured each other to change for one reason or another since the beginning of time. Linus is an effective leader and an asshole. Could he be more effective if he's less of an asshole? That's an open question. It's not any more rude to suggest it than him calling people stupid, idiotic, retarded for introducing kernel regressions.
Ps. She didn't go to the press. The tech press has a tendency to come to you. Sometimes it's better to clarify than stay silent.
Shorter version of my argument: "How dare you tell other people's parents to change the way they treat them - publicly in an interview?" Some parents might discipline their children more harshly than others. If I went to tell the press about how a parent gave their child a smack for doing something stupid, I'd say that would be very rude to that parent. Linus isn't killing anybody here - he's shouting at people who fucked up, and telling his staff to be more rude in sending away bad patches.
If she went to the press or the press came to her feels very irrelevant. She chose to answer in an interview she knew would be very public - she started this on a very public mailing list.
I don't think she said anything in this interview that was disrespectful to Linus, or anything other than color commentary. It's sort of like the press conference after a sports game where a player disagreed with the ref during the game and it was picked up on mic, and the press asked her about it after.
Her crime is that she took a stand against an authority figure. She might be wrong in the end, and talking to the press CAN be risky, but this specific incident doesn't seem to be all that bad.
I just don't recall seeing corporations telling Linus to essentially be nicer, just developers. If you have links to the corporations doing it, please share.
The disgusting things here are Linus' behaviour and your rationalizing of it.
That is correct, but ONLY when people (specifically kernel maintainers) produce much below acceptable standards. In case I am missing smth - can you point to an e-mail where Linus was cursing at a newcomer (i.e. not kernel maintainer)?
I was in the middle to start with, and this pushes me right onto Sarah's side. Especially this:
> "I don’t think we’re going to hate each other. I think we’re going to go to Kernel Summit and eat cookies and discuss this."
You can definitely give negative feedback without being a foulmouth, especially when you're talking to people who are at work. You can be emphatic, rigorous and uncompromising without swearing or insulting anyone.
Sarah, in fact, is giving exactly this sort of negative feedback to Linus. He just needs to understand that, and that everyone is always improving how they work, no matter how many years they've been doing it, and no matter whether they invented the field.
Linus is saying: "there are some people I do not like, and I will never like. But I do not want that to get in the way of being productive. We can still work in the same project, maybe not side by side. And whenever you make a mistake, I will let you know without the tiniest doubt. And you should do the same, too." I think this is clever, and allows for very diverse teams, where people are able to work together even though personally do not fit at all. People are different - let's find a way to overcome that!
Basically, Sarah is worried about the social side of running the kernel - the egos of people - and Linus is (surprisingly for a manager!) worried about the technical side, sidestepping personal issues. He just does not care if you are feeling hurt. For that, you have your mum.
For him, the only worthwhile goal is to be productive, and to communicate clearly what he is thinking. Sarah expects him to understand that she is pissed by this. In this case, the whole context makes it very easy to understand it, but being polite is very often the wrong way to make things clear. It just takes much longer, and sometimes you never realize there was a problem to start with. Since she is trying to solve this issue "politely", it will just take forever, and no solution will be reached - because there is no solution! People are not going to start loving each other just because she would like to. She is trying to create a kernel lah-lah land, where everybody is happy and at peace with each other. Not gonna happen!
At the end of the day, it just a harsh email that you get. I would say, get over it!
Sarah and I do not think that people have to like each other in order to act civilly towards one another; the entire weak-tie economy proves this to be false, in fact.
She is saying (and I agree) that you can be robust and challenge someone without turning off your brain-mouth filter for trash talk. I think you'll find people can be just as productive and technically awesome without all the swearing.
[1] and probably sexist, since you implied that the girl is talking about kissing. Seriously, dude? That's all female programmers can ever be talking about?
gonvaled shared his interpretation of the context and his opinion whilst you are engaging in the personal attack.
I just wonder what would be Sarah's reply to your style above [dude, brain-mouth filter for trash talk...].
>> Sarah and I do not think ...
Are you Sarah's colleague, by the way?
umm, what? I didn't use any insults, I just talked about why the user's behaviour/arguments were bad. It's criticism, yes, but it's not ad hominem, it's on the behaviour and the ideas.
> "I just wonder what would be Sarah's reply to your style above"
If two (almost certainly) male people on the internet can't address one another as dude, I don't know what the world is coming to[1]. Some people might object, yes (I remember a particularly pompous twitter politico who balked at me calling him "dude" on twitter in an argument) - but this is how I talk out loud, and it's not obscene it's just informal. I don't believe it conflicts in any way with what I've said about being politely robust and emphatic.
> "Are you Sarah's colleague, by the way?"
no, never heard of her before this incident. I find it kind of sad that you thought I might be some kind of stooge. Feminist boys do exist, you know.
[1] I do occasionally use "dude" as an exclamation when talking to girls too, but it is usually in person and quite obviously sarcastic (I am British, and I say "dude" in a vaguely Californian accent, a result of listening to too much Blink 182 as a teenager I think.)
P.S. To cheery, since you've been hellbanned: that's a false dichotomy. I'm not suggesting that people should be artificially nice. I'm not a nice guy myself. I'm just suggesting that discussions should be kept focused and fact-based, not made personal or nasty for the sake of entertainment or sheer bloody-mindedness. That's what I see both on LKML and here, and it serves no purpose. It's not honest, it's not efficient, it's just being a dick.
"But 80 percent of the kernel contributors are paid by companies. So that means that the Linux kernel really has a lot of people from corporations on there. Some of them, like Linus, are paid by nonprofits. But it’s still becoming more of a corporate environment, and a lot of corporations have codes of conduct. And those codes of conduct often say things about how you conduct yourself on public forums or social media. The code of conduct for those companies also applies to the [Linux Kernel] mailing list.
So we need to figure out how to be respectful and civil to each other in the mailing list because this is no longer a volunteer project. People are paid to work on this. This is about making a workplace more civil and more respectful."
It's not just a good ole boy OSS project anymore.
Unless The Linux Foundation (which is what pays Linus himself) states a code of conduct, and says that it will dismiss Linus unless he follows it, I don't see why he has to be respectful of, say, Intel's code of conduct. Also, what about an unpaid volunteer? Why should they respect corporate codes of conduct when they are not being paid a single cent?
Two Intel engineers working on Intel's internal kernel fork may well have to do that. But the precise reason it is an Open Source project is that it is unaffected by corporate policies of any sort. This applies to "codes of conduct" just as much as it applies to "keep your [computer] code 100% private".
It is still 'just' an OSS project.
Linus might want to consider that Intel is playing the salaries of professionals that are dealing with some tough hardware driver challenges. If he feels that unpaid volunteers can commit the same level of quality while enduring four letter words, more power to him.
Linux may be OSS, but pull the corporate support and see what happens over time. Corporations are currently willing to deal with these small issues of personality because they are mostly isolated from them and having Linux around is good for business.
In other words, does harshness positively correlate with success? Sure, you can cite Steve Jobs. But others could cite Woz, who while delivered plenty of harsh technical criticisms of his own, still seems to have avoided doing it in a way that denigrated both the person and the work.
People defend abrasive guy because they claim his abrupt communication style maintains quality code. But even more abrasive guy claims abrasive guy's project is garbage. Therefore, can we assume abrasive guy is full of crap because even more abrasive guy says he is?
I'm just trying to understand the logic behind defending such behavior.
Given the mailing list posts I've seen, at least with Theo you know the range of attitudes you're likely going to get. Heck, I got a pretty vitriolic email a while back for asking if OpenBSD wanted a donation of some unsupported RAID cards from a vendor that wasn't very supportive of OSS projects.
Linus's range of responses is much wider and more unpredictable, and he has a much larger audience.
Sarah is probably more pleasant to deal with if you're socially skilled, but she demands the same thing in return, and will call you out---and apparently even go to the press---if she doesn't like how you interact with people. People like Linus will just pay attention to your actual point, and will look past the cultural subtleties of how you said something.
Every time Linus says something like, "shut the fuck up, Mauro", he's signalling that he wouldn't derail a conversation just because someone was slightly rude. For me, this means that I wouldn't need to stress over the wording of every email I send to Linus, because he's not going to care.
I'm not saying that politeness is bad---it's great if you're good at it---but random contributors enforcing politeness is toxic. Now, if I want to contribute to the kernel without getting publicly shamed on lkml, I have to be good at kernel development and at wording things in a way that's acceptable to people like Sarah. I don't think that's an improvement.
>I also got some really awful hate mail that tried to drag my gender in. But I don’t think this is a gendered topic
then a couple of responses later they say:
> I think that my perspective is somewhat colored by both my gender and my age
Which is it?
> Sometimes, that just doesn’t work for people who aren’t men.
I also found this to be confusing....
I don't think there is any contradiction in what she says.
Gender, age, upbringing, education – all those things will influence someone's perspective on an issue.
But the issue itself is not about gender. Plenty of men don't want communicate via a lot of "Shut the fuck up, this is shit", and obviously women can swear and put people down, so it is not a gender issue. It is a style of communication issue, and the argument is:
Linus: I hate fake politeness and game-playing, so I'm just gonna let rip, especially on people who waste my time (implictly, to discourage that strongly).
Sarah: You can be assertive without being rude, and politeness is important in a professional context.
Her viewpoint might be different, and her gender might influence that, but that doesn't make it a gender issue.
Gender affect a lot of your environment and your education so you can't escape it's influence. But in this case gender is not a significative parameter in one's perception of Linus and his strong-mouthness.
The fucking topic is whether communication on the KML should be a bunch of stupid assholes giving each other shit. The topic has nothing to do with fucking gender. She's just saying (as is obvious to anyone with a BRAIN) that who she is as a person influences her opinion on the topic.
Get it now, dumbass?
[this has been an example of how Linus would like us to talk on the KML]
But communication isn't some binary thing. You don't need to either be an abrasive honest asshole OR a slimy political wheedler. It's perfectly possible to be honest AND polite.
More surprising is the number of people (including the developer in question) who can't seem to grasp that because someone is swearing in a conversation with you doesn't mean they are swearing at you.
Go re-read Linus' message if this is unclear. He never once demeans the intelligence, ability, or anything else about the person, only calling out their mistake as egregiously bad.
The gist of the message is this:
You screwed up. Here's why you screwed up. You know better than that. Don't do it again.
Saying someone did something stupid and saying they themselves are stupid are two hugely different things. One of these thing is merely being acerbic, the other is actual verbal abuse.
Good communication makes everything better. EVERYTHING. It makes people happier. It helps people understand each other. It lubricates the transition of ideas into implementation. You can not underestimate how important it is.
Bad communication has the opposite effect. It makes people feel bad. It creates barriers to prevent people from accomplishing goals. It can spread negativity like a virus throughout a community.
When you lash out at people, you're creating a few problems. First is that the person feels insulted. If they are insulted, they won't want to work with you, and will actively campaign against you, unproductively. Even if you have a good idea, a person that you're verbally abusing won't give it a second thought, most often because emotion overrides intelligent thought. Finally, it stimulates a kind of general negativity in your community that simply spreads bad feelings and bad attitudes everywhere.
Nobody likes feeling bad. Nobody wants to fight over something stupid. If you want to get work done, the last thing you need is to be frustrated, and deal with frustrated people.
Furthermore, insulting someone does not make your point more right. It doesn't make it less right, either, but it's not helping at all. You might be able to bully someone into agreeing with you, sure. I've had people argue with me on every single possible point 'til i've given up out of exasperation. That doesn't make for good solutions to problems.
If you feel excited, agitated, defensive, or angry, write a letter in response - but send it to yourself. Wait 10 minutes and read it, and then consider sending it. Ask yourself if you can edit it down to be more concise as well as friendly. You'll end up finding people agree with you more this way.
I'll take Linus yelling at me because my code sucks over them just politely ignoring my contribution and not telling me what i did wrong any day.
This approach has made it quite easy for me to get along with people from all sorts of cultures, as well as all types of people within a culture (aspergers springs to mind) -- where others think "he said something that is offensive in my culture, he must hate me", I think "he said something which is acceptable in his own culture, he must think I'm doing ok"; or around my aspergers friends "she's being rude and insensitive, what a bitch" vs "she's being far more empathetic than she normally is, she must be trying really hard because she cares"
NO! It's perfectly fine to bring up an issue like this on a mailing list, private conversation or anywhere else... What is not fine, is still beating a dead horse when Linus says that he will not change. Who do these people think they are to tell someone else to change? Seems rather arrogant and offensive, doesn't it?
"Linus Torvalds is advocating for physical intimidation and violence." is her response to goofy comments about the physical size of the patch reviewer.
However, this example is completely innocuous. He doesn't say anyone is a piece of shit, rather he identifies a particular piece-of-shit patch as being a piece of shit. Which, if Linus says it, is probably true.
Let's start from the facts: LKML is (unlike Wikimedia, or Ubuntu, or other 'pleasant' places) fundamentally open, allowing everyone to open their mouth and potentially be heard. To make this possible, it's necessary for Linus and others to sharply rebuke those that do non-constructive things, be it well-intentioned or not.
The desiderata here are: 1) the rules of what is considered constructive or non-constructive should be such that really everyone can follow them. 2) the people whose authority is trusted should be able to sharply rebuke those doing "shouldn't happen" things in a clear ostentative way, but without the whole thing into verbal abuse. This is clearly a cultural issue, and I feel that some people take reasonable feedback as intentionally abusive, and some people produce abusive language because of a lack of "stop for 10 seconds and let it cool down" when they feel their domain of operation has been encroached upon.
Let's not make a war among cultural groups (be it male/female, small-town/big-town or whatnot, with the whole playbook of us-vs-them rhetoric creeping along) out of what should be a joint search for the culture and conventions that are most effective for solving the task at hand.
On the other hand, I'm also sure that an environment where you always need to bite your tongue and force yourself to be very polite, even when you're pissed off, would keep other good hackers away. Especially among those that do this for passion, and not because they're paid to.
There are many ways to tell someone that they are wrong without calling them a fucking idiot or without having to bite your tongue and forcing yourself to be very polite.
Example: "For fucks sake, why the hell did you name that variable X instead of Y, as our naming conventions say?" is not polite, but it's a critic directed at what you did, not what you are. On the other hand "I'm beginning to think that you're never going to be able to follow our naming conventions. You probably just aren't good enough" sounds polite, but it's really a demeaning personal attack. What's more abusive?
If your first example was an abrasive comment directed at the person, such as "You are a fucking idiot because you can't follow simple naming conventions that a slightly trained monkey could follow!", then it would be demeaning towards that person.
I would also say that your second example isn't exactly polite either.
When someone says something, replying "F*ck that" is as constructive as replying "I think there is a problem with your point". And it is really important when it comes to a critical area.
Being polite? Well, when things don't get messed up, yes. Otherwise, no. A polite vice-pilot is usually one of the main causes of a crash.
"Sticks and stones may break my bones, but words will never hurt me."
Is the self-esteem movement of subsequent generations really putting words on the same level as fists, knives, etc?
It's also possible that one person's "low-grade bullying" is another's "gee, I'm glad my bullying is not that bad".
Again, bullshit. People with severe OCD, bipolar, schizophrenia, etc. can clearly have little or no control of their emotions and reactions. Abused children deprived of social interaction can lack the ability to even develop language. For example, http://www.tampabay.com/specials/2008/reports/danielle/
Verbal abuse is recognized as a phenomenon in medicine, religion, and in law. It is not at the same level of unacceptable civilized behavior as physical violence, but it is still unacceptable nevertheless, and can carry severe consequences, quite rightly.
Many people are actually not deeply self-aware or in control of their emotions or reactions. This often is due to the environment they grew up in, their age/maturity, and can be overcome. It also may be due to illness that requires treatment. Some are victims of abuse, that hurts their career, enjoyment of life, etc. Yet abusers themselves are often the most egregiously acting without self awareness or emotional control, as they are often lashing out what they're feeling without restraint or contextual nuance, attempting to inflict pain on others.
Yet other people also are deeply self aware or in control of their emotions but due to community or societal norms are subject to systematic verbal abuse. Sexual harassment, threats against geeks/nerds, racial discrimination are all examples. There's often only so much any well-adjusted person can take.
You seem to be confident that words should not be able to inflict pain. Yet it's clear from history that they do.
http://formalsweatpants.com/stick-n-stones/
"Sticks and stones may break my bones, but words will cut to the core of my beliefs and form the foundation of my existence".
IOW, Many people wind up using fists, knives, etc. in part because of the destructive words in their life. (And lead poisoning, apparently).
Linus has organized thousands to work together to build something amazing. We all benefit. That's social genius.
Are you going to say that Linux is too important and needs to be nationalized next?