A Pattern Language - self-contained hypertextual catalog of aesthetics and architecture

This is self-promotion for a hobby project I’ve been working on in bursts for the last few years: A Pattern Language - Christopher Alexander (Architecture)

This project is an abridged, hyper-textual, and copyleft manifestation of the 1977 architecture classic A Pattern Language by Christopher Alexander. It is compiled from markdown into a static website using Quartz

I created it to serve as both an accessible reference for myself and as a way to share the ideas with others.

From the inside cover:

You can use this book to design a house for yourself with your family; you can use it to work with your neighbors to improve your town and neighborhood; you can use it to design an office, or a workshop, or a public building. And you can use it to guide you in the actual process of construction.


I think it will be of interest to many of you here! Enjoy.

8 Likes

Wow, I remember this from college ~35 years ago. Nice work, obviously a labor of love, thanks for sharing it with everyone!

Indeed. I should have made it more obvious, but you can find all the Obsidian-compatible markdown here.

2 Likes

Discussion on Hacker News

I have finished adding all the references and correcting all the remaining errors. It is now “complete”.

I have revised how tags work. For those who think there is a war between “Tags” and “Hierarchy” you should embrace both: tag hierarchies nested under one or more namespaces is the best of both worlds. Using hierarchies actually improves your tagging because it forces you to group, destroy, and rework existing tags to maximize meaning/relevancy. Even hierarchical filesystems achieve this through symlinks, bind-mounts, and chroot environments.

This “vault” is a simple demonstration of that (and only uses a single top-level ‘APL’ namespace) but you can also imagine individual patterns being tagged “status/in-progress/needs-sources” (which adds ‘status’ as a second top-level namespace) or “APL/implementation/virtual/{Cities-Skylines,Subway-Builder,The-Sims}” if you wanted to experiment with the patterns in a video game or “APL/implementation/physical/john-house” if you wanted to filter patterns that would be suitable for a friend’s house. The alternative to tag hierarchies would be having tags like #john-house which is meaningless outside the context of the tags above it.