ACCU Home page ACCU Conference Page
Search Contact us ACCU at Flickr ACCU at GitHib ACCU at Google+ ACCU at Facebook ACCU at Linked-in ACCU at Twitter Skip Navigation

Search in Book Reviews

The ACCU passes on review copies of computer books to its members for them to review. The result is a large, high quality collection of book reviews by programmers, for programmers. Currently there are 1918 reviews in the database and more every month.
Search is a simple string search in either book title or book author. The full text search is a search of the text of the review.
    View all alphabetically
Pattern Languages of Program Design
Neil Harrison&Brian Foote&Hans Rohnert
0 201 43304 4
Francis Glassborow
Appeared in:
This is the fourth volume in the series that is based on papers presented at PloP conferences. If I remember correctly I commented in my review of the previous volume that there seemed to be a growing tendency to invent patterns rather than discover them. In this volume we head off in another direction my have substantial parts of the book about things that are not directly related to writing software. We have three sections (comprising of ten chapters) covering Patterns of Human-Computer Interaction, Reviewing and Managing Software.

At the same time we return to focus on complete Pattern Languages rather than discrete candidates for patterns.

An excellent example of this is one of James Coplien's contributions, chapter 10 - C++ Idioms Patterns (a horrible title but we cannot always have everything). Here Cope sets out to provide a unification of 13 patterns (expanded to seventeen by including four secondary ones.) One problem that comes to a head with this volume is the number of patterns that have now been listed. While I think that every serious software shop should have this series in its reference library, I doubt that any one programmer will become familiar with even half of those that have been catalogued. Unless programmers are at least aware of possible relevant patterns, they will be forever condemned to re-inventing the wheel. However, I think the time has come when we need to focus on consolidating what we have an organising ways by which journeyman programmers can benefit. It may be nice to discover yet another pattern and use it as your ticket to meeting colleagues at a couple of conferences but that does not mean that you are actually benefiting the software development community.

It has just crossed my mind that pattern development and cataloguing shows marked similarities to physicists adding new sub-atomic particles until a new deeper level arises. Perhaps we need that deeper unifying layer for our patterns.

Yes, of course you should add this book to your reference shelf and spend some time studying it but you knew that before you started reading this. The book is well-structured and many of the papers are surprisingly readable. You will even find some humour. Try reading the last chapter wherein you will find such patterns as 'Big Ball of Mud' and 'Piecemeal Growth' both of which are large scale architectural(?) patterns.