10 Most Influential Software Development Books of the Past 10 Years
My article on the 10 most influential software development books of the past 10 years only appeared in the 2/15 print edition of SD Times.
If you’re interested, here are Amazon affiliate links to the books:
- Lean Software Development: An Agile Toolkit
- Practices of an Agile Developer: Working in the Real World (Pragmatic Programmers)
- Head First Object-Oriented Analysis and Design
- Beautiful Code: Leading Programmers Explain How They Think (Theory in Practice (O’Reilly))
- Code Complete: A Practical Handbook of Software Construction
- Programming Ruby 1.9: The Pragmatic Programmers’ Guide (Facets of Ruby)
- Effective Java (2nd Edition)
- Concurrent Programming on Windows
- Java Concurrency in Practice
- Producing Open Source Software: How to Run a Successful Free Software Project
- Patterns of Enterprise Application Architecture


I’m curious why ‘The Pragmatic Programmer’ didn’t make the cut.
“The Pragmatic Programmer” and “Extreme Programming Explained” — which I think were the 2 most influential books _during_ the decade — were released in 1999.
And then there’s the whole other list of “books which ruddy well should have been influential, but for some reason were not.”
Personally I mourn that “Waltzing With Bears” did not sweep the dev community; risk management is a very deep idea that’s crucial to our craft, but IMHO too rarely understood.
@Rick, you know I agree wholeheartedly both in general and on that specific book…
Getting the editorial guideline that they had to be “influential” actually made the article much easier to write. I was able to select certain books as being influential _in publishing_ (“Head First…,” “Effective…” / Recipe books) and I was able to discard lots of my personal favorite books that I can’t pretend were widely read! (Sorry “Dances With Bears,” “Practical Common Lisp,” “Real World Haskell,” etc.)
There’s an interesting chronosynclastic infundibulum that appears with lists like this when you add links to current editions. To wit, the Ruby book that was so important in the past decade was not Programming Ruby 1.9, but the prior edition; nor was the 2nd Edition of Effective Java the notable version. But what can you do? You can’t hardly link to outdated versions.
That aspect notwithstanding, I’d put Rod Johnson’s book, Expert One-on-One J2EE Design and Development on this list. That book, you will recall, was what brought Spring to the programming community and eventually led to the wide adoption of dependency injection frameworks. I’d take out Beautiful Code to make room for it. I’m not sure I see that Beautiful Code had much, if any, influence.