Steering Council Nomination: Mariatta (2021 Term)

Please accept my self nomination for Python Steering Council 2021.

Background and credentials

I’ve been a Python core developer since 2017. For my work for Python and the open source community, I’ve been awarded PSF Community Service award in 2018, Google Open Source Peer Bonus award in 2017 and 2020, and I became a PSF Fellow member in 2020. I have been a PSF Supporting member for a few years. I’ve also been featured as GitHub Maintainer Spotlight for GitHub Sponsors and The ReadME project.

I’m one of the few Python core developers in Canada. I moved to Canada 20 years ago. Now, I reside in Port Moody, which is about 30 kilometers outside of Vancouver, with my husband and two sons. I have over 15 years of professional experience as Software Developer/Engineer. In the first few years of my professional career, I worked with C# and .NET, and for the past 10 years, I’ve switched to developing web-based applications using Python and various Python web frameworks.

My involvement in the Python community goes beyond committing and writing codes and pull requests, but also in the form of community leadership and organization. I am also a public speaker, and have presented at various Python conferences worldwide.


Contributions to Python and open source communities

  • My focus area in CPython has been core-workflow improvements. I’ve created and maintained our workflow automation tools like, miss-islington, and blurb-it. I’m also interested in documentation and improving devguide and overall contributing experience.
  • I’ve been a co-chair for the Python Language Summit since 2019. One of my personal initiatives for the Python Language Summit was to make it more open and less exclusive. We’ve invited various non-core developers to participate in the Language Summit, and I heard that people do appreciate hearing perspectives from non-core developers at the summit.
  • I’ve helped co-organize the first ever virtual Core Developers sprint. Guido van Rossum had said that the sprint was “… definitely the best online event I’ve attended”.
  • I’m a member of GitHub OS Maintainers Feedback group. I’m happy to act as a bridge between our project and GitHub, and to pass along any feedback and concerns we have of their platform and to improve our own workflow.
  • I’m a co-founder of PyCascades conference. I’ve co-chaired the first PyCascades conference, and helped with the second and third iterations. I’m currently taking a break from this role, in order to focus on my other volunteer activities.
  • I’m actively involved in the Global PyLadies community. I’m one of the administrators for PyLadies. I’ve introduced several workflow improvements and automation within PyLadies. I’ve also helped PyLadies with their inaugural Global council election.
  • I’ve been a co-organizer of Vancouver PyLadies since 2016. As an organizer, not only I help facilitate and give opportunities to PyLadies members so they can give talks and learn from each other, I’ve also been able to make use of my connection to the wider Python community and introduce well-known Pythonistas to my community. For example, we’ve had the pleasure of the company of Fernando Pérez (iPython creator) and Raphael Pierzina (pytest and cookiecutter maintainer) at our events.

Employment status

I’ve been employed by Zapier for the past 3 years, however my employment will end in a few days. By the end of November 2020, I will begin a new role as Staff Software Engineer at Uplight. As part of my role at Uplight, I will have 4 hours each week to devote to open source and the community. If elected as Steering Council member, I plan to prioritize my available time for Steering Council duties.

Public Speaking

I’ve been invited as Keynote Speaker for PyCon Indonesia 2020, PyCon Poland 2020, PyCon Taiwan 2020, PyCon DE 2019, PyBay 2019, North Bay Python 2018, DjangoCon US 2018, and PyCon Canada 2017.

Other conferences I’ve spoken at: SeaGL 2020, PyCon AU 2020, PyGotham 2020, PyCascades 2020, PyCon US 2020, 2019, 2018, PyCon Italy 2017, DjangoCon Europe 2017, PyCon Australia 2017, PyCaribbean 2017, and DjangoCon US 2016

I’ve collected my talk slides here:


Code of Conduct enforcement within Python community

I fully support the recent code of conduct enforcements and actions within the core Python community. I’m glad to see these enforcement and actions happening, as I do think it creates a more inclusive and welcoming environment, especially to those who are underrepresented in the tech and open source community.

It is my personal belief that, just because we haven’t had to ban anyone in the past due to CoC violation in the past, it doesn’t mean that there has been no incident at all, it doesn’t mean that everything has been perfect and great. To me, lack of CoC enforcement/incident could mean that incidents happened silently, and the victims (I hate using this term btw) didn’t have much trust in the community, and didn’t feel safe to speak up about the incidents.

I believe that the recent actions taken by PSF CoC committee and the Steering council are in the right direction, and I hope we can continue and regain trust from the community members who we have failed in the past.

Open communication and transparency

In the past three years, I’ve been working in a professional setting for a fully remote and distributed company, with teammates all over the globe. Working in such a setting is very different from working together in an office. Written and asynchronous discussions become the default way to communicate, and delayed response is expected. From my experience working in remote and distributed team, I’ve experienced firsthand the value in over-communication, to ensure that the message is reached by various team members. I also came to appreciate the value of transparency to ensure no team members feel like they’ve been excluded from important decisions. In my mind, the open source and Python community is a similar environment as working with a remote and distributed team. I have applied my knowledge and skills on this aspect when I co-organized the first ever virtual Python Language Summit and Python Core Dev sprint. As a result, both events are considered quite successful. I will be happy to continue applying my experience for the benefit of the Steering Council and Python community.

Code Auto-Formatting

