Codifying the meritocracy
That does not keep people from wanting to tweak the system, however. A number of projects, for example, would like to find ways to broaden the definition of merit beyond simple contributions of code. Finding ways to motivate documentation writers, artists, and reviewers is a common topic of discussion, for example. There is also interest in making the meritocracy more fair; that, in turn, can lead to an attempt to codify the merit system into a formally-described system.
The Debian Developer gauntlet is one longstanding example of a formal system; nobody can reach developer status without having gone through the seven-step process of convincing the project of their skills, commitment to free software, and more. This process is not perfect; in particular, it can take a very long time for a prospective new package maintainer to be accredited by the project. But it does help ensure that Debian maintainers are committed and able to do the job.
Now the Fedora Project is considering a formal system of its own - but this project, it seems, is not satisfied with just approving maintainers. Instead, the proposal currently under discussion would create a full seven levels of developer "merit." These levels would be:
- FD0: the "probationary" level for new developers. This level grants
the ability to modify one's own packages and to access the source code
management system in a read-only mode.
- FD1: a proper package maintainer. This level adds the privileges of
orphaning one's own packages and subscribing to the glamorous
fedora-maintainers mailing list.
- FD2: Adds the ability to work with packages not specifically protected
against outside access.
- FD3 and FD4: at this level, developers can invite others to
fedora-maintainers and take ownership of orphaned packages. (The
proposal does not give any additional privileges to FD4). Attainment
of these levels might be necessary to be eligible to sit on the
steering committee.
- FD5 is the "sponsor" level which can bring other developers into the
system. Sponsors can control access to packages maintained by
developers they sponsor, give unowned packages to anybody, etc.
- FD6 is the "elder sponsor" level.
Developers who just want to maintain a few packages but who are not otherwise interested in influencing the direction of the project are likely to operate at the FD1 or FD2 levels. The proposal suggests that many Red Hat engineers would find their homes at those levels.
There is a rough set of proposed rules on how promotion through the ranks would be handled. Some criteria would be established:
Sponsor-level developers would have the power to promote anybody, possibly with a requirement that a certain number of other high-level developers agree. There is an interesting suggestion that promotion to the top level could require votes from a relatively large number of lower-level developers - promotion from below, in other words. There is a brief mention of a demotion process as well, though it is short on details.
This whole system may seem rather bureaucratic, and perhaps it is. The proposal is clear on why the project might want to impose this on itself:
Fedora is a project which is trying to open itself up in a hurry. Its
developers want to let outsiders come in and take responsibility for pieces
of the distribution, but they are understandably reluctant to throw the
doors open wide. So they need a process; the proposal discussed here
is a starting point for the development of that process. By taking this
approach, Fedora would appear to be breaking new ground in an attempt to
formalize how the meritocracy works. It will be interesting to see how
this experiment works out.
