I’m once again nominating myself for the Steering Council (2026 term).
The usual recap:
- I’ve been a core developer since 2000. (Apparently I was the most senior core team member besides Guido at the Core Dev sprint this year
.) - I’ve served on the SC from 2020 through 2024 (my previous self-nominations: 2020 , 2021 , 2022, 2023, 2024) and also felt obligated to run for 2025.
- I’m the Release Manager for Python 3.12 and 3.13 (which is much less of a big deal now of course!)
- I previously served on the PSF Board of Directors, and as the PSF’s interim manager.
- As of last year, I work at Meta on one of the internal Python teams. Before that I worked at Google on the internal Python team.
- I’m a denizen (as
Yhg1s) of the #python IRC channel on Libera . - I also exist on Mastodon as
Yhg1s@social.coop, and on Bluesky asYhg1s.bsky.social. - I have big cats.
- This year, I helped drive PEP 779 (Criteria for supported status for free-threaded Python) and PEP 810 (Explicit lazy imports).
Last year I mentioned I wasn’t sure if I should run, given that I’d already served five years (making room for others is good!) and also that my new job at Meta let me spend more time on the technical side, which I was (and still am) eager to do. I am wholeheartedly running this year. It’s not because I think any of the current SC members have done a bad job – how could I, they accepted both big PEPs I was part of
but I also have the greatest of respect for @gpshead, @pablogsal, @corona10, @barry and @emily. It’s because I know I have the ability to contribute, I know I have the time and support to do a good job of it, and we have STAR voting this election, which I hope will let the electorate choose a good balance between old hands and new friends.
In my previous self-nominations I recapped the SC work I’d been a part of, and I’ll just refer you to those, linked above, if you haven’t read them before or would like a refresher. Instead I’ll just say I strongly believe in more communication (between everyone, not just the SC), planning for long-term sustainability, and being the change you want to see. Python is an established project, the base and basis for a lot of other projects, and we need to ensure that base remains stable in the short and long term. That’s why I’m in favour of multi-year, overlapping SC terms, and why I harp on about avoiding breaking changes, and why I care about having an open, welcoming, inclusive community.
I want a community I want to be part of, and that I can be proud of, and that keeps working to improve itself and grow, to keep that important base stable for decades to come. That means being forward-looking and introspective, both technically and socially. It means I support ideas like free-threading, evolving a new C API and using Rust in CPython, and also Code of Conduct enforcement on multiple levels, outreach and mentorship efforts. It means trying many things and constantly evaluating what does or doesn’t work, and why.
One very concrete thing I think we should improve is the visibility of changes to Python. Not just to the outside world, which keeps being a problem, but also between ourselves. It’s clear that PEPs, despite their original intent, have turned into very heavy-weight efforts. Writing a PEP is easy, but the discussion around them can be extremely time- and energy-consuming, not to mention a pretty negative experience even for PEPs that are viewed extremely positively. Partly as a result of that, a lot of more minor decisions on the design and implementation of Python and the standard library are made without PEPs, often even without discussing them on discuss.python.org at all, making them less visible and involving fewer people in the decision. We also have a decision process that involves the SC “finding consensus” without a clear idea what that means, even when the SC puts out a poll to gauge the consensus.
I would very much like to figure out a way to make discussing changes easier, keeping more people involved, and get a clearer idea of consensus without opening each discussion to a deluge of comments, suggestions and questions. Maybe this means more formalization: work groups, delegation and distinct areas of responsibility. Or maybe we really need a forum with an explicit intent to keep discussions focused, on point and short, possibly with explicit up/down-votes, and probably with strong moderation to set the right expectations for all participants (e.g. no asking questions that are already answered, and continued discussion should be taken elsewhere, or at least separated out.) This is as much a social problem as a technical one, and we should keep both in mind.
Just to be clear, while we’ve traditionally done these kinds of process developments organically, I think given the scale of the community and the processes we have, the SC is the right group to try and drive the efforts to find a good solution to those problems. The SC has the authority, the insight (hopefully! So far, anyway
) and definitely the responsibility to set us all up for success.