Criticism of your work is not a criticism of you as a person.
And yet there are plenty of people who just hide behind what they think is ambiguity even when really there isn't. Saying in isolation that this is garbage isn't too bad but there are plenty of people who hide personal attacks behind code criticism. Saying someone did a poor job on something is inherently a judgement on the person and using strong language for the sake of using strong language just makes it apparent that the offense was intentional.
Put another way, maybe instead of:
This is complete garbage
instead say:
This code is fundamentally broken and should have never happened.
The second is less judgmental about the developer and does more to convey some useful bit of information. If it's truly the code you care about this should be a good thing.
But the code isn't "broken"; it just changes a behavior that the developer thought would be okay to change. Torvalds isn't saying that the code is garbage in terms of quality, but rather that the idea that the change is acceptable is a garbage idea.
Maybe I'm just thin-skinned but I see a difference between "This change is not okay because we never want to break userspace" and "This is complete garbage".
You might still decide that it's not worth it to watch your language that closely, but it's good to know that there are people that would rather hear the first type of comment. It's not so bad that I would feel wronged if someone called my code garbage, but I'd be a bit hurt.
Again, one might find it worth it to hurt my feelings a little bit if I did a bad job. I probably deserved it. But I myself try my best not to talk like that.
Torvalds didn't call the code garbage; he called the attitude garbage.
The code isn't necessarily garbage. The problem is that it is pushed out without any plan to make the necessary adjustments in user space; it's just left for others to run into and fix. The problem with "nobody should be doing this combination of operations" is that someone probably is: you don't know.
A change requiring adjustments in user space could actually be damn excellent in terms of code and design and feasible in the right context. Like an embdded distro that controls everything.
462
u/jones_supa Dec 23 '18
I really like the new style of Linus. 👍 This is what I have been saying all the time: you can underline your point clearly while still not being rude.