This book of essays, originally a series of columns for the Journal of Object Oriented Programming, falls into three main parts:
Patterns for software
Christopher Alexander's idea of Pattern Languages have been enthusiastically taken up by the object oriented software community. But that community has focussed on the technological side of the idea, and have neglected the 'Quality Without a Name' that is key to Alexander's work. They have completely missed the point. But what is the analogy of this Quality when applied to software?
Alexander himself writes the Preface, praising Gabriel for understanding his work better than do some of his architecture colleagues, but pointing out that he has done more since Gabriel 'stopped reading', in particular, the new 'Nature of Order' series, soon to be published.
Some thoughts of reuse; whether inheritance is a good idea or just leads to incomprehensible programs; and the fact that programs tend to be maintained and changed over their lifetimes, not just written and frozen, but our use of abstractions doesn't help us in such a lifecycle.
The author's traumatic route through the education system, and his successes and failures with his company, Lucid. He names names, and pulls few punches. A fascinating (if necessarily one-sided) view of clashing office politics and technological vision.