The Spring Festival holiday is over, and everyone is returning to the original life track one after another. The holiday is a good opportunity for rest and adjustment. At the same time, the Spring Festival also has the original intention of bidding farewell to the old and ushering in the new. It is the beginning of the new cycle.

In the Python community, an event has just happened that also marks the beginning of a new era: After Guido van Rossum, the “father of Python,” announced his resignation as BDFL (benevolent dictator for life), Python’s core developers have finally chosen their first “governing members” for a new governance scheme.

On February 4th, after two weeks of voting, the Python community elected five members of the first steering committee: Barry Warsaw, Brett Cannon, Carol Willing, Guido Van Rossum, and Nick Coghlan.

Back in the day, I reviewed the resignation of the Father of Python, translated a summary of various governance proposals, and analyzed the voting intentions of core developers (PS: see the link at the end of this article). This article is a follow-up report of this event, but also a phased full stop. With the first steering committee members confirmed, the Python community is poised for a new and stable transition period. The point of this article is to announce the good news to all Python developers/learners/enthusiasts out there.

Such a major shift in the autonomy model for core developers should be a big deal. The future of the Python community depends on this, and the success or failure of this governance model provides an excellent frame of reference for other technical communities.

1. What is the steering committee?

As for the Steering Council, it is the most widely accepted of the seven governance schemes proposed at the latest and finally voted into the new governance scheme in the community. The governance solution has a five-person steering committee as the highest level of decision making and allows for delegating decision-making to other teams or developer representatives when necessary.

The steering Committee is supremely powerful, but it operates on the following principles: Boring, Simple, comprehensive, flexible and light-weight, specifically, through setting a series of basic, clear, flexible and lightweight rules and processes, to “guide” the governance of the community.

The steering committee may exercise some authority directly, such as approving or rejecting pePs, updating a project’s code of conduct, managing project assets with the Software Foundation, and so on, but excessive exercise of authority is not encouraged. The key difference between a steering committee and other governance proposals is that it will act as a rulemaker, directing, guiding and coordinating community efforts, and exercising final discretion only at critical times.

The functions of the steering Committee are:

  • Maintain the quality and stability of the Python language and CPython interpreter; Maintain the quality and stability of the Python language and CPython interpreter
  • 3. Making contributions as accessible, inclusive, and sustainable as possible
  • Formalize and maintain the relationship between the core team and the PSF, consolidating the relationship between the core team and the Python Software Foundation
  • Establish appropriate decision making processes for PEPs
  • Seek consensus among the contributors and the core team before acting in a formal capacity
  • Act as a “court of final appeal” for decisions where all other methods have failed

This governance pattern is borrowed from the Django project, see PEP-13 for details.

2. Members of the steering committee?

There are five permanent steering committee members and a maximum of two are allowed from the same company. The frequency of transitions is per Python release. Members may be re-elected. Support a vote of no confidence (i.e., impeachment).

Now to the first-term members:

  • Barry Warsaw: One of the core developers since 1995 and the recipient of the 2014 Frank Willison Memorial Award. Currently works at LinkedIn (acquired by Microsoft, also known as Microsoft), and his hobbies are music and Tai chi.
  • Brett Cannon: One of the core developers since 2003 and the recipient of the 2016 Frank Willison Memorial Award. Previously served as executive Vice President of the Python Software Foundation. Currently working at Microsoft, where he is responsible for VSCode’s Python plug-in project.
  • Carol Willing: Python Core Developer, Core developer of Jupyter and steering Committee member of Jupyter. Freelance, interests in research and educational projects.
  • Guido van Rossum: The founder of Python, known as the “father of Python”, has long led the development of the Python community until the recent resignation. He currently works at Dropbox.
  • Nick Coghlan: One of the core developers since 2005. He currently works for Tritium.

Note: The Frank Willison Memorial Award, also known as the Frank Willison Memorial Award, was established by O’Reilly Publishing Group to honor individuals who have made outstanding contributions to the Python community. Established in 2002, it is issued annually.

These members have been core developers for many years and have made significant contributions to Python’s development. The most notable, of course, is Guido van Rossum, who did not leave the decision-making room. In fact, Guido put himself forward and was one of the first of the 17 candidates to do so or be nominated.

When everyone else tweeted the good news after his election, Guido didn’t say a word. That leaves the question of why Guido decided to return to the top, and what role he will play.

3. Development of open source technology projects?

It may seem easy to launch an open source technology project, but it is difficult to spread it to a large technology community, to create a complete technology ecosystem, and to continue to operate healthily.

Today, I read that Bootstrap 5 will completely remove the dependency on jQuery. I can’t help but think that six months ago, Github announced that it was ditching jQuery altogether. JQuery is a well-known open source front-end project, which was in its heyday a few years ago. However, with the rise of the MVVM framework, it has come to a dead end.

This points to the number one challenge for technology projects: staying ahead of the curve. In recent years, Python has become a favorite among developers, thanks to its work in artificial intelligence and scientific computing, which is a delight for many of its followers. At the very least, Python is not about to die out for technical reasons.

Another big thing happened in the tech community last year: Linus Torvalds, the father of Linux, announced he was taking an indefinite leave of absence. This news caused a much bigger stir than the abdication of the father of Python.

The similarities between the two events led me to wonder: How can open source technology projects continue to operate in a healthy way without the very people on whom they rely so heavily?

This topic is beyond my ability to answer for small edge code farmers. Fortunately, they are back. However, for core developers, this topic will be faced sooner or later, and the current storm is a warning.

What changes will the Python community contribute to the governance of the steering committee, and where will it lead the community? Wait and see.

Related links:

This is happening right now for all Python developers…

www.python.org/dev/peps/pe…

www.python.org/dev/peps/pe…

—————–

This article was originally published on the wechat public account [Python Cat]. The background replies “Love learning”, and you can get 20+ selected e-books for free.