Pattern Language

What is a Pattern Language?

‘Pattern language’ is a term introduced by Christopher Alexander in his book A Pattern Language: Towns, Buildings, Construction (1977). It is a structured method for describing solutions to design problems, originally in the field of architecture, but now extended to other areas such as programming and web design. Alexander later published “The Nature of Order” which investigates 15 properties that give rise to the patterns he described earlier, leading to “wholeness”. A short overview relating these to mathematics is given here.

A design pattern describes a good solution to a single problem that is part of a larger design context. The collection of design patterns and their hierarchical relationship to each other forms the pattern language.


The pattern language being developed here is intended to cover the domain of furnishings found in buildings such as: lamps, clocks, furniture, shelving, and room dividers. These are objects that span between architectural and decor elements, things that are on a human scale. Thus, this pattern language is not for designing houses or jewelry (which are at scales above and below the intended domain).

Some of Alexander’s architectural design patterns are supported by this pattern language; these occur at the low end of his hierarchy and are summarized here.

Objects at this scale can add tremendous personal value to a space. They are also at a scale that encompasses the work of many individual Makers.