Design patterns are one of those topics that have eluded me throughout my career as a software engineer. I’ve made use of some patterns, like Model View Controller, Singleton, and Factory, but I’ve never studied them on any formal basis. I’ve seen the famous Design Patterns book on many a bookshelf, and have always fully intended to read it, but I can be cheap and lazy.
This brings us to the book Head First Design Patterns, by Eric and Elisabeth Freeman. I had been eager to read a book from O’Reilly’s Head First series because the approach is so unusual, and because I figured that they must be good because producing books so heavy on illustrations is very expensive and time consuming. The authors were scheduled to do an interview on the Well, and I managed to score a free copy of the book so I could read it and participate in the discussion.
So I’m in the process of reading the book, and I rate it as the best computer book I’ve ever read in the “instructional tool” category. I generally find it difficult to learn new things from books, I prefer to take a more hands on approach that involves tearing into code and looking at documentation when I have to. This book has been the exception to the rule — it’s designed to apply the most innovative thinking on how humans learn, and the approach is effective. The one danger the book runs into is appearing to be gimmicky, but if you can get past that, I think you’ll be impressed.
The interview with the authors is publicly accessible and well worth reading. Feel free to skip over my fawning comments.