The CoC codifies "unacceptable behavior," including flaming, trolling, being judgmental, or "constantly purveying misinformation." The proctors can decide whether disciplinary action is called for, with punitive measures ranging from warnings to revocation of a person's developer privileges.
If the idea is to stem the tide of "retiring" developers, it's not working yet. After the vote to adopt the CoC on March 15, Gentoo developer Alexandre Buisse turned in his resignation, saying that the adoption of the Code of Conduct by the Gentoo Council was "stupidly fast" and that he's tired of "endless fights" over "who gets a tiny bit more" power over parts of the project.
The latest Gentoo flamewar started as a discussion on the gentoo-dev mailing list about topics for the March Gentoo Council meeting. Gentoo founder Daniel Robbins, who had rejoined the Gentoo project earlier that week after leaving in April, 2004, seemed keen on arguing with Gentoo contributor Ciaran McCreesh on whether the Package Manager Specification (PMS) is an official Gentoo project.
Robbins declined to answer questions for this story.
McCreesh, who is not an official Gentoo developer, says that Robbins "came back without knowing anything that's gone on within Gentoo for the past several years."
This sort of sniping is not new in the free software community. It has been about nine years, for example, since Bruce Perens resigned from Debian and Software in the Public Interest in a similar confrontation between developers with strong opposing opinions. However, Gentoo seems to draw more than its fair share of combative personalities.
Diego "Flameeyes" Pettenò says he left the Gentoo project in February due to "repeated insults" from another developer "every time I did something he disagreed with," as well as "the incapacity of the current Developers' Relations team to handle those situations."
It doesn't seem to be a case of lost interest in the project itself. Despite his official retirement from Gentoo, Pettenò still contributes to Gentoo via proxy. "In the spare time I still have, I'm still working on xine-lib, and I try to still provide some improvement for Gentoo from time to time, by maintaining a few packages via some colleagues who I'm still in contact with."
Pettenò also says he'd consider rejoining after some time away to work on a personal project called Rust, which is an extensions generator for Ruby. "If something has changed in Gentoo afterward, I'll probably consider coming back. I miss my work there, and I still feel responsible for the users I left uncovered."
Gentoo's PR lead and author of the CoC, Christel Dahlskjaer, says that the situation is due, in part, to Gentoo's rapid growth. "Gentoo has been growing by leaps and bounds for a number of years. The growth has not been 'controlled' or even planned for, which means we are learning on our feet as a community how to deal with our own growth."
Dahlskjaer says that Gentoo's problems are "proportional to the size of the group." Due to Gentoo's size, Dahlskjaer says that it "loses its sense of intimacy" and that developers "tend not to give others the benefit of the doubt."
How large has Gentoo grown? According to a recent post about Gentoo developer geography, Robin Johnson says that Gentoo has 319 developers, though he writes, "Developer Relations have a pile of folks to mark as slackers, so this number will appear lower soon."
McCreesh says that the developer turnover for Gentoo "is about the same" as it has always been, and even says that the recruitment process is "slowly improving."
"It's not brilliant, but at least Gentoo is now fairly unlikely to recruit someone who doesn't know what grep is and who will cause the worst kinds of screwups. Contrary to popular myth, Gentoo doesn't have a problem with finding new developers or developers leaving."
However, McCreesh does say that it has been about two years since Gentoo has "delivered anything new that's useful or cool. Using a Gentoo system now gives you pretty much the same options as it did two years ago, but with the added problem of much higher complexity due to modular packages and a larger typical install. Portage simply can't handle the several hundred or thousand-odd packages that users have installed, either from a performance perspective or a management perspective."
Will the CoC help?
McCreesh is not optimistic that a CoC is going to make Gentoo any better. "I don't think it would help. People would just spend time abusing the system.... Gentoo already has moderated forums, and they fail horribly for development work.... Rules are enforced inconsistently and only against people not in the clique, and the competent have an even harder time getting anything done than they do on the lists."
Gentoo developer Joshua Jackson also says that he doubts the CoC will help. "I doubt anything will change. That's being cynical but I don't think anything will. We'll be good for a couple of weeks, then it'll be the same old same old yet again."
McCreesh does say that the CoC restriction against deliberate misinformation is "at least interesting" and "could be what makes this more successful than previous attempts."
"It may just turn out that she's [Dahlskjaer] able to pull it off; I remain highly sceptical that this will end up being anything other than an attempt to 'do something,' but time will tell."