Linux Kernel Adopts 'Code of Conflict'
Motor was one of several readers to note that a small patch recently added to the Linux kernel contains guidelines for discourse and dispute resolution within the community. It's called the "Code of Conflict." Quoting:
Your code and ideas behind it will be carefully reviewed, often resulting in critique and criticism. The review will almost always require improvements to the code before it can be included in the kernel. Know that this happens because everyone involved wants to see the best possible solution for the overall success of Linux. .... If however, anyone feels personally abused, threatened, or otherwise uncomfortable due to this process, that is not acceptable. ... As a reviewer of code, please strive to keep things civil and focused on the technical issues involved.
I would hope someone like Linus did not have to spend even a nanosecond worrying about useless crap like this. Seems like an email I got today from some idiot entrepreneur trying to sell training courses about "The spread of negativity". Negativity is the best weapon against up-jumped stupids, or the worst: stupid by committee. I used to work for a company that "forbade" negative feedback. They hardly exist anymore, selling lousy products only a few customers buy. The problem was that they let everyone have a voice, even the stupids. There was no way to convince the stupids they were stupid. If you provided any data at all that was not in support of the stupidity, it was viewed as negative and not allowed in to the discussion. This is an example of rule by stupid, and while somehow the US government ekes by, it tends to ruin most serious endeavors. In my opinion, the best way of shooting down stupid is to publicly elucidate all the reasons their idea is stupid. They can either fix it if they're not as stupid as they appear, or because they're truly stupid, they can go away and stop bothering everyone which has a surprisingly high benefit to productivity.
It's shame if someone has to resort to racist/sexist/etc. remarks to explain to you why an idea is stupid, there are better ways. One should point out to them how stupid their feedback really is, if by invoking inalterable, irrelevant, and unsupportable facts of existence in a pejorative manner they undermine the goals of their own project. Assuming sufficient evidence is provided about the technical issues at hand, however, one should ignore the stupid commentary and focus on the evidence of technical stupidity, and either eliminate it if possible, or abandon the idea. But with any luck people who have a demonstrated track record of success can continue to tell you how stupid you are and not run afoul of the "rules". I say this and at one point in recent history I am fairly sure Linus threatened death on me and my kind, but he was right to do so, there was a lot of stupid-by-committee at work and it was making everything really stupid. Being threatened did very little to address the root cause of the problem, but it did highlight the symptoms that were previously being ignored because it was inconvenient to the stupids who had assumed role of alpha-geek. Those stupids did eventually back off, as it became clear their stupid was not being well tolerated by a community outside their control.
You can't argue with stupid people or even explain to them why they are wrong. Why? Because they are too stupid to understand. And guess what happens in real life? Most people are stupid. Humanity edges ahead with minor periods of great advancement until stupid people take over and take us backwards again. And again. And again. And yet again.
I find it quite amusing that calling someone who, despite repeated being told not to do certain things, an idiot is considered being abusive, while the kind of behaviour that usually provokes such outburst in the first place is A-OK. I guess most people really are idiots and assholes, and as such sympathize with the "victim" when one of their kind gets called out.
You can have negative feedback without negativity.
Negativity is a virus that once it infects and takes hold, spreads rapidly and kills productivity and innovation.
Negative feedback though is a positive thing, provided it's done correctly - i.e., it's not negativity, it's constructive criticism. The difference is that negativity focuses on the bad alone, while constructive criticism focuses on the rehabilitation.
"This design is stupid. You're an idiot" is a negative statement that spreads negativity. "This design is stupid because you're not using the new architecture features that are going to be present in the new release and instead trying to reinvent the wheel" is negative feedback that becomes constructive because it now presents a resolution to the problem.
It also turns the feedback giver from someone who always says no to someone who provides helpful assistance.
If all you do is complain and bitch about everyone doing crap for work, one of two things happens - either it infects others and it turns into everyone bitching about everyone else and no work gets done, or you'll find yourself isolated as being difficult to work with. Add in racism/sexism/etc and other offensive comments (which have no place in the modern workplace or anywhere for that matter) and either you're out of a job or no one wants to work with you anymore.
Hell, even Linux goes on rants, but at least he tries to justify his rant by giving feedback on what's wrong. He lacks tact and diplomacy, but at least he clearly explains why it's bad, and he attacks the technical content, not the person.
The exact same thing of over engineering is happening in the C++ community. :-(
At the risk of being down-voted, Scott Meyers, a C++ guru, has an absolutely beautiful talk on _why_ C++ has become a complete clusterfuck of complexity, and bad ad hoc design at a D conference of all things!
DConf 2014: The Last Thing D Needs (Scott Meyers)
* https://www.youtube.com/watch?....