I agree, it's completely unacceptable to introduce a bug and then to instead of taking responsibility for introducing such a bug, you start pointing fingers at everybody else.
It's like when a car hits a cyclist following all the rules and then tries to blame the cyclist for not following some made up rules that only exist in the drivers head "Cyclists should be on the SIDEWALK if they don't wanna get hit!"
Not only were they wrong to hit them, they're DOUBLE wrong for trying to blame them after the fact.
You're agreeing with something I didn't state. I'm not defending the idea of introducing bugs through bad code and then blaming others. I think the way Linus responded to that was the issue.
After I saw the car hit the cyclist, I rushed to his aid.
The driver came out of the car, yelling at the cyclist for being on the street.
"Shut the fuck up. Get back in your car. You are the problem. It was wrong of you to hit him and wrong of you to blame him you fucking idiot. You can help, or you can fuck off, but you're not going to stand here and blame the man you just injured with your own incompetence", I screamed at the driver.
Nah it's completely fine. I vastly prefer an angry-sounding takedown over a passive aggressive takedown and a takedown Mauro definitely deserved because his code was, in fact, utter shite, and that as a maintainer. This isn't "oh he's a noob he doesn't know how the kernel works" type of territory. Also note that this happened after he had been told what's up in a neutral and factual way: Linus, even in his most management by perkele days, never made those things the first reply to anything. So Mauro got his chance to spot that he fucked up and correct his approach, he didn't, therefore, it has to be said loudly. Simple as that.
Also, no "you should be aborted retroactively" in sight anywhere. Yeah that stuff wasn't necessary even though everyone with an ounce of social intelligence should readily spot that those insults were always so over the top as to be obviously humorous.
It's possible to be assertive and assign responsibility for a screwup without being a dick. "Being a dick" is the nothing else has worked option, not step one.
"being a dick" and "assertive" are weasel terms which do a hell a lot of lifting in your argument there. I have no idea where your line for behaviour to be deemed acceptable actually is.
IMO, no, Linus wasn't a dick. He called out a specific attitude and behaviour which Mauro is not supposed to show in his role as maintainer. What about Mauro being a dick because he went in all self-righteous like "this is a bug in pulseaudio"?
If you were a restaurant manager, and a server told a customer that he's not going to serve beer with steak but only wine because "drinking beer with steak is obviously wrong", what would you do? Chew them out, of course. It's way out of line. This isn't Linus exploding over nothing just to bully someone, that's a thing he has never done.
If you want someone toxic to complain about in the FOSS space pick Lennart Poettering, the kind of guy who replies to "We'd like to be able to disable various features to keep things small" with "why do you hate disabled people they need accessibility". More generally speaking: Focussing on tone never ends up well. You can be incredibly toxic in the most flowery of idioms.
Your example is from one of this industries notorious for being toxic -- that doesn't make it right.
"Why would you think that's even remotely acceptable? Now I have to go apologize and possible comp a meal." Depending on the circumstance: take them off that table, send them home, or fire them. Being in control of themselves is one of the defining aspects of leadership, and being abusive is the sign a "leader" that isn't.
If they start being a dick: sure, game on -- so long as you're not demeaning yourself doing it. But most people are capable of a degree of self reflection and accountability once you make the situation clear to them, and they deserve that chance. Sometimes people don't even realize they're the ones that screwed up, even when it's obvious to everyone else.
There's it again. What, precisely, is it that makes Linus' comment "abusive"? Is he gaslighting? Is he attacking Mauro over what he is? All I see is calling out, harshly, what Mauro did, behaviour that actually occurred and that is not acceptable and that Mauro knows is not acceptable. "We do not break userspace" is the rule #1 of Linux development, Mauro ignored it and was a dick about it.
Or do you disagree with the tone of the whole thing. Things like "Shut up" instead of "This is not up for discussion". If so, then please for the love of the gods please shut up.
Maybe fair in a typical setting, but getting iffy around programmers, especially kernel maintainers. I'm convinced linux and foss in general would not exist without the autism spectrum, and who knows maybe even borderline personality disorders
I don't think I am missing the forest. There's not an issue with the idea of correcting a developer, but there is an issue in the way the correction was carried out. Just because something behaves "better" after punishment doesn't mean the punishment was good. Ends justifying means and all.
That's very "ends justify the means" of you. No, that's not the question here. Linus could have gotten the same results without the yelling and insults. You do not need either of those to be direct, assertive, and clear on what the issue is, something that Linus has since learned
Both Mauro and Linus are human. I trust them to be so. I don't get the point of endlessly pontificating about human quirks & behavior, we are all not assembled from the same factory. And we all grow and we learn. No one's perfect.
Plus, your argument fails to address the main issue here, Mauro needing to realize that he needs to improve in order to continue contributing to a project shared among many people and one passionately guarded by Linus as his baby.