Christopher Alexander: a language for what has no name

The software patterns we use every day were born in a book about towns and windows. Christopher Alexander was after a quality that resists being catalogued, and his idea reaches us at once fertile and disfigured.

July 22, 202610 min read
Christopher Alexander: a language for what has no name

Christopher Alexander (1936-2022), an architect and mathematician who sought a theory of design valid for both a town and the sill of a window. His pattern language ended up colonising the software he never wrote. Photo: Michaelmehaffy, CC BY-SA 4.0.

Almost anyone who writes code today uses the word pattern several times a day. A Singleton, an Observer, a Factory: pieces of vocabulary learned early and taken for granted, as if they had always existed. I myself passed more than one technical interview scored by how many of those names I could reel off, whether the problem called for them or not: what was measured was fluency with the catalogue, never judgement. Now that AI reels off the whole catalogue on its own, everyone seems to have suddenly remembered judgement.

Almost no one remembers that the whole repertoire descends from a book that was not about software but about towns, streets, and the exact spot where a seat belongs beside a window. And almost no one knows that its author, near the end of his life, looked at what computing had done with his idea and could not decide whether to feel proud or betrayed.

That author is Christopher Alexander. He is worth returning to, not to claim a curious pedigree, but because his work carries a question we still have not answered: where does the quality of well-made things come from, and why does it slip away the moment we try to systematise it?

Against the planner

Alexander (Vienna, 1936 - California, 2022) came to architecture from mathematics and chemistry, with a doctorate at Harvard that produced his first book, Notes on the Synthesis of Form (1964). He taught almost all his life at Berkeley. He wrote, then, from inside a discipline, but with the eye of someone who had learned to formalise problems before learning to raise walls.

What outraged him was the dominant way of building in the twentieth century: master-plan urbanism, International Style architecture, the city conceived as an object a specialist draws whole on paper and then imposes on the ground. That model, he argued, produces dead environments. Not because architects were bad, but because design had become the monopoly of experts working without a common vocabulary and without the participation of those who would inhabit the result.

His answer was not to propose a better style, but to displace the problem. Quality, he said, is not a property of individual genius: it is a property of the language with which one designs. That is where everything interesting begins.

The pattern as a unit of knowledge

The basic piece of his system is the pattern. Not a template or a recipe, but the description of a recurring problem together with the core of its solution.

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.

A Pattern Language (1977)

The last clause is the one most people forget and the one that changes everything. A pattern is not a component you copy and paste. It is a stable relationship between a problem, a context, and a resolution, one that takes a different shape each time. "Window seat" does not say which wood, which dimensions, which view; it says that people gravitate toward light when they sit, and that one should design for that gravitation. What is invariant is the tension being resolved, not the form that resolves it.

It is exactly the distinction software took decades to learn and still confuses. A design pattern is not a library or a framework: it is a way of thinking about a recurring problem. When we treat it as code to paste, we kill it.

A language, not a catalogue

Alexander's leap was not to gather solutions, but to discover that they connect. His 253 patterns —from the scale of regions down to a door handle— form a network: invoking one activates the adjacent ones. A language, not a list, because a finite vocabulary generates infinite, coherent combinations, just as a few grammatical rules produce a conversation no one has ever had before.

That word, language, carries all his political ambition. If design is a language, then it can be shared, and if it can be shared, it stops being the specialist's monopoly. Alexander wanted to give ordinary people back the ability to shape their own surroundings: to let a neighbour take part in how their street is built with the same legitimacy as the architect, because both would speak the same idiom of problems and solutions.

It is an intuition that resonates with another tradition I have written about here, that of the cathedral and the bazaar: the suspicion that the best wholes do not come from a single closed blueprint, but from many hands contributing small pieces while speaking a common vocabulary. It is no accident that it was precisely the free-software community that embraced Alexander. Ward Cunningham invented the wiki —the first web page anyone could edit— for the explicit purpose of hosting a pattern language. The tool that made Wikipedia possible was born to catalogue recurring programming problems in the manner of an architect.

Growth by pieces

From there follows an idea about time. A living town is never finished: it grows by pieces, corrects, adds, repairs itself. Alexander called it piecemeal growth, and set it against the master plan that decides everything in advance and admits no amendment. Order is not imposed from outside; it emerges from within, decision by decision, as long as each decision respects the whole.

