Skip to content
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

overhaul governance #7

Closed
wants to merge 23 commits into from
Closed

overhaul governance #7

wants to merge 23 commits into from

Conversation

@story645
Copy link
Member

story645 commented Dec 10, 2019

Based on this weeks dev call, temporarily putting the following docs here:

  • Social Media/Communications Guidelines
  • Contributor Roadmap
  • Named Roles (which maybe should be part of the people?
    Sorry, didn't realize I could push directly to this repo. 🙁
communications_guidelines.md Outdated Show resolved Hide resolved
communications_guidelines.md Outdated Show resolved Hide resolved
communications_guidelines.md Outdated Show resolved Hide resolved
contributor_roadmap.md Outdated Show resolved Hide resolved
contributor_roadmap.md Show resolved Hide resolved
contributor_roadmap.md Outdated Show resolved Hide resolved
Copy link

trallard left a comment

I added a few comments to the docs.
Some other things that came to mind while going over these are:

  • How is the onboarding of these folks happening? - i.e. do you have a manual or a call or the such
  • How can also folks step down from their responsibilities shall their circumstances change?
contributor_roadmap.md Outdated Show resolved Hide resolved
- potential repercussion of a [Code of Conduct](https://www.python.org/psf/conduct/) violation


# Community / communications

This comment has been minimized.

@trallard

trallard Jan 6, 2020

I like the fact that there is an emphasis on the folks observing the Code of Conduct and that breaches to this would lead to revoking their privileges. A quick search did not point me to clear guidelines on how to report this or enforce the CoC (maybe my search-fu failed) .

So maybe it would also be useful to appoint a code of conduct person or subteam

This comment has been minimized.

@story645

story645 Jan 8, 2020 Author Member

On our to-do list is to adopt the Python CoC to an MPL specific one and then include enforcement details and reporting - which will be to NumFocus so that there's an external record of the report.

named_project_roles.md Show resolved Hide resolved
@story645
Copy link
Member Author

story645 commented Jan 8, 2020

Thanks for all the feedback!

How is the onboarding of these folks happening? - i.e. do you have a manual or a call or the such

We have a post on discourse and the plan is to ultimately move these documents into the docs. Would love to do community calls but don't have anyone with the bandwidth to run them at the moment.

How can also folks step down from their responsibilities shall their circumstances change?

We're working on sorting that out, so TBD

@astraw
Copy link

astraw commented Jan 8, 2020

I just want to say as a long-ago MPL contributor that, while I have surely lost all right to commit, I am very pleased that MPL is so vibrant today. And -- what a sign of strength to see this thread! It makes me really happy and I'm sure John Hunter would be proud and justifiably so. We use MPL every day in my lab. Thanks for all you are doing and please feel free to remove me from all relevant permissions, as I unfortunately cannot foresee becoming an active MPL developer again.

@tacaswell
Copy link
Member

tacaswell commented Mar 5, 2020

I have hi-jacked this PR to also include broader overhaul of the governance (as the Deputy Lead Developer roles sync up well with the onboarding path.

I can move those commits to a different branch if people prefer.

- get triage privileges: granted on 1st merged pull request
- (We need to write the script for this, run as a service on heroku’s free tier? can we do this with actions?)

**Get commit privileges:**

This comment has been minimized.

@story645

story645 Mar 6, 2020 Author Member

Who gets to decide what is significant or sustained? What's the criteria here?

This comment has been minimized.

@trallard

trallard Mar 12, 2020

Would sustain mean x number of PRs over x months? Would there also be a mechanism to remove this if folks go MIA or need a break?

This comment has been minimized.

@story645

story645 Jul 8, 2020 Author Member

attn @samdbrice, it's a thing on our todo list to clarify.

- repeated or severe violations of [merge guidelines](https://matplotlib.org/devdocs/devel/coding_guide.html)
- potential repercussion of a [Code of Conduct](https://www.python.org/psf/conduct/) violation

# Release Powers

This comment has been minimized.

@story645

story645 Mar 6, 2020 Author Member

really release managment, & you need a how they get it/how they lose it section


**tweet as twitter account:**
- be a lead on at least one of the other community projects

This comment has been minimized.

@story645

story645 Mar 6, 2020 Author Member

add the release manager to this list or just set something up on matplotbot to auto tweet when a release gets tagged?

- potential repercussion of a [Code of Conduct](https://www.python.org/psf/conduct/) violation
- at discretion of [communications lead](named_project_roles.md)

# Github

This comment has been minimized.

@story645

story645 Mar 6, 2020 Author Member

this whole block is a missing a how you get/how you lose

@@ -30,7 +30,7 @@ Development Team (MDT)" in the project license. Anyone can be a
Contributor. Contributors can be affiliated with any legal entity or
none. Contributors participate in the project by submitting, reviewing
and discussing GitHub Pull Requests and Issues and participating in
open and public Project discussions on GitHub, Google+, Hackpad,
open and public Project discussions on GitHub, discourse, Hackpad,

This comment has been minimized.

@story645

story645 Mar 6, 2020 Author Member

i think you mean hackmd - we don't use a hackpad

to code, code review, infrastructure work, mailing list and chat participation,
community help/building, education and outreach, design work, etc. We are
community help/building, education and outreach, design work, etc. We are

This comment has been minimized.

@story645

story645 Mar 6, 2020 Author Member

community building, user and developer support,

inactive for a period of 2 months, they will be approached by the LD to see if
they plan on returning to active participation. If not they will be asked to
step down, if the Council Member indicates they intend to be active again but
have not done so after 1 month the Council my vote to remove them.

This comment has been minimized.

@story645

story645 Mar 6, 2020 Author Member

typo: may

listed on the project website, acknowledging the period during which they were
active in the Council.

The Council reserves the right to eject current Members, other than the LD, if

This comment has been minimized.

@story645

story645 Mar 6, 2020 Author Member

so uh, how do they stage a coup 😉?

This comment has been minimized.

This comment has been minimized.

@story645

story645 Jul 13, 2020 Author Member

like as much as I was joking, I think it would be good to have an actual structural way to address BDFL/steering committee/etc problems. Not 'cause I think anybody is a problem, but b/c these are the sorts of things you'd rather write explicitly when you don't need them and never use than not write & have to figure out when you need them. I don't love forking as a solution 'cause I think a end goal of governance is also to mitigate potential fallout especially where the community is concerned.

This comment has been minimized.

@tacaswell

tacaswell Jul 27, 2020 Member

The governance already suggests forking if the community disagrees with the direction the project is going, however on a bit more consideration, I added that the NF board can evict the PL as they are on the hook that our conduct is inline with their non-profit status.

This comment has been minimized.

@story645

story645 Jul 27, 2020 Author Member

I'm on board w/ NumFocus as final arbiter, but I'm still a bit unclear as to why in this governance structure the Steering council can evict each other but not the project lead given that it falls under the whole "steering the direction of the project" thing.

governance.md Outdated Show resolved Hide resolved
Changes to the governance documents are submitted via a GitHub pull
request to The Project's governance documents GitHub repository at
Changes to the governance documents are submitted via a GitHub pull request to
The Project's governance documents GitHub repository at

This comment has been minimized.

@story645

story645 Mar 6, 2020 Author Member

is this gonna change if this all moves to the main docs?

This comment has been minimized.

@tacaswell

tacaswell Jul 13, 2020 Member

no, I think it should stay in it's own repository, even if we publish build artifacts as part of the main docs.

governance.md Show resolved Hide resolved

**Developer Relations**

In addition to communication to end-users we need to maintain

This comment has been minimized.

@story645

story645 Mar 23, 2020 Author Member

This is still end users too given discourse management falls under this

- Maintaining a "matplotlib update" slide deck
- the [Ann] mailing list

This communication is primarily broadcast out and intended to engage

This comment has been minimized.

@story645

story645 Mar 23, 2020 Author Member

and developers of 3rd party libraries. Also I just don't like the language of end users, user/developer split.

This comment has been minimized.

@tacaswell

tacaswell Mar 23, 2020 Member

I am not a fan either, but was having trouble finding other words for it.

This comment has been minimized.

@story645

story645 Mar 23, 2020 Author Member

community

@tacaswell tacaswell mentioned this pull request May 11, 2020
story645 and others added 19 commits Dec 10, 2019
typo
Co-Authored-By: Tim Hoffmann <2836374+timhoffm@users.noreply.github.com>
Co-Authored-By: Tim Hoffmann <2836374+timhoffm@users.noreply.github.com>
 - BDFL is an inside joke that has gotten outside of the in-group
 where it was funny.  I feel dumb using it to describe my self, but the
 look on my in-laws face when I used the term was the final straw.
 - Deputy Lead Developers aka "named roles" is a way to recognize
 that people are leading development along different axes of process.
 This is motivated by several aspects:
  1. empower people to make decisions
  2. provide a title people can put on their resume's
No fundamental changes, just wording and a bit of re-arrangement.
 - adjust BDFL -> LD
 - add emphasis to financial / fund raising aspect of council
 - assert the LD counts in the council size
 - introduce 2yr terms.  We want people to be able to gracefully roll
   out of responsibility.
 - introduce A/B staggered classes.  To make sure we maintain some
   continuity
Given that our Steering Council is smaller than Jupyters, do not imply
Institutional Partners can install Council Members.
Given that we have a smaller council, expect all to participate.  If
someone has gone inactive, then they should be removed first.
tacaswell added 4 commits Mar 5, 2020
@tacaswell tacaswell force-pushed the guidelines branch from 0f8840f to 3417e50 Jul 13, 2020
@tacaswell tacaswell changed the title onboarding oriented governance docs overhaul governance Jul 13, 2020


### API consistency Leader

This comment has been minimized.

@jklymak

jklymak Jul 13, 2020

I'd consider merging this and reference documentation.

This comment has been minimized.

@tacaswell

tacaswell Jul 27, 2020 Member

I did this, but a private conversation with @timhoffm changed my mind back to it being two roles.

The API lead needs to have a broad view of the library and good design taste, the reference doc lead needs to be an expert at rst and documenting what the library actually does (independent if it is a good idea or not ;) )

This was referenced Jul 27, 2020
@story645
Copy link
Member Author

story645 commented Jul 27, 2020

Closing in favor of #10 & #11, which I think supersede this?

@story645 story645 closed this Jul 27, 2020
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Linked issues

Successfully merging this pull request may close these issues.

None yet

6 participants
You can’t perform that action at this time.