Kick off your book project in 3 hours! Live workshop on Zoom. You’ll leave with a real book project, progress on your first chapter, and a clear plan to keep going. Saturday, June 6, 2026. Learn more…

Leanpub Header

Skip to main content

Beautiful but Boring

Writing Python Code for Future You

The best compliment a reader can pay your code is not "this is impressive" — it is "this was exactly what I expected." Beautiful but Boring teaches the discipline of writing Python that earns that compliment: precise naming contracts, type annotations that say what a function actually requires, and a framework for maintaining those standards consistently across a codebase, a team, and a career.

Free With Membership

With Membership

Free!

$7.99

You pay

Author earns

$

Buying multiple copies for your team? See below for a discount!

PDF
EPUB
About

About

About the Book

Beautiful but Boring makes a single, sustained argument: the highest virtue in production code is not elegance, expressiveness, or sophistication — it is boringness. Boring code keeps its promises. Names state contracts, not mechanisms. Types annotate what the function requires, not what the author happens to be passing. Documentation describes what callers cannot infer, and leaves out everything they already know. Applied consistently, across a codebase and a career, this discipline compounds — producing code that Future You, every colleague, and every developer who joins the project later will encounter and immediately trust.

The book argues in three movements. The first establishes the philosophy: why boring is a virtue, why clever code externalizes its costs, and why the Zen of Python is a design specification worth taking seriously. The second applies the argument to every layer of a function — its name, its signature, its type annotations, its structure, and its documentation. The third introduces rubric-driven development: a framework for making quality standards executable rather than aspirational, maintained across sessions and teams, and compounding with every iteration. In an age when AI tools write, evaluate, and refactor code daily, the rubric is what ensures those tools measure against the team's standards — not the model's defaults.

Throughout, the argument is made concrete through named diagnostic tests — the Rename Test, the Delete Test, the Rewrite Test, the Competent-Caller Test — that give readers a repeatable heuristic they can apply to the next function they write, without having to reconstruct the reasoning from scratch.

Chapter 28 is the proof. An annotated reading of Pyr-CLI — a real, public codebase built against this rubric, over years of iteration — that shows what these principles look like when they have been internalized rather than applied. The code is not simple. It is boring: every decision deliberate, every standard enforced often enough to have become habit. The chapters before it make the argument. Chapter 28 shows the evidence.

The book is for Python developers who take their craft seriously — who have maintained code they wrote a year ago and felt the specific frustration of not being able to trust their own past decisions. It assumes working Python knowledge. It does not teach the language. It teaches the discipline of writing it well.

Team Discounts

Team Discounts

Get a team discount on this book!

  • Up to 3 members

    Minimum price
    $12.99
    Suggested price
    $12.99
  • Up to 5 members

    Minimum price
    $19.99
    Suggested price
    $19.99
  • Up to 10 members

    Minimum price
    $34.99
    Suggested price
    $34.99
  • Up to 15 members

    Minimum price
    $44.99
    Suggested price
    $44.99
  • Up to 25 members

    Minimum price
    $64.99
    Suggested price
    $64.99

Author

About the Author

Roth Earl

Roth Earl has been writing programs since the moment he discovered that JavaScript could make a plane fly across a screen — and that clicking on it could make the plane explode. The game was simple, the sounds were questionable, and the animation was held together by determination and the kind of optimism that only comes from not yet knowing what you don't know. He has been chasing that feeling ever since.

He began his career in 2005 as a software developer and transitioned to test engineering roughly twelve years ago — a move that changed how he reads code. Where a developer reads code to extend it, a test engineer reads code to understand what it actually promises: what the function will do, what it can fail on, and whether its name is telling the truth. That perspective, applied across two decades and a wide range of codebases, is the foundation of this book.

He has no prior books or formal academic credentials in this area. His authority is practical: twenty years of writing code, reading code, inheriting code, and paying the maintenance costs of decisions that made sense at the time. The argument in this book was not constructed from theory. It was accumulated from the experience of opening files that should have taken thirty seconds to understand and taking twenty minutes instead — and from deciding, at some point, to write code that does not do that to the next person.

