Libary of links
Here I offer links to articles, videos and books that I have found particularly inspiring, impactful, challenging and/or educational.
Enjoy!
Architecture, Design and Coding
Modern Software Engineering by Dave Farley. Emphasizes engineering as a practical craft, applying principles of the scientific method to developing software.
Learning Domain-Driven Design by Vlad Khononov. An excellent, practical book on applying domain-driven design to real-world problems.
Building Maintainable Software - this is such a great book - small, simple, measurable ways to help ensure your code is maintainable
Why pull requests are a bad idea - Dave Farley
You must be crazy to do pair programming - Dave Farley
How to write meaningful log messages
A scarily accurate list of falsehoods coders believe
(such as "people have names" and "a single postcode will be larger than a single building.")
AI-Assisted Coding
This will likely be out of date before you read it, but anyway, here you go...
Cline - the awesome, free, open source AI-coding plugin
A great list of Model Context Protocol (MCP) servers
Testing
Stop doing end-to-end testing! - Dave Farley
How to write acceptance tests - Dave Farley
Software Delivery and Process
The Principles of Product Development Flow. Dr. Reinertsen's seminal work on the math, science and reality of how queuing theory impacts software delivery
Sooner Safer Happier (and their book) - an insightful, rich exploration of how to transform companies towards flow-based delivery, one small step at a time
Team Topologies - this book gives us a template for how to organize for flow. We've been using it a lot at eBay lately...
This simple, short video is one of the most effective demonstrations of the power of minimizing work-in-progress that I have ever seen
A long read but worth it, sharing all sorts of ideas, including enabling constraints and how to bring about change with effective experiments
A great guide for running an effective post-incident review