A New Era in Python Governance
Shauna Gordon-McKeon
Who’s in charge now?
How do we decide what our governance model is going to be?
What’s our governance model going to be?
How do we decide
what our governance
model is going to be?
What’s our governance
model going to be?
Who’s in charge now?
How do we decide what our governance model is going to be?
Lots of intense online and in person discussions, leading to PEP-8001.
�PEP-8001 says:
How to propose models? Submitting PEPs.
Who can propose and vote? Core developers, self-selected as “active”.
How will the vote work? Ranked choice, administered by PSF.
How do we decide
what our governance
model is going to be?
What’s our governance
model going to be?
Who’s in charge now?
PEP-8001
What’s our governance model going to be?
PEP-8002: Open Source Governance Survey
PEPs 8010-8016: The Actual Proposals
PEP 8010 - Technical Leader Model | elected BDFL* who serves for 4.5 years/3 releases, helped by a council of 3 people, all core devs elected by core devs |
PEP 8011 - Trio of Pythonistas Model | three leaders who run as a slate, must be core devs & PSF voting members |
PEP 8012 - Community Governance Model | builds off Experts Index, experts accept/reject PEPs in their domain but can be overruled by vote of core devs as a whole |
PEP 8013 - External Council Governance Model | a council of auditors who cannot be core devs |
PEP 8014 - Commons Anarchist Governance Model | “council of elders” decides if and how votes are held on contentious issues |
PEP 8015 - “Steering Committee” Model | 3 member committee, makes high level design decisions but cannot vote on PEPs, can only delegate or hold vote |
PEP 8016 - Steering Council Model | 5 members elected for length of release, empowered to decide on PEPs but urged not to |
Points of debate
What’s our governance model going to be?
PEP-8002: Open Source Governance Survey
PEPs 8010-8016: The Actual Proposals
Debate!
The vote: PEP 8016, the Steering Council Model, wins.
(View the vote yourself on the CIVS website.)
How do we decide
what our governance
model is going to be?
What’s our governance
model going to be?
Who’s in charge now?
PEP-8001
The “Steering Council” Model
Who’s in charge now?
Elections were held in January.
Steering Council: Barry Warsaw, Brett Cannon, Carol Willing,
Guido van Rossum, Nick Coghlan
How do we decide
what our governance
model is going to be?
What’s our governance
model going to be?
Who’s in charge now?
PEP-8001
The “Steering Council” Model
Barry Warsaw, Brett Cannon, Carol Willing, Guido van Rossum, Nick Coghlan
Core Team
Steering Council
Similar to previous “core team”/“core developers”.
Membership granted by 2/3rds vote of core team and no veto by steering council.
No terms, but people who haven’t contributed in 2 years may be moved to “inactive”.
5 people.
Decides things via majority vote.
Nominated and elected by the core team.
No more than 2 employed by the same company.
Core Team
Steering Council
Responsible for Python project infrastructure (Github org and repositories, issue trackers, mailing lists, IRC channel, etc).
Responsible for reliability and stability of Python language, making contributing accessible & sustainable, liaising with PSF, establishing decision-making processes and resolving controversial decisions.
Core Team
Steering Council
Has power to accept/reject PEPs & enforce CoC but:
“The council should look for ways to use these powers as little as possible. Instead of voting, it's better to seek consensus. Instead of ruling on individual PEPs, it's better to define a standard process for PEP decision making (for example, by accepting one of the other 801x series of PEPs). It's better to establish a Code of Conduct committee than to rule on individual cases. And so on.”
Core Team
Steering Council
With 2/3rds vote can declare “no confidence” in individual steering council members or council as a whole.
If whole steering council voted out, a new election is held immediately.
Can eject member of the core team with majority vote of non-abstaining members of the steering council.
Going forward
What’s changing? How can you get involved?
Lessons Learned
Lessons Learned
Lessons Learned
Thank you!
Thanks to Carol Willing and Brett Cannon for answering so many of my questions!