This morning on Twitter, I found myself talking to some angry people. Yeah, I know. What a surprise. And what a stupid thing to do. The funny thing is, these people were angry about another person being angry, and daring to express it in his own way. I'll get to the specifics later, but first let's talk about anger in general.
Some anger is normal, indeed unavoidable, and healthy. Anger can also be an addiction. Often, anger comes from frustration. The world is not working the way we think it should - unfairly, unjustifiably, and/or persistently. We might have good reasons to believe it should be otherwise. Sometimes anger comes from disgust, either moral or physical, and again there are often good reasons why a particular condition or action should disgust us. Anger can give us the motivation and the energy and persistence to change things for the better. Many of my most memorable career accomplishments were helped along by anger at a system that didn't work properly, or even at people who claimed something was impossible. Properly directed anger can actually be a good thing.
Then there's addictive anger. The same energy that can be used for good is also what makes anger addictive, and we all succumb once in a while. Some people feed this addiction openly, with highly visible and often profane outbursts. Others try to hide their not-so-noble feelings in politer language, but politer addiction is still addiction and the effects are indistinguishable. Righteous anger is the worst. As David Brin taught me, denying anger's actual origins and cloaking it in righteousness is a way of giving ourselves license to pursue that rush. The problem is that self-righteous anger is impossible to defuse. People are usually self-aware enough to rein in other kinds of anger, but once they think it's a moral imperative there's no going back. It's hard to tell somebody to be less righteous.
The last general point I want to make about anger is that its expression often provides useful information. When someone's angry about something, it tells us a lot about their interests, preferences, and priorities. It tells us something about the difficulty of achieving a different outcome. These kinds of information are extremely important in a collaborative environment. Where a lot of people screw this up is in not having any expressive range. If somebody's always angry then their anger in a particular situation provides no information ... but the same is true if they're never angry. Eliminating red from our palette does nobody any good.
I'm not saying that anger is essential to collaboration. Far from it. However, the people who would completely forbid it aren't quite right either. Expressing anger in a way that is hurtful is unacceptable, no matter what informational benefits might go with it. Even when it's not hurtful, it can drive people away from a project. That's a cost, but let's not inflate that cost or pretend there are zero benefits to weigh against it.
That brings me to the specifics. Of course it had to do with another Linus outburst, about C standards and undefined behavior. I've written before about how Linus often goes too far. I'm on the record there, and that belief hasn't changed. On the other hand, I think some of his critics are no better. They're anger addicts just as much as he is. The difference between "this thing is awful" and "you are awful" is very important. The first can at least potentially lead to positive change. The second practically never does. People who respond to the first with the second are generally being pretty awful themselves. They're merely indulging their own self-righteous anger and should stop. Telling someone to "calm down" or "watch your language" rarely has the desired effect. Ditto for taking someone's text, picking it apart, and replacing the author's voice with the critic's. Nobody should be doing that to anybody, and two wrongs don't make a right.
I'm not going to defend Linus. I can't, and he doesn't need me to. I'm just saying that the tone police aren't helping by adding their own bad behavior to the mix, or by presuming that they know better than Linus how to run a successful project. Hypocrisy and hubris only add to the rancor and cause people to dig in their heels. And that's enough of me being angry at other people being angry at Linus being angry. Who wants to be angry at me now? And, most importantly, how will it help?