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.
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.