PEP Process — ELI5

Imagine your school wants to add a new rule — like “pizza every Friday.” Someone cannot just start ordering pizzas. They have to write down the idea, explain why it is good, let everyone discuss it, and then the student council votes. If it passes, pizza shows up in the cafeteria. If it does not pass, no pizza — but the idea is saved in case someone wants to try again later.

Python works the same way. When someone wants to add a new feature to the language, they write a document called a PEP — short for Python Enhancement Proposal. A PEP explains what the feature is, why Python needs it, and how it would work.

Then the discussion begins. Other Python developers read the PEP and share opinions. They might say “great idea!” or “this would break my code” or “what about this edge case?” The author updates the PEP based on feedback, sometimes rewriting it several times.

Finally, a small group of trusted decision-makers — the Steering Council — reads everything and decides: accepted, rejected, or “go back and revise.” If accepted, someone writes the code, and the feature appears in the next version of Python.

Every major Python feature went through this process. The with statement, f-strings, the walrus operator := — all started as PEPs. Even the rules about how Python itself is governed are defined in PEPs.

The beautiful part is that every PEP is public. Anyone can read the full history of why Python looks the way it does.

One thing to remember: A PEP is Python’s way of making sure every change is thought through, discussed, and documented before it becomes part of the language everyone uses.

pythongovernancecommunity

See Also

  • Python Contributing To Cpython Find out how everyday Python users can help build the language itself — no PhD required.
  • Python Python Enhancement Proposals History Travel through the story of Python's most important decisions — told through the documents that shaped the language.
  • Ci Cd Why big apps can ship updates every day without turning your phone into a glitchy mess — CI/CD is the behind-the-scenes quality gate and delivery truck.
  • Containerization Why does software that works on your computer break on everyone else's? Containers fix that — and they're why Netflix can deploy 100 updates a day without the site going down.
  • Python 310 New Features Python 3.10 gave programmers a shape-sorting machine, friendlier error messages, and cleaner ways to say 'this or that' in type hints.