Linus Torvalds Reflects On How He's Been Hostile To Linux Community Members Over the Years, Issues Apology, and Announces He Will Be Taking Some Time Off (kernel.org)
On Sunday, Linus Torvalds spoke about the confusion he had regarding Maintainer's Summit, but more importantly, how this incident gave him a chance to realize "that I really had been ignoring some fairly deep-seated feelings in the community." In an email to the Linux Kernel Mailing List, Torvalds apologized for hurting people with his behavior over the years, and possibly driving some people "away from kernel development entirely." On that end, said Torvalds, "I am going to take time off and get some assistance on how to understand people's emotions and respond appropriately." He wrote: [...] It's one thing when you can ignore these issues. Usually it's just something I didn't want to deal with. This is my reality. I am not an emotionally empathetic kind of person and that probably doesn't come as a big surprise to anybody. Least of all me. The fact that I then misread people and don't realize (for years) how badly I've judged a situation and contributed to an unprofessional environment is not good. This week people in our community confronted me about my lifetime of not understanding emotions. My flippant attacks in emails have been both unprofessional and uncalled for. Especially at times when I made it personal. In my quest for a better patch, this made sense to me. I know now this was not OK and I am truly sorry.
The above is basically a long-winded way to get to the somewhat painful personal admission that hey, I need to change some of my behavior, and I want to apologize to the people that my personal behavior hurt and possibly drove away from kernel development entirely.I am going to take time off and get some assistance on how to understand people's emotions and respond appropriately.
Put another way: When asked at conferences, I occasionally talk about how the pain-points in kernel development have generally not been about the _technical_ issues, but about the inflection points where development flow and behavior changed. These pain points have been about managing the flow of patches, and often been associated with big tooling changes - moving from making releases with "patches and tar-balls" (and the _very_ painful discussions about how "Linus doesn't scale" back 15+ years ago) to using BitKeeper, and then to having to write git in order to get past the point of that no longer working for us. We haven't had that kind of pain-point in about a decade. But this week felt like that kind of pain point to me. To tie this all back to the actual 4.19-rc4 release (no, really, this_is_ related!) I actually think that 4.19 is looking fairly good, things have gotten to the "calm" period of the release cycle, and I've talked to Greg to ask him if he'd mind finishing up 4.19 for me, so that I can take a break, and try to at least fix my own behavior.
This is not some kind of "I'm burnt out, I need to just go away" break. I'm not feeling like I don't want to continue maintaining Linux. Quite the reverse. I very much *do* want to continue to do this project that I've been working on for almost three decades. This is more like the time I got out of kernel development for a while because I needed to write a little tool called "git". I need to take a break to get help on how to behave differently and fix some issues in my tooling and workflow.
And yes, some of it might be "just" tooling. Maybe I can get an email filter in place so at when I send email with curse-words, they just won't go out. Because hey, I'm a big believer in tools, and at least _some_ problems going forward might be improved with simple automation. [...]
The above is basically a long-winded way to get to the somewhat painful personal admission that hey, I need to change some of my behavior, and I want to apologize to the people that my personal behavior hurt and possibly drove away from kernel development entirely.I am going to take time off and get some assistance on how to understand people's emotions and respond appropriately.
Put another way: When asked at conferences, I occasionally talk about how the pain-points in kernel development have generally not been about the _technical_ issues, but about the inflection points where development flow and behavior changed. These pain points have been about managing the flow of patches, and often been associated with big tooling changes - moving from making releases with "patches and tar-balls" (and the _very_ painful discussions about how "Linus doesn't scale" back 15+ years ago) to using BitKeeper, and then to having to write git in order to get past the point of that no longer working for us. We haven't had that kind of pain-point in about a decade. But this week felt like that kind of pain point to me. To tie this all back to the actual 4.19-rc4 release (no, really, this_is_ related!) I actually think that 4.19 is looking fairly good, things have gotten to the "calm" period of the release cycle, and I've talked to Greg to ask him if he'd mind finishing up 4.19 for me, so that I can take a break, and try to at least fix my own behavior.
This is not some kind of "I'm burnt out, I need to just go away" break. I'm not feeling like I don't want to continue maintaining Linux. Quite the reverse. I very much *do* want to continue to do this project that I've been working on for almost three decades. This is more like the time I got out of kernel development for a while because I needed to write a little tool called "git". I need to take a break to get help on how to behave differently and fix some issues in my tooling and workflow.
And yes, some of it might be "just" tooling. Maybe I can get an email filter in place so at when I send email with curse-words, they just won't go out. Because hey, I'm a big believer in tools, and at least _some_ problems going forward might be improved with simple automation. [...]
It was a good run...
Any time someone decides to do something for self-improvement, it's a good thing. Good for you, Linus.
I thought April fools was, you know, in April
In all seriousness, if this is actually true, good on him. It takes a big person to admit being an asshole. Takes a bigger person to actually change. Time will tell I guess.
Why do you falsely presume that he'll stop caring solid engineering just because he stops being an assholish aspie? The two are not mutually exclusive in any shape. Instead of being a dick, he can provide constructive criticism and mentoring instead to motivate people to actually want to continue working on the kernel.
And yes, some of it might be "just" tooling. Maybe I can get an email filter in place so at when I send email with curse-words, they just won't go out. Because hey, I'm a big believer in tools, and at least _some_ problems going forward might be improved with simple automation.
It's heartening to hear that Linus is getting more self-aware. Another option he might consider is having someone else give his emails a quick review to ensure the tone aligns with his desired response. Sometimes the words in your head just don't sound the same when read by others.
I don't personally mind Linus being a bit abrasive (and let's be honest, it's lead to some pretty funny quotes over the years), but I think the overall approach is a good one and that Linux would not be as good as it is today if he let substandard code into the system. Hopefully he's able to keep the same tough stance on quality while being able to communicate it more effectively.
However, there are still some people that should just be told to straight up piss off however since dealing with their crap just isn't worth your time. They can always fork the project if they really want to do things their own way.
but I think the overall approach is a good one and that Linux would not be as good as it is today if he let substandard code into the system. Hopefully he's able to keep the same tough stance on quality while being able to communicate it more effectively.
Why do people act like a project would be forced to take in substandard code just because the maintainers aren't allowed to be assholes? Constructive criticism and mentoring can be used just as well in place of being a dickish aspie.
Probably not. Linus did once quip that all of the projects he made were named after him.
Counter argument: Was he a dick to competent people who screwed up and fixed their error? Or just to the ones who screwed up then tried to justify breaking the rules and he slammed the point home?
I suspect you'll find that the latter is much more common in LKML.
In any case the core point is that if you want a truly quality product, regardless of the industry, goals and results take precedence over "feelings" in any form or fashion.
The real news here isn't that Linus decided to get some therapy.
The real news is that Linux, the project, adopted the "Contributor's Covenant" code of conduct and thereby acknowledged SJW ideological supremacy. The CC is an SJW vehicle promulgated by Coraline Ada and a related group of activist malcontents. While the CC appears on the surface to be a call of civility, it's actually the tip of a very long and exsanguatory anti-meritocracy spear, one that ultimately seeks to elevate high-verbal-IQ non-technical politics-playing San-Francisco-residing cliques of social justice advocates into positions of recognition and authority in the free software world and beyond. If you write code and you're good at it, these people are a direct threat to your status, your hobby, and your livelihood, because if these people get their way, your technical excellence becomes secondary to their wokeness.
These people also admit, quite openly, that they use out-of-project CoC enforcement as a means to forbid FOSS contributors from supporting certain political positions. Check the HN thread. They're gleeful. They have a scalp and they're showing it to everyone.
This is a very curious move from Linus. He's previously been so adamantly anti-tone-policing, anti-SJW, and pro-meritocracy that I can't help but wonder if he is in fact being blackmailed or coerced in some fashion. Back in 2015, ESR reported that the tech-SJW community was attempting to frame Linux in some fashion. My personal hunch is that Linus got complacent about operational security and eventually got caught in an SJW trap. I don't fault him. If you or I were put in a position of swearing fealty to Coraline Ada or being forced by a Twitter mob into giving up maintainership of a project that we'd worked our whole lifetime to force into existence, we might also choose to drop to our knees, kiss the ring, and get woke.
Of course it won't work, since blackmailers are never contented. But in the heat of the moment, it doesn't feel that way.
This is a very sad day.
Who would have thought he wasn't the overly emotional touchy feely type?
Being that way is OK. It is time that the touchy feely types stop trying to force those that aren't into what they think we should be. It is the same problem as extroverts vs introverts where introverts often find extrovert behavior out right offense but won't say anything about it.
Maybe the group that has the longest list of accomplishments can tell the other group they are wrong.
Why do people act like a project would be forced to take in substandard code just because the maintainers aren't allowed to be assholes? Constructive criticism and mentoring can be used just as well in place of being a dickish aspie.
One person with high standards is another person's "dickish aspie."
One person's constructive criticism is another's micro-aggression, sexism, racism, or whatever negative-label du jour used as a club. Projects aren't forced to take in substandard code but some projects have experienced severe losses by trying your approach and giving an inch. Take firefox as an example.
Sometimes when someone who shouldn't screw up does so with blatant disregard for the priorities of the project, it's useful to flame them to remind other people NOT to do the same thing.
One example is from about six years ago when Linus reminded everyone very crisply that one doesn't change userspace APIs willy nilly and then blame the applications that were broken by the change. I'm pretty sure that his response reinforced in many developers' minds that this was simply unacceptable and reminded them far more effectively than an unemotional purely technical observation would have.
Why is there an "insightful" mod and why isn't it "-1"? If I wanted insight, I wouldn't be reading
Huh? The project recently adopted the Contributor's Covenant which was the brainchild of Coraline Ada, queen SJW. Of course bringing up SJW is appropriate in this context. The trend is unmistakable and the slippery slope has begun toward the fall of the high kernel standards.
For starters, a computer acts for more like a "dickish aspie" than Linus ever will.
Furthermore, actual aspies make good code testers, and often good programmers.
Also, a hostile environment may actually be preferable, because it keeps the lowest common denominator higher.
Finally, I have to say there's a bit of irony in you describing Linus in a way that denigrates the autistic, while Linus himself has not used criticism in such a bigoted way. By the very notions behind such community conduct standards, you need to take a break before he does.
This is my signature. There are many like it, but this one is mine.
Why do people act like a project would be forced to take in substandard code just because the maintainers aren't allowed to be assholes?
Because we've all worked at companies where substandard code is routine due to a culture of passive-aggressive nonsense.
It's very easy for people to get lazy and for code to just get worse and worse if people are not called out over letting standards slide.
"There is more worth loving than we have strength to love." - Brian Jay Stanley
Quick, make a copy of the kernel sources, we are going to see all kinds of SJW BS in the mainline now!
Most ACs are not even worth the keystrokes to insult them. Be generically insulted by this and ignored otherwise.
I think it takes a certain kind of person to manage such a project, Linus needs to be Linus, nothing needs to change in my eyes. What he says or does seems to get the results we all need and that is more important than people enjoying everything he says. We all get offended but we move on from it, Linux will continue with or without Linus telling some someone to shut the f**k up but it just how he is. I would hate him censored and calm
There's a balance. Too much of either flame or light-treading can lead to problems. The most difficult situations are where there is a mismatch of culture among individuals. i.e. where remarks that are not actually offensive are mistakenly taken as such due to poor wording and because people are expecting fire or where softening the language around a critical issue leads to it being not taken seriously by those expecting more fire.
As far as this case goes specifically, I have always had the impression that Linus was a little on the flame-y side but much in the same way that all drivers in San Francisco are jerks -- if you don't drive that way you're actually more likely to cause an accident because everyone is expecting it. But honestly I don't read enough lkml to know for sure. There is a line between flame and abuse, and if that gets crossed too often then there are problems.
(Cross posted from twitter here: https://twitter.com/gehrehmee/...)
Just read Linus' LKML email that he's taking some time off kernel development to "get some assistance on how to understand people’s emotions and respond appropriately".
Good on him. It's an example many of us in tech can learn.
I especially like how he compares this time off kernel development to his time he took off to go work on git. It's important to collaborate with your community, to be a *good person* -- but it's also important from a productivity and efficiency angle.
Investing energy into one's tooling, whether emotional awareness, social skills, communication, collaboration, verbal, written word, or tech/code mechanisms, is critical for anyone trying to be a balanced person that delivers the most they can at the things they care about.
Investing energy into one's tooling, whether emotional awareness, social skills, communication, collaboration, verbal, written word, or tech/code mechanisms, is critical for anyone trying to be a balanced person that delivers the most they can at the things they care about.
This kind of *investment* is all too easily and all too often looked down upon.
It should be celebrated. It should be taught (in post-secondary settings even!). It should be expected.
It should be normal.
"You know, Hobbes, some days even my lucky rocketship underpants don't help" -- Calvin
Linus' attitude isn't the problem, at least not directly. If you go review his legendary rants, he almost never attacks a person, he attacks behaviors. He attacks stupid things that people do. The real problem is when maintainers emulate this behavior, but miss that detail about not attacking people.
When all you have is a hammer, every problem starts to look like a thumb.
This is Linus figuring out something that's been obvious to outsiders for a long time: sometimes he can be kind of a dick. That's not 100% bad, and it certainly doesn't make him a bad person. And on the scale of dickishness, it's not like he's that far out on the tail end.
But now he sees it, and it's made him ask a really smart question: is this really how I want to be?
There's lots of dickish people who are basically good people who just can't grasp why people react negatively to being treated abrasively or disrespectfully. And to be fair there are a lot of unreasonably sensitive people out there, about as many as there are unreasonably dickish people. But when most people have a problem with you, for example if they have to treat your behavior as a special case, then problem isn't most people. It's you.
Post may contain irony: discontinue use if experiencing mood swings, nausea or elevated blood pressure.
Not talking about me. Talking about somebody far smarter than me making sure I don't checkin terribad code.
There's a Zen story which bears on this.
A farmer had a wife who was so tight-fisted she never let him spend any money, even money he needed to run the farm. So he told the Zen master his problem and the master told the farmer to bring his wife to him.
As soon as the wife walked in the door, the master shoved his fist right in front of her face. "What would you say if my hand was always stuck like THIS?" he demanded.
"I'd say you'd had a deformed hand," the wife said.
"And what would you say," the master continued, shoving his open palm in her face, "if my hand was always stuck like THIS?"
"I'd say you had a different kind of deformity."
"Well, then," the master said. "You seem to know everything you need to."
Now my natural disposition is to be accommodating, but over the years I have learned sometimes you have to be a total intransigent bastard. Being a bastard shouldn't be opening move, and being nice shouldn't be the only move you have. You need to adapt the needs of the circumstance.
Post may contain irony: discontinue use if experiencing mood swings, nausea or elevated blood pressure.
I don't know if Linus is getting in front of something or if he's truly seen "the error of his ways" but this sure seems like a re-calibration of behavior to fit the "new normal" of PC. Age can do that, sure. But one has to wonder if maybe we're reached the point in our society where the collective opinion of the moment is overpowering the individual. History shows that doesn't end well.
Once again, you are confusing high standards with negativity. That generally happens with people who are a lot less smart than they think they are.
That entire passage screams SJW. Especially the "harassment-free experience" part. The problem is, that regardless of intentions, the measurement for that statement is purely subjective. It leaves open the idea that if an over-sensitive person has their feeling hurt, they've been harassed. Once the poison of such a statement gets traction, everyone has to be overly cautious and always looking over their shoulder. It's no longer a "open and welcoming environment" for most, except for the over bearing SJW types that believe they own the definition of what's acceptable. Anyone that doesn't adhere, or shows some natural human flaw, becomes harassed by the SJWs that claim to be against harassment.
Why do people act like a project would be forced to take in substandard code just because the maintainers aren't allowed to be assholes?
Because I've watched it happen. When everyone knows daddy is going to scold you if you screw up, you try really hard not to screw up. Quality stays high.
The alternative is people know they won't get scolded, so they not only commit shit to start with, but then they want to debate how bad the shit stinks when there's push back. Then they throw a tantrum when the merge is denied. "I worked a whole hour on this. I spent my time and effort!" Before long, they've worn down the maintainers who get tired of their shit and leave for another project. The gates of hell open onto the project at this point. Shit begins to flood in and nobody can stop it.
This is especially bad on large projects like Linux. Everyone will push bullshit commits trying to get "Contributes to Linux Kernel" on their resume.
Linux is officially done. I'm already looking for an alternative.
Comment removed based on user account deletion
If you go review his legendary rants, he almost never attacks a person... He attacks stupid things that people do.
Yep.
And problems ensue when someone on the receiving end automatically assumes that "This is a stupid thing to do" equals "You're a stupid person", which I don't believe is (usually!) his intention at all.
Il n'y a pas de Planet B.
Somehow people seem to think it's only possible to enforce high code standards by treating other people like crap. Which is really weird.
Except most people don't enjoy working in a culture of fear for very long. It's likely to drive away a lot of people who would otherwise contribute quality code.
Not really. There's a pretty clear dividing line.
"This code is bad for technical reasons X, Y, and Z. I'm not accepting this until this is fixed", is plain and simple.
"Also, you're a fucking moron and should have been retroactively aborted" -- now this is absolutely non-technical and unnecessary.
We can have the first and not the second with no problem whatsoever.
As far as I know Linus has only ever exploded at people who have ignored previous warnings/questions about their code or behaviour.
And basing your code of conduct off someone who is openly anti-meritocracy is a real red flag for any technical project. The old CoC was just fine; enforcement perhaps could have been better. Some people here are asking "Why do you think that he'll stop caring solid engineering just because he stops being an asshole", but the new CoC includes requirements that are not at all technical nor are even normal conduct in real life (who do you know who never uses sexual swear-words?) so, assuming that someone falls foul of these sort of fluffy-unicorn requirements the project may no longer have the option to accept the best solution because its author is not acceptable.
No one is suggesting that any project should accept unrelated abuse from one dev to another, even from Linux. But it must accept that actions which affect the project's quality will, if continued over time, eventually attract a strong response from the guy in charge. And, yeah, that might include swearing and telling you that you're not the centre of the universe and that you have become a problem. Dry your lamps and shape up.
The Linux kernel is a construction site where getting things wrong can literally kill someone someone down the line; everyone involved should be wearing metaphorical hard-hats.
"Encyclopedia" is to "Wikipedia" what "Library" is to "Some people at a bus stop"
Somehow people seem to think it's only possible to enforce high code standards by treating other people like crap. Which is really weird.
Maybe you've never been good at anything and done it at a high level. In just about every aspect of society where there is an "elite" of something (could be ballet or sports or trading stocks, etc), being part of that higher unit has some good points, but a constant pleasant social interaction is never one of them for anything but monks.
"Those that start by burning books, will end by burning men."
Pop quiz: who deserves respect?
Answer: everyone.
No, that would be dignity. Everybody starts with it and I can only be harmed by your own actions (i.e. by undignified behavior). Dignity is an unalienable human right.
With respect, it's the other way around: Nobody starts with it, it has to be earned and it depends on how other people view you and thus only indirectly depends on your own actions. You have no right for the respect of other people.
ignatius
If you go review his legendary rants, he almost never attacks a person... He attacks stupid things that people do.
Yep.
And problems ensue when someone on the receiving end automatically assumes that "This is a stupid thing to do" equals "You're a stupid person", which I don't believe is (usually!) his intention at all.
Intentions don't matter, perceptions do; if people feel they are being attacked they will rect as if they are being attacked, even if that is not the intent. It's draining. I worked for someone who was nicknamed Flash because he would go off over some stupid little thing and berate you; only to latter come by and apologize. I knew he really wasn't a jerk but that didn't matter after a while so I left as did others. You can explain why something isn't a good idea without going into a rant about it.
In his defense, when you are trying to drive a vision that may not have broad support you need a forceful personality that will not give up on the vision or let it be hijacked. That will often ruffle some feathers along the way. The hard challenge is realizing when that style is becoming counterproductive and adapting or ceding control to someone whose style is better suited to the project.
I'm a consultant - I convert gibberish into cash-flow.
Ah, yes. The great Democratic tradition of "my way or execution". As practiced by the democratic movements of the modern West, in imitation of their pioneer, Robespierre.
"Flyin' in just a sweet place,
Never been known to fail..."
"Aspie" doesn't imply "dickish." The difficulty we have in reading emotions, unless they are very well spelled out (and sometimes even then), can manifest in a much broader variety of ways. For instance, I certainly can be a jackass, but, much more often, I fall quite far on the opposite end: trying to delay conflict, even when it is inevitable and when delay is only going to make it worse. Sometimes I wish I could just tell off people - not in a purposefully rude way, but direct and clear and just as blunt as it needs to be, though not drastically more so. I generally can't. Usually because by the time I'm ready to do so, the situation has already escalated beyond the point where nothing short of full-blown "dickishness" is likely to achieve the hoped-for results. I've seen this same thing in others throughout my career as well. Some people whom we call "high-functioning" actually manage to get it right most of the time, because even though they may not understand other people's feelings much better than others near us on the Aspie spectrum, they've learned ways of dealing with "normals" that don't stray too far in either direction.
Nonaggression works!
Say what I want you to say or else???? Who is practicing, "My way or else"? Curtailing freedom of speech is the first step towards tyranny. Tyranny, should and must be met with violence.
But he should not change. He should continue to be the dipshit that he is because we all are better off with his fucktard attitude.
Linux will just be a fuck stain without him being a fuckwit about everything.
Fuck you
You're welcome.