I’m a fan of automatically formatting code. I personally rather spend time on other important things instead of arguing over whether we should use single or double quotes, how many characters per line of code, and how to indent things.

Migration to GitHub Issue

As the author of PEP 581: Using GitHub Issues, I am personally interested to see the project continue moving forward and complete. I am a member of GitHub migration workgroup and I intend to follow the progress and be actively involved in that effort.

Steering Council Term Limits

Personally, I’m somewhat against setting the hard rule of “no one cannot be in the steering council after X number of years”. I do think it is a great idea to always have fresh new perspectives each year, and for that I think it is part of our own responsibility as core developers to vote accordingly. If you think a person has served long enough in the council and you wish to see someone new on the board, then you can help by not voting for that person and instead nominate and encourage someone new to run in the election. I also trust the core developers and steering council members to know their own limitations and capabilities, and they can make their own decision on whether they want to continue serving as a Steering council member or not. I do think that we can achieve a good balance without imposing hard term limits. But this is just my personal opinion and just one voice. If folks feel strongly about changing the term limit of the steering council, please do propose a change to PEP 13 and I will happily abide by the result.

Media interviews:

Closing argument

Thank you for reading my nomination. I hope the above text gives you better clarity of my track record and capabilities. I hope you will find my diverse skill set and experience valuable and useful for the Steering Council.


Alex Martelli and I have been working on a Term Limits PEP and I am hoping that when it lands you will support it because the principal goal is to foster diversity and inclusion.

The current system heavily favors incumbents, leaving few to no open seats. One of the current Steering Council candidates for a second term has already sat on the PSF board for over a decade. That has created exclusion problems that is leadingthe PSF itself to work on reforms such as term limits:

It was unfortunate this time that Valeria Calderon, a PyLadies organizer based in Mexico City missed a board seat by a few votes. Other non-US based nominees such as Manuel Kaufmann who is Latin America Python Ambassador and Ngazetungue Muheue founder of Python Namibia also didn’t make the cut. All of them had the potential of bringing fresh voices and views about the needs of communities that we have in different parts of the world.

I expect that scenario to occur in our current SC election as well. With the approval voting system that Thomas put in place, it is likely that only one of the new aspirants (including you and me) will be elected. The two previous elections indicate that, except for yourself, those who are passed over will never run again.


Two points:

  1. I had hoped to run the ballots for this election through four other voting methods, which also use approval-style ballots, but that were designed for multi-winner elections. They aim at a very broad notion of “proportional representation”, such that, among many other scenarios, if a majority approves of incumbents, their ballots carry less weight the more incumbents win. That’s one principled way to break “tyranny of the majority” outcomes in multi-winner elections. Alas, best we can tell so far, Helios (our voting software) doesn’t support extracting anonymized unencrypted ballots, so there’s no way to guess what other voting methods would have decided.

  2. A nit: at least David Mertz is running again despite not being picked in an earlier SC election.

We haven’t had that many elections to draw this conclusion. Also, this is not true.
Victor Stinner was a candidate for the 2019 term, and was not elected then. He ran again for 2020, and was elected.
Christian Heimes and Pablo Galindo Salgado both ran for 2020 and were not elected. They are both running again. And I support both of them.

Being on Python steering council, and PSF board member, is volunteer work, it requires lots of devotions, time and emotional commitment. Some folks have the privilege of being able to spend more free time than others into it. And if those folks want to lend their privilege to serve the community, then I’m not going to block them. Diversity is one consideration, and having experienced and competent council members is also important to me.

We do have more work to do on to improve diversity and representation, and there are various ways to achieve this. For example, we have a restriction of “no more than 2 members of the council can work in the same company”. We could expand this restriction to something like “no more than X members from the same country/region”, I think that would be more impactful to improving diverse representation than term limits.

We’ve also only been doing the steering council model for a two terms now. Perhaps there will be time when imposing term limits would make sense, I just don’t think it is necessary right now.


I’m supporting Mariatta nomination! :+1:

Automation and workflow. Mariatta did a great job with miss-inlington bot :robot: which makes backports straightforward (create the backport, but also merge it!). I also saw contributors happy to be able to use the blurb-it service :robot: (also done by Mariatta), rather than having to install blurb locally.

Management. Mariatta organized multiple conferences and Python language summits. She demonstrates skills to organize events and to manage people. IMHO we need more people with these skills to moderate heated discussions! My experience as a SC member is that a significant part of the SC work involves human interactions, like coordination efforts and meeting different people.

Code of Conduct. In the current SC, we had to decide how to handle multiple CoC violations (FYI more than 2 :wink: ). Mariatta also has a better experience than me in this area, and I trust her to be fair.

I agree with Mariatta. For example, a contributor recently told me privately that they felt supported when they faced a CoC incident, and they would simply abandon contributing to Python without that.

I was always concerned by the stdlib which doesn’t respect the PEP 8. There are now mature tools like Black, so it sounds like the proper time to start thinking how to apply a coding style, and develop tooling to automate that. Mariatta is the good person for that. I heard that other core devs would like to help for that.

The PEP has been approved in May 2019, so yeah, it would be time to start the migration :slight_smile: Mariatta has a long experience with GitHub, GitHub APIs and tooling, and is also in touch with GitHub developers. She would be a good candidate to coordinate and to implement the migration.

I vote for Mariatta! :grin:


2 posts were split to a new topic: Steering Council Election Methods (Approval Voting)