Skip to content

Initial pandas governance documents #1

New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Merged
merged 9 commits into from
Feb 23, 2016
Merged

Initial pandas governance documents #1

merged 9 commits into from
Feb 23, 2016

Conversation

wesm
Copy link
Member

@wesm wesm commented Jan 7, 2016

For review and comment by @pydata/pandas core team based on pandas-dev mailing list discussions.

I drafted this from https://github.com/jupyter/governance which is a more complex OSS project so may have made some typos or left some irrelevant points.

I've also revised the project's license to define the "pandas Development Team" in line with the governance document and I recommend that we begin to apply copyright notices to all pandas code files. Maybe there is a script floating around to make it easier to fix up copyright headers.

defer that authority to the consensus of the community discussion channels and
the Core Team. It is expected, and in the past has been the case, that the BDFL
will only rarely assert his/her final authority. Because rarely used, we refer
to BDFL’s final authority as a “special” or “overriding” vote. When it does
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

missing a vowel in "Because rarely used"

Copy link
Member Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

?

Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I meant "verb" not "vowel" :).

should be: Because *it is* rarely used

## Project Core Developers

- Tom Augspurger
- Phillip Cloud
Copy link

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

is this the steering committee? are we using that nomenclature?

Copy link
Member Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I used the "Core Team" terminology in the governance doc. Let me fix that here

@TomAugspurger
Copy link
Contributor

Not sure if we're going for the 80% quorum on this, but +1 from me.

@hayd
Copy link

hayd commented Jan 7, 2016

+1. This is great, thanks for putting this together @wesm.


To become eligible for being a Core Team Member 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 Core Team are
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

'Potential Core Team' -> 'Potential Core Team Members' ?

Copy link
Member Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

fixed

@sinhrks
Copy link
Member

sinhrks commented Jan 7, 2016

+1, It's great to have a clear and fair policy.

@wesm
Copy link
Member Author

wesm commented Jan 7, 2016

Thanks for the comments. Will leave this open for comments for several more days and we can vote to merge sometime next week

==============

Copyright (c) 2012-2016, pandas Development Team
All rights reserved.

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

This ends up as one line, reading ...pandas Development Team All rights reserved. Add a period after "Team"?

Same for the next two copyrights...

@wesm
Copy link
Member Author

wesm commented Jan 11, 2016

@cpcloud @shoyer @lodagro @jreback @jseabold @changhiskhan @jtratner @jorisvandenbossche can you review and indicate your +1 so we can merge these documents? We can add the code of conduct in #2 shortly afterward. thanks!

- Ability to influence the project through the participation of their Core Team
Member.

**Tier 2** = an institution with at least one Institutional Contributor
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

This distinction in two levels seems a bit strange if there is nothing specific about the second level ? (no benefits listed)

Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

