How New, Polite Linus Torvalds Points Out Bad Kernel Code (phoronix.com)
Linus Torvalds "has shown already for the new Linux 4.20~5.0 cycle he isn't relaxing his standards but is communicating better when it comes to bringing up coding," reports Phoronix, adding "So far it looks like Linus' brief retreat is paying off with still addressing code quality issues -- and not blatantly accepting new code into the kernel as some feared -- but in doing so in a professional manner compared to his past manner of exclaiming himself over capitalized sentences and profanity that at time put him at odds with some in the Linux kernel community."
AmiMoJo quotes their report: Last Saturday he took issue with the HID pull request and its introduction of the BigBen game controller driver that was introduced: the developer enabled this new driver by default. Linus Torvalds has always frowned upon random new drivers being enabled by default in the kernel configuration driver. [H]e still voiced his opinion over this driver's default "Y" build configuration, but did so in a more professional manner than he has done in the past:
We do *not* enable new random drivers by default. And we most *definitely* don't do it when they are odd-ball ones that most people have never heard of.
Yet the new "BigBen Interactive" driver that was added this merge window did exactly that.
Just don't do it.
Yes, yes, every developer always thinks that _their_ driver is so special and so magically important that it should be enabled by default. But no. When we have thousands of drivers, we don't randomly pick one new driver to be enabled by default just because some developer thinks it is special. It's not.... Please don't do things like this.
Phoronix also describes another "kernel oops" testing Torvalds' patience, in which Linus responded tactfully that "What makes me *very* unhappy about this is that if I'm right, I think it means that code was literally not tested at all by anybody who didn't have one of the entries in that list."
AmiMoJo quotes their report: Last Saturday he took issue with the HID pull request and its introduction of the BigBen game controller driver that was introduced: the developer enabled this new driver by default. Linus Torvalds has always frowned upon random new drivers being enabled by default in the kernel configuration driver. [H]e still voiced his opinion over this driver's default "Y" build configuration, but did so in a more professional manner than he has done in the past:
We do *not* enable new random drivers by default. And we most *definitely* don't do it when they are odd-ball ones that most people have never heard of.
Yet the new "BigBen Interactive" driver that was added this merge window did exactly that.
Just don't do it.
Yes, yes, every developer always thinks that _their_ driver is so special and so magically important that it should be enabled by default. But no. When we have thousands of drivers, we don't randomly pick one new driver to be enabled by default just because some developer thinks it is special. It's not.... Please don't do things like this.
Phoronix also describes another "kernel oops" testing Torvalds' patience, in which Linus responded tactfully that "What makes me *very* unhappy about this is that if I'm right, I think it means that code was literally not tested at all by anybody who didn't have one of the entries in that list."
I miss the old Linus.
On the contrary, it just goes to show how unnecessary his over the top style was. The irritation comes through just as clearly, but without being overtly offensive and hostile.
If you want a healthy productive community, the correct way to handle repeated violations of policy is to document the policy and direct people to it when its violated.
If instead he said, you have violated our driver enablement policy, documented at link, then everyone one involved in the offending change making it in would have a much more pleasant time correcting their behavior and also have the opportunity to learn about such rules in advance easier.
In the software industry, it is standard practice to take repeat issues like this and document then in your best practices document along with examples and justifications. Its better for everyone involved (less work and stress for people like Linus, less being singled out and less feeling like they are being targeted by the contributors).
Personally I find that the canonical policy documentation is in Linus's head to be a bigger issue than his attitude. There is more to being fostering a positive developer community than not speaking in a rude way: you actually need to be inclusive/transparent when it comes to forming the policies, and in this case having a written best practices document everyone can read and discuss when they have disagreements rather than suffer a personal attack for an authority figure would make this a much better experience for most people.
At least that's my personal take coming from from the big company cooperate software engineering environment. I've dealt with this kind of feedback before, and it always feels like "my arbitrary opinion that you don't have access to says you should stop being wrong". I like it much better when a perceived mistake is instead address with the question of how we can help future people from making the mistake (ex: new documentation) or how I can help myself from making similar mistakes (ex: direct me to existing documentation). Its the difference of attitude between you messed up, vs how can we learn from this to improve the system so less people fall into the same trap you did.
We will see what happens when the first self-important moron does not get it.
Most ACs are not even worth the keystrokes to insult them. Be generically insulted by this and ignored otherwise.
I don't see how that is any more polite than before. Professional way to say the same would have been:
- We have thousands of drivers so we can't enable all of them by default. This is especially true for new drivers that have not been properly tested yet and which are not known or used by a large amount of people. Please be careful about this in the future so we don't accidentally cause problems for our users.
Mind you, I don't want Linus to change the way he speaks. I was really happy when my code was rejected by him with harsh words.It made me feel special.
Those of you who don't understand how I feel, work with something for a whole week. Then send it to someone who would really need your work, but who you know won't reply to you nor use your work in any way. That is what kills spirit and makes you feel rejected, not harsh words that tell that the person did actually spend time investigating your work and even was kind enough to tell you what is wrong with it.
I don't see how that is any more polite than before.
If you honestly can’t see the difference, you haven’t been paying attention.
There are many ways this differs... but it boils down to this: Linus’ words focused on the code, not the coder. He still got his point across regarding why it was a bad decision, and he let people know he expected people to not do this for their own little corners of the kernel.
#DeleteChrome