You have probably heard various opinions about how to deal with people who write insulting or provocative remarks on various Internet forums (also known as "trolls" or people who "flame"). The most common is "Don't Feed the Trolls", which says that all the people in the forum should avoid responding to the troll. However, as you will see below, "Don't feed the trolls" is also a wrong and ineffective approach for dealing with trolls.
Luckily, I discovered a much better way to handle criticism in the book Feeling Good: The New Mood Therapy, which is an internationally best-selling self-help book by Dr. David D. Burns for learning how to deal with periods of clinical depression. The book teaches cognitive therapy, which was proven to be effective in dealing with a variety of mood disorders. The book has helped me a lot both in learning the cause of my psychological conditions, and in giving me tools to overcome them.
This post will focus on a certain chapter in the book called "Verbal Judo: learn to talk back when you're under the fire of criticism", as adapted by me to the world of online, Internet-based, communication. What this chapter does is instruct depressive people (and other people in general) how to properly handle criticisms from their peers. The super-executive summary for this post is: "On the Internet, don't be right - be smart."
One final note: I am not a mental health professional and this is not professional psychological advice. I believe anyone is allowed to give such insights from their knowledge and experience, just like everyone is allowed to give their opinion on computing or on legal matters, while stating the usual disclaimer. So don't blame me if this thing back-fires, and use your reason and judgement with what I'm saying here.
Someone joins a Python IRC channel and says "Perl rocks my socks and Python sucks balls, LOL. Python programmers are incompetent imbecile losers, ROTFL…"
(I'm giving it about Python to avoid Perl-elitism on my part. I'm also using "him", "he" consistently, though the troll might be female. )
What not to do?
Criticise his judgement:
- "Python does not suck, and you are being rude."
- "WTF are you saying? Everybody knows that Perl sucks."
Saying sentences like that will likely irritate the troll further, will likely yield an even more aggressive response from the troll, and will only escalate the heat in the conversation.
Don't feed the troll" - i.e: ignore him. Someone will "feed" him eventually and the troll may continue trolling and feeling he's right and superior, or alternatively that the Python people on the channel are being "jerks" for not responding.
Ban him / call for banning him - a great way to create another enemy, and can also possibly start some "was it right to ban him" converations. Will also negatively contribute to the channel's atomsphere among the channel members.
The troll may also prove to be a useful resource in the future, or can be taught to love Python eventually.
Tell him not to troll. - you're labelling him, insulting him and making him feel like he's alienated. Some people may still respond harshly.
Cancel the project, or close the channel - may seem very far-fetched but in a project I was involved in and made some suggestions which were perceived as annoying, I was told that they actually considered cancelling the project. Naturally, this is throwing the baby along with the bathwater, so you certainly must not do that.
What to do instead
So what should we do instead. It's very simple:
Ask him what he means. ; interrogate him:
- "Why do you feel that Python is so bad? What do you find wrong with it?"
Agree with him (but use a softer language):
- "Yes, Perl is a nice language, and I agree that Python has its downsides and/or trade-offs in comparison to Perl."
- "It's OK to prefer Perl, we'll still accept you here."
This will make the troll lose steam and help you find a common ground.
And eventually negotiate a common ground: "Would you agree that some people like Perl better and some like Python better? (And some may like both equally.). Maybe you can still write Python code and be productive in it while still not in love with it. Who knows, maybe you'll even grow to like it. Feel free to stick around and ask questions."
(After I originally read that in Feeling Good, I immediately thought that it made immediate sense, and that it will likely work in most cases. However, later I thought that I probably would not have thought about it myself.)
Repeat that a few times and the troll will eventually calm down and will become more friendly and hospitable. Some people who've read a draft of this article claimed that such a person will probably troll further in the future, and so one should get rid of him as quickly as possible. While this may often be the case, one should understand that it is not always the case for all trolls. Moreover, you should learn to tolerate people that have some bad personality traits which you don't like, instead of deciding right away that you hate them and don't want to have anything to do with them. I have decided to do that, and often found these Internet people to be of some value, whether in entertainment, knowledge or technical help.
On the other hand, if you dismiss every one as a "troll" for any small problem, your community will not grow a lot and you'll leave people with a lot of bad taste in the mouth.
The rest of this post gives more useful advice for communicating with people who are making provocative statements, and can be read at your own leisure. After you've read that, you may wish to practice what was said here using role-playing, by one of the following scenarios:
- Someone comes on a FreeBSD channel, and claims that Linux and the GPL have "won" and that the BSD licence and the BSD clones have no future.
- Someone joins a channel of the GNU project and claims that the GPL licence is an "evil", anti-capitalistic and anti-commercial licence, that does a lot of harm to the open source world.
- You are talking on a Perl channel, when someone joins and says that "Perl is dead".
- You are chatting on a mailing list or chatroom dedicated to development of open-source software when someone says "Why are you people spending so much time making sure your programs run on Windows? One should prohibit running FOSS on Windows! Everyone should avoid porting their software to Windows? By providing Windows users with great FOSS software, you make sure Windows remains popular and are working against the cause."
- You are discussing Emacs when someone joins and say "Emacs is a bloated operating system that lacks a good text editor. Only losers use it. vi FTW!".
- You are on a Vim channel, when someone say "Everybody knows that vi sucks! Emacs is the only one true editor. Vi users are lamers.".
You can probably think of others.
Some Advice for Communicating with Trolls Properly
Relax: don't worry if you don't get everything exactly right.
Communicate clearly: write in the best spelling, grammar, punctuation, capitalisation, idiomatic speech, etc. that you can, no matter how bad the troll's messages were in this respect.
It may be a good idea to avoid too high or complicated words, because many foreign speakers of English often have poor English vocabulary.
Don't criticise what he says directly or the way he says it (Style over substance etc.)
Especially avoid ad hominem: "You're under age and much younger than me and not a lawyer, so you're not qualified to give your opinion about open-source licences."
Be polite and friendly.
Don't be too terse. Write coherently, and explain what you want.
Proper human communication has a lot of redundancy, but people prefer it this way. Even in Information Theory, you cannot compress an arbitrary amount of data to a message which is too short.
On the other hand, don't be too verbose, as people won't bother reading you. It may be better to put a claim and reiterate.
If using E-mail, always do bottom-inline post and never top-post (unless you know better than that, which you probably don't). When top-posting, the one who responds can often reply not to the point or miss many important posts:
- Quote a selected message
- Disarm the troll using the methods above.
See the English Wikipedia article about posting style for more information.
Don't selectively trim the message without leaving enough context.
Don't mis-interpret or jump to conclusions - ask the troll what he means if you don't know.
Try to avoid using aphorisms, proverbs, "famous" quotes, rhymes or verse etc. Instead use free-form, coherent speech and say what you want in your own words.
The problem with aphorisms, and their ilk are that they tend to project authority, and usually backfire because a person intuitively knows that.
Sometimes they may lead to an aphorism war or for "correcting" the aphorism or discussing its larger context and origins.
All of these can sometimes spice up a friendly conversation and add humour to it, though, but your kilomterage may vary.
Don't make fun of the troll. Respect him and try to avoid unnecessary humour. Be pleasant - not funny.
Don't be rude; use soft words such as "I think", "I believe", "In my opinion", "I find that", etc.
Don't label: "open-source and Creative Commons are Socialism" (So what if they are? They are still beneficial.)
Always start the conversation with a "Hi [name-or-nick]," and possibly thank him for what he says or otherwise start with a compliment. This will better allow disarming him.
- "Feeling Good: The New Mood Therapy Revised and Updated" by David D. Burns.
- "How to Protect Your Open Source Project From Poisonous People" - by Ben Collins-Sussman and Brian Fitzpatrick of Subversion fame. A Google Tech Talk - not sure if there are subtitles or a transcript.
- The Book "Producing Open Source Software" - by Karl Fogel (of CVS/Subversion fame).
This work is licensed under the Creative Commons Attribution 3.0 License (Unported) (CC-by) or at your option any later version. Copyright © 2011, Shlomi Fish. CC-by is a common, permissive, free/libre/open licence for cultural works, which allows for almost unlimited use. See my interpretation and expectations from people who wish to build upon it (which I believe are pretty fair).
About the Author
Shlomi Fish is an Israeli software developer, essayist and humorist, who is passionate about open source, open content, and freedom and openness in general. He's been either trolling various online forums, or alternatively dealing with people who troll them, since he's been seriously involved in the Israeli and international open-source world.
Among his many sins, he can list writing many "farfetched" and avantgarde stories and screenplays, releasing a lot of open-source programs that he's not sure anyone besides him uses, adopting some programs and CPAN modules by other people that seem to be more popular, contributing to projects with many contributors (often not regularly), being called "passive-aggressive" and understanding that he is often over-domineering, regularly getting into undesirable psychomedical periods of being "hyper", (while lately deciding to openly admit it.), and writing many opinionated articles, essays and blog posts about various topics. He prides himself in being a geek, who is a person who is inclined in one or more creative or research endeavour, but does not have prejudice for or against either geek culture, popular culture or popular geek pseudo-culture. He chooses what he finds good and happens to like, not what other people consider as hip or trendy or passé. As such, he belongs to the empty set of people who like both Pink Floyd, as well as Shania Twain and Atomic Kitten (meow!).
Shlomi is interested in any contracts or commissions involving writing essays, blog posts or articles, or in publishing polished versions of his fictional stories or essays, or collections thereof, in print or E-book form. He can be contacted by various means, but please don't ask him to fix your computer or other personal help where an online forum will better do.
- On Slashdot.org
- On the Life Hacker blog (took me a lot of time to find a non-AJAX URL, because I resent AJAX URLs)
I may have misunderstood the word "troll" to be anyone who is provocative, including by intending well (see the comments), although saying that a person is "trolling" or even "spamming" in this case may be commonplace now. I still think that even if it's a consciously malevolent troll, he can eventually lose steam and lose all the fun they wanted to have by using the techniques above. But this is just a hypothesis. See an insightful comment about that.
A few people said that I shouldn't have given this advice because I too have made provocative statements (what was nicknamed "trolled") in several online forums in the past (while usually having good intentions). I admit this is the case, because I'm an opinionated man, who tends to want to fix "inefficiencies", and expresses his opinion a lot. However, that does not invalidate the fact that my advice may still be sound, and that you can also safely apply it to disarm me, when I'm being provocative. Or to sum up, often the "Pot calling the kettle black" accusation is a variation of the "Ad hominem tu quoque" fallacy.
IDEA.org has written a great follow-up post to this post and other posts by other people about how to deal with malevolent comments of various types, and also attempting to fully classify them.