[Numpy-discussion] NumPy Governance

Travis Oliphant travis at continuum.io
Thu Dec 29 02:01:57 EST 2011


That was an extremely helpful and useful post. 

Thank you Ondrej for sharing it and taking the time to provide that insight.

Travis 

--
Travis Oliphant
(on a mobile)
512-826-7480


On Dec 29, 2011, at 12:51 AM, Ondrej Certik <ondrej at certik.cz> wrote:

> On Mon, Dec 5, 2011 at 4:22 AM, Perry Greenfield <perry at stsci.edu> wrote:
>> I'm not sure I'm crazy about leaving final decision making for a
>> board. A board may be a good way of carefully considering the issues,
>> and it could make it's own recommendation (with a sufficient
>> majority). But in the end I think one person needs to decide (and that
>> decision may go against the board consensus, presumably only rarely).
>> 
>> Why shouldn't that person be you?
> 
> I haven't contributed to NumPy directly. But I can offer my experience
> with SymPy.
> 
> I agree with Perry. Having one person being in charge as the last
> call (project leader) works excellent in my experience. For SymPy,
> that person has been me,
> up until a year ago (when I realized that I am too busy to do a good
> job as a project leader), when I passed it to Aaron Meurer.
> We always try to reach
> consensus, and the project leader's main job is to encourage such discussion.
> When consensus cannot be reached, he needs to make the decision (that
> happened maybe once or twice in the last 5 years and it is very rare).
> 
> There seems to be quite strong "community ownership" in SymPy (that
> was Stefan's objection). I think the reason being that in fact we
> probably have something like a "board of members", except that
> it is informal and it simply consists of people whose opinions
> the project leader highly values. And I think that it is very easy
> for anybody who gets involved with SymPy development to
> become trusted and thus his or her opinion will count.
> 
> As such, for NumPy I think by default the project leader is Travis, who
> created it. He became busy in the last few years and so he could
> appoint a person, who will be the project leader.
> 
> The list of possible people seems quite simple, I would choose
> somebody who is involved a lot with NumPy in the last 1 year
> (let's say):
> 
> $ git shortlog -ns --since="1 year ago" | head
>  651  Mark Wiebe
>  137  Charles Harris
>   72  David Cournapeau
>   61  Ralf Gommers
>   52  rgommers
>   29  Pearu Peterson
>   17  Pauli Virtanen
>   11  Chris Jordan-Squire
>   11  Matthew Brett
>   10  Christopher L. Farrow
> 
> So anybody from the top 5 or 10 people seems ok. This has to be a personal
> decision, and I don't know what the actual contribution and involvement (and
> personal ability to be a project leader) is of the above people, so that's
> why it should be done by Travis (possibly consulting with somebody who
> he trusts and who is involved).
> 
> For SymPy, here is the list from the "1 year ago" when I passed the
> project leadership:
> 
> $ git shortlog -ns --since="January 2010" --until "January 2011" | head
>  317  Øyvind Jensen
>  150  Mateusz Paprocki
>   93  Aaron Meurer
>   81  Addison Cugini
>   79  Brian E. Granger
>   64  Ronan Lamy
>   61  Matt Curry
>   58  Ondřej Čertík
>   36  Chris Smith
>   34  Christian Muise
> 
> It's not exactly accurate, as some of the branches from 2010 were
> merged in 2011, but it gives you a picture. The above
> list doesn't tell you who the best person should be. I knew that Aaron
> would be the best choice, and I consulted it
> with several "core developers" to see what the "community" thinks, and
> everybody told me, that if I need to pass it
> on, Aaron would be the choice.
> 
> Since this was the first time for me doing this, I simply stated, that Aaron
> is the project leader from now on. And in couple months we clarified
> it a little bit, that I am the "owner",
> in a sense that I own the domain and some servers and other things and
> I am ultimately responsible for the project (and I still have a say in
> non-coding related issues, like Google Summer of Code and such). For
> anything code related, Aaron has the last word,
> and I will not override it. The precise email is here:
> 
> https://groups.google.com/d/topic/sympy/i-XD15syvqs/discussion
> 
> You can compare it to today's list:
> 
> $ git shortlog -ns --since="1 year ago" | head   805    Chris Smith
>  583  Mateusz Paprocki
>  508  Aaron Meurer
>  183  Ronan Lamy
>  150  Saptarshi Mandal
>  112  Tom Bachmann
>  101  Vladimir Perić
>   93  Gilbert Gede
>   91  Ondřej Čertík
>   89  Brian E. Granger
> 
> 
> So the activity has gone up after I stopped being the bottleneck, and
> after there was again a clear person, who is in charge and has time
> for it.
> 
> 
> Anyway, I just wanted to offer some experience that I gained with
> SymPy with this regard. As I said, I am not a NumPy developer and as
> such, this decision should be made by NumPy developers and Travis as
> the original project leader.
> 
> I could see a familiar pattern here --- Travis has spent enormous time
> to develop NumPy and to build a community, and later became busy. This
> is exactly what happened to me with SymPy (when I was back in Prague,
> I spent months, every evening, many hours with sympy....). In fact,
> Travis once said at some lecture, that opensource is addictive. And
> not only that, also, if you develop (start) something, it really feels
> like it's yours. And then when I didn't have time and I knew I am not
> doing good job with SymPy, it was probably the hardest decision I had
> to make to pass the leadership on.
> Now, from retrospect, I should have done it much earlier and it is now
> obvious, that it was the right thing to do. But at that time, it was
> not obvious and I was very unsure what is going to happen.
> 
> So anyway, good luck with any decision that you make. :)
> 
> Ondrej
> _______________________________________________
> NumPy-Discussion mailing list
> NumPy-Discussion at scipy.org
> http://mail.scipy.org/mailman/listinfo/numpy-discussion



More information about the NumPy-Discussion mailing list