I'm very in favor of putting some official procedures into a YTEP.  Having a codified process may also help with conflict resolution as well.

Apache does something with their projects where developers who make sustained contribution are made "members" after nomination by another member and are given write access to the main repo.  It's a small thing, but if we perhaps have an official definition of "yt member" in a YTEP with a posted list of members, it can be something people can point to as a way of demonstrating that they've done significant work on the project.

I think it might also be good to have officer-like positions where people are representatives for various areas of the code, such as data structures, visualization, analysis_modules, etc. and to have semi-regular meeting of these people.  This may be as much leadership as we need for now, just a group that meets on a schedule to make sure everyone's on the same page with releases and major development efforts.

What do people think of something like this?

On Wed, Aug 13, 2014 at 4:58 PM, Matthew Turk <matthewturk@gmail.com> wrote:
Hi Britton,

Thanks for bringing this up -- it's a tough topic, but also I think
really important.  At the WSSSPE conference last year, a paper was
submitted talking about the Apache model:

http://figshare.com/articles/Sustainable_Cyberinfrastructure_Software_Through_Open_Governance/790761

which talks about a lot of related topics.  Apache does some
interesting things.  They use the word "meritocracy" which I am rather
-1 on using (see, for instance,
http://www.ashedryden.com/blog/the-ethics-of-unpaid-labor-and-the-oss-community
) but I do think there is something to be said for a large part of
their methods of organization.

Like you, I think we are overdue.  I would like to point out that, for
all intents and purposes, you are *already* the ombudsman for the yt
community.  I don't think you're proposing we have a committee that
bosses everyone around, but rather one that enables a larger number of
people to have a say, particularly because yt has become embedded in
many of our scientific workflows and it touches a lot of research
activities now.  I like the idea of members.  I like the idea of a
project management committee, but it's not clear to me how that would
work, or which decisions we have made recently that they would weigh
in on.  I also really like the idea of having "code liasons" to
different data platforms and/or communities, and the idea of having
people who are responsible for many different areas of the code and
codifying that in some way is quite attractive to me.

For what it's worth, a few weeks ago I gave a presentation on my
"vision" for the future of yt (http://goo.gl/JKt6MA).  The thing is,
while I gave this presentation, it's just *my* vision -- it is not
necessarily anyone else's vision.  And I think it's time we have some
method of taking into account a diverse set of opinions for what we as
a community can emphasize, how we resolve conflicts, and so on and so
forth.

Again, thanks for bringing this up.  We need to have this conversation.

-Matt

On Tue, Aug 12, 2014 at 4:11 PM, Britton Smith <brittonsmith@gmail.com> wrote:
> Greeting yt developers,
>
> First, I want to congratulate everyone here on the successful release
> of yt-3.0.  This was a massive effort on the part of so many and a
> true testament to the strength of this team.
>
> At the time of writing this, there are 78 members of the yt-dev
> mailing list.  As someone who does most of their work in very small
> collaborations, this amazes me and make me very proud.  In case you're
> wondering, the yt-users list has 268 members.
>
> As a project, yt has a significant amount of infrastructure: code
> review with pull requests, issue tracking, automated testing, emails
> lists, an IRC channel, enhancement proposals, workshops.  All of this
> is evidence of our legitimacy as a Real Thing.  However, one big
> missing piece is a system of governance.  I don't know exactly what
> this means, but I have some ideas, which I will share below.  What I
> want to do right now is to start a discussion that will, hopefully,
> include as many people as possible on this list.
>
> For me, governance means (roughly) the following:
>
> - a set of procedures in writing for how various things are to be
>   done, such as acceptance of pull requests, releases, designating
>   developers as core contributors, etc.
>
> - a governing body to make decisions and help guide the project.
>
> This accomplishes a number of things, which as a project I think we
> need, such as:
>
> - overall stability of the project.
>
> - providing a system for conflict resolution.
>
> - maintaining the spirit of yt as a team effort.
>
> - providing a way for active contributors to get credit for their
>   contribution in the form of official recognition.
>
>
> So, these are my initial thoughts, but I really think this deserves a
> thorough discussion with as many people participating as possible.
> Please, think about what governance means to you, whether we need it,
> what it should be, and what we might get out of it, and share your
> thoughts over the next few days.  I look forward to this discussion.
>
> Britton
>
>
> _______________________________________________
> yt-dev mailing list
> yt-dev@lists.spacepope.org
> http://lists.spacepope.org/listinfo.cgi/yt-dev-spacepope.org
>
_______________________________________________
yt-dev mailing list
yt-dev@lists.spacepope.org
http://lists.spacepope.org/listinfo.cgi/yt-dev-spacepope.org