I have read hundreds of books over the years and some of them have had a profound effect on me. In this post, I list my all-time favourite software development books. As you can imagine, this always proves to be a very difficult task; I could easily have tripled the size of the list this year, such has been the quality of recent publications, but keeping it small forces me to make hard decisions.

I read software development books to learn. I practice writing code to remember.

So, here it is - My 10 favourite development books 2023 (in alphabetical order):

  • Code That Fits In Your Head by Mark Seemann
  • Designing Data-Intensive Applications by Martin Kleppmann
  • Domain-Driven Design by Eric Evans
  • Domain Modelling Made Functional by Scott Wlaschin
  • Extreme Programming Explained by Kent Beck
  • Grokking Simplicity by Eric Normand
  • Growing Object Oriented Software, Guided by Tests by Steve Freeman and Nat Pryce
  • Modern Software Engineering by Dave Farley
  • Monolith to Microservices by Sam Newman
  • Software Architecture: The Hard Parts by Neal Ford et al

I suppose that the one big surprise from someone who mainly travels the functional programming path, is an OOP book. However, GOOS, as it is commonly referred to, shaped how I approached writing code with regard to test-first and TDD.

The least surprising thing given the speed at which things go in and out of fashion, is that most of my chosen books are language agnostic.