He did not stop at theory. In The Oregon Experiment (1975) he took these ideas to a real case: the plan for the University of Oregon, designed not by an outside firm but by its own community —students, faculty, staff— using a shared pattern language, building little by little and repairing along the way instead of executing a closed blueprint. The campus as bazaar, not as cathedral.

It is hard not to hear here, forty years early, much of what we would later call iterative development. Anyone leading digital product lives by this: the product is not designed whole and delivered finished, but discovered by building it. It is, at bottom, the same tension between rigidity and flexibility that appears when one asks where digital product organisations really belong, heirs at once to the industrial blueprint and to the bazaar that contradicts it.

The quality without a name

And yet, beneath the patterns, the language, and the growth, Alexander was after something he himself admitted was unsayable. He called it, with an honesty verging on the mystical, the quality without a name.

There is a central quality which is the root criterion of life and spirit in a man, a town, a building, or a wilderness. This quality is objective and precise, but it cannot be named.

The Timeless Way of Building (1979)

Objective and precise, yet unnameable. There lies the whole tension of his work, and perhaps the whole tension of our craft. Alexander spent his life building a method —a language, a catalogue, a system— to produce something his own method could not fully capture. The patterns were scaffolds toward a quality that exceeded them.

Anyone who makes product recognises that nameless quality. It is the difference between a feature that meets the specification and another that, meeting it just as well, is alive: it feels right, it fits, it breathes. No metric measures it, no ticket describes it. And because software again and again dissolves our aspiration to full control over the result, that quality slips away just when we most believe we have it mastered. Alexander named the problem long before we had screens: one can systematise the road to quality, but not quality itself.

Where it falls short

It would be easy to turn Alexander into an oracle, and he would be the first to distrust it. His idea has cracks that matter.

The first is fundamental. A pattern language assumes problems recur stably enough to be codified. That holds for a window seat, which answers to a human body that barely changes over millennia. But in digital product the problem space itself moves while we work on it: what was a solid pattern yesterday is debt today. Patterns describe responses that worked in the past; they say little when the question itself is changing, which is the normal condition of the digital. Alexander conceded this in his own way in his late work, The Nature of Order, where the pattern language proved too small for him.

The second is an internal contradiction. The book promises to democratise design, yet the 253 patterns were chosen by Alexander and his collaborators. The "shared" language was authored top-down and then handed to communities as if it had emerged from them. Participation is real, but it happens within a vocabulary someone else chose. Anyone who has imposed a design system on an organisation and called it a "common language" knows that discomfort.

The third came from Alexander himself. In 1996 he was invited to give the keynote at the main object-oriented programming conference, before the community that had made him a patron saint. Instead of celebrating, he asked whether software patterns truly made people's lives better, or merely made the code cleaner. He suspected computing had taken the mechanics of his idea and left out its moral soul. He left without the answer.

Why it matters today

Stripped of mysticism, Alexander's lesson for anyone leading product is organisational before it is aesthetic: design quality scales only when the team shares a working vocabulary for the problems that recur. When that vocabulary is missing, quality lives only in the heads of a few people who have monopolised judgment, and that explains a phenomenon we have all seen: the senior designer or engineer who makes good calls one after another and cannot teach anyone to replicate them, because they hold them not as a language but as intuition.

Design systems, component libraries, catalogues of interaction patterns are attempts —often poor ones— to hold that language. Poor because we usually stop at the layer Alexander scorned: the reusable form, the component you paste, rather than the relationship between problem and context that gave it meaning. We take the seat and forget the light.

His idea also challenges a deeply settled habit: separating discovery from construction into successive phases. A pattern encodes both the problem and its solution, the question and the answer as a single thing. That looks far more like how good product leaders actually think than any stage-gate model. The question his book forces on us is uncomfortable and simple: does my organisation have a pattern language, or does quality live only in a few heads?

What still has no name

Let us return to the beginning. Every time a team names a Singleton or an Observer, it is using, without knowing it, the vocabulary of an architect who wanted ordinary people to reclaim their own homes. The idea travelled, became immensely useful, and, along the way, lost part of what animated it. We kept the catalogue and let go of the quality without a name.

Perhaps that loss is not an accident but the very nature of the matter. A language can be shared; the judgment that decides, in each concrete case, when a solution is alive and when it is merely correct cannot. Alexander spent an entire life building the best possible scaffold toward something the scaffold does not reach. That is not a failure: it is, probably, the most honest way to work on what matters. The question he leaves us is not how to catalogue better, but how never to mistake the catalogue for the thing.

2026 © Íñigo Medina