My imho of course.
My imho of course.
I can somewhat justify using a very corrosive tone if you're not in a place of power and you want to be sure that you're not ignored (I'm not a fan of it but pragmatically it sometimes gets the job done). However it's clearly not the case here, he has the power to reject any contribution he doesn't fancy. And his developer clout is huge enough that he'd still be heard if he criticized third party projects he doesn't maintain.
From a purely pragmatic point of view I don't see what his corrosive tone gets him. Actually I can easily see what it cost him, some devs have resigned from their maintainer position in the Linux kernel and probably many more who gave up contributing at all because they were worried they were going to be shot in flight.
You can do something that makes people upset without being an asshole.
It's really that simple.
"No, I won't merge this pull request because of X, Y, and Z." Somebody's probably not going to be happy. But you have not needed to stoop to insulting them. You have not been an asshole. You have done your job, you have kept whatever level of high technical quality you care about. But you have not been an asshole.
It is not hard to do both, and if you are but-forring Linus's decision to maybe be less of an asshole it's probably look-in-the-mirror time.
It is better to respond coolly to assholish behavior. But it is not better to allow it to remain unchallenged. Not challenging assholish behavior means that it becomes a community norm and is then incumbent upon everybody else to "train" themselves, as you say, to ignore the behavior of a minority of assholes. It hands the responsibility of defining what the culture is to those assholes.
Letting the assholes normalize the culture is bad. It decreases uptake. It increases, even if people "train" themselves, the likelihood of burnout and of departure. And it makes the world, even if incrementally, a worse place.
The culture and the world always evolving and changing, it can be worse or better or whatever, most importantly for me is how can I make myself adapt to the every situation and make the best of it.
"Changing yourself" and letting rot fester is of little value to anyone. Be so mildly discomforted as to push back on other people's nasty behaviors and you make the world a better place.
Do what is right.
In some cultures e.g. Japanese, being publicly accused and insulted is worse than insulting - it's a mark of shame that doesn't go away.
Unfortunately people simply can't rewire their brain, especially as adults, and that's why good manners exist.
Sure, but I can always make the effort and try
>Unfortunately people simply can't rewire their brain, especially as adults
I think It works both way. Some asshole can't simply be not asshole.
Someone's ingrained bad habits may make this harder.
Tough.
It's a choice; make it.
And what of questions about their process? I've seen LKML questions along the lines of, "This code produces many warnings when compiled; did you even compile it?" It's a valid question, if a little terse, and almost certainly insulting.
I think that you are arguing apples and apple pies.
Questions of process are made valid when it becomes clear there may be a flaw in the process which was applied. Asking them if they compiled the code is warranted, is it not?
"This code has more warnings than we accept under our process; please remedy." You aren't telling onlookers that they will be lit on fire for the temerity to contribute, you aren't causing anyone to lose face and you aren't hurting anyone. No aspersions, no chilling effects, and a positive path forward. Done and done. Everyone wins. To do otherwise is inhumane.
That fails to address the possibility that their process is broken, and so achieves the possibility of inducing technical debt when these issues will inevitably arise again.
Fixing process can be as important as fixing code.
There have been a lot of electrons perturbed dancing around that that's what we're talking about, yes?
I'm not pro-insult, not by any means.
It seems you think one approach is clearly worse.
But as a thought experiment can you imagine how each approach might have real tangible advantages?
I understand the point of view that yes, it may have advantages to abuse people for your immediate and short-term desires. The attempt to cast abuse as valid for those advantages belies the truth of a nasty participant in the body politic.
I’ve wotked with people who genuinely respond well to that kind of feedback. It seems you think one-size fits all, and fits every situation?
If you want to tell somebody in a 1:1 "this sucks" when you know--know, not assume--that that is their preferred mode of communication? Sure. Fine. I think that resorting to such modes of communication makes you a lousy leader because it's important to train your people out of high-tension and low-value communications, but fine. But y'know what? Nobody here is talking about that situation, so table it and move on.
I won't reply to your diversion again.
I don't know whether it actually, but I think Linus becomes "corrosive" to get rid of someone. Certain developers disappearing is not a side effect, it's the intended effect.
If you have a "contributor" who keeps submitting the same faulty patch over and over, who doesn't listen, but keeps making a fuss about his "contribution" not being accepted, what can you do? You tell him that his code is no good and won't be accepted, and you tell him that his making a fuss about it is not welcome. But he doesn't stop, so now what? Block him from the mailing list? He just comes back with a new address. What's next? You decide to be so unpleasant to him that he leaves.
Anecdotally, this sequence happened with certain engineers at Redhat, who kept dumping their bad code at Linus so that it may be maintained upstream. They could have cleaned it up, but that's exactly the maintenance cost Redhat wanted to outsource to the community.
Not typing insults saves time. We are not talking about psychologist-grade emotional communication, just basic manners.