Gentoo's growing pains
Gentoo now has more than 300 developers and over ten thousand packages in portage, a size that rivals Debian, and it got there in a fairly short period of time. Some growing pains are a natural consequence of that growth.
Topics in this discussion include the ease (or lack thereof) of becoming a Gentoo developer, the usefulness of GLEPs (Gentoo Linux Enhancement Proposals), separating a development tree from a stable tree, voting, source management control systems and more.
How easy should it be to become a developer? Anyone should be able to jump in and contribute, but that doesn't mean they should be granted commit access right away. Granting commit access too easily creates problems, usually due to the errors of inexperienced people. If the process is easy enough, it's only a matter of time before someone with malicious intent starts mucking with the tree. Currently Gentoo requires prospective developers to take a quiz. There is generally some mentoring that to help the person get ready for the quiz. Once a person passes the quiz they should know enough about how Gentoo works to avoid commit errors. The malicious are not likely to work that hard and the mentor has a good chance of weeding them out before they get that far in any case.
The process does get bogged down when there are not enough mentors. Not every developer makes a good mentor. Even those who are good mentors may have personality conflicts with some people. This problem is not unique to Gentoo. Overall, it seems that becoming a Gentoo developer is easy enough to attract a steady stream of new people, but commit access is restrictive enough to prevent major problems.
GLEPs may be proposed by users or developers. They get written up the GLEP editors and posted to the development list for discussion. During the discussion the GLEP is revised. Some die during the recursive iterations, some go on to a vote. If the GLEP only affects a single team it will be voted on by that team. GLEPs with broader implications are voted on by the Gentoo Council. Even if the GLEP passes, it may not be implemented. This is not ideal, but at least the trail of dead GLEPs provide insight to bad ideas and keep them from being proposed over and over and over again.
Gentoo still has much to work out. The project has the advantage of seeing
what works (and what doesn't) in the Debian project. They have the
opportunity of making all new mistakes as the project deals with its growth
and popularity. From an editorial standpoint it can be fun to watch.