You are viewing archived messages.
Go here to search the history.

David Alan Hjelle 2025-12-11 20:06:39

I was looking at Christopher Alexander's The Timeless Way of Building — and, while I could spend some time with it and figure out how his ideas apply to software, I thought someone has probably already done that. Does anyone have links they'd recommend?

(Not sure what I'm specifically looking for, though 1) ways to express the differences between good and bad design on a team and 2) examples of software "pattern languages" that are at a similarly high-level as his architecture language sound particularly interesting.)

brett g porter 2025-12-11 20:20:36

Start with Alexander himself? Here's his speech to the 1996 OOPSLA convention: patternlanguage.com/archive/ieee.html

David Alan Hjelle 2025-12-11 20:22:06

Oh, cool! Thank you!

Kartik Agaram 2025-12-11 20:33:02

I've thought about this a whole bunch, and tend to be quite ambivalent about how much it applies to software in any direct way. Design patterns, for example, clearly seem a net negative.

Alexander is still extremely useful as a philosophy. Particularly Nature of Order .

David Alan Hjelle 2025-12-11 20:36:00

Design patterns, for example, clearly seem a net negative.

I haven't studied design patterns, but my initial instinct would be that they are more like the modularity he eschews rather than actually like the pattern language he's proposing?

I've thought about this a whole bunch, and tend to be quite ambivalent about how much it applies to software in any direct way.

Fair — having just barely thought about it, I appreciate the thoughts!!

Scott 2025-12-11 21:11:55

You may also want to check out Richard Gabriel's Patterns of Software: amazon.com/Patterns-Software-Tales-Community/dp/0195121236 for a more direct exploration of how Alexander's philosophy applies to software

David Alan Hjelle 2025-12-11 21:13:06

Thank you!

Tony Cheal 2025-12-11 21:40:39

Stefan Lesser is an expert here, I believe. Eg stefanlesser.substack.com/p/video-and-transcript-of-my-presentation gives mention of Alexander.

📝 Video and transcript of my presentation at SPLASH Onward! 2024

Conference presentation of my essay “A New Cognitive Perspective on Simplicity in System and Product Design” at SPLASH Pasadena 2024.

David Alan Hjelle 2025-12-11 21:50:17

Cool — thank you!

Kartik Agaram 2025-12-11 21:57:00

Yes, Patterns of Software was my gateway drug into all this.

Stefan Lesser 2025-12-11 22:19:15

Oh, thanks for tagging me, @Tony Cheal!

I spent a lot of time studying Alexander and still can't quite say I know how it all applies to software, but it's important to know that software Design Patterns as popularized by the Gang of Four while inspired by Alexander’s work ultimately doubled down on the wrong aspects (reusability). That was never what Alexander intended. That doesn't take away from the significance of their work, just means they got inspired but went somewhere else with that momentum.

Alexander was more about the generative nature of (ambiguous human) language that allows people to only specify to a degree needed and leave details open for adaptation to a specific context. It's hardly possible to convey in a single paragraph what that exactly means.

A good introduction to Alexander is this one from Ryan Singer: ryansinger.co/christopher-alexander-a-primer

Patterns of Software (as mentioned by Kartik Agaram) by Richard P. Gabriel is probably the best attempt to draw connections between software and Alexander’s work. RPG is also who talked me into writing a paper about Simplicity, which is what the linked presentation above is about.

David Alan Hjelle 2025-12-11 23:03:48

Fantastic — thank you so much!

Daniel Buckmaster 2025-12-12 01:24:24

This came up just yesterday on the orange site, here's what I had to say (⚠)

news.ycombinator.com/item?id=46228566

I need to write this up as a little blog post I think.

David Alan Hjelle 2025-12-12 02:42:27

Thank you!

Paul Tarvydas 2025-12-12 10:36:47

The "problem" with Alexander is that he doesn't state a very basic assumption - that the basic units of composition that he talks about are completely isolated and independent from one another, just like biological systems. Software units are exactly the opposite - tightly coupled gears that must mesh precisely.

Matt Curtis 2025-12-12 13:51:36

Dorian Taylor has written a series exploring the application of Christopher Alexander’s work in software that I've been eyeing for a while now that you might find interesting!

📝 The Nature of Software

The Nature of Software is a serialized essay, an attempt to reconcile Christopher Alexander's 2,500-page magnum opus, The Nature of Order with the craft of software development. Written by Dorian Taylor.

Scott 2025-12-12 14:01:47

Hm Paul Tarvydas that's kind of the opposite what I get out of Alexander and how he applies to software for me 😂 - that we think of these units in the built environment as disconnected but it turns that they're much more interconnected than we think (creating “centers” and “wholes”) and the implications of that and what he sees in his field applies to us in software as well.

David Alan Hjelle 2025-12-12 17:24:13

Thanks again, everyone! Now I have plenty to read and cogitate on. 😄

brett g porter 2025-12-12 22:04:43

Does Taylor's series result in HTTP 500 errors for anyone but me?

Kartik Agaram 2025-12-13 00:06:10

Perhaps your web app is trying to sum too many of the terms?

Sorry! It seems to work for me.. 🙂

brett g porter 2025-12-13 02:14:56

trying to sum too many of the terms

I asked for that...

Scott 2025-12-12 14:01:47

Hm Paul Tarvydas that's kind of the opposite what I get out of Alexander and how he applies to software for me 😂 - that we think of these units in the built environment as disconnected but it turns that they're much more interconnected than we think (creating “centers” and “wholes”) and the implications of that and what he sees in his field applies to us in software as well.