Humility-Driven Development
Minimum price
Suggested price

Humility-Driven Development

Practicing the Timeless Wisdom of Egoless Programming

About the Book

Many years ago, my dear friend Ted Neward introduced me to the notion of Egoless Programming. The Ten Commandments described herein have guided (and chided) me throughout my career as a Software Engineer, Architect, Manager, and Field CTO.

While working my way through the January 2022 cohort of Ship 30 for 30, I decided to write an essay on the Ten Commandments of Egoless Programming, and it quickly became one of my most popular Atomic Essays. This inspired me to write a follow-up series of essays on each commandment, and several of these proved popular as well. I've now packaged and enriched these essays in book form.

I hope they inspire, guide, and chide you as you play the collaborative game we lovingly call Software Engineering.

  • Share this book

  • Categories

    • Computers and Programming
    • Software
    • Software Engineering
    • Technical Communication
    • Management
    • Agile
    • Leadership
    • Personal Transformation
  • Feedback

    Email the Author(s)

About the Author

Matt Stine
Matt Stine

I talk about digital knowledge management for enterprise software engineers • Shipping software daily at the largest bank in 🇺🇸 •

Table of Contents

  • The Ten Timeless Commandments of Egoless Programming
    • Rules for Every Software Engineer to Live By
    • 1. Understand and accept that you will make mistakes.
    • 2. You are not your code.
    • 3. No matter how much “karate” you know, someone else will always know more.
    • 4. Don’t rewrite code without consultation.
    • 5. Treat people who know less than you with respect, deference, and patience.
    • 6. The only constant in the world is change.
    • 7. The only true authority stems from knowledge, not from position.
    • 8. Fight for what you believe, but gracefully accept defeat.
    • 9. Don’t be the uncollaborative coder in the corner.
    • 10. Critique code instead of people.
  • Understand and Accept That You Will Make Mistakes
    • You will break the build.
    • You will write bugs.
    • Some of your bugs will make it to production.
    • You will do all of these things your entire career.
    • Anyone who says they don’t do any of these things anymore is lying.
  • You Are Not Your Code
    • Your code will be critiqued.
    • Your code will be refactored.
    • Your code will be optimized.
    • Your code will be deleted.
    • All of these events are part of the daily life of a software engineer.
  • No Matter How Much “Karate” You Know, Someone Else Will Always Know More
    • Someone has always been around the company longer.
    • Someone has always invested more personal time.
    • Someone has always visited the other side.
    • Someone always has another tool in their belt.
    • You’ll always be “that someone” to someone else.
  • Don’t Rewrite Code Without Consultation
    • Quick PSA: Refactoring != Rewriting.
    • Question: Does the code work?
    • Question: Do you know the rationale behind the code?
    • Question: Are you aware of your opportunity?
    • Question: Have you scheduled that conversation yet?
  • Treat People Who Know Less Than You With Respect, Deference, and Patience
    • Treat people with respect.
    • Treat people with deference.
    • Treat people with patience.
    • Remember the Golden Rule.
    • Check yourself.
  • The Only Constant in the World is Change
    • Business Needs Constantly Change
    • Teams Constantly Change
    • Delivery Constantly Changes
    • Consumer Devices Constantly Change
    • Architecture Styles Constantly Change
    • Software is only “soft” so that it can easily change.
  • The Only True Authority Stems From Knowledge, Not From Position
    • Do you keep your coding knives sharpened?
    • Have you felt your engineering team’s pain?
    • Have you done what you’re directing your engineering team to do?
    • Do you understand the second-order effects of your directives?
    • Do you cultivate empathy toward those you lead?
  • Fight For What You Believe, But Gracefully Accept Defeat
    • Multiple acceptable solutions exist.
    • Conflict is both inevitable and necessary.
    • You can debate effectively and be kind.
    • You can win or lose gracefully.
    • As a team, you can rally around a single decision.
  • Don’t Be the Uncollaborative Coder in the Corner
    • Collaborating will improve your code.
    • Collaborating will expand your perspective.
    • Collaborating will propagate your knowledge.
    • Collaborating will teach you new skills.
    • Collaborating will improve your life.
    • Collaborating is 100% in your self interest, if not your comfort zone.
  • Critique Code Instead of People
    • YES: This code won’t scale.
    • YES: This code doesn’t use library X correctly.
    • YES: This code doesn’t handle an edge case.
    • YES: This code doesn’t follow our team’s conventions.
    • No matter how hard you try, you can’t hurt the code’s feelings.

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.

See full terms

Do Well. Do Good.

Authors have earned$11,971,205writing, publishing and selling on Leanpub, earning 80% royalties while saving up to 25 million pounds of CO2 and up to 46,000 trees.

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