Christopher Alexander - Patterns in Architecture
Peter Petrash4 HN recommenders · 2016–2026
135K views · talk · evergreen · Uploaded 2013-09-09
Christopher Alexander's keynote at OOPSLA 1996 on patterns in architecture, addressed to the software community. He moves beyond patterns toward deeper ideas of wholeness and living structure.
HN cites it as the primary source for the claim that Alexander deprecated patterns, and as a prescient talk for programmers.
1:25:348 Bit & '8 Bitish' Graphics-Outside the Box
GDC Festival of Gaming
38:47RailsConf 2014 - All the Little Things by Sandi Metz
Confreaks
1:01:39"Simple Made Easy" - Rich Hickey (2011)
Strange Loop Conference
25:06"Making Impossible States Impossible" by Richard Feldman
elm-conf
1:00:19How To Design A Good API and Why it Matters
Google TechTalks
31:44The Value of Values with Rich Hickey
InfoQ
1:04:04Overwatch Gameplay Architecture and Netcode
GDC Festival of Gaming
1:02:26Solving Problems the Clojure Way - Rafal Dittwald
Clojure/north
13 comments from Hacker News
I've seen similarities between your work (OOP) and that of Christopher Alexander (Patterns). Do you have anything to say about how your/his works tie together? (Note that Alexander's work is perhaps even more misrepresented in software than OOP has come to be). For example, he talks a lot about how anything that is to evolve naturally, or even properly serve the human component, must be composed of living structure. video of C.A. addressing the software community's (mis-)application of his work at OOPSLA: [VIDEO]
...and if you're brave enough, think about how Christopher Alexander's philosophy of "unfolding wholeness" applies so much more to an AST than to the stack-machines of the 1960's: [VIDEO]
Just finished watching a great 1996 lecture by Christopher Alexander: [VIDEO] I recommend it for those who have read his work, but never seen or heard the man in action.
For anyone interested, Christopher Alexander was a huge influence on Ward Cunningham and Kent Beck. You can draw a fairly straight line from Alexander's ideas to new stuff like wiki, Extreme Programming, design patterns, refactoring, etc. For a very prescient talk by Alexander in 1996 to a bunch of ACM folks, see this video: [VIDEO]
this talk that christopher alexander did a number of years ago is quite interesting [VIDEO] one of the interesting things is that he had really moved on from "patterns" and was looking for something more intrinisic or "atomic" about design. Which actually is a much better guide to designing software.
I recently rewatched his address to OOPSLA[0] and it was funny to see him trying to avoid coming straight out and saying "you guys completely misunderstood the point of my work!" He tried to allow for the possibility that he was just misunderstanding, but it was pretty obvious that he knew that the Gang of Four style patterns movement took the surface level organization from his work and completely ignored the moral and ethical point of it all. Glad to see he didn't leave off with that! We could do with more software people studying his actual work, which was building humane, living spaces that make people whole. [0] [VIDEO]
Is it possible to sympathize and agree with everything he says, and yet find the writing insufferably pompous? Because that's where I'm at with The Timeless Way of Building. I didn't get that in watching him: [VIDEO] I was picturing someone like Dan Akroyd on SNL as Leonard Pinth Garnell and "Bad Ballet."
To quote Dorian Taylor[no affiliation, albeit we do follow each other on Twitter & BlueSky] from [LINK] : "Chances are if you're in software or digital design, you've heard of the book A Pattern Language, well, you may not be aware that Christopher Alexander effectively renounced patterns in 1996 ( [VIDEO] ). He said he had something better… The problem is, that better something happens to be four books and 2500 pages, and weigh 12 pounds. And, it's about buildings, not software. So my service to you is interpreting the text for software, and cutting the reading down by an order of magnitude." That "something better" being Christopher Alexander's Opus Magnum, "The Nature of Order". Dorian's working on this under the name "The Nature of Software" here: [LINK] And here: [LINK]
If you're going to read the whole Alexander corpus (which I did minus the two hardest-to-find volumes—the Linz Café and the one about carpets), be prepared for it to take on the order of years. While there is for sure a lot of repetition, the insights are frustratingly smeared across the entire thing. Moreover, there is a clear arc to Alexander's career that goes a little like: • Mathematical era (PhD/Notes on the Synthesis of Form, A City is not a Tree) • Pattern era (Timeless Way, APL, and about four case studies) • 15 properties era (Nature of Order) As one might expect, a lot of the earlier work is recapitulated in the later work, but the fact that he explicitly deprecated patterns at his OOPSLA 1996 keynote ( [VIDEO] ) is important. People are aware of APL because of Gang of Four and Richard Gabriel etc but not so much that lecture. As for the fifteen properties in Nature of Order, they mainly concern Euclidean geometry and the ordinary physics one would associate with constructing actual buildings. The evidence that they would need to be adapted to a more generic semiotic-topological domain such as software is the fact that Alexander himself saw fit to draw up (in Book 4) eleven analogous properties pertaining exclusively to colour (a 1:1 correspondence except for four which coalesce two of the geometric properties each). Concepts like "life", "wholeness", "center", "the fundamental differentiating process" etc. can be used unchanged.
He literally says (at 39:48 [VIDEO] ) "And it's because [the patterns are] only really fragmentary perceptions of this deeper structure that I'm describing [i.e., centers, the 15 properties…], that they are ultimately unsatisfactory; I think they're not capable of delivering the goods." So maybe not an outright renunciation per se, but definitely a deprecation.
A video of this speech, without Jim Coplien's introduction, is on youtube: [VIDEO] >> Please forgive me, I'm going to be very direct and blunt for a horrible second. It could be thought that the technical way in which you currently look at programming is almost as if you were willing to be "guns for hire." In other words, you are the technicians. You know how to make the programs work. "Tell us what to do daddy, and we'll do it." That is the worm in the apple. >> What I am proposing here is something a little bit different from that. It is a view of programming as the natural genetic infrastructure of a living world which you/we are capable of creating, managing, making available, and which could then have the result that a living structure in our towns, houses, work places, cities, becomes an attainable thing. That would be remarkable. It would turn the world around, and make living structure the norm once again, throughout society, and make the world worth living in again.
Christopher discusses this problem in architecture too. [~45 minutes in]( [VIDEO] ) he talks about how to change law, institutional norms, and so on to make it possible for living structures to emerge. I don't know what that would look like for software but in another talk he was bemused by the narrow-mindedness of programmers who only saw the value of A Pattern Language as a mechanical tool rather than as a way to create a more beautiful world.
worth checking this out from 1996 [VIDEO] kind of ironic he was moving away from patterns to more fundamental concepts just as the software world was just discovering patterns. I think his shift to these more fundamental concepts is a much better way to think about design.