Given the consistent level of attacks, a voluntary code would allow Free and Open Source users more time to focus on common goals.
Personal abuse, quotes taken out of context, misrepresentations, outright lies -- if you have any visibility in the free and open source software (FOSS) community, the chances are that you regularly face all these kinds of attacks. You can try to answer them, but the people responsible seem to have endless energy for debate.
In the end, you have to fall silent for lack of time, leaving the attackers crowing over your defeat, and yourself wondering where the attack came from and what you do about it.
You can see this growing viciousness in the hostile reaction to KDE last spring, or in sites like the just-defunct Linux Hater's Blog, as well as the articles of professional and semi-professional journalists who demonize anyone who fails to agree with them completely. More often, though, you see it on mailing lists or in the comments on news sites.
Aaron Seigo of KDE described the problem the other month in his blog:
Every so often someone with a real crank on will start following me around the intrawebs posting their hallowed viewpoint on me. It seems to happen to everyone with an even moderately public profile. Usually they get stuck on one message and then post it consistently everywhere they can as some sort of therapeutic outpouring of their inner angst. Most people don't last more than a couple weeks at this, though I've had a couple of people with real commitment dog me for a year or more.
Seigo admits that, being visible, vocal, and outspoken, he makes an easy target. It's not that he objects to views he doesn't agree with, he says, but that "I don't have time for pointlessness."
Few will go on the record with Seigo, but, privately, I have heard complaints similar to his voiced at least half a dozen times in the last year or so. I've voiced them myself, although I suspect that I'm not hounded by a tenth of the cranks that plague someone like Seigo. And if a lowly journalist is facing these attacks, you can be sure that they are becoming more common everywhere.
Such attacks are abusing the freewheeling freedom of expression that is the norm in FOSS. By refusing to temper this freedom with responsibility, those who make them are seriously handicapping the community that they claim to represent.
To counter this abuse, I suggest that community members voluntarily subscribe to a code of conduct to create a frame of reference in which the abuse can be countered and judged. Getting everybody, or even many people to agree to such a code would not be easy, but it might be the quickest way to deal with the growing problem.
The sources of the attacks
The attacks that I am talking about are not unique to FOSS. The American fantasist Harlan Ellison touched on the subject decades ago in an introduction to one of his short story collections entitled, "I Don't Know You, You Don't Know Me." In another introduction, he talks about people attributing all sorts of attitudes to him on the assumption that he only writes what he believes. As Seigo suggests, a certain amount of these attacks seem inevitable whenever someone has any sort of reputation.
But why such attacks are becoming so prevalent in FOSS is harder to explain. Perhaps their origins are part of the worldwide fallout from the unusually heated and prolonged American presidential campaign, in which attack ads and ad hominem attacks have become the norm. After all, for all its economic problems, the United States remains the origin of many global trends and attitudes.
Or perhaps relative newcomers to FOSS are taking out their frustrations with unresponsive proprietary companies on prominent members of the community. Unlike company executives, FOSS developers and maintainers are accessible, so they get the suppressed anger that should be aimed at the executives.
Even more likely, as one of the earliest and most Web-integrated communities in existence, FOSS has become a center of such attacks because of the strange combination of intimacy and distance that is peculiar to the Internet. Because the Internet gives instant access and is so heavily used in FOSS, you can easily end up believing that you know a community member who posts regularly in the same way that you know family or friends. At the same time, because you are not face to face and may be known by a nickname -- or simply as Anonymous -- you can easily tempted to be rude.
Really, it's a classic case of doublethink, in which you can jump from view to view, depending on which is more convenient at a given time. In fact, you might be more inclined to be rude simply because the contradiction makes you unconsciously uneasy.
All these suggestions sound plausible. However, it may also be that, in such attacks, the FOSS community is only seeing its own exaggerated reflection. Some aspects of the FOSS community have always been known for the bluntness of their exchanges, notably the kernel mailing list, and, in the past, the Debian developers' list.
At times, too, the uneasy alliance between free software and open source advocates erupts into verbal battles. For instance, two years ago, the public debates about the third version of the GNU General Public License resulted in both Linus Torvalds and employees of the Free Software Foundation openly attacking each other.
In practice, these situations rarely result in an open break, although they often appear to be on the brink of creating chaos, especially to outsiders. Newcomers, though, are less likely to know that -- especially if they are users rather than developers and therefore less likely to notice that the flip side of the outspokenness is usually a spirit of cooperation over the practical matters of coding or getting a release done. Perhaps newcomers are simply adopting the rhetoric they believe will make them fit in.
Using a code of conduct
But the origin of the behavior matters less than acting against them. Codes of conduct have been used in Ubuntu for several years now, with a code for community members, and another for project leaders.
Since then other projects, such as KDE, have borrowed heavily from the codes to produce their own versions. A community-based code would need few modifications to be just as effective.
These codes of conduct define the expected behavior of anyone in a project. They put people on notice that they are expected not only to be polite, but to act collaboratively and constructively as well. "The important goal," the Ubuntu community code suggests, "is not to avoid disagreements or differing views but to resolve them constructively."
To those with no familiarity with such codes, they might seem as meaningless as a mission statement. However, the point of a code of conduct is not to demand or to promise perfect obedience, but to keep everyone focused on their common goal -- in the case of the community, the effort to build and maintain a completely free operating system. In practice, they allow small bits of waspishness, but avoid obsessive feuds.
Moreover, a person's willingness to abide by a code of conduct provides a convenient indicator of how to regard or handle their comments. Those who refuse to subscribe to the code would be acknowledging that they place a low priority on common goals, and therefore are not worth listening to. Similarly, if someone subscribes to the code then breaks it, then the community has a common frame of reference to call them to account and to justify ignoring them.
The FOSS community is diverse enough that it can probably survive without a common code of conduct. However, the result might very well be like refusing to use a spam filter on your email: You can still function, but you have to spend an increasing amount of time dealing with annoying irrelevancies, and less time being productive.
I suggest that we use a code of conduct as a spam filter against this growing mean-spiritedness, then get on with more satisfying and important business.