Preface
I’ve been working in software for nearly 30 years. In the course of my career, I’ve adopted what are now considered the core modern practices of the profession: Test-Driven Development, refactoring, and Design Patterns. I have been a strong supporter of all these things (and more) for most of my career,
It seems like those skills should be enough, yet, I’ve seen countless teams end up starting out committed to them only to end up struggling anyway. Eventually, they ended up slowing down and having areas of the code they didn’t want to change anyway.
Sometimes those teams—even the ones with the strongest developers on them—even decide to give up on good practices and backslide into old habits.
Yet I didn’t have this experience, myself.
This book exists because I realized that there was something missing from what those teams were doing. It’s not that they were applying the disciplines incorrectly. It’s that there was something they weren’t doing that they should be.
I’m not interested in replacing existing practices, arguing against them, or proposing a silver bullet. Everything discussed here is meant to sit alongside the techniques you already know. The intent is additive, not corrective.
This is also not a book about tools, frameworks, or process. It’s written for experienced developers who already understand the surface area of modern practice but feel that something important remains unarticulated—something they may apply intuitively, inconsistently, or not at all.
The chapters that follow are deliberately structured. They move from diagnosis, to reframing, to concrete techniques. Some sections will feel philosophical; others will feel uncomfortably practical. The book rewards slow, careful reading more than skimming, and it assumes a willingness to question habits that may feel settled.
If you’re looking for quick tips, checklists, or a new methodology to roll out to a team, this is probably not the right book.
If, on the other hand, you’ve ever felt that changing software is harder—and riskier—than it ought to be, even when you “do everything right,” then this book was written for you.