Assholes are killing your project
To persuade developers that community is important, do some measures.
Like showihg who's the most productive developer, show people that
abusive behavior has an actual impact.
Graphed the number of committers over ten years on the Gentoo
project. Ubuntu launch did not interrupt growth. Decline started after
complaints were received about early asshole behavior. Just three
developers out of 250 had the time to dominate a lot of mailing
lists. Decline stopped after the assholes were kicked out--but never
regained its original height. One person was responsible for 20% of
the postings on the Gentoo mailing lists.
Committers for Glibc. Two jumps: one in mid-2009 caused by move to Git
(probably because people could work around a difficult project lead),
and one late 2012 when the difficult project lead left.
Conflict is good. But if someone feels humiliated, belittled, etc. by
your behavior, you're destructive. Also watch for someone who is nice
to someone with more power but nasty to someone with less power (the
secretary in the office, the waiter in the restaurant).
Takes five good interactions to balance one bad one in someone's eyes.
Some projects attract young programmers who don't know how to behave
socially, or at least on mailing lists. They may be fine a few years
later as they interact more and mature.
Not only do assholes make it hard to recruit talent, but they attract
more of the bad people.
Even if an asshole is technically a great developer, not worth having
because they will drive away more talent than they offer themselves.
In some situations they add value, but the destructiveness tends to
To combat: start by using metrics. They offer a case for taking
action. Set rules, and be sure to enforce them.
Hard to actually get rid of an asshole. Give them time to reform, just
a few chances over a few months. Then have to kick them out and ban
them again if they try to resubscribe.
From the audience: Some people are just angry and you can talk to
them. Some may be bad to supervise people but have a useful role in
the organization doing something else.
Recommended books: Getting Past No, The No Asshole Rule, The Cost of