Just because you can't imagine yourself acting such a way doesn't mean that it falls outside the spectrum of "somewhat acceptable". It just means that you're probably way more careful with your emotions and tone than Linus. There's pros and cons to both, but in general, yea people are different.
I like someone that direct and opinionated leading something as critical as the Linux kernel.
That message wasn't just for Steven, but for everyone else who contributes to this critical piece of software we rely on. It's usually very easy for standards to slip, so it requires constant resistance in the opposite direction
I would take it as a point of pride to be on the receiving end of one of Linus' rants. If I have his attention and he is even looking at something I wrote, it lets me know I made it :)
Linus gives these rants (largely) not to people who make mistakes, or who aren't smart, but people who are thoughtless - people who demonstrate that they don't really care, or just are there to drive-by fix Their Thing without any care about the kernel as a whole or how it will affect other people. That's what makes him Mad more than anything else, and that's definitely not the kind of contributor I'd want to be
I feel the same way, I have immense respect for Linus and can appreciate that he may flame me today and congratulate me tomorrow. It's not personal, it's about the work.
>I generally believe in positivity but if I saw this as his direct report I'd move him to another project ASAP to get scrutiny on his code quality.
I'm not sure I'd start there, but I'd definitely want to understand what problem the person was trying so solve. Might be legit, might be OKR-driven development.
The discussion seems to calm down a little afterwards if you follow the thread. Linus is actually making suggestions for Steven to try in his test setup:
Oh noeh, but the feels. Is anyone thinking about the feels?
Don't cry. The contributor will be fine. If you get flamed by Linus you've already earned a badge of a high profile developer. And even best of us sometimes do something stupid and a little direct cold shower is not going to hurt anyone. Linus is not bulling people, doesn't target them for no reason, doesn't do sneaky politics to undermine people, etc.
This doesn't seem like a major problem. If anything it's direct, and a professional should be able to recognize that Linus effing Torvalds has tone problems when it comes to this subject.
There is value in demonstrating anger. It makes it clear that the person has crossed a line beyond "Made an understandable mistake." and entered the "Doing things which are beyond what is tolerated in this space."
And in this case, where the person has deliberately, repeatedly, tried to use code they don't understand, it makes it clear that they need to either learn enough to be sensible on the topic, or go away and not come back.
Linus has such a clarity of thought that if I disagree with him I have to examine why. Anything else is hubris imo, his track record speaks for itself.
Perfect example is his infamous rant on why C++ wasn't used for git. He's a kernel developer, of course that's his opinion. I still love C++ but I'm certainly not offended by it.
Someone asked him why he didn't choose C++ for it and he went on a rant basically saying C++ was bad, people that use it are subpar programmers, and that one of the advantages of choosing C is to weed out people who think C++ would have been a good choice.
oddly enough I can't seem to find the original rant, if someone can provide that I'd be greatful.
edit:
to give context to my original post, Linus is a kernel developer, he's going to value things that the vast majority of developers don't because he's dealing with problems that the vast majority of developers don't.
He was talking about not letting C++ code into the Linux kernel.
As a C++ programmer, my cope for this is that back then's C++ was today's C#. It was the even-higher-level, comfier, shortcut language, loved by noobs and normies who aren't true hardcore nerds (identified by the masochism of choosing to write C) and write code that makes you cringe. (Although the situation is better today since C# excludes classes of errors C++ doesn't, so it actually IS friendlier than C while C++ merely gives you the illusion that it is. :p That it's often used as a beginner language blows my mind given how complicated it is once you get to learning it.)
Today, I think C++ has been bled off of those people (who have since fled to higher levels of abstraction while only hardcore nerds harbor the masochism to have stuck to C++), and modern C++ has made the language so much more powerful, that it would be worthy of being in the kernel. That said, we have Rust, which is an even better replacement for C.
> C++ is a horrible language. It's made more horrible by the fact that a lot
of substandard programmers use it, to the point where it's much much
easier to generate total and utter crap with it. Quite frankly, even if
the choice of C were to do nothing but keep the C++ programmers out,
that in itself would be a huge reason to use C.
> In other words: the choice of C is the only sane choice. I know Miles
Bader jokingly said "to piss you off", but it's actually true. I've come
to the conclusion that any programmer that would prefer the project to be
in C++ over C is likely a programmer that I really would prefer to piss
off, so that he doesn't come and screw up any project I'm involved with.
Here's another article that's quoting from it as well.
To have more of that, you need personal connection. Flaming over a random teenager working at McDonalds for not getting your order right is not needed in the society. This sort of response is totally acceptable in say a setting like a team sport or the military.
I wouldn't call it "insane antisocial behavior." I have no idea what his personal life is like, but managing the Linux source code isn't socializing, it's a job. You could say he's not very professional in this job, but he isn't doing this to make friends and get along with everybody.
And with my other comments being downvoted, it’s incredible that people are so up his arse that they live in a bubble thinking that it’s ok to belittle someone like that.
I know nothing about what they're talking, but the response appears reasonable and mature, seems to engage in the substantive issues without responding to the anger/flaming, and looks like it intends to de-escalate and move forward. Torvalds' reply to that is more measured <https://lkml.iu.edu/hypermail/linux/kernel/2401.3/04260.html>.
There's a step back in tone a few replies later, but if you go through the next dozen or two messages over the next couple of days, it seems like things go a totally different path than might be expected from the linked submission.
Anyway, I thought it was worth a perusal. Good example of how to respond to something like that.
completely agree, when you look at the full thread, no one even blinks an eye at his rant. They just proceed forward, and when they do so, Linus responds pretty normally (until his next condescending rant).
Seems like people in this group have pretty much gotten used to him being a condescending ass every dozen messages, filter out the posturing, take his genuine suggestion, and work from there.
It doesn't seem to bother them (or they are expending emotional energy not responding to it, a likely bit of collateral damage, but they are still communicating in a pretty professional way besides his tantrums).
I don't share your perspective. How do you suggest to discourage underinformed unskilled contribution? It seems to me taking your approach will divert all time and all resources to irrelevant tasks, tasks not pushing code forward.
But in all seriousness, this point does stand valid in my opinion.
Various facets of society react and communicate differently. For example, death threats are just a part of the job for game developers (insane, yes - but a regular thing). If you can’t stomach it, then get out for your own sake. No need to burden yourself with someone else’s inability to process their own emotional response in a mature way.
Linus is notorious for his responses in the past being on par with the death threats video gamers throw at their game devs.
Personally life is too short to burden yourself with someone like that.
Yep. Essentially what Linus is saying is that he has got to have more time, more competence, more vigilance that he wants because the other side can't or won't. And it's a recurring problem.
Sometimes we want more control and can't get it. Frustrating. Sometimes senior people are sick and tired of control and want less. Frustrating!
taking things personally doesn't stop the narcissists, it only enables them and others to hurt you. so how can not taking something personally enable narcissists?
for your own mental sanity, you should try to not take anything personally. put it down to that person being an asshole, or someone who lacks the mental capacity to be nice, or whatever putdown you can think of.
not taking something personally does not mean you condone that behavior. you can reject a behavior even if it is not aimed at you.
if you take things personally it only hurts your own ego, and if that happens to much, it may lead to self-doubt, or even depression. it's not worth it.
Because having your thing supported by mainline Linux makes interoperability a breeze and saves a lot of maintainership effort. There's a lot of money behind it. Dealing with the quality gate keeper is a cost of doing business.
I take it as a badge of honour for being flamed by Theo de Raadt.
If you are being flamed it means that you are doing something worth engaging with. Take it with a grain of salt and cut through the negativity to find valid criticisms which help you grow.
65 comments
[ 1.8 ms ] story [ 142 ms ] threadI did.
That message wasn't just for Steven, but for everyone else who contributes to this critical piece of software we rely on. It's usually very easy for standards to slip, so it requires constant resistance in the opposite direction
>You copied that function without understanding why it does what it does, and as a result your code IS GARBAGE. AGAIN.
I generally believe in positivity but if I saw this as his direct report I'd move him to another project ASAP to get scrutiny on his code quality.
I'm not sure I'd start there, but I'd definitely want to understand what problem the person was trying so solve. Might be legit, might be OKR-driven development.
https://lkml.iu.edu/hypermail/linux/kernel/2401.3/04995.html
Don't cry. The contributor will be fine. If you get flamed by Linus you've already earned a badge of a high profile developer. And even best of us sometimes do something stupid and a little direct cold shower is not going to hurt anyone. Linus is not bulling people, doesn't target them for no reason, doesn't do sneaky politics to undermine people, etc.
And in this case, where the person has deliberately, repeatedly, tried to use code they don't understand, it makes it clear that they need to either learn enough to be sensible on the topic, or go away and not come back.
It's very efficient and to the point.
Linus has such a clarity of thought that if I disagree with him I have to examine why. Anything else is hubris imo, his track record speaks for itself.
Perfect example is his infamous rant on why C++ wasn't used for git. He's a kernel developer, of course that's his opinion. I still love C++ but I'm certainly not offended by it.
Someone asked him why he didn't choose C++ for it and he went on a rant basically saying C++ was bad, people that use it are subpar programmers, and that one of the advantages of choosing C is to weed out people who think C++ would have been a good choice.
oddly enough I can't seem to find the original rant, if someone can provide that I'd be greatful.
edit:
to give context to my original post, Linus is a kernel developer, he's going to value things that the vast majority of developers don't because he's dealing with problems that the vast majority of developers don't.
As a C++ programmer, my cope for this is that back then's C++ was today's C#. It was the even-higher-level, comfier, shortcut language, loved by noobs and normies who aren't true hardcore nerds (identified by the masochism of choosing to write C) and write code that makes you cringe. (Although the situation is better today since C# excludes classes of errors C++ doesn't, so it actually IS friendlier than C while C++ merely gives you the illusion that it is. :p That it's often used as a beginner language blows my mind given how complicated it is once you get to learning it.)
Today, I think C++ has been bled off of those people (who have since fled to higher levels of abstraction while only hardcore nerds harbor the masochism to have stuck to C++), and modern C++ has made the language so much more powerful, that it would be worthy of being in the kernel. That said, we have Rust, which is an even better replacement for C.
https://github.com/shawnanastasio/BasilC/issues/9
> C++ is a horrible language. It's made more horrible by the fact that a lot of substandard programmers use it, to the point where it's much much easier to generate total and utter crap with it. Quite frankly, even if the choice of C were to do nothing but keep the C++ programmers out, that in itself would be a huge reason to use C.
> In other words: the choice of C is the only sane choice. I know Miles Bader jokingly said "to piss you off", but it's actually true. I've come to the conclusion that any programmer that would prefer the project to be in C++ over C is likely a programmer that I really would prefer to piss off, so that he doesn't come and screw up any project I'm involved with.
Here's another article that's quoting from it as well.
https://fossbytes.com/linux-creator-linus-torvalds-c-program...
I don't doubt he's ranted about it in other places but the rant I remember is definitely the git one :)
Thats funny as hell. I love Linus.
Im pretty sure that was a little tongue in cheek. Thats hilarious though.
I would never, ever contribute upstream to Linux so long as Linus is involved. My time is too valuable to deal with his BS.
He should realize the hostile environment he creates drives away contributors.
And with my other comments being downvoted, it’s incredible that people are so up his arse that they live in a bubble thinking that it’s ok to belittle someone like that.
Imagine working under someone like that… wow.
Did we read the same email? He only commented about how bad the code is; he said nothing about the person who wrote it.
I know nothing about what they're talking, but the response appears reasonable and mature, seems to engage in the substantive issues without responding to the anger/flaming, and looks like it intends to de-escalate and move forward. Torvalds' reply to that is more measured <https://lkml.iu.edu/hypermail/linux/kernel/2401.3/04260.html>.
There's a step back in tone a few replies later, but if you go through the next dozen or two messages over the next couple of days, it seems like things go a totally different path than might be expected from the linked submission.
Anyway, I thought it was worth a perusal. Good example of how to respond to something like that.
I wouldn't say saying "If I knew ... was going to piss you off so much, I wouldn't have done that." is very mature.
Seems like people in this group have pretty much gotten used to him being a condescending ass every dozen messages, filter out the posturing, take his genuine suggestion, and work from there.
It doesn't seem to bother them (or they are expending emotional energy not responding to it, a likely bit of collateral damage, but they are still communicating in a pretty professional way besides his tantrums).
But in all seriousness, this point does stand valid in my opinion.
Various facets of society react and communicate differently. For example, death threats are just a part of the job for game developers (insane, yes - but a regular thing). If you can’t stomach it, then get out for your own sake. No need to burden yourself with someone else’s inability to process their own emotional response in a mature way.
Linus is notorious for his responses in the past being on par with the death threats video gamers throw at their game devs.
Personally life is too short to burden yourself with someone like that.
Sometimes we want more control and can't get it. Frustrating. Sometimes senior people are sick and tired of control and want less. Frustrating!
This is what narcissist enablers say: that some people are more equal than others.
taking things personally doesn't stop the narcissists, it only enables them and others to hurt you. so how can not taking something personally enable narcissists?
for your own mental sanity, you should try to not take anything personally. put it down to that person being an asshole, or someone who lacks the mental capacity to be nice, or whatever putdown you can think of.
not taking something personally does not mean you condone that behavior. you can reject a behavior even if it is not aimed at you.
if you take things personally it only hurts your own ego, and if that happens to much, it may lead to self-doubt, or even depression. it's not worth it.
News from a few days ago: https://news.ycombinator.com/item?id=39172487