[openstack-dev] The Evolution of core developer to maintainer?

Dean Troyer dtroyer at gmail.com
Wed Apr 1 00:46:11 UTC 2015

On Tue, Mar 31, 2015 at 5:30 PM, Joe Gordon <joe.gordon0 at gmail.com> wrote:

> Do you feel like a core deveper/reviewer (we initially called them core
> developers) [1]:
> In OpenStack a core developer is a developer who has submitted enough high
> quality code and done enough code reviews that we trust their code reviews
> for merging into the base source tree. It is important that we have a
> process for active developers to be added to the core developer team.
> Or a maintainer [1]:
> 1. They share responsibility in the project’s success.
> 2. They have made a long-term, recurring time investment to improve the
> project.
> 3. They spend that time doing whatever needs to be done, not necessarily
> what is the most interesting or fun.
First, I don't think these two things are mutually exclusive, that's a
false dichotomy.  They sound like two groups of attributes (or roles), both
of which must be earned in the eyes of the rest of the project team.
Frankly, being a PTL is your maintainer list on steroids for some projects,
except that the PTL is directly elected.

> Maintainers are often under-appreciated, because their work is harder to
> appreciate. It’s easy to appreciate a really cool and technically advanced
> feature. It’s harder to appreciate the absence of bugs, the slow but steady
> improvement in stability, or the reliability of a release process. But
> those things distinguish a good project from a great one.
The best maintainers appear to be invisible because stuff Just Works(TM).

It feels to me like a couple of things are being conflated here and need to
be explicitly stated to break the conversation down into meaningful parts
that can be discussed without getting side-tracked:

a) How do we scale?  How do we spread the project management load?  How do
we maintain consistency in subteams/subsystems?

b) How do we avoid the 'aristoctacy'?

c) what did I miss?

Taking b) first, the problem being solved needs to be stated.  Is it to
avoid 'cliques'?  Are feelings being hurt because some are 'more-core' than
others?  Is it to remove being a core team member as a job-review checkbox
for some companies?  This seems to be bigger than just increasing core
reviewer numbers, and tied to some developers being slighted in some way.

A) is an organization structure problem.  We're seeing the boundaries of
startup-style flat organization, and I think we all know we don't want
 traditional enterprise layers of managers.

It seems like there is a progression of advancement for team members:
 prove yourself and become a core team member/reviewer/whatever.  The next
step is what I think you want to formalize Joe, and that is those who again
prove themselves in some manner to unlock the 'maintainer' achievements.

The idea of taking the current becoming-core-team process and repeating it
based on existing cores and PTL recommendations doesn't seem like too far
of a stretch.  I mean really, is any project holding back people who want
to do the maintainer role on more than just one pet part of a project? (I
know those exist)

FWIW, I have not been deeply involved in any of the highly
political/vendor-driven projects so this may appear totally ignorant to
those realities, but I think that is a clue that those projects are
drifting away from the ideals that OpenStack was started with.



Dean Troyer
dtroyer at gmail.com
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.openstack.org/pipermail/openstack-dev/attachments/20150331/bb7b229f/attachment.html>

More information about the OpenStack-dev mailing list