[Numpy-discussion] interpretation of the draft governance document (was Re: Governance model request)

Nathaniel Smith njs at pobox.com
Thu Sep 24 03:22:43 EDT 2015


On Wed, Sep 23, 2015 at 3:12 PM, Travis Oliphant <travis at continuum.io> wrote:
>>
>> Here is a list of the current Contributors to the main NumPy repository:
>>
>>
>> [https://github.com/numpy/numpy/graphs/contributors](https://github.com/numpy/numpy/graphs/contributors)
>>
>
> One of the problems with this list is that my contributions to the project
> are extremely under-represented because the large majority of my commitment
> of code happened in 2005 to 2006 before github was used.      So, using this
> as a list of the contributors is quite misleading --- and there are a lot of
> people now looking only at lists like this one and it might confuse them why
> I care so much.    So, if you are going to make this list public in a
> governance document like this, then I think some acknowledgement of the
> source of the original code and the contributors to that needs to also be
> made --- or you could just also point to the THANKS document which lists
> people up to about 2008.   Between 2008 and 2010 we will lose contributions,
> still and this can be acknowledged.

I'm actually not even sure why this link is even here -- it's another
thing that just got copied from Jupyter/IPython :-)

It looks like the reason your commits are massively undercounted on
that page is that github uses emails to match up commits to github
accounts. Unfortunately it looks like almost all your old commits used
<oliphant at enthought.com> for your email address, and apparently the
@teoliphant github account doesn't have that listed as one of its
emails. I guess that's probably unfixable on your end, and while git
has a standard way to solve these issues (.mailmap -- that's why
Stephan got the right answer from git shortlog), github is not clever
enough to use it:
   https://github.com/holman/ama/issues/551#issuecomment-46129792

So it sounds like that page is basically unfixable, and if it's
misleading then we should just delete it from the doc. We definitely
don't want to diminish anyone's contributions!

[snip]
>> ### Council membership
>>
>> To become eligible to join the Steering Council, an individual must be a
>> Project Contributor who has produced contributions that are substantial in
>> quality and quantity, and sustained over at least one year. Potential
>> Council Members are nominated by existing Council members and voted upon by
>> the existing Council after asking if the potential Member is interested and
>> willing to serve in that capacity. The Council will be initially formed from
>> the set of existing Core Developers who, as of late 2015, have been
>> significantly active over the last year.
>>
>
> Concretely, I'm asking to be included in this initial council so a simple
> "along with Travis Oliphant who is the original author of NumPy".   If other
> long-time contributors to the code-base also want to be on this initial seed
> council, I think it would make sense as well.

I'll leave this discussion for the other thread that's specifically
about the council membership, so as not to confuse matters.

>>
>> When considering potential Members, the Council will look at candidates
>> with a comprehensive view of their contributions. This will include but is
>> not limited to code, code review, infrastructure work, mailing list and chat
>> participation, community help/building, education and outreach, design work,
>> etc. We are deliberately not setting arbitrary quantitative metrics (like
>> “100 commits in this repo”) to avoid encouraging behavior that plays to the
>> metrics rather than the project’s overall well-being. We want to encourage a
>> diverse array of backgrounds, viewpoints and talents in our team, which is
>> why we explicitly do not define code as the sole metric on which council
>> membership will be evaluated.
>>
>> If a Council member becomes inactive in the project for a period of one
>> year, they will be considered for removal from the Council. Before removal,
>> inactive Member will be approached to see if they plan on returning to
>> active participation. If not they will be removed immediately upon a Council
>> vote. If they plan on returning to active participation soon, they will be
>> given a grace period of one year. If they don’t return to active
>> participation within that time period they will be removed by vote of the
>> Council without further grace period. All former Council members can be
>> considered for membership again at any time in the future, like any other
>> Project Contributor.  Retired Council members will be listed on the project
>> website, acknowledging the period during which they were active in the
>> Council.
>
>
> I would just remove quite a bit of this language and just say that members
> who are inactive on the Council may be asked to step down if they are not
> planning on returning to active participation.

I think it's important to have *some* kind of relatively
objective/impartial criteria here, because if the rules force somebody
to be the bad guy before anyone can get pruned, then the council will
never get pruned, and over time we'll end up with an official council
membership list that gets more and more out of touch with reality.
Which is the kind of "social debt" we don't need IMO -- we already
have enough technical debt to sort out :-).

That doesn't mean it necessarily has to be these particular criteria
though... probably the decision about what exactly they should be is
another thing to defer to the other thread (or at least put on hold
until we have some decision on the initial membership question).

I'm feeling good -- it sounds like we're narrowing things down quite a bit now.

-n

-- 
Nathaniel J. Smith -- http://vorpus.org



More information about the NumPy-Discussion mailing list