Welcome to Pythonoviny

Starting this month, I’d like to introduce a weekly newsletter-like channel centered around Python (the programming language) and its ecosystem. Sometimes I might summarize some high-level updates that have happened, sometimes I will dive deeper if I find the subject particularly relevant to DXH and the various projects we are involved in.

Since this the first issue, I’d like to zoom out and provide a snapshot of the current state of the Python ecosystem and also briefly explain how Python’s development is managed.

Governance

Python follows a Steering Council model, introduced after Guido van Rossum stepped down as “Benevolent Dictator for Life” in 2018. The Steering Council is elected by core developers and oversees major decisions.

Python Enhancement Proposals

New features, standards, or governance changes go through the PEP process:

  1. A PEP author writes a proposal.
  2. It is discussed in the community, often on the python-dev mailing list or forums.
  3. The proposal is refined and reviewed by a PEP delegate or the Steering Council.
  4. If accepted, it gets scheduled for implementation in a future Python release.

An example of recently rejected proposal is PEP 2026, which pushed for calendar versioning. A typical PEP is debated and iterated on for 6 months to 2 years.

Implementations

We are all used running python script.py, but there are also other ways. CPython is the reference implementation and the most widely used one - it is written in C as the name suggests. Version 3.13.2 was released on February 4th as the latest stable release.

Other implementations

  • PyPy is Just-in-Time compiled version of Python, which can speed-up computationally-heavy programs and decrease their memory footprint. The latest supported version of Python is 3.11.11
  • MicroPython and CircuitPython are small enough to run on embedded devices, though they only support a subset of the standard library

Recent Developments

  • PyPI, the Python Package Index, added support for iOS and Android pre-compiled wheels (python’s package format)
  • What does 3.13 bring to the table?
    • Developer experience: better interactive interpreter and colorized exception tracebacks (this one surprised me when my terminal turned purple all of a sudden)
    • Performance: an experimental JIT mode (mostly ground-work); the option to disable the Global Interpreter Lock allowing actual multithreading in Python programs (this has been discussed since the dawn of time in the Python community and is a major change to Python’s internals, to which I would like to dedicate more time in upcoming posts)
    • Typing: since their introduction in version 3.5, type hints have become an integral part of the modern Python developer experience, enabling better auto-complete and linter checks. 3.13 continues to enhance typing support - notably adds support for type defaults in type parameters. x

Last updated on April 01, 2025