Learn Python with Talk Python's 270 hours of courses

Meet the Python Developer in Residence: Lukasz Langa

Episode #331, published Fri, Aug 27, 2021, recorded Wed, Aug 25, 2021

Python is a technology and community built upon the goodwill and volunteer time of 1,000s of contributors from the core devs inside CPython to the authors of 100,000s of external packages on PyPI.

Until recently, the only full time folks have been at the PSF doing very important work but that work has been largely outside of CPython the technology. In July, 2021, the PSF created the Python Developer in Residence position. The first person in that role is Łukasz Langa and he's here to tell us how it's going and how it will benefit Python at large.

Watch this episode on YouTube
Play on YouTube
Watch the live stream version

Episode Deep Dive

Guest Introduction and Background

Lukasz Langa is the first official CPython Developer in Residence hired by the Python Software Foundation (PSF). He has been a Python core developer for many years, maintaining and shaping the direction of Python itself. Lukasz also created the popular Black code formatter, managed the Python 3.9 release cycle, and authored or co-authored multiple Python Enhancement Proposals (PEPs). With sponsorship from companies like Google, Bloomberg, and Microsoft, he dedicates full-time effort to reviewing pull requests, merging community contributions, and helping guide Python’s evolution.

What to Know If You're New to Python

If you’re brand new to Python, here are some quick insights to help you get more out of this episode:

  • Python’s community-driven development means many volunteers (and some full-time roles) maintain and evolve the language.
  • You’ll hear about pull requests (PRs), bug fixes, and how Python’s core team merges them—knowing a bit of Git and GitHub helps.
  • The Python Software Foundation (PSF) funds community events and positions like Developer in Residence, underscoring how critical community is to Python.

Key Points and Takeaways

  1. Role and Purpose of the Python Developer in Residence Lukasz explains that this is the first time the PSF has sponsored a developer specifically to focus on core Python (CPython) code. Unlike volunteers, he can dedicate full-time hours to merging pull requests, reviewing issues, and coordinating with core developers. This work helps reduce the backlog of contributions and elevates Python’s stability and new feature adoption at a faster pace.
  2. Challenges of Merging Over 1,400 Open Pull Requests One of Lukasz’s main tasks is processing hundreds of PRs, often from “drive-by” contributors who fix one issue and move on. He aims to prevent excellent code changes from going stale due to minor merge conflicts or missing documentation. Having a full-time resource speeds up merging and ensures contributors receive timely feedback, which keeps community morale high.
  3. Improving the Contributor Experience Lukasz frequently encounters PRs that are “90% there” but need final tweaks or documentation. His approach is to jump in and make minor changes himself—rather than asking authors to do it weeks later. This is a major shift from purely volunteer-driven code reviews and fosters a more welcoming environment for newcomers and occasional contributors.
  4. Annual Release Cadence and Python Versions The discussion covers Python’s move from an 18-month release cycle to a more predictable 12-month cycle. This helps large organizations plan upgrades and helps core developers schedule feature rollouts more consistently. Lukasz, for instance, managed Python 3.9 and continues to monitor 3.9.x security releases over its support lifetime.
  5. Highlights in Recent Python Versions Lukasz shares excitement about better error messages, new typing improvements (such as Union with the pipe operator in Python 3.10), and the match/case statement (structural pattern matching). While not every project needs these features, they represent Python’s evolving syntax and deeper focus on developer experience.
  6. Black Code Formatter and Code Style Lukasz is the creator of Black, a popular Python auto-formatter that enforces a consistent style. While there was initial debate about auto-formatting in the Python community, Black’s success stems from removing subjectivity in code style. Lukasz’s experience with Black informs his day-to-day decisions on Python’s overall readability and design.
  7. Transparency in the CPython Core Team The Developer in Residence holds weekly or bi-weekly calls with the Steering Council and PSF staff. These interactions ensure that the full-time developer’s work remains aligned with community needs and pressing issues. Lukasz also shares publicly accessible weekly reports so anyone can see what is being merged and why.
  8. Sponsorship and Corporate Involvement Big tech sponsors like Google, Microsoft, and Bloomberg contribute to these positions. Lukasz stresses that more corporate sponsorship—especially from companies whose entire businesses run on Python—would further speed Python’s progress. Having multiple developers in residence could transform the pace of language improvements and code reviews.
  9. Libraries and Tools That Enhance Developer Experience Beyond his official role, Lukasz highlights third-party projects such as Rich, a Python library for colorizing output and building beautiful CLI experiences. This underlines how a user-first focus—whether in the standard library or third-party ecosystem—improves Python’s usability.
  10. Collaborative Vision for Python’s Future Python’s success relies on balancing volunteer efforts, full-time paid roles, and broad corporate sponsorship to ensure a healthy ecosystem. As the language grows in popularity and more code lands in production, the community’s need for dedicated maintainers grows. Lukasz underscores that the best path forward is for all stakeholders—companies, volunteers, and core devs—to continue communicating and investing in Python’s future.

Interesting Quotes and Stories

  • On merging 50 PRs a week: “Some weeks I aim for 50 merges. By the next morning, we’ve already climbed back up above 1,400 PRs!”
  • On immediate fixes: “If the docstring is bad or a newline is missing, I can just fix it rather than wait a week for the contributor to come back.”
  • On community alignment: “We have more contributors than we can handle. The bottleneck is code review, not fresh ideas.”

Key Definitions and Terms

  • CPython: The reference (and most common) Python implementation in C.
  • PSF (Python Software Foundation): A non-profit that manages Python’s intellectual property and supports the community through grants and resources.
  • Drive-by Contributor: Someone who fixes or enhances a small part of Python but may not remain long-term.
  • Release Manager: A core team member overseeing a specific Python version’s development and release life cycle.
  • PEP (Python Enhancement Proposal): A design document providing information to the Python community or describing a new feature.

Learning Resources

If you want to deepen your Python knowledge, check out these Talk Python Training courses.

(Explore the full course catalog to see even more options.)

Overall Takeaway

Lukasz Langa’s Developer in Residence role is a milestone for the Python community, ensuring that the language continues to move forward with a dedicated, full-time effort behind merging code, guiding contributors, and aligning new features. His story underscores how a blend of volunteer passion and corporate sponsorship can keep Python robust, inclusive, and ready for the next generation of developers.

Links from the show

Łukasz Langa on twitter: @llanga
Black: github.com/psf/black
CPython PRs: github.com
Weekly reports: lukasz.langa.pl
Visionary Sponsors: python.org/psf/sponsorship/sponsors
What do you get when you sponsor the PSF?: www.python.org/sponsors/application
Brett Canon's PyCascades talk: youtube.com
Django fellowship program: djangoproject.com

Lukasz's prior episodes:
Gradual Typing of Production Applications: talkpython.fm/151
Dive into CPython 3.8 and beyond: talkpython.fm/214
Python Language Summit 2018: talkpython.fm/179
Watch this episode on YouTube: youtube.com
Episode transcripts: talkpython.fm

--- Stay in touch with us ---
Subscribe to Talk Python on YouTube: youtube.com
Talk Python on Bluesky: @talkpython.fm at bsky.app
Talk Python on Mastodon: talkpython
Michael on Bluesky: @mkennedy.codes at bsky.app
Michael on Mastodon: mkennedy

Talk Python's Mastodon Michael Kennedy's Mastodon