Adam Petersen - Software Development Pages, Book Reviews Section
Start News Articles Book Reviews

Book Review

The Patterns Handbook : Techniques, Strategies, and Applications
by Linda Rising (Editor)

ISBN: 0521648181
Publisher: Cambridge University Press
Pages: 570

Early in the book, Linda Rising mentions mature engineering disciplines. Such disciplines have handbooks capturing best practices. I would love to write that this book does the same for patterns, as I see the immense importance of sharing knowledge about software development too. Unfortunately, I found that the book partly fails in that aspect.

Given that the book collects articles by many reputable names in the software field, how can it fail? The primary reason is that the parallel to mature engineering disciplines breaks down. At the time when the articles were written (early '90s), the software pattern community was still forming its shape and was far from mature. As many articles in this book are about patterns as a concept, the material hasn't aged well. Today, it is pretty clear what a pattern is. Much of the initial excitement is gone and there isn't, and never was, any point in over dramatizing patterns. Not surprisingly, the articles that actually present real patterns are the ones still bearing interest.

Linda Rising made a great job of grouping the articles in three different sections: "overview", "examples and experience", and "resources and more information". Her introductions pretty much set the stage for what to expect. I like reading books from cover to cover and expected it to work with this one too. Well, I got through it, but it was a truly tormenting experience. At least for the first part. The most painful thing was that the authors kept beating about the bush of patterns. I guess it reflects the spirit of that time, but I couldn't see any practical use of the material and would like to actually see some patterns instead of endless writings about them. And I swear, after having read exactly the same Christopher Alexander quotes several articles in row, suspicions of being exposed to some secret, psychological experiment arose. In a collection like this some repetition is unavoidable, but this is just too much. Way too much.

If repetition is bad, what I like with collections like this is the possibility to detect new writers and broaden my mind. This time I found the excellent writings of Don Olson. His patterns alone returned the investment in time I put into reading this book; insightful and funny writings.

Given my initial complains, is The Patterns Handbook worth buying? It sure would have been a valuable reference 10 years ago. Today its value is more limited. Several articles are only relevant to those of us interested in how the pattern community started. If you find a cheap copy of the book I would still recommend it. But please don't repeat my mistake of reading it cover to cover. Scan the table of contents and read the articles that seem interesting. I suggest "The failure of Pattern Languages" by Gabriel, Vlissides’ pattern hatching, and most of the Coplien articles. Schmidt and Stephenson present an interesting article covering the Reactor and Acceptor patterns. However, these patterns are available in a more mature form in Pattern Oriented Software Architecture 2. Finally, make sure you don't miss Don Olson’s entertaining fly-fishing patterns!

Reviewed December 2005

©2005 Adam Petersen