Back to Home

Brett Cannon: path to core Python

Brett Cannon tells Guido van Rossum about discovering Python in 2000, contribution to strptime and entry into core via python-dev. Covers early community, PyCon 2003 and evolution to PSF staff developers.

From student to core Python: Brett Cannon's story
Advertisement 728x90

How Brett Cannon Became a Core Python Developer: From Student to Key Contributor

Brett Cannon, one of Python’s most influential core developers, shared his journey—from first encountering the language to becoming a pivotal contributor—in an interview with Guido van Rossum. In the fall of 2000, he was searching for a tool to learn object-oriented programming ahead of his CS entrance exam. Python stood out immediately for its simplicity and interactive REPL—especially compared to C, which he’d used before.

First Steps with Python

Cannon was pursuing a bachelor’s degree in philosophy while independently exploring computer science. He knew C and had dabbled in Pascal—but its compiler kept failing him. To prepare for CS 61A, he needed to master object-oriented programming. Early search engines like AltaVista pointed him toward Python with the recommendation: “Python is a great first language.”

He read the official documentation and Mark Lutz’s Learning Python. Though OOP didn’t appear on the exam, Python stuck: Cannon began using it for scripts and university assignments. Switching from C to Python introduced him to the REPL—a game-changer for rapid experimentation and learning.

Google AdInline article slot

Key languages before Python:

  • C (primary)
  • Pascal (minimal)

Entering the Community Through Recipes

In 2001, ActiveState launched the Python Cookbook—a collaborative platform for sharing code snippets. Cannon contributed a clean, Windows-compatible implementation of strptime, since the standard library version was missing on that platform. Alex Martelli featured this recipe in the first O’Reilly Python Cookbook.

The recipe evolved: originally locale-dependent, Cannon simplified it significantly. In May 2002—shortly after Python 2.3’s release—he asked Martelli whether it could be added to the standard library. Martelli directed him to python-dev, the mailing list for core developers.

Google AdInline article slot

François Pinard helped refine the patch. In June, Cannon sent his proposal; by July, time.strptime was committed to the repository. He stayed subscribed—and engaged.

Reviewing python-dev and Landing First Commits

August 2002: Cannon began writing weekly summaries of the python-dev mailing list, stepping into the role previously held by Andrew Kuchling. These reviews were both a learning tool and a way to ask questions openly. He maintained them for 2–3 years—through his PhD.

The python-dev list covered:

Google AdInline article slot
  • New feature proposals
  • Bug reports and patches
  • PEP discussions
  • Backward compatibility concerns

Cannon spent his year-long gap after undergrad polishing his resume—and contributing to Python. That first strptime commit gave him momentum to keep going.

The Early Core Developer Community

Between 2002 and 2003, the core team was small—roughly 20–50 people, with about half actively involved. Key figures included:

  • Martin von Löwis
  • Neal Norwitz
  • Marc-André Lemburg
  • Andrew Kuchling
  • Alex Martelli
  • Tim Peters
  • Raymond Hettinger
  • Greg Stein
  • Jack Jansen
  • Barry Warsaw

Cannon joined just before PyCon US 2003 in Washington, D.C. At the time, Python was still niche—“the language with whitespace.” Changes went in directly; design debates happened over email. PyCon drew passionate volunteers—many working full-time jobs elsewhere.

Vaults of Parnassus, an early script archive, predated PyPI.

Transitioning to Python 3 and Major Contributions

Cannon played a central role in importlib, the Python 2 → 3 migration, documentation, and PEP authorship. He removed tuple parameter unpacking in function signatures (a Python 3 change). At PyCon 2007, Ka-Ping Yee raised objections—but the change was approved.

Ka-Ping led work on pydoc, cgitb, inspect, and exception chaining.

Early challenges included limited time and reliance on volunteer effort. Cannon advocated for corporate sponsorship—and succeeded. Today, the PSF employs full-time engineers: Łukasz, Petr, Sergey, and Seth (security & Alpha-Omega).

What Really Mattered

  • Start with a recipe: strptime brought Cannon into the core team within months.
  • Reviews as a gateway: Volunteering to summarize python-dev made him visible and trusted.
  • Small community: With only ~20 active contributors in 2002, impact was immediate and accessible.
  • Volunteer-first culture: Sustained contribution preceded formal employment by years.
  • Evolution: From a niche project to a professionally staffed ecosystem.

Cannon’s story shows that for mid- to senior-level developers, the path to core involvement lies in shipping useful patches, engaging thoughtfully on mailing lists, and consistently reviewing community activity. The energy and contributions of the early 2000s laid the foundation for modern Python.

— Editorial Team

Advertisement 728x90

Read Next