In the comments discussion on this post by Daniel Davis, the concept of design patterns was randomly (inevitably?) brought up, as a strategy in programming and UX design that might be used in architecture to deal with increasing complexity in a design project.
To quote someone we will spend the rest of the article discussing,
“[a design] pattern describes a problem that occurs over and over again in our environment, and then describes the core of the solution to that problem, in such a way that you can use this solution a million times over, without ever doing it the same way twice.”
The use of patterns not only standardizes nomanclature for common problems or conditions, but provides an easy reference to proven solutions to those problems and conditions. There has been an increasing interest in patterns in computational design circles, and with the recent release of “Elements of Parametric Design” by Woodbury et al, ideas have begun to converge, and various attempts at CD pattern libraries and their corresponding implementations have been started using a wide variety of tools.
This new interest architectural design patterns is actually the end of a forty year full circle. Patterns as a concept were invented by the architect Christopher Alexander, who was drawn to the architecture department at Cambridge University after initially planning to study computer science, and ended up being part of arguably the first computational design program in history. This combined passion for both data structures and the built environment led him to describing design as a language of connected patterns, a non-computational relative of his work on shape grammars and parametric design while at CU. Alexander invented a standard structure for the description of a pattern, beginning with the description of a problem, its enumeration, and finally a “therefore” statement suggesting a solution or desired condition. These patterns could then be linked using many different methods to create a non-formal, abstract description of a comprehensive design solution.