Contents

Table of Contents

  • Part 1 — The Philosophy of Boring Code
    • 1. Coding for Future You
    • 2. Boring Is Good
    • 3. Pedantic but Practical
    • 4. The Zen Beneath the Rules
  • Part 2 — Names Are Contracts
    • 5. Name the Thing, Not the Mechanism
    • 6. Verbs That Tell the Truth
    • 7. Variables That Explain Themselves
    • 8. The Namespace Is Already Talking
  • Part 3 — Functions Are Promises
    • 9. One Job Done Well
    • 10. The Shape of a Good Signature
    • 11. Keyword Arguments Are Documentation
    • 12. Normalize First, Process Second
  • Part 4 — Types Are Documentation You Can’t Ignore
    • 13. Annotate the Contract, Not the Container
    • 14. Local Variables Don’t Need Annotations
    • 15. Enums Are Choices, Not Bags
  • Part 5 — Structure and Control Flow
    • 16. Match When It Makes Things Clearer
    • 17. pass and ...
    • 18. Errors Should Be Specific and Chained
  • Part 6 — Documentation as Contract
    • 19. Docstrings Are Contracts, Not Comments
    • 20. Mood Matters: Indicative, Imperative, and Why
    • 21. Document the Surprising, Not the Obvious
    • 22. Comments Explain Why, Not What
  • Part 7 — The Living Standard
    • 23. The Rubric as a Living Document
    • 24. Every Decision Is a Future Standard
    • 25. Close the Loop
    • 26. What a Bad Rubric Looks Like
    • 27. Boring Code at Scale
  • Part 8 — Evidence
    • 28. The Principles in Practice
  • Appendices
    • A. The Evaluation Checklist
    • B. Name Prefix Vocabulary
    • C. Type Annotation Quick Reference
    • D. Docstring Templates
    • E. The Rubric as a Starting Point
    • F. Glossary

Get the free sample chapters

Click the buttons to get the free sample in PDF or EPUB, or read the sample online here

The Leanpub 60 Day 100% Happiness Guarantee

Within 60 days of purchase you can get a 100% refund on any Leanpub purchase, in two clicks.

Now, this is technically risky for us, since you'll have the book or course files either way. But we're so confident in our products and services, and in our authors and readers, that we're happy to offer a full money back guarantee for everything we sell.

You can only find out how good something is by trying it, and because of our 100% money back guarantee there's literally no risk to do so!

So, there's no reason not to click the Add to Cart button, is there?

See full terms...

Earn $8 on a $10 Purchase, and $16 on a $20 Purchase

We pay 80% royalties on purchases of $7.99 or more, and 80% royalties minus a 50 cent flat fee on purchases between $0.99 and $7.98. You earn $8 on a $10 sale, and $16 on a $20 sale. So, if we sell 5000 non-refunded copies of your book for $20, you'll earn $80,000.

(Yes, some authors have already earned much more than that on Leanpub.)

In fact, authors have earned over $15 million writing, publishing and selling on Leanpub.

Learn more about writing on Leanpub

Free Updates. DRM Free.

If you buy a Leanpub book, you get free updates for as long as the author updates the book! Many authors use Leanpub to publish their books in-progress, while they are writing them. All readers get free updates, regardless of when they bought the book or how much they paid (including free).

Most Leanpub books are available in PDF (for computers) and EPUB (for phones, tablets and Kindle). The formats that a book includes are shown at the top right corner of this page.

Finally, Leanpub books don't have any DRM copy-protection nonsense, so you can easily read them on any supported device.

Learn more about Leanpub's ebook formats and where to read them

Write and Publish on Leanpub

You can use Leanpub to easily write, publish and sell in-progress and completed ebooks and online courses!

Leanpub is a powerful platform for serious authors, combining a simple, elegant writing and publishing workflow with a store focused on selling in-progress ebooks.

Leanpub is a magical typewriter for authors: just write in plain text, and to publish your ebook, just click a button. (Or, if you are producing your ebook your own way, you can even upload your own PDF and/or EPUB files and then publish with one click!) It really is that easy.

Learn more about writing on Leanpub