The Jupyter governance gives the same benefits to to Tier 2 as to Tier 1 (from the ones we have listed), while numpy just not makes the difference (http://docs.scipy.org/doc/numpy-dev/dev/governance/governance.html#institutional-partners-and-funding) which actually is equivalent to giving Tier 2 the same benefits as Tier 1

Copy link
Member Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

In both cases, the Institution will be recognized as an Institutional Partner and will be able to claim as such. The Tier 1 partners will receive additional acknowledgement (e.g. websites and so forth). I don't have strong views, but the Jupyter-style IP's seems fine to me.

Copy link

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

anyone know whom are institutional partners for Jupyter or other projects? (if any)

Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

For Jupyter, they are listed here: https://github.com/jupyter/governance/blob/master/people.md#institutional-partners, and they are also listed on the website with their logo: http://jupyter.org/about.html (scroll down), they have quite a lot.
Numpy has also one institutional partner at the moment: http://docs.scipy.org/doc/numpy-dev/dev/governance/people.html#institutional-partners

Copy link
Member Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Contributing to pandas is not part of my official duties at Cloudera, but if that changes in the future I will advise the Core Team.

Copy link
Member Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

(For example, I'm working on pandas today but I am on PTO)

Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

It's a pandas vacation! 🎉

Copy link
Member Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

@jreback I suggest that we propose adding Institutional Partners 1-by-1 to the document through separate patches after we merge this initial draft if that works for you

Copy link

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

sounds good

@jseabold
Copy link

lgtm modulo the one style comment

@jorisvandenbossche
Copy link
Member

Two other small nitpicks:

  • The text states:

    +Traditionally, Project leadership was provided by a BDFL (Wes McKinney) and
    +subset of Contributors, called the Core Team, whose active and consistent
    +contributions have been recognized by their receiving “commit rights” to the
    +Project GitHub repositories.

    In practice, 'commit rights' and the core team were coupled in the past (as there was no official definition of the core team). Do we want to keep this coupling? Or can we give more quickly give commit rights without necessarily becoming a Core Team member?

  • The financial sponsorship agreement document speaks about a "Governance Council" instead of a "Core Team" (I don't know how important this is to be the same)

But in any case, +1 !

@jreback, I am not sure, but is it correct that you can work partly on pandas during your working hours? If so, should Continuum be listed as Institutional partner?

@lodagro
Copy link

lodagro commented Jan 12, 2016

+1 for me

I wondered if there would be a section on inactive Core Team Members,
clearly there is.
Given that my last commit is from June 2013, i can be removed from the core
team, maybe also revoke my commit rights.

2016-01-11 17:58 GMT+01:00 Wes McKinney notifications@github.com:

@cpcloud https://github.com/cpcloud @shoyer https://github.com/shoyer
@lodagro https://github.com/lodagro @jreback
https://github.com/jreback @jseabold https://github.com/jseabold
@changhiskhan https://github.com/changhiskhan @jtratner
https://github.com/jtratner @jorisvandenbossche
https://github.com/jorisvandenbossche can you review and indicate your
+1 so we can merge these documents? We can add the code of conduct in #2
#2 shortl y afterw ard.
thanks!


Reply to this email directly or view it on GitHub
#1 (comment)
.

umbrella and cannot use the Project trademarks in a way that suggests a formal
relationship.

To acknowledge institutional contributions, there are two level of Institutional
Copy link

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Institutional Contributions ?
... two levels ...

Copy link
Member Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Fixed, thanks.

@wesm
Copy link
Member Author

wesm commented Jan 13, 2016

@lodagro we can visit the core team membership in a follow up pull request

@wesm
Copy link
Member Author

wesm commented Jan 13, 2016

@jorisvandenbossche to your points

  • I think core team and committership is a reasonable coupling. Patch acceptance and merging is an important feature of OSS project governance -- the ASF model has both committers (equivalent of core team) and a PMC (more of a project board) so this is somewhat consistent.
  • I hope it will be reasonably clear that the Core Team == Governance Council as it relates to the NumFOCUS fiscal sponsorship agreement. If somehow it becomes an issue we can amend these documents

@wesm
Copy link
Member Author

wesm commented Jan 13, 2016

@cpcloud @shoyer @jreback @changhiskhan @jtratner if you have further comments, it would be good to wrap this and #2 up by weekend

@wesm wesm changed the title Draft of pandas governance documents Initial pandas governance documents Jan 13, 2016
===========

The pandas Project (The Project) is an open source software project affiliated
with the 501c3 NumFocus Foundation. The goal of The Project is to develop open
Copy link

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

501(c)3

@wesm
Copy link
Member Author

wesm commented Jan 13, 2016

I see @sinhrks on the core team list -- do we have a proper name for this person or we can leave as is?

@jreback
Copy link

jreback commented Jan 13, 2016

Masaaki Horikoshi

@sinhrks
Copy link
Member

sinhrks commented Jan 13, 2016

Ah thanks. Pls include my proper name.

@wesm
Copy link
Member Author

wesm commented Jan 14, 2016

Barring concerns from @cpcloud, @changhiskhan, or @jtratner I'll hit the merge button tomorrow. Thanks all for helping out with this

@wesm
Copy link
Member Author

wesm commented Jan 16, 2016

hi folks -- it's been pointed out to me (quite correctly) that the pandas-dev mailing list has a much smaller circulation than the broader pydata google group, and the community would benefit from an opportunity to scrutinize these documents and raise concerns even if they aren't coming from someone named on the core team.

I'll send an email to pydata@googlegroups and we'll leave the discussion open for a couple more weeks. I would also like everyone named in the People document to +1 before we merge. Thanks

@aterrel
Copy link

aterrel commented Jan 18, 2016

Hi all, Thanks for sending our to the pydata list. I have a couple of comments.

  • You might add that the Pandas Project has the right to receive tax-free donations in the US through NumFOCUS (Europe is a complicated can of worms but many countries allow donations tax free). We find many corporate donors can work this way better and for the project it protects you from having any obligation to the money donated.
  • I wouldn't call the Project NumFOCUS Board a board. Unfortunately, the word board is used in US legal contexts to hold liability to the activities of a project. While in the US you will have a greatly limited liability and even more so with the Pandas License, it is usually better to avoid the word. Calling it a Project NumFOCUS Subcommittee would be better.
  • This document doesn't give a path of mediation upon breach of the document. Many people assume that a NumFOCUS affiliated project means that breaches should be the arbiter but we are really the fiscal entity not the governing entity. So as it stands the only mediation to this document if a person sees her rights as a core contributor or institutional partner being abused is to appeal to the courts. I would suggest adding something to the effect that non-compliance should be reported to the core membership. This is a place where private communication might be more appropriate.

@aterrel
Copy link

aterrel commented Jan 18, 2016

I guess to further clarify point 2, the Jupyter document gives the new BDFL decision to the main NumFOCUS Board not its NumFOCUS subcommittee. Reading this document as it stands it seems unclear if it is giving this right to the Pandas NumFOCUS subcommittee or the NumFOCUS Board, i.e., I find the wording Project NumFOCUS Board confusing.

@wesm
Copy link
Member Author

wesm commented Jan 18, 2016

Thanks @aterrel, I'll propose some edits to incorporate this feedback.

@wesm
Copy link
Member Author

wesm commented Jan 18, 2016

Have a look. I adopted the same process for changing the governance documents for BDFL election in the event that I am unable. I also removed the "board" terminology re: our NumFOCUS subcommittee and noted that we are able to receive tax-deductible donations.

@aterrel
Copy link

aterrel commented Jan 19, 2016

@wesm thanks for the edits! I think they look good.

@jreback
Copy link

jreback commented Feb 13, 2016

we should prob merged these at some point....

@wesm
Copy link
Member Author

wesm commented Feb 13, 2016

Agreed. Let's collect +1's from all the core team members listed (some of which I may bug about their activity level after this is merged!)

  • Tom Augspurger
  • Phillip Cloud
  • Andy Hayden
  • Stephan Hoyer
  • Wes McKinney
  • Wouter Overmeire
  • Jeff Reback
  • Skipper Seabold
  • Chang She
  • Masaaki Horikoshi (@sinhrks)
  • Jeff Tratner
  • Joris Van den Bossche

@wesm
Copy link
Member Author

wesm commented Feb 13, 2016

@cpcloud @jorisvandenbossche @changhiskhan @jtratner can you please review and give your +1 for merging this.

To the others -- if I misrepresented in carrying over your +1 from the discussion please let me know, not intentional!

@jorisvandenbossche
Copy link
Member

A +1 from me!

@cpcloud
Copy link
Member

cpcloud commented Feb 15, 2016

+1 from me too!

Question: if the BDFL is not on a subcommittee, do they still have override
authority?

Suggestion: they do, but they should appoint a delegate who plays that role

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Should this be formalized rather than formulated as a "suggestion"?

Copy link
Member Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Possibly. Until we create more subcommittees (unclear when it would extend beyond the NumFOCUS fund-management side of things) it's fairly hypothetical, and we could always establish a more formalized process around appointing a subcommittee "BDFL lieutenant" if deemed helpful.

@changhiskhan
Copy link

+1 from me other than the 2 review comments above. 🚢

@femtotrader
Copy link

+1 I'm member of Pandas-DataReader http://pandas-datareader.readthedocs.org/ project not a "core" dev... but anyway that's a good idea to write a governance document / code of conduct

@wesm
Copy link
Member Author

wesm commented Feb 16, 2016

Thanks @femtotrader -- I think we should definitely encourage more projects like pandas-datareader. If there's anything we can be doing to help that please let us know. Definitely happy to add core team members who are working on affiliated projects but not necessarily core pandas

@femtotrader
Copy link

@davidastephens was also very involved in pandas-datareader https://github.com/pydata/pandas-datareader/graphs/contributors

@jtratner
Copy link

This document looks excellent! Thanks for putting it together and I think it's a great step in favor of pandas future development. I've been on the sidelines but I'm incredibly excited about the direction of pandas as it goes to 1.0 and this is a great companion to that.

@jtratner
Copy link

(Also I apologize for the delay in my reply, initial email got caught in my filters and I've been a little snowed under)

@wesm
Copy link
Member Author

wesm commented Feb 23, 2016

We have a quorum, so I am going to merge these documents. Thank you everyone for the feedback.

wesm added a commit that referenced this pull request Feb 23, 2016
Initial pandas governance documents
@wesm wesm merged commit c737e3b into master Feb 23, 2016
@wesm wesm deleted the governance-draft branch February 23, 2016 20:01
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.