When my uncle (an accomplished architect in Los Angeles) found out I was going to architecture school, he immediately sent me copies of Christopher Alexander’s books A Pattern Language and The Timeless Way of Building. These books, written in the late seventies, are more or less a complete expression of the idea of architectural patterns, and to a young person looking for a book that layed out the “what” “why” and “how” of architecture, were revelatory.
My first year of school, in a history and theory class, I learned that not all ideas are equally welcome. I brought those books up in discussion, and the professor didn’t even bother to respond with more than a “don’t waste my time” look and a quick change of topic. I put the books away and didn’t revisit the concept for years. What happened in the decades between this book being published, by a well respected architectural theoretician through a major academic publisher (Oxford) and my unwelcome invocation in History and Theory 101? Well, a lot.
One clue can be found in this debate at Harvard between Alexander and Peter Eisenmann, on the eve of postmodernism in 1982. If I had my way this would be immediate, mandatory reading for every student of architecture, as somehow it’s thirty years later and we still have not gotten past many of the precepts of this argument. Eisenmann was a contemporary of Alexander’s at CU in the sixties, and likewise interested in computation, but this debate shows two very different opinions about the value, meaning and purpose of architecture. Alexander is making a humanist argument for an anthropological basis for building- an idea that there is a deep, human basis for architecture that can be traced, derived, and codified by examining not only buildings but ourselves and our world. Eisenmann, ever the deconstructionist, counters with an architecture that is a formal language unto itself, cut free of any dependence to history or humanity, that can be examined, critiqued, and designed purely in the abstract, clear of the confinements of an imposed humanistic imperative.
What is surprising in hindsight is that, in the transcript, it seems like the crowd was more inclined to agree with Alexander at the conclusion of this debate. However, anyone remotely familiar with the the last thirty years of architectural theory mist realize that the view of architecture expressed by Eisenmann was the one that ultimately ended up being discussed, accepted, and ultimately enshrined in the subsequent decades, to the point where my casual reference to A Pattern Language twenty years later was treated like flatulence in a cathedral.
There are a lot of reasons that a young student of architecture in 1982 (or now) might be more excited by deconstruction than patterns. Alexander’s implementation of the concept is based on a historical determinism that, particularly to someone young and bold, might seem stodgy and limiting. The language of the patterns themsleves, with a lecturing tone and repeated “therefores” is almost a perfect foil for a rebellious youth, and would have a great deal of trouble competing with the (at the time) far edgier world of French philosophy. The book even looks like it was published in the 1940’s, presumably because that is the timeless way of printing.
But the main reason we aren’t all using this book as a bible is the content itself. Most of the patterns in the book are plainly useful, in fact aimed directly at the user – the back cover of the book proclaims a “new traditional post-industrial architecture, created by the people.” But the utilitarian quality of many of these patterns – “Built In Seats,” “Outdoor Rooms,” “Row Houses,” are somewhat of a letdown after the architect-as-industrial-sorcerer paradigm popular in high modernism. A Pattern Language laid architecture out as a rational collection of proven concepts, altered to suit user and context but sharing in ideas as old as humanity itself. Many of the patterns presented in his book are less like the patterns seen in programming, and are more like rules of thumb. Anybody passionate about their profession will bristle at the idea that what they do can be broken down into a simple set of guidelines, and this reaction is based largely on the truth that the whole is immensely more complicated than the sum of the parts. For all of these reasons, A Pattern Language seems doomed to a status as one of the many cul-de-sacs of architectural theory.
This, however, is not the end of our story. As I suggested above, Alexander’s concepts have had resonance in other fields, such as programming and interface design. The idea of patterns was an excellent way to organize and understand object oriented programming, a parallel development that is now part of the underlying architecture of most commercial software. Software patterns are noticably more abstract than architectural patterns– a particular example, like “Reactor” is more of a general concept that can be applied in multiple ways, scales, and situations. This makes software design patterns ultimately less suggestive, and easier to adapt to a variety of practices.
In the last few years patterns have returned from their roundabout journey back into architecture, this time as an organizational practice for computational design. As such, the patterns themselves are very different, having less to do with the physical form of the architecture itself than design methods used in the process of scripting. These new patterns have very little precedent in architectural practice, as they are not tools (like a t square or the offset command) nor heuristics (like a 30′ column grid or proscribed parking ratios) nor stylistic imperatives (like the classical orders or digital neobaroque NURBS). They are, instead, meta-organizational principles, that are at least one step removed from the design of the form itself, such as the idea of a “goal seeker,” or recursion, or a placeholder. In short, these are components of a digital workflow, an outline for how a computational practitioner might work efficiently and flexibly, keeping the organizational BS to a minimum. The use of these patterns also presupposes an algorithmic, computational approach to a design problem, which begs the question – are there non-computational design patterns that fit this meta-organizational mold? Such a pattern would not shape the form of the design, but rather the approach. For instance, “pattern-language based collaborative design workshops” would be one such pattern that might make Mr. Alexander happy.
There is one other way to look at the future of patterns in architecture, and that is to look at the way we are already working. The practice of architecture is currently making a laborious transition from drafting (CAD) to parametric modeling (BIM). Such a transition, at the most obvious, lay level, involves a change of language and approach, from working with lines and curves to working with digital objects – walls, roofs, etc. As anyone familiar with one of these parametric environments can tell you, designing completely within a BIM environment can become a process of learning how to work with, against, or around the interface and objects you are given to reach a particular design goal. Frequently one is driven to workarounds that hack the basic intent of the out of the box parametric components. As such, working in such an environment becomes a tripartate process- first you determine the design goal, then you come up with a strategy for modeling that goal, and then you implement. That second step, which did not exist in the world of CAD, is where the kind of patterns seen above live. Given the nature of this workflow, it seems to me that an obvious step in the evolution of BIM is to separate the category of an object from its organization, so that your primitives become complex patterns with known abilities and limitations. We are already working with patterns on a daily basis, but instead of being developed for utility they are the accidental inheritance of a digital environment designed to imitate a basic understanding of building tectonics.
If I’ve made anything clear above — I doubt I have — it’s that, while patterns have a long history in architecture, their current purpose is still very much up in the air. It is my opinion that patterns are a vital ally in making sense of the still-nascent form of digital practice, an organizational tool that mediates between the goals of design and the power of computation. If computational design is going to be a ubiquitous practice patterns are going to be a necessary part of it. To put it simply, watch this space.
























