November 03, 2024
A Pattern Language for Pattern Languages
Many people I respect are big fans of Christopher Alexander's "A Pattern Language" (online PDF copy). I've leafed through it myself and had added it to my to read pile from an urbanism/architecture perspective.
I was also interested in the format itself. A book of patterns rather than rules feels like a much better way to approach group endeavours. In particular it felt like a good way into writing a "handbook" for DoES Liverpool—here are the ways we've found to organise the work and running of the space; they're not set in stone, but some of the panelling on Chesterton's fence here was put there for a reason, and you'll need to explain how your proposed change takes that into account.
However, I wasn't sure what a pattern language looks like in practice. I wondered if there was a pattern language for writing pattern languages, but hadn't come across one.
I figured I'd just have to get round to reading "A Pattern Language" in order to have at least one example from which I could extrapolate.
Finally started doing that today, just to find that the first nine pages of that are an explanation of pattern languages and how to lay them out:
The elements of this language are entities called patterns. Each pattern describes a problem which 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.Posted by Adrian at November 3, 2024 01:26 PM | TrackBackFor convenience and clarity, each pattern has the same format. First, there is a picture, which shows an archetypal example of that pattern. Second, after the picture, each pattern has an introductory paragraph, which sets the context for the pattern, by explaining how it helps to complete certain larger patterns. Then there are three diamonds to mark the beginning of the problem. After the diamonds there is a headline, in bold type. This headline gives the essence of the problem in one or two sentences. After the headline comes the body of the problem. This is the longest section. It describes the empirical background of the pattern, the evidence for its validity, the range of different ways the pattern can be manifested in a building, and so on. Then, again in bold type, like the headline, is the solution—the heart of the pattern—which describes the field of physical and social relationships which are required to solve the stated problem, in the stated context. This solution is always stated in the form of an instruction—so that you know exactly what you need to do, to build the pattern. Then, after the solution, there is a diagram, which shows the solution in the form of a diagram, with labels to indicate its main components.
After the diagram, another three diamonds, to show that the main body of the pattern is finished. And finally, after the diamonds there is a paragraph which ties the pattern to all those smaller patterns in the language, which are needed to complete this pattern, to embellish it, to fill it out.
There are two essential purposes behind this format. First, to present each pattern connected to other patterns, so that you grasp the collection of all 253 patterns as a whole, as a language, within which you can create an infinite variety of combinations. Second, to present the problem and solution of each pattern in such a way that you can judge it for yourself, and modify it, without losing the essence that is central to it.
Let us next understand the nature of the connection between patterns.
The patterns are ordered, beginning with the very largest, for regions and towns, then working down through neighborhoods, clusters of buildings, buildings, rooms and alcoves, ending finally with details of construction.
This order, which is presented as a straight linear sequence, is essential to the way the language works. It is presented, and explained more fully, in the next section. What is most important about this sequence, is that it is based on the connections between the patterns. Each pattern is connected to certain "larger" patterns which come above it in the language; and to certain "smaller" patterns which come below it in the language. The pattern helps to complete those larger patterns which are "above" it, and is itself completed by those smaller patterns which are "below" it.
[...]
You see then that the patterns are very much alive and evolving. In fact, if you like, each pattern may be looked upon as a hypothesis like one of the hypotheses of science. In this sense, each pattern represents our current best guess as to what arrangement of the physical environment will work to solve the problem presented. [...] But of course, no matter what [our indication of our certainty in each hypothesis] say, the patterns are still hypotheses, all 253 of them—and are therefore all tentative, all free to evolve under the impact of new experience and observation.
This blog post is on the personal blog of Adrian McEwen. If you want to explore the site a bit further, it might be worth having a look at the most recent entries or look through the archives or categories over on the left.
If you want to hire my company to help you with the Internet of Things then get in touch. If you want to learn more about the Internet of Things, then buy my book Designing the Internet of Things (amazon.co.uk amazon.com).