How to deal with assholes
From Google Summer of Code Mentor Wiki
What kinds of assholes do we deal with?
* Good developers, but bad with people * Scare away new contributors * Time Sinks * Lots of questions from the same person, or don't let a thread die
How can we deal with this?
* Community managers
* These people can manage communication between different projects, and also among members of the project
* Mailing list roles
* Could we patch mailman in such a way to make it seem like a post is made, but then it isn't delivered. (Archived, but not delivered, to prevent trolling)
* Foundation to manage resources
* Free Software Foundation can help provide support for situations that require legal and/or personal responsibility threats.
* How to deal with someone opening attacking a project?
* Problem with posting facts is that there are people who don't understand the situation.
* Responding smear campaigns, historically, with facts is that it doesn't work very well
* How to deal with people attacking the project from the outside?
* Try to balance overall community, but it's difficult to shut down these types of assholes, even with police/legal intervention.
* What about forking the branch to remove trolls?
* gcc tried to go around an asshole by forking the core project, to try to create a new maintainership
* X.org fork is another example
How to deal with people who just won't leave the project?
* Block on mailing list, they resubscribe - can deal with this by creating another mailing list for developers * But, if these people can influence the project, they have power. We don't want to give these people power.
What about other interactions in the community?
* Sending thank-yous, or giving compliments for good things can make huge differences * Could call people on the phone to discuss things * Make personal contacts with people, in order to defuse conflict ahead of time * Compliment people in public, criticize in private * Reward enthusiasm with responsibility - give those people who simply criticize a chance to prove others of their views
General strategies that people have found helpful
* Use multiple ways of communicating when there is a problem * Help the asshole by assisting them with a fork, or finding someone that will work with them on a side project * It's hard to be mean to someone that you know in person - "paper tigers" or mailing list trolls might be much nicer after simply meeting other developers in person * Publish an "official way to bribe/influence developers" for your project that encourages positive behavior

