Written for people first: readability, indentation and great Python code

October 21, 2026 · 19 min read

Guido van Rossum describes programs as recipes written for two audiences and explains why readability matters, Chris Lattner weighs Python's strengths and the indentation debate while building Mojo on top of it, and The Hitchhiker's Guide to Python gives whole sections to writing and reading great code. Together they show why the people who build and teach Python treat code as something humans must read, not only something a machine must run.

11 questions on this insight. Answer in your head, then open the card.
What are the two audiences of a program, according to Guido van Rossum? Show answer

The computer that runs it and the other programmers who must read, debug and improve it.

Why does a program need to be completely unambiguous? Show answer

Because computers lack human context and need very precise instructions.

How is a program different from a cookbook recipe, in van Rossum's account? Show answer

Software is so complex that you don't get it all right at once, so it is continually debugged and improved by teams or its author.

What does Python require of indentation? Show answer

Everything that belongs to the same block must be indented the same way; the number of spaces itself is not fixed.

Why could Python never switch to curly braces now? Show answer

Because braces already mean dictionaries in Python.

What are Chris Lattner's three arguments for indentation over braces? Show answer

Brace languages are run through automatic formatters anyway, misleading indentation has caused notorious bugs, and one notion of grouping removes clutter and a whole design space of rules.

How are Python's type hints checked? Show answer

Not when the code runs; a separate static type checker reads the code and flags inconsistencies.

How does Mojo treat declared types differently from Python? Show answer

In Mojo a declared type is enforced by the compiler, while types can still be adopted progressively.

What are PEP 8 and PEP 20? Show answer

PEP 8 is Python's community style guide; PEP 20, the Zen of Python, sets out its values in aphorisms by Tim Peters such as "readability counts."

What is the Hitchhiker's Guide's most distinctive idea for getting better? Show answer

Read real, respected open-source projects such as Requests and Flask, the way writers become better by reading good writing.

What does the Hitchhiker's Guide ask about packaging? Show answer

Who is receiving it: give other developers an installable package, and end users a frozen application.

This is the short form. The full insight has every expert's reasoning, their own words and the sources.