Skip to content
YMMV

Recommended Resources

My reading list

I try to read broadly. I don't read a lot, but it's surprising how a little bit of reading mounts up over time. I also get a lot of ideas from online communities of various sorts, and I'll try to add these over time as well.

This is also serving as my own to-read list, so not everything here has actually been read by me.

Software development

Code That Fits In Your Head

I came across Code That Fits In Your Head after a colleague attended a workshop with the author, Mark Seeman, at NDC London. The idea that "anyone can write code that a computer can understand, the trick is to write code that a human can understand" and from what I understand, this is a really helpful set of heuristics to achieve this.

Status: Not read yet

Don't Read Clean Code

Clean Code by the creepy uncle who shall not be named is not a book I recommend. Not because I don't love clean code (I do) but because (1) I don't think this book gives good suggestions on how to avoid it and (2) because of the author's well-documented appalling behaviour. The two are not unrelated.

The author takes a gatekeeping, perfectionist, hierarchical and right-first-time approach to clean code. This is completely in contrast to the times where I've had success with actually creating teams that write clean code, which has focused on pair programming, highly psychologically safe environments, feedback and continuous improvement. The cleanest code I saw was with a team who had a team motto of "refactor with joy and wild abandon", and was extremely junior-weighted.

If you're looking for good reference guides to improve your code craft, instead try:

  • The Pragmatic Programmer by Andrew Hunt and David Thomas
  • Code Complete by Steve McConnell
Domain-Driven Design: Tackling Complexity in the Heart of Software

Domain-driven design should be a required skill for any enterprise-scale developer (and any working in companies who aspire to that size), and this book by Eric Evans is the go-to reference as far as I'm aware.

Status: Read a long time ago, I should probably refresh.

Software delivery

Accelerate

Accelerate: Building and scaling high performing technology organisations by Dr Nicole Forsgren is (or should be) a core reference text for everyone in software delivery. It's a bit dry and academic at times, but works surprisingly well as a troubleshooting reference guide when things aren't going as well as you think they should be.

The Phoenix Project and The Unicorn Project

The Phoenix Project is a DevOps classic, and I have to say the first 1/3 of the book was pretty difficult to read as it bundled together all the worst parts of all the worst projects I'd ever been on. It just made the recovery all the more glorious to read.

I haven't read the Unicorn Project yet, but it tackles some of the broader thinking that's emerged as the DevOps movement gains maturity.

The Machine That Changed The World

This is part analysis of Lean methodologies and part history lesson on the car industry. I found the combination of this and The Goal to give two very different and complementary pictures of Lean manufacturing and the underlying principles that carry forward into DevOps and Agile approaches.

The Goal

What a book. Incredible.

This novel is based around a factory in the 1980s, but don't let that make you think it's any less relevant. This book explains Theory of Constraints beautifully and once you've seen it, you'll see it everywhere, and it will completely change the way you look at systems.

A must-read for any systems thinkers.

The 4 Disciplines of Execution

Ok, I haven't read this one yet. But it's been sitting on my desk for quite a while now.

I don't like OKRs. They're messy and complex and I've spoken to a lot of people about them and the best I've heard was "we were able to succeed with OKRs, but it felt like it was despite them not because of them"

4DX is much less well known but seems to approach the same problem from a position that's much more philosophically aligned with what I think good software delivery looks like.

Product and Strategy

Empowered and Inspired
These two SVPG/Marty Cagan books are probably as close to the definition of modern Product Management thinking. I'm not a product manager, but being familiar with these concepts and ideas is still essential to my role. Being able to understand the Product Management function is pretty much essential for anyone who wants to have influence and direction on what gets built.
Good Strategy, Bad Strategy
What is strategy anyway? What makes a strategy good or bad? As leaders, we're often expected to be strategic, but I found it incredibly difficult to nail down what that actually meant. Fortunately, this book was able to give me an easy-to-follow guide while being amusingly cutting about some of the worst offenders in the world of corporate waffle.
Good to Great and Built to Last

Ok, I haven't actually read these. But their ideas are so impactful, they've trickled through to me in many different ways. I do intend to wrap up my thinking properly on this at some point and actually read the books...

People, Leadership and Culture

Primal Leadership
Primal Leadership is, for me, a must-read book for any leader or aspiring leader. It gives such a clear view of what leadership is, how it's impactful and the different styles of leadership (and when to use or avoid them). When people talk about flexing their leadership style, Primal Leadership will give you a brilliant insight into what this really means
Drive
The Fifth Discipline
The Advantage

The Advantage by Patrick Lencioni was recently highly recommended to me. I've already read 5 Dysfunctions of a Team by the same author and would recommend it - it's very easy to read and has some easy to absorb ideas. Looking forward to getting into The Advantage