Linus is stubborn, persistent, and unyielding to what he sees as bullshit. These I believe are all very valuable qualities for the head of a massive software project, and may be part of the reason as to why Linux is where it is today.
However, Linus is also a bit of an asshole, turning technical criticism into personal seemingly personal attacks. I believe those 2 sets of qualities are separable, but I would guess it's uncommon to find many people who are capable of being as tough as Linus without in some way alienating those around them, it's a fine line at times.
Anecdotally, one of the most effective engineers I worked with, who asked penetrating questions during code and design reviews, did come off as a bit of an asshole at times. Whether by genetics or through childhood, I'd bet people tend to cluster onto the line separating "agreeable and lax" and "rude but firm" (as a sweeping generality). We often label people who are all smiles while simultaneously extremely strict as passive agressive. Add to that the fact that many technical people are less socially adjusted than average and I can see why we have so many examples of mean but effective project leads.
I'd bet people tend to cluster onto the line
separating "agreeable and lax" and "rude but
firm" (as a sweeping generality)
Consider this:
A third category of people who are able to accomplish their goals by rallying others to their cause. They are essentially imposing their will on others, but are able to do it in a way that is not "rude." This is called charisma.
- "Agreeable and lax"... you allow them to paint the fence however they want, even if their work is shoddy. you may wind up doing it yourself because you don't feel comfortable enforcing your will on others. or perhaps you just wind up with a crappy looking fence.
- "Rude but firm"... you don't care about others' feelings and force them somehow to to paint the fence to your specifications. either by physical force, economic force (you have money they need) or some other means
- "Charisma"... you convince them that painting the fence the way you want it painted is the best possible thing they could be doing. they willingly paint it for you because they believe it is a good cause and a good use of their time. (note: this does not necessarily imply dishonesty or trickery. arguably, the most charismatic people might be those that are true believers)
Somewhat tangential, somewhat related: Sun Tzu wrote that the most perfect form of victory was adding the enemies' forces to you own by convincing them to support your cause.
You gain followers when you work for a the benefit for others.
You lose followers when you treat people badly.
Belittling people in a public forum is bad behaviour. I'm amazed its taken so long for the penny to drop. This is in any half decent company's Anti-Bullying training. It's not like you need to be particularly empathetic to learn this stuff.
Is anyone really rallied to the cause by Linus himself? I think the product is the only real draw. With the exception of a select few that simply want to work with someone as high profile and legendary as Linus.
He's not just stubborn, persistent, and unyielding: he's performatively so. In his most notorious attacks, he's clearly playing to an audience. That could be the problem. He clearly can separate the blunt stubbornness ("we do not break userland, period") from the performative rudeness ("SHUT THE FUCK UP MAURO").
(I mean, to be clear: what the fuck do I know? I've never been in the position Linus is in.)
I received a master's degree from an art program in which the (male) professors had a great deal of license to performatively take down students, from the initial admissions interview through two years of group critiques. It wasn't unusual for a professor to reduce students to tears. Graduates of the program brought this culture to their own teaching.
Recently I worked at a school whose critiques were set up explicitly not to replicate this harshness. I discussed this with a few friends from grad school, and we were mystified: "How can anyone produce good quality work unless they are constantly being torn apart?" "Is there another way to learn besides being humiliated?" Which led us to look at each other and think, well, we certainly don't choose to live that way otherwise.
And that is the question -- and maybe we'll discover on lkml: is there a better way to create something remarkable. And to replicate that behavior in whatever projects we take on.
> He clearly can separate the blunt stubbornness ("we do not break userland, period")
For what it's worth, he doesn't even avoid breaking userland. Off the top of my head, we had a problem at work a few months back where kernel 4.3 and below rounded up listen(fd, 0) to something nonzero, kernel 4.4 didn't, and a piece of commercial software was (inexplicably) using listen(fd, 0). https://ldpreload.com/blog/git-bisect-run is a post I wrote about tracking that down. (We're slow enough at kernel upgrades at work that it didn't seem worth reporting the regression upstream several releases later.) Also last summer Linus himself merged a commit that very intentionally broke a userspace feature that he didn't like but that Julia and rr both depended on, and got a very polite email (https://lkml.org/lkml/2017/5/29/541) requesting that the behavior be reverted, to which he replied:
Oh, we'll just re-instate the kernel behavior, it was more an
optimistic "maybe nobody will notice" thing, and apparently people did
notice.
which sounds like planning to break userspace to me.
I think that saying he could still be stubborn without being rude is doing everyone a disservice. It's clear that "do not break userspace" isn't actually a rule, and while it's a lot better than cursing out people in public, saying a fake rule very nicely is still going to hurt people, drive away contributors, and fail to attract enough eyeballs to make a high-quality product.
There's a bit back story there, so as a fun historical note, let me recount it here. In 2016, there was the Dirty CoW exploit (CVE-2016-5195), which got fixed by Linus in 19be0eaff [1]. Unfortunately, in that patch he forgot about transparent huge pages (they're easy to forget ;), which caused processes to lock up if you were using FOLL_FORCE on a memory range that happened to be backed by thp. That patch was widely backported to stable kernels, so I soon noticed my processes randomly freezing on various Linux machines. With a bit of debugging, I sent in a patch to fix that (https://lore.kernel.org/patchwork/patch/748110/), though I'm not sure that Linus ever saw it (or I guess he could have assumed we were using ptrace). Nevertheless, I assume that this being a common exploit vector for DirtyCoW made him want to remove it. As a result that was of course the second time within the course of six months that this stopped working (plus Linus' fault both times), so that email was written from a bit of a "you've got to be kidding me" mindset.
As an addendum in writing this comment, I became aware that my patch to fix FOLL_FORCE with thp actually re-introduced a version of the original DirtyCoW exploit apparently known as HugeDirtyCoW (CVE-2017–1000405) [2] - or rather my interacted badly with a pre-existing mistake in the thp code and caused this. Oops.
Is there an idiomatic phrase for the opposite of "damning with faint praise"? Praising through faint damnation? Maybe the "exception that proves the rule"?
I've always assumed that when he really goes after someone it was him blowing off steam to maintain his own mental health rather than trying to put on a show. He's been managing a pile of complexity for over two decades that would have crushed most of us long ago. If it has been even moderately for show then sure, he should work on dialing it back (just a bit... i.e. short of getting personal).
See, I felt like I was giving him more credit by saying that his rants were performative: at least that would have an ostensible purpose. If you're abusing other people to "blow off steam", that's kind of a no-brainer "you should go see someone about not having to do that anymore".
You're right about it (objectively) being a no-brainer. Unfortunately, it's often hard to see things objectively from a first-person perspective. It sounds like Linus is acknowledging there's a problem and hopefully he can work on whatever the issue is without shaving off too much of the edge that makes him so effective.
He said that he was going to get professional help. I doubt that a dose of empathy would take off his edge. I'm expecting that he'll come back a much more effective leader.
Twenty years is pleanty of time to realise the impact of behaviour. I've seen his noteable rants posted here and on Reddit for years. There no way he didn't know.
I think he has known about his behavior for a long time, and someone with influence has explained the impact.
There are a lot of ways to blow off steam. If the way one picks is performative public abuse, then it's not just about relaxation. One can maintain one's own mental health without damaging that of others.
This is the interpretation that makes sense to me - his rhetorical choices are intended to communicate the gravity of the content of whatever he’s saying to a large group, not just to the person he’s immediately replying to, or even lkml.
Commenters here and elsewhere frequently compare his interaction with maintainers to a code review, or similar, and proceed to excoriate him on that assumption. Rather, he’s managing a team of managers whom are all (successfully) guiding the resources of dozen(s?) of (more or less) competitors, none with a strong natural interest in giving away software, and each using and contributing to the kernel only insofar as it benefits themselves toward a common mutually- and societally-beneficial end. That doesn’t justify his rhetoric, but it may have made it an effective communication strategy
Yeah, I think that there's a line between being terse and assertive vs seeming to derive pleasure from going off on people. It sounds like Linus is recognizing that here and hopefully works on it some.
It doesn't exactly count as insight to observe that there's value in minimizing bullshit. Meanwhile, Linus just got done explaining to you why he's unhappy with the balance he's struck there.
You're claiming is (and the common trope is) the actual distribution is in fact a straight line with a -1 slope (y=-x). I think there's a general possibility that the distribution is focused around the y=-x here, but there are outliers (imagine the line blurred out) with some wings escaping the lines, with probably what people want the most being in the 3rd quadrant (y<0 && x<0).
And hell, there are people who are both abrasive AND ineffective in real life. We know that.
To take it one step further, I'd say that it's more of a probability function than a 2d chart. I think of it more as your chart, plus a 3rd dimension of "context", then a density cloud.
Put another way, people have probability distributions of alignments based on context.
If you populate these quadrants most points might lie in QII and QIV (along the -1 diagonal) with few in QI and QIII (though maybe we all know many QI's in our lives...).
I think that's obersavtion bias. We tend to remember people who are either abrasive or ineffective. The former because their behavior stands out and the latter because they tend to get in our way. People who are effective and kind tend to be forgettable because we get exactly what we want without any conflict. It just magically appears to work.
Newton was an asshole too. The whole "apple fell on his head" story came about because he was so mean to people.
I won't say that most geniuses are inempathetic, but many are. Einstein wasn't, some say Gauss was. Beethoven was. Linus is. And we'll accept Linus's attitude for being an aversion to bullshit, just the quality that we need in a kernel maintainer.
I'm glad to see that Linus finally realizes that he has a problem, but truth be told I'd selfishly rather that he keep his problem because I doubt that he could steer his ship without it. I hope to be proven wrong.
Newton was an asshole in an era when men being assholes was, in essence, acceptable. There is no evidence that being an asshole is a requirement for being a successful innovator or leader.
It takes effort to be not be an asshole because you have to expend energy to model and simulate the feelings of others outside of you. That's an objective fact. Being a genius may require not expending such energy.
Of course there are other geniuses that find things easy and they behave very nicely, but then they may not be reaching their "true" potential, heh.
It's really quite surprising how much energy/effort can be required to wind back that lizard brain in all of us when we're particularly agitated.
It's really hard to respond effectively when someone is doing the WRONG thing or they completely misunderstand your stance & modus operandi.
It takes a lot of effort to mentally model the other parties in the conversation and generate the empathetic response that hopefully is interpreted by the others in exactly the way you intended, so that everyone is back on the same page. An impossible endeavour.
Its an analogy, not a classification. If you want to go by that logic then no one can be in the same category as Newton as he was the ultimate genius who revoutioned maths and physics singlehandedly.
No, because that would be an insult to Linus. Newton had a bunch of clever insights but he was also convinced that the christian bible was an elaborate cryptic code which could be deciphered to predict the future. Total nut job.
Linus's revelation kind of looks like he has been infected with "feels over reals" postmodernism. Not a good omen for engineering where reality needs to come first.
Modernism is Descartes` "I will find a single indisputable axiom and can prove everything knowable from there." His axiom? "Cogito ergo sum."
Postmodernism is rooted in the notion that there is no indisputable base axiom from which we can build our understanding of the world. It's unprovable assumptions all the way down. The consequences for this, if you accept it (you don't have to, but you're going to have a hell of a time proving you're right), are ENORMOUS and affect virtually every field of human understanding.
In the sciences we tend to start from the assumption that what we measure is real. As a practical matter, that's fine, but there is no sound rational basis for that assumption. It's an unprovable assumption.
All of our value systems (and by extension, our social systems) are founded on unprovable assumptions.
This is the essence of postmodernism, in so many words. There are no sound assumptions. The best we can do is say what follows from one assumption or another, but we can never say which conclusion is right because we can never say which assumption is right.
The implications of this can be particularly disturbing for rule-oriented individuals, but that doesn't make it wrong. It's irrational to claim that some assumptions are better than others without some basis (in which case, they are no longer assumptions).
I think you are giving postmodernism too much credit. It's whole premise is a non problem. Looking back on it's history, it's a politically and religiously motivated ideology to push anti-enlightenment values that coated itself in esoteric language to avoid scrutiny. It'd not a well thought out philosophy, because they reject the very thing that would allow that to happen, reason.
Empiricism solved this issue. You will very quickly learn if your assumptions are wrong by testing them in reality. This is what is meant by "feels over reals" and the opposite. Your assumptions, beliefs, or axioms - no matter how fondly held - will be crushed under the infinite weight of reality.
In the sciences we tend to start from the assumption that what we measure is real. As a practical matter, that's fine, but there is no sound rational basis for that assumption. It's an unprovable assumption.
Can you show that what we measure is not real? If you can’t prove anything one way or the other, who cares? Why even bother with this line of thinking?
If you subscribe to postmodernism then there is no such thing as an 'irrational' claim. All of the observations and logic another person may be using to make the claim are all equally likely to be valid/invalid and claiming otherwise is just forcing your opinions of truth on them.
The fact that no axiom stands by itself does not change the fact that when you subscribe to a set of axioms, you can't deny their consequences. What is rational merely changes, and honestly, the older definition always felt kind of crazy.
If you're looking for a science-ish expression of postmodern insight, consider the line from statistician George Box: "All models are wrong, some models are useful."
This isn't particularly shocking to anybody familiar with the history of science. Newton's model was wrong but useful, for example. All software is wrong but useful models of the world. (Well, some of it is wrong and useless, but you know what I mean.)
Postmodern analysis comes from different fundamentals, and they do enjoy wordplay. They're also much more concerned with social models of reality, especially implicit ones, and how power affects and is affected by the models in use. Sturgeon's Law applies, of course, but no more so than anywhere else.
Agreeableness in general is negatively correlated with career success. Have you noticed that Fortune 500 CEOs tend to be extremely disagreeable, to the point of psychopathy in some cases. At the risk of sticking my neck out, it's also one of the many reasons for the gender pay gap, woman are more agreeable than men. And you have to be somewhat disagreeable to stand up for yourself and demand a raise (or quit and seek a better paying job.) But on the average it's a relatively smallish difference and only accounts for a small part of the pay gap. The biggest component of the pay gap is the difference between mothers and non-mothers. I've heard it said that woman who are not mothers earn 95 cents to every dollar a man earns. But I don't have a source on hand, so take that with a grain of salt.
I've heard it said that woman who are not mothers earn 95 cents to every dollar a man earns.
What I have read is that in the US, women who are childless and without a man earn 98 percent of what men with comparable education and experience make. My stats are probably out of date, so 95 cents on the dollar may be more accurate.
Just suggesting it probably isn't terribly far off, from what I gather, having read up on such a fair amount over the years due to my gender.
There isn’t some function we can feed a different argument here to value agreeableness more highly though. I generally agree, but that more collaboration would be good isn’t so much the question - the question is HOW these tweaks can be done.
As a start, we could stop exalting and rewarding powerful sociopaths.
And slowly, I think, we are. E.g., the MeToo movement has forced some powerful sociopaths to face at least a small amount of accountability. Rich people at least occasionally go to jail if their crimes are egregious enough.
Perhaps more importantly, there is lots of evidence that exclusively male environments seriously amplify the effect and make aggression a fundamental part of the culture. Even very aggressive men tend to behave differently in mixed gender groups.
They would have to get themselves in such positions thus this is yet another place where it sounds nice to say but in practice it doesn't seem to be working. Atrificially placing them would harm the work force yet them making their own way seems to be also rather difficult thus we're stuck in a wonderful situation were it's not exactly clear how to get there.
There's also the change that this is not the solution as certain positions do require some form of aggression unless you're willing to persuade the other companies in different countries from the one you propose the change in to do the same. Otherwise it may prove to be a disadvantage even to have a more "argeeable" person in such a position.
I would love for the solution to be as simple "get more women into power" but as it currently stands from my perspective, we have deeper issues to deal with where it doesn't matter if it's a woman or a man. I'm open to be proven wrong though.
Many people are so afraid of ending up in the bottom right (just giving in) that they head for the top left (zero-sum competition).
This underlies some of the things people fear about codes of conduct; they're afraid that they're being pushed into that bottom right corner, rather than striving for better collaboration.
Be direct. Be clear. Seek the best solution. Don't be awful to people while doing it.
The problem here is that the "Collaborating" sector is the wrong goal for the Linux kernel. Linus Torvalds is uniquely qualified to be concerned about matters concerning the kernel; if his interlocutors "win" too much on their side of the "win/win", every user loses.
The public embarrassment of lazy and dishonest actors, especially those who are paid to collaborate, is an effective tool for maintaining order and standards on behalf of the quality of the product, and provided nobody gets hurt permanently at the end of the day, it is easily justified.
> if his interlocutors "win" too much on their side of the "win/win", every user loses.
You seem to be trying to find a way to turn this back into "win/lose".
Try another interpretation.
For instance, a patch might call attention to a problem, but it takes the wrong approach to solve it. Could we find a better solution to the problem?
Nobody is suggesting giving bad code or bad ideas a pass. Are you under the impression that it's impossible to reject a patch or give technical feedback without being brutal or toxic?
A large chunk of frequent contributors are paid by companies to heave features/drivers at the kernel with no regard to doing it the right way. To them it's about landing code ASAP.
Linus is already working in the win/win quadrant by default by merging these things all in the name of making the kernel better.
Occasionally a frequent contributor who has gained trust will start to merge trash in the name of meeting deadlines. This is usually when linus loses his shit at the people responsible.
This has nothing to do with a silly quadrant of being competitive/neutral/anything towards the collaboration itself. Linus is still looking for a win/win, but he's requiring people to fix their shit.
That quadrant is irrelevant about Linus's behavior because he's always collaborating. What you need is a quadrant describing how feedback is delivered to subordinates.
I think generally you're right, but the comment you're replying to has something to it as well. If two parties are not "equals" in the arena they are in, things get Complicated. I'm not sure true collaboration is possible in situations where parties are on such uneven footing (and I mean this in the abstract sense as well: I don't think the model you've presented is complete as is does not give you a productive way to structure this kind of relationship).
In the situation where Linus is far more qualified, and obviously so, and someone is trying to get him to "approve" a patch, there's no way it's ever really going to be a truly collaborative dynamic.
This doesn't mean Linus has to be a dick about it, but it's definitely not collaboration between equals.
The public embarrassment of lazy and dishonest actors,
especially those who are paid to collaborate, is an
effective tool for maintaining order and standards on
behalf of the quality of the product, and provided nobody
gets hurt permanently at the end of the day, it is easily
justified.
Can you explain why you feel rants and insults are necessary to maintain high technical standards?
Literally nobody is asking Linus to relax his standards for what makes it into the kernel.
I suppose the theory is that fear of embarrassment makes people put in extra effort before submitting anything. This would reduce the time spent politely rejecting submissions.
Gotta stop you right there. Hero worship should not be considered a good thing in our industry.
The kernel subsystem maintainers, who actually review the code prior to getting it merged, are the ones with the real power and the necessary knowledge, and I'd argue they are more qualified to oversee the project's future than Torvalds.
2) Known to be mainly motivated by technical concerns
If you role the dice with another governance structure, you might get one that is motivated by "collaboration" and then the integrity of the kernel might get compromised by corporate interests. We have no idea how the subsystem maintainers would deal with the politics of a situation without Linus calling shots. We know how Torvalds reacts; rudely :P.
The choice isn't ever going to be Torvalds vs. Sunshine & Roses, the choice is Torvalds vs. Unknown. Because of that, he is practically (but not technically) unique.
I am in complete agreement that Linus is one of the best we have, and I personally think it would be a huge loss if he were to pull back from the project, and not only for technical reasons. Without sounding like I’m engaging in hero worship, I think him being around is usually positive. However, I’m not convinced—and it would seem he isn’t convinced either—that treating other humans as if they’re inhuman is a fundamental part of what makes him him.
I don’t know how we ended up at a point where we believe the only way to tell someone “No” or “You need to do better.” is through incredibly aggressive interactions. I suspect it’s just another hold over from a different time period, and we just never asked “Why?”
It sounds like he believes that treating other humans with respect won’t shatter him and I tend to agree with this assumption. His fundamental personality won’t go away and his skills certainly won’t suddenly disappear.
I’m interested to hear more regarding your comments about corporate interests. While I strongly and completely agree that we must resist letting their interests work their way into being driving forces, I’m not clear why some believe his most egregious behaviors are needed to keep these separations of intersts in place.
> Yeah, just like regular employees are better qualified to run a company than the CEO.
I think you could pretty easily adapt Tolstoy's argument to business and say that the primary role of a CEO is to ratify all the on-the-spot decisions his subordinates made as events got away from them.
I think that when a company reaches a certain size and stability level, as long as the CEO is competent and understands how to balance external and internal issues, the particular CEO doesn't matter that much. The real power over product direction comes from the PMs, VPs, etc. That's my argument -- Linus isn't uniquely qualified to run the Linux kernel project, since he's barely even involved in the direction of the project.
Business history & Jack Welch disagree with you. Individual project success is incredibly nuanced and individuals - even in 10k+ orgs - can have massive impacts. Trying to pretend that outliers don't massively influence company success is naive, and MBA programs study these individuals because they are the exception and not the rule.
There's a reason we have Madison Square Garden, Rockefeller Center and Carnegie Mellon. It's not hero worship to acknowledge the contributions of individuals - recognizing a great general doesn't diminish the accomplishments of his army.
I think that's what he's good at. They know they'll get called out if they try any BS so they mostly don't. And sometimes Linus overdoes it, but Linux keeps getting better.
Anyone who can do better can make their own fork. So far, everyone still follows Linus.
> The public embarrassment of lazy and dishonest actors, especially those who are paid to collaborate, is an effective tool for maintaining order and standards on behalf of the quality of the product, and provided nobody gets hurt permanently at the end of the day, it is easily justified.
It may be effective, but aren't there other equally effective alternatives? How are hard situations handled by maintainers of other operating systems/kernels like FreeBSD? Do they also need public embarrassment?
I think this can be further generalized, that there is a tier of talent that we must excuse from having to filter themselves and that this may serve humanity even if it rubs some the wrong way.
This has absolutely nothing to do with Linus winning or losing. Only with how he goes about winning. If he wins an argument in ways that alienate contributors, then he’s ultimately losing. There’s no reason he can’t be assertive without being toxic. I for one give him more credit than that. Calling people names is he laziest and least productive way to argue your point.
This mindset is a bit too fascist for the modern workplace. I still see this attitude a lot, so I think it's good to recognize and call it out for what it is.
I think there's a delicate way to be both "firm" and "polite" - and that's to not be pretend to be "agreeable", but rather to separate the firmness on technical issues from politeness on personal description. That is, to say "this code is awful" while also a) going out of your way to praise the things co-workers/subordinates do well, and b) when it is appropriate to make general judgments on their performance, make it clear that they are appreciated.
The core of the idea of someone being "passive-aggressive" is the idea that you never know where you stand with someone; if you're very clear about what things you're unhappy about and also what you're happy about, that's less of a concern.
For specific structures, I've often heard people involved in military leadership describe a formula of "praise-criticise-praise", which seems to be an attempt to run this balancing act on a personal level. "Whew, this was a big project you got done! This bit of code is absolutely bonkers. Everything other than that looks great to me, though."
Another technique is to make sure that people hear things from you not just when you're annoyed about something, but also when you're impressed. (Or, when you're not super impressed, talk up their areas of basic competence.) That gives you more leeway to criticize bluntly without impacting morale, and also makes people more eager to please. (Yes, a lot of leadership practices are manipulative as hell. Try to manipulate people without destroying their mental health and happiness please, that's super abusive and also counter-productive.)
To me, the most important thing is to a) seperate the person from their product b) be constructive. By that I mean saying "this code you wrote is bad and here's why" instead of "you are a bad coder and you should feel bad".
Much modern management theory recommends against the praise-criticize-praise format, FWIW -- I noticed this while I was taking a required management course at the Mouse. Everyone knows what it is, so you wind up dissipating the value of the praise because it feels like something that you're just saying for the sake of the formula.
This comment is fairly irrelevant to the topic at hand.
100% agree, assertive but kind is a wonderful skill and one which needs to be cultivated. My point is just that for whatever broad psychological reason, this seems to be a somewhat rare trait among very technically proficient people. It's the sort of personality trait that leads people to like and respect you.
I totally disagree that "assertive but kind" is a rare trait amongst the "technically proficient". Anecdotally, I know plenty who exhibit all of the above in spades.
The key is culture. Technically proficient people working within a community where "assertive but kind" is the norm tend to follow that norm.
I'll mention Doug Cutting as the ideal who melds technical proficiency, assertiveness, and kindness. I've often thought of Doug as a better role model for Open Source leadership than Linus Torvalds -- but it looks like after today I'll have an opportunity to reassess!
> Add to that the fact that many technical people are less socially adjusted than average and I can see why we have so many examples of mean but effective project leads.
But why should we assume or believe that the status quo we currently observe is the natural order? Or that it is the optimal one going forward? Many people who are now project leads started in a time when both computing and computers were far less ubiquitous in the world. As the world that software interacts with continues to grow and change (or, to use the cliche, as "software eats the world"), we should expect that how software is made, and who makes it, will change too.
To think of it another way, it's well-known that decades ago, women dominated the nascent computer programming field -- e.g. the first of ENIAC's primary programmers were all women [0], and "software engineering" as a concept was coined by NASA lead engineer Margaret Hamilton. Those who want to believe that systemic and societal bias weren't significant in pushing women out of the field as it became more lucrative, have suggested that women left because programming became much more than...well, whatever it apparently was when it was entrusted to women.
So it shouldn't be beyond belief that contemporary programming and software development may be even better served by engineers and developers who put an emphasis on empathy and inclusiveness.
>Anecdotally, one of the most effective engineers I worked with, who asked penetrating questions during code and design reviews, did come off as a bit of an asshole at times
Those are simply the people that stand out. It's harder to appreciate professional and nice leadership because if it works it does not even stand out.
If we just take some of the most successful businesses, projects or ventures around and look at their leaders, are most of them abrasive or rude? I wouldn't say that's true. There are certainly some, but they seem to stand out negatively rather than positively, and there is very little to rudeness that actually helps running human organizations.
It's popular to like renegade stories, but Linus outbursts don't improve his leadership, he's a good patron of the Linux project despite of and not because of it.
Not every person that _starts_ and _makes_ a project successful grows _with_ the project. Being the person you were yesterday doesn't guarantee that fit the pattern tomorrow. I think that Linus should be the person to make this call. Perhaps Linux is where it is today because of Linus's low tolerance for BS, and he just notices that the components of the 'old' Linus are no longer acceptable/necessary going forward.
I too believe those 2 sets of qualities are separable. I'm less concerned about that fact that Linus' exist as I am about the fact that some of those traits are often correlated with success, and people idolize the successful ones without separating the 2 qualities. I've seen people emulate Steve Jobs to the point of dressing like him and using his mannerisms during presentations, and then also lash out at colleagues for not meeting some arbitrary quality bar with vague comments about it not being perfect enough. Assholes often make it to the top. You gotta admire the parts of them that aren't assholes.
It really does depend upon what you are trying to achieve. I'm not familiar with the operation of the Linux kernel team so my comments are more from experience with large organisations.
You want your team lead/manager to mentor, encourage guide and assist towards a goal that she has clearly defined.
You want your leads manager to provide the resources your team lead has identified as being needed.
You want the senior (ultimate) manager to set the goals, provide extensive praise when goals are met and come down like a ton of bricks when they are not. He or she is the "boggy man" who must be pleased and carries the big stick, and the one the team lead insulates the team from. In most cases the boggy man is a big act, but it is an effective tactic to get all the teams working in one direction. Problems happen when the subordinate managers start hiding or changing information that the senior manager may not like. This can be avoided by having a senior manager who actually knows how things work, and can test the water on his own.
Agreeableness is the attribute imo. There’s a scale from “spineless” to “actively squelching dissent”. Agreeable side of the scale people always get rolled in direct confrontation.
The key, I find, is to be extremely direct and brutal in one on ones. Don't hold back, but be very supportive and positive when more than two people present. I try to explain this to be people I work with, but I don't think everyone appreciates it.
Horrible people, in my opinion, are those that do the opposite.
I am much more comfortable with people being publicly blunt. At least there is no gaslighting involved where the victim wonders if they imagined it because everyone keeps telling them "he would never do that" or whatever.
If you are on excellent terms with someone and they trust you, etc, it can work to be more blunt in private. But most people doing that are just hiding their own bad behavior and that's it. Which makes it a form of corruption.
I think it needs to be acknowledged that many people don't get subtle feedback. If you give me subtle feedback, either positive or negative, chances are I will miss it all together. I need feedback that is clear and obvious, what others could categorises as being blunt or abusive otherwise I will walk away scratching my head wondering if I've done well or otherwise.
Reminds me of advise that was given to my Wife by a friend when I got married.
Subtle hints don't work,
Hints don't work,
if you have something you don't like that he is doing, make sure you are bloody obvious when you talk to him about it.
See, this is the piece that makes me assess this as an abusive thing to do:
The key, I find, is to be extremely direct and brutal in one on ones.
I have two special needs sons. I'm a former military wife. I tend to err on the side of being super, duper blunt and, no, my kids don't get "hints." But that doesn't mean I have to be ugly about it most of the time either.
Real life example:
When they were little, I would say "The trash is overflowing and needs to go out." My oldest would look over his shoulder, see that this statement was factually true, acknowledge the veracity of it and continue playing his video game. The fact that my statement was intended to get him to take the trash out did not quite click.
There is nothing whatsoever abusive about changing that statement to "Son, you need to stop what you are doing right now and take the trash out." That's just clear communication.
I am well aware that some people think saying something like that is somehow emotionally abusive or some nonsense. I have spent plenty of time on parenting lists where people were horrified that I would tell my sons something directly instead of dropping hints or some nonsense.
I'm quite fond of the movie quote "I'm too truthful to be good." I'm also very fond of a rubric I learned long ago that "Those who believe in telling the brutal truth value brutality more than truth."
I can be very, very, very blunt. I try to always be kind, to the best of my ability. I see no contradiction between the two.
Learning to tailor your communication style to the needs of individuals on your team is just good management and doesn't require any meanness whatsoever. In fact, it's a kindness.
Perhaps you might prefer open debate or critique, but I think most people would prefer that negative speech not occur in public. I think even politely negotiated debates can end up looking embarrassing if other people who are watching can form a justifiably negative narrative.
When people are having a discussion in a visible business setting, to some degree, the precise words being spoken by either party become less relevant than the kinds of narratives people can form about either of you. It becomes a negotiation of PR rather than a discussion of ideas.
1 : a corrupt practice or custom — the buying of votes and other election abuses
2 : improper or excessive use or treatment : misuse — drug abuse
3 : language that condemns or vilifies usually unjustly, intemperately, and angrily — verbal abuse a term of abuse
4 : physical maltreatment —child abuse sexual abuse
5 obsolete : a deceitful act : deception
They explicitly said they were upfront with their peers about how criticism is delivered. Whether that is true is beyond the scope of discussion; what has been said is nowhere near gaslighting or other forms of abuse. I don’t understand what has happened as of late, but the western world has taken a very strange turn in redefining terms to make the smallest of infraction or abrasiveness a great harm. Criticism does not need to be laced with praise to be useful, and justified critique does not equal abuse. That’s complete nonsense. Delivering it in private rather than publicly, if anything, seems more in consideration of the recipient’s feelings anyway.
With respect to the topic of this discussion, I will refrain from passing a judgment on Torvalds’ change of heart until we see quantitative data on how this has impacted the kernel.
It is, it's just a different phrasing. I think you're reading more into "brutal" than blazespin intended. You might be more correct in your interpretation, but I'm pretty sure they just meant "blunt", not "vicious".
Any variant that invites perspective sharing rather than brutality works fine to accomplish almost any direct feedback.
(IE brutality usually does not admit the possibility others may have a different perspective. You are going to get a lot farther in changing/helping people if you listen to their perspective instead of just yours)
So, being nicer when someone else is watching and could corroborate, while being brutal to people when it's your word against theirs?
I wonder why people don't appreciate that advice.
"Direct" does not need to go hand-in-hand with "brutal". Don't change your behavior based on who's watching; people deserve to be treated well regardless.
EDIT: For clarity, I'm not necessarily suggesting this is the intention, but rather, that this would be the net effect, and a problem with that approach.
I mean, you did just spin it into its worst interpretation. I read the grandparent post as meaning, "Be brutal when the least ego / public stature is at risk, but never cut people down in front of their peers."
I make no such assumption, and I'm not a fan of brutality. I'm not endorsing his position, I'm just rephrasing it as what I believe he meant to say.
I'm also not a fan of intentionally putting the worst possible spin on someone's words. Reading charitably is pretty much always a net positive for any thread.
arkades is right, and there's a site guideline that specifically addresses this: Please respond to the strongest plausible interpretation of what someone says, not a weaker one that's easier to criticize. It's easily plausible that one of blazespin's concerns is not to humiliate people in front of their peers.
This is a problem with this sort of discussion generally: a lot of the people arguing for others not to treat each other badly, treat others very badly indeed whilst arguing it.
Well, you avoid anyone losing face, which is important. Being brutal, however, is not a good advice in any situation except a rap battle. Direct != Brutal.
If you continue to post uncivil and/or unsubstantive comments to HN, we're going to have to ban you. We've already asked you several times not to do that. Could you please review https://news.ycombinator.com/newsguidelines.html and fix it going forward?
I feel like anyone who says "Linus was harsh but fair" never really read much of what Linus said.
Many of his attacks, especially long ago, were quite vitriolic and very much not technical. Oftentimes they weren't rants, just flat out insults, short and mean (I remember, in particular, posts directed towards PaX). They weren't productive, there wasn't a brash technical take buried in them - they were just insults.
Many people seem to just remember snippets of his more popular, more recent rants, which sometimes have some technical take in there at the least, but also, in my opinion, cross well over the line into personal attacks.
Glad he's owning up to the fact that he has some serious social baggage to deal with. I don't foresee the linux kernel community changing much in the near term though.
It might be worth noting that the people who do say he’s harsh but fair are people who actually comment on his rants.
When I see another on HN I scroll past it, because I’m not interested in the sensation. I can’t imagine I’m the only one.
Then there are people who do see his rants as a model, or who do like the sensation and do like the spice. Those people are far more likely to discuss it, repeat it, mimick it or indeed condone it.
I'm probably going to be alone in saying so, but I always enjoyed Linus and his attitude.
(to me) it made him appear honest and dedicated to (his own) goals, and I always felt like that was respectable. (mostly) whenever he was proven technically wrong about how to do something he would concede to the technically better solution, and if he didn't do so he gave reasons for his conclusion.
in other words : his technical brilliance, in my own opinion, was a far larger boon than the problems stemming from having to deal with his knife-like personality.
"in other words : his technical brilliance, in my own opinion, was a far larger boon than the problems stemming from having to deal with his knife-like personality."
One thing that is true in all successful organizations over time is that for any given person, no amount of genius will make up for being an asshole.
It may take time, etc, but eventually, it ends up a significant net negative for the organization.
The sooner folks are forced to deal with it, the better off the organization ends up in the long run.
It also turns out you can be effective at dealing with people and still be brilliant, and it usually doesn't take a lot more than spending more energy in being self aware and trying to see the perspectives of others.
Sure, but every study i've ever read currently backs it.
If you are aware of any that say "very smart assholes make organizations better in the long run" or even "very smart assholes don't meaningfully hurt them in the long run", i'd actually love to see it!
(I hold the position i do precisely because it's backed by research, not just my own random thoughts and experiences)
What research? This seems pretty much impossible to scientifically measure since there are no two organizations that are the same, let alone two organizations that have leaders identical in everything but their attitude.
This takes on a particularly hilarious tone now that lots of people assemble their own computers.
Obviously, that quote is utter hogwash, but it might be worth saying explicitly, at least for HN culture: cooperation is essential, and would you cooperate with an asshole?
It depends on how you define arsehole I guess. When it comes to how well an organisation works I've found there are only two things that matter. The first is how good the people there are at their jobs. (If most people are competent, there has been some pretty ruthless pruning going on which is not pleasant when it happens.)
The second is what people are working for - which is to say themselves or the firm. My definition of an "arsehole" is someone who fights to get themselves up the corporate ladder, treating the exercise as a zero sum game. So if they see someone above them occupying a desirable spot, they will back stab, white ant them in an effort to dislodge them from the spot so they can take it.
All this has very little to do with their demeanour. Some people are good at communicating. Some are bloody hopeless. It's nice to deal with people that area really good at handling others of course, but you can't be an expert at everything and if someone is really good at a particular thing it's often because they have a passion for it, focusing a great deal of their time on it. If that area happens to be technical that means they have spent effort on it rather than most other on learning how to interact with others.
Sadly, people who devote most of their efforts at shaking the corporate tree do others fall off it are usually very good at interacting with others. Being effective at manipulating others sort of requires it. The worse of them, psychopaths, are well known for their superficial charm.
Time cures most things and in the end smart people learn the easiest path through life despite their obsession with other things. When it comes to interacting with others, that means learning to use words that engender cooperation rather than conflict. It appears Linus has reached this point. That he did is testament to just how good he is. Most of us can learn these things by watching our superiors over time. (If these people are good at their job, they will both be very good a getting people to work together and instilling it others.) Linus didn't have a corporate ethos he could learn from. He's had to invent it himself.
So we end up at the curious juncture were some introvert who spends all their time playing with things rather than people is likely to be a good asset to the organisation and if given time (decades) will learn how to interact well with others to. A psychopath on the other hand who is focused on human interactions and is really good at it, but if the firm is to survive should be excised at the earliest opportunity.
> One thing that is true in all successful organizations over time is that for any given person, no amount of genius will make up for being an asshole. It may take time, etc, but eventually, it ends up a significant net negative for the organization.
I dunno, Steve Jobs sure managed for a long time. I think they quite often end up being a net negative for the people who work there, but I don't think it necessarily hurts the organization (though maybe it should sometimes).
> One thing that is true in all successful organizations over time is that for any given person, no amount of genius will make up for being an asshole.
Wouldn't Steve Jobs be a counterexample to this? And possibly Bill Gates?
No, actually (at least, IMHO). Jobs organization failed more than once due to him?
Remember that Apple (etc) have been troubled at many times through their history with him at the helm :)
Gates also eventually left in part because he was doing more harm than good (and has tried to turn himself into a more reasonable person it seems).
Compare that to the organization that MS is now under a leader who isn't an asshole?
I'm certainly not going to claim you can't make a successful company or organization by being a brilliant asshole.
I'm only claiming it eventually catches up with you, and over time, ends up a net negative for the organization.
Same. Linus always called a spade a spade, and I always respected that. In a culture where the Overton window has shrunk considerably and people habitually hide their thoughts, I think this kind of attitude is more important, not less. People give up ability to say certain things in the name of inclusion, and then lose ability to think those things in the first place.
I'll take an asshole over a pushover any day, and most of us are pushovers.
Actually, it isn't. For example in today's environment when someone suggests something stupid, it is no longer acceptable to say "this seems stupid to me" because it might hurt someone's feelings. So instead you walk it back and say things diplomatically (which is a tiny form of a white lie). Then people reply to your diplomatic statement with another diplomatic statement, and pretty soon nobody is saying the thing they want to be saying at all.
Have you been to a corporate meeting? It feels like soul death for precisely this reason -- nobody is saying the thing they want to be saying at all.
Tech/open-source was one of very few domains where people did say the thing they wanted to say. The culture selected for people who want to interact that way, and then encouraged that form of interaction.
Now that's dead. Codes of conduct, inclusion, and caring about people's feelings are lofty ideals, but if people can't say "it's a stupid idea" when they think "it's a stupid idea" the whole thing will disintegrate into a dilbertesque nightmare along with the rest of the corporate America.
I totally agree with this. I actually quit my job at Red Hat because of the culture of non-criticism. I kept getting in trouble for pushing back against stupid decisions, even though I never insulted a single person.
For example: When the design team added 10MB of web fonts to the app, I said something like, "Users don't care whether the font is Open Sans or Arial. They care whether things load quickly and don't re-flow. This is a bad decision." I got nothing but condemnation for pointing this out. Today, every user downloads several megabytes of web fonts which have broken kerning and hinting on some platforms.[1]
It was a similar story when people wanted to change our build artifact to be based on RHEL instead of Alpine Linux.[2] This would have bloated the build artifact from 11MB to 200MB, introduced a host of security concerns, and drastically increased CI build times. In a meeting I said, "This decision seems totally braindead." I was immediately taken aside and given a stern talking-to by my manager. If that's not a braindead decision, then I don't know what is.
I also got in trouble for this comment[3] pointing out flaws in PatternFly. At no point did I insult a human being. Still, I was told that some of my coworkers felt insulted by my comment, and that I should be more civil and tactful. Who was insulted? What parts of the comments were insulting? I never got answers to those questions.
Encouraging civility sounds like a good thing, but in my experience the people leading the charge are doing it to suppress criticism.
1. https://github.com/openshift/console/pull/3 My bullet point about reducing the build artifact from 11.3MB to 7.6MB was incorrect. It actually reduced the build artifact from 40MB to 7.6MB.
"Moving parts in rubbing contact require lubrication to avoid excessive wear. Honorifics and formal politeness provide lubrication where people rub together. Often the very young, the untravelled, the naive, the unsophisticated deplore these formalities as "empty," "meaningless," or "dishonest," and scorn to use them. No matter how "pure" their motives, they thereby throw sand into machinery that does not work too well at best."
That's Robert A. Heinlein, hardly known for being a social justice activist.
There are different ways to oil the machine, I'm not throwing out the baby along with the bathwater in naivete. Lots of cultures encouraged being direct, were insanely productive, and oiled the gears in a different way. The current cultural trend is just fashion, it will pass, but things will get worse before they get better.
> For example in today's environment when someone suggests something stupid, it is no longer acceptable to say "this seems stupid to me" because it might hurt someone's feelings.
What is no longer acceptable is to personally insult a developer for breaking things, poorly designing an API/implementation, etc. By "personally insult" I mean call someone names, curse at them, sarcastically suggest they should have been aborted, and many other such tactics.
Judging from Linus' post, he agrees that stuff like that is unprofessional.
And there are plenty of examples of Linus' posts where he clearly called particular developer stupid, as opposed to calling their ideas stupid. I can provide examples if you've never read one of them.
> call someone names, curse at them, sarcastically suggest they should have been aborted, and many other such tactics.
That's a positive change. But it also ought to be possible to say "this is a dumb idea" or to engage in friendly ribbing when someone does something dumb. These are good, healthy mechanisms in normal groups of people. Eliminate all teasing, and everyone is friendly on the outside and bitter and resentful on the inside. People should be teased for breaking things. There is such a thing as attempting to be too professional.
Ok, can I just ask, what do you think people are lying about when they’re being diplomatic about criticism? You said being diplomatic is a “tiny form of a white lie”, so I’m wondering who you think is being deceived, and what you think they are they being deceived about.
When you think a specific thought, feel a specific feeling, but express it in a way that really doesn't feel true to you deep in your core, you're deceiving the other person about who you are. That's how many relationships fall apart. You tell each other tiny white lies, and five years later you've discovered the lies have compounded and the relationship is too poisoned to recover. The same thing happens to cultures at scale.
If the way you truly feel at your core is expressed in a way that has unintended consequences, this "being true to yourself" can get in the way of you being an effective leader, five (or thirty) years later.
There are two pieces here: one is the message you intend to convey, and the other is the manner in which you convey it. The two are not the same. The idea that as long as you speak the truth it doesn't matter how you say it ignores that how (and whether) people will accept what you say depends on the vessel in which the message is carried. The idea that others should just take it because it's the truth is at its heart just naive and inhuman (not to mention inhumane), and ineffective. If being true to your inner self is getting in the way of you being effective, it's ultimately counter-productive to your own ends: it's not actually being true to your self.
Yes, lying (including white lies), is detrimental. So is bottling things up. I completely agree. However, this is not zero-sum, either/or. You can both express how you really feel and convey it in a way that others will receive your message in the manner in it's intended.
It’s a straw man meant to excuse bad behavior as the only way to provide strong direction. Pushovers are not the under discussion here: Torvalds’ behavior is.
Or perhaps an acknowledgement that people are imperfect and the world is imperfect and, if you want to accomplish things, x all-too-common defect is preferable to y all-too-common defect.
I disagree that that level of asshole behavior is all-too-common. I've never encountered anybody like Linus professionally and if I did I simply wouldn't work with/for/over them.
In other contexts, perhaps. I don’t read the comment I initially replied to as supporting that interpretation, even reading charitably. They explicitly separate people into (primarily) two groups: "I'll take an asshole over a pushover any day, and most of us are pushovers."
They very clearly are setting up a false dichotomy. They support one side by stating that it is preferable to the other (when there are no sides to begin with).
You have to be willfully ignorant to read it otherwise.
As blatant support of this,
"People give up ability to say certain things in the name of inclusion, and then lose ability to think those things in the first place."
This is a clear testament that there are two sides and you must 'give up' something (ie: become a pushover) to not be an asshole.
"A man who says a spade is a spade is only fit to wield one" - I can't recall who this quote is from but it had a profound impact on my how I conduct myself.
Previously I took pride in calling a spade a spade. I was abrupt, people actually praised me before I realised it was holding me back (this was an inherited behavior from being Northern English, brash is the new black in my hometown, I'm not lacking empathy or compassion).
I'm more like Linus than I am most other people. Brash, abrupt, and too eager to be combative in discussions where I disagree on a matter that I consider myself well versed in.
I've had my ego checked on a few occasions and I've changed my tact accordingly when I realised it wasn't a win/lose or a zero sum game. It's about working together. I shouldn't escalate to a combative state so eagerly. The above quote resonated with me when it highlighted I need to better at communicating. 'Disagree and commit' is one such method that I've been trying to practice.
Linus has taken decades longer than I have to come to the same point. To be clear, I'm 29, and I put myself through therapy to get better interpersonal coping mechanisms and tools from both mentors and mental health professionals.
Linus is often correct (honestly, I don't recall an occasion where I saw he was arbitrarily wrong), but he often speaks from a position of ego and authority rather than a leader and SME of an important open source project. I'm glad he's where is now and he's found a sense of clarity that the Linux Kernel is his baby, but it's worth the sum of all it's parts. And the sum of that is the community. And unabashedly he's not been a leader or a proponent of culture or community in that space for as long as I've known about Linux.
If calling a spade a spade is defined as being an asshole for the enjoyment of being an asshole, then I agree with you. If that's what you were doing, then good on you for growing out of it (seriously!)
The flipside of being too diplomatic is that everything shifts too slowly for people to notice, and by the time they have noticed they're boiled like a frog. That's why SF police basically doesn't work at all, there are tent cities and needles on the streets, and a tiny bedroom costs $2k/mo. That's why everyone is using Jira and nobody likes it. That's why 90% of corporate meetings are a complete waste of time.
Small diplomatic concessions compound and lead to equilibrium traps where it's no longer possible to say "enough is enough". There are plenty of situations where being an asshole is much, much better than the alternative.
Reality is more important than one's feelings which is why he has been effective in making linux what it is today. Throwing that out the window and caving to the postmodernist "feels" will not bode well for the project as a whole... and in the end the activists will try to find another reason to push him out of the project he founded even if he completely capitulates to them.
>In a culture where the Overton window has shrunk considerably
How do you figure? Genuinely curious. I think you have to take into account where in the world you're talking about. Perhaps in metropolitan parts of the world this is true, but for other large swaths of the world, especially in politics not just individuals, the opposite is happening with authoritarianism prevailing. It's a pretty stark contrast between cultural mores these days.
Reading this demonstrates perfectly well why "direct" and "brutal" are not at all synonymous. Direct communication wouldn't have required Popov to "extract the technical complaints from them".
I agree. I liked his rants, I found them entertaining, and I wish I was the target of one! (I would probably need to work on my coding skills first.) I wish people would grow thicker skins and get more emotionally mature, and be able to tolerate harsh words without taking them personally.
> I wish people would grow thicker skins and get more emotionally mature, and be able to tolerate harsh words without taking them personally
This is the "rock polisher" thesis of life, which I've also called the "bully thesis." I grew up swapping between different parts of America that approached "how to generate a functional adult" differentally. Some places, it was "love and care for your fellow man. Work together to make a better world." Other places it was "we believe the world is harsh and unforgiving, therefore we're gonna beat you to get you ready for it."
What I've learned is that society is exactly how you make it. If you allow kids to bully and beat the shit out of each other in the playground, you're gonna get a society of Biggest Fist Wins. If you go the other direction, you'll get one where people work together and work to see the best in each other.
Once you've been raised one way though, the other way seems a weakness, so I generally don't have hope of doing anything other than preach to the choir.
In your example - what's the point of thicker skin if people simply don't say mean things to each other?
My solution to dealing with people of the "rock polisher" mindset is that I politely refuse to participate in any sort of society with them, professional or private. Would this be a valid method for dealing with these sorts of people?
ignoring your emotions and the emotions of others and seeing all of life as an exercise of pure rationalism is not emotional maturity, it's emotional cowardice.
Parent didn’t say ignore them. I’m pretty sure they meant not be an emotional child completely incapable of surviving the slings and arrows of life. Rule your emotions instead of being ruled by them.
I hypothesize that this change will make Linux (ie: the quality of the kernel) at least slightly worse in 20 years than it would have been if Linus never changed.
Linus has been a great steward of the Kernel. I have never seen any instance where he has trashed on someone for any other reason than Linux. Sometimes he's cringingly brutal, sometimes he offends people. Regardless, he's been immaculately consistent in motive during the time I've been paying attention. That two decades of casual observation has elevated him to the status of philosopher king of the Kingdom of Linux in my mind.
When Linus publicly shames a person or company, he's emitting antibodies to the cybernetic organism that is "linux".
Some folks abuse politeness to press ulterior, self serving motives. It's a lot easier for viruses like that to thrive in scenarios where there's no social cost for rolling the dice.
For a contrived example, imagine there's a person that gets paid every time he convinces a project to change to a specific color of blue. Is this easier to accomplish in project with very strict codes of conduct, or with an asshole BFDL and a hierarchy?
Virus: "I've done research (<link>) that suggests that #006699 provides a superior user experience than what's currently being used. This is a PR to affect that change."
Maintainer: "Uhh, I don't think so."
Virus: "But why not? Here's another whitepaper that shows that it's literally the best UX change you could make. #006699 is inclusive and egalitarian and your current colors are racist."
The virus can press their intent as long as their persistence holds out. Any transparent, clinical mitigation to this will be gamed. However, if the BFDL is an asshole, the Virus thinks twice about social brute-forcing. If you're publicly berated when you cross the BFDL's threshold, you lose social standing. The mere threat of it hamstrings privately pressing your objective at those in the middle of the pyramid!
In addition, when done with _some_ discretion, your lieutenants will learn the implicit contour of your policies and priorities. This provides MUCH greater defense against subterfuge and unity of action than explicit Codes of Conduct.
Over the long haul though it doesn't really matter. Philosopher Kings are rare and they die. It does exasperate me to see how slow we are to develop a consciousness for that category of social attack.
When we finally do, it'll be a subtle compromise between authority and egalitarianism. It'll usher in a golden age with a seemingly endless frontier of optimism. Then, in less than a generation people will lose the plot, take it too far and we'll rot from the other direction.
Where exactly is this conspiracy to make the kernel worse through ulterior motives coming from? Literally every large company relies on the kernel working well today, so "corporations" or "shills" aren't rational origin stories.
I wouldn't call this a conspiracy, unless I start selling T-shirts. My hypothesis wasn't even that people are trying to make linux worse. Just that it will be.
Intel pushed a half-baked mitigation for meltdown that Linus was real mean about recently. Linus made a remark that stuck out to me.. Something about calling into question the motives of Intel that would even push it. (Conspiracy time) it smelled to me like management pushing for a PR clot before their fix was ready.
Working well for your interests doesn't necessarily mean working well for everyone's. Linus's motives are transparent and for the Kernel.
Linux ran by a commission representing large companies would definitely behave differently...
In this thought experiment, which one of us is correct (technically)?
If he's correct: I'd be upset at being wrong about something, but hopefully i'd have willpower to sober up to the fact that I may in fact be wrong once in awhile.
If I'm correct: I'd be upset because a person I respect is technically wrong about something, and then decided to rant about it.
Choice C: What if the question is non-technical? Answer : Don't ask Torvalds. He's not an expert in that domain.
(truthful answer: I've been a member of a project criticized by him. It felt terrible, but not because of some personal sleight; he just happened to be correct about the inappropriate-ness of what was being used, and being wrong is a tough pill to swallow when you're young and cocky.)
There are plenty of people who can deal with a rational explanation about why they are wrong, but who are not able to deal with being bullied.
As I wrote in a different comment in this thread: I would never consider contributing to the kernel because of the chance (minute as it may be) of getting the Linus-of-old treatment.
Way to go Linus... this is a great lesson for all of us!
It's easy to get caught-up in the heat of the moment and say and do things that we regret. We've all done it. It's part of being human. The key is to realize it, apologize and do better.
I disagree strongly with his personal 'no BS' attacks. For some people, it's a huge deterrent to make contributions.
I've participated in a number of open source projects. I like to think that I've made useful suggestions and contributions, in addition to making dumb ones. When I make a dumb suggestion, I expect to corrected in a respectful way.
There have been cases where a project maintainer answered in an aggressive, passive aggressive or belittling way.
These kind of reactions stress me out, make me lose a night of sleep etc. I can handle a rejection on sound arguments, but I don't handle stress and confrontation well at all. I wish it were different, but that's just not the way I am.
They are sufficient to make me stop contributing to and leave a project.
A public rebuke by somebody like Linus is my worst nightmare, and I would never consider working on the Linux kernel because of them.
I image there are many more technically capable potential contributors out there who have the same reaction.
I also hate personal confrontation. In the past, I have even had my own sub-ordinates (I hate that word - but they were the engineers that reported to me) confront me, leaving me, from time-to-time to go home and vomit and not sleep. So - yes - I understand.
I've never looked at a rebuke from Linus in the same way. I don't know why. I guess I'll go think about that...
EDIT: After (very) short reflection, I think (for me) the difference is whether it is a close personal person rebuking me, vs. some sort of distant character....
> the difference is whether it is a close personal person rebuking me, vs. some sort of distant character
Yes, this is an important distinction.
Being verballed by a stranger (even a famous one like Linus) might be embarrassing, but it wouldn't hurt like being rebuked by some who actually knows me.
Well, it's certainly not my style, but I would generally take it as an expression of intense feeling about the topic.
If it were my wife or my child or my parent saying this, it would probably reduce me to tears.
If it were a community leader, it would probably certainly make me feel really really bad. But I wouldn't be suicidal over it. Depending on the topic, and how strongly I felt about my position (I have felt strongly about memory allocation approaches on certain 68K-based machines before), I might reply in kind.
You would think and yet.. Did none of John Lasseter's friends call him out and tell him to take the T down a notch over the past 20+ years?
I've pondered over this a bit and have come to the conclusion that a lot of people simply don't have close enough friends exposed to their work behavior, or they simply accept it.. Feedback from randos isn't the most likely to instigate big personal change and reflection.
I'm a SIGGRAPH rando who implemented a clone of RenderMan in 1992 or so on Sun Workstations. (It wasn't that great of an implementation (Pat Hanrahan helped me with one bit), but because of the Sun's networking capability - it could parallelize as well as anything else at the time).
I don't every recall seeing Lasseter doing anything inappropriate.
To your point: The company was going through a hard time, and randos would have been the PERFECT feedback to him. The company would have died without their support.
But, who could be there to tell him to take it down a notch[0], when he acted like a professional all day long?
Net-net: I disagree with what you just said.
[0] I generally know who was working on that project at that time, but I don't think it advances this conversation...
I call it the Impact Wrench[∆] theory of Engineer Management. It's widely practiced, sadly to modest success. This turns pressure into torque, so the harder you come down on your engineers, the faster they spin - right until they burn out.
I have the impression that a combination of https://lwn.net/SubscriberLink/764325/09702eb949176f55/ and some discussions on the Kernel Summit mailing list led to it, and almost certainly some private discussions as well.
Yes. Tech people the world over need to remember the person. I don't even mean in a slightly soppy 'everyone is a real person with real feelings' way. I mean that in a practical sense you really hit productivity if you're rude. Simple exchanges or corrections become arguments because one party was acerbic or inflammatory which caused the second party to be defensive. The discussion gets derailed, the point gets lost. Nobody learns. The project deviates.
Social skills and emotional intelligence aren't fluff that smart people don't have to deal with. If you want to make great software and create great organisations you have to treat people with professionalism and respect.
I don't treat people the same way, but I appreciate the blunt honesty. If we're having a few drinks as friends and you tell me that I'm an idiot, of course I will take that personally; however, tell me that as a developer and I'm motivated.
So far as that goes, my mind works the same as Linus. I err on the side of praise, which makes me different - although my lack of praise for some individuals probably speaks as loud as Linus' vitriol. Your ability is not a reflection of your character, i.e. "you are not your code."
I have no interest in maintaining Linux, maybe I would 20 years prior to now when choices were generally more than "drivers." That being said, Linus would make an excellent mentor for those who can separate their code and themselves.
He is an artisan, in the most classical sense. Every one of his maintainers is an apprentice. It's an incredibly unpopular perspective to have - but the epitome of professional decorum is to attack a person's work without attacking their life.
Smart people are able to discern the difference between their work (which is fallible) and themselves (which is infallible). I am a great developer, but the fact that even better ones exist is inspiring and I'd hope they would tell me what I'm doing wrong.
My assignment for the next N sprints is to clue up employees on debugging prod. I will destroy that assignment but, hell, I would prefer to work with people who cared enough to research it themselves; as I did.
There is a difference between blunt honesty and being rude. Honesty is pointing out that you're not pulling your weight, or how you did something was incorrect and not up to the teams standards. Rude is calling you names or otherwise insulting you. The insults also often lack any reference to the issue. Telling someone they are an idiot does nothing for that person or the team.
We’ll be here all day. He would associate the code to the person, which goes against the “I am not my code.” that many adhere to. Linus is stepping up and finally owning up to his behavior. We owe him a lot so we gave him a pass before. Now we won’t hopefully need to anymore.
To be fair, he has incredible judgment and we defer to him when it comes to being the road block to merging bad code.
The more exaggerated the cursing, the more problematic is the subject according to Linus. Linus' over the top cursing is a means to transmit his evaluation of how problematic some code is. It's never personal.
Show me an instance where his cursing is not related to kernel code.
I'm not empathetic and have poor EI (medical reason) and have concluded similarly that being rude as a general rule is unproductive. First, I don't want to be on the receiving end of it myself(!), but nor do I want the time sinks of drama, a mutiny, or a revenge attack. Being thoughtful about your words seems to be a good idea for anyone, whether they're emotionally intelligent or not :-)
I've worked with assholes, that think they are god's gift and really they are just hampering the business goals of the company and don't realise it. They were constantly like a petulant 5 year olds during a tantrum, and I don't work with people like that. I quit such jobs. Done that 3 times now, first time took me 6 months, second time 3 months, last time 18 hours. Note - this is not rage quitting - they were a reasoned decision based on the likelihood of being about to resolve the problem through negotiation, and comparing that to opportunity cost. Fuck it life is too short.
Similarly would I contribute to an Free/OS project with such people for free? Hell no.
..and if productivity was better from disrespecting people, then that would be the way to go?
Well...That seems to be the actual case. Our current system seems to not to respect people, or the planet (or other animals besides humans.) It seems to respect money, 'productivity', 'efficiency' and 'growth'.
I have to wonder if Linux would even be remembered other than as a footnote at this time without his forceful personality being in the mix.
He probably would, because he's a fairly prodigious developer working on hard problems. He was already noteworthy long before the modern era of the Internet, simply for getting early Linux working.
Being a jerk didn't create Linux and git. Hard work did.
In reality, being 'forceful' will almost always be perceived as being kind of an asshole.
BUT - there's a world of difference between being 'forceful perceived as jerk' and 'demeaning and needlessly insulting or derogatory'.
Never a reason to put people down.
In Linus' 2008 speech at Google talking about Git, he said he created it partly to avoid politics - he can just have people copy his stuff into their own repo and go off yonder and not have to deal with them.
Sure, but can you be successful in the context in which he was successful? He succeeded against all odds, and has done something great. He's no saint, but none of us are. Like it or not, who he was was instrumental in this success. The parts you admire and the parts you disagree with.
I'm mostly parsing this as external pressure forcing him to change, rather than a comment on the value of the behavior one way or the other. I suspect on net this is going to be seen as martyrdom, with a vocal minority of people who will bring it up in every conversation as a suppression tactic.
EDIT: That having been said, my personal opinion is that Linus could stand to tone it down a bit. He often goes beyond "unrelentingly firm on quality" and into "personal attack", the line between them can be subtle but hopefully he'll figure it out without becoming a pushover.
Of course, no one is suggesting he become a pushover. I don't think it's really that hard to not be a weakling and at the same time not be a douche. It's not a "gray line" either, unless the extremes are either 31 Kelvin and 1000 KeV.
It certainly will if Linux kernel development continues successfully. I don't see why that wouldn't be the case, but you can't really use this to end the myth just yet.
It's not a myth, and Linux is an unmitigated success to this point. Torvalds' admission is a reminder that, for all but the most callous, it's not sustainable way to behave. It catches up with your conscience. It took almost 30 years for it to catch up with Torvalds'.
> You can absolutely be rude and insulting as long as you're right.
What is the basis for this "might makes right" axiom when it comes to collaboration? I mean, obviously, anyone -- winners and losers -- can choose to be rude and insulting for any reason they'd like, they aren't barred by law or regulation. What tangential or moral benefits do you believe come from adopting a "winner has the right to be rude" mentality, particularly in an open source community? I think it's almost self-evident what the drawbacks are -- for example, that the risk of humiliation might stifle people's willingness to debate at all -- so what are the upsides to fostering that kind of environment?
Is that really a myth though? Being surly and right can be workable indefinitely. As opposed to success via being polite and flattering while being wrong. Fundamentally they would be a parasite. Not a dichotomous extreme though in that it is better not to be rude unless it is called for. And rudeness can be very called for in response to evil.
The point being that rude isn't evil in itself although it may be inappropriate. The proper response to someone wanting to hold a klan meeting in your house is "get the hell out". Rudeness is a feedback mechanism.
The point being that while less than ideal it isn't unsuccessful in itself. Extremes are useful for extrapolation - even if it will never reach that point it is helpful to have the worst in mind to be vigilant of the flaws it may start to drift into.
There's no dichotomy here - you can be both right and wrong, and rude and polite. These are not related, and frequently not correlated at the least either, these are just two independent coordinates. Moreover, in many cases, you yourself is not in the position to know where on the right-wrong spectrum you ended up. Linus tends up to end closer to the right than wrong end, usually - but this is not universal, and it's not correlated with rudeness. Since being in rude-wrong quadrant makes you a jerk, and being in rude-right quadrant is no better than being in polite-right one, it is a good rule to try and stay on the polite half-plane as much as you can. Linus seems to realize that too, which is especially great because he is one of the few that can actually get away with many things. So his realizing he still should not is IMHO a positive development.
Depends on if right and wrong are defined via instance or percentage. A doctor who operates based upon germ theory may get a few diagnosises wrong or too late but he is fundamentally operating on "right".
A quack no matter what redeeming factors they may have is in the "wrong" even if his potions help via placebo effect or sheer accident like treating unrecognized dehydration simply by being water based.
Indefinitely was defined in the sense of viablility in flows. An actual business who provides a real product for sufficient margins can sustain itself indefinitely. Others may do better or circumstances may conspire against it but there is nothing stopping its success. It is a matter of ratios of course - right but rude may succeed with a sufficient base but if he alienates too many they are still doomed.
One which is fundamentally based on something wrong like say Theranos would collapse inevitably. Even if the entire world bought in. No matter how much they tried to work on fingertip blood testing they would find it inaccurate because the composition isn't the same as veinous blood. If they never lied about their viability it would merely be a noncriminal failure that ends when investors pull the plug or they run out of money. Unless they shifted to something viable successfully of course in which case they are no longer wrong.
Ironically noninvasive scanning of blood would have more potential for research success - while a very hard problem there is at least the data hidden within to be decoded. Alt-Theranos that shifted to it may still go bankrupt before they get a viable product from the tech not being ready but they would be on the right track and success before others were ready would pay off. Doctors loved noninvasive blood pressure measurement and would love a second by second view of blood chemistry.
However, Linus is also a bit of an asshole, turning technical criticism into personal seemingly personal attacks. I believe those 2 sets of qualities are separable, but I would guess it's uncommon to find many people who are capable of being as tough as Linus without in some way alienating those around them, it's a fine line at times.
Anecdotally, one of the most effective engineers I worked with, who asked penetrating questions during code and design reviews, did come off as a bit of an asshole at times. Whether by genetics or through childhood, I'd bet people tend to cluster onto the line separating "agreeable and lax" and "rude but firm" (as a sweeping generality). We often label people who are all smiles while simultaneously extremely strict as passive agressive. Add to that the fact that many technical people are less socially adjusted than average and I can see why we have so many examples of mean but effective project leads.
reply