This site runs best with JavaScript enabled.

Pattern Languages


Seedling
🌱
Last tended Jun 03, 2020
Design

A Pattern Language is a set of flexible, reusable solutions to common design problems.

These patterns evolve naturally within systems, and are found rather than crafted. Identifying and recognising these patterns gives us a framework to craft solutions with.

There is no one way to implement a design pattern – they are purposefully abstract enough that you can apply them to the situation at hand. They're guiding principles instead of formulaic instructions.

Christopher Alexander developed the idea of Pattern Languages in their 1977 book.

book cover

A Pattern Language

Christopher Alexander

The book outlined a number of solutions for architecture and urban planning design, but the theory has since (appropriately) taken on a life of its own.

The programming community picked up on on Christopher Alexander's ideas in the late 1980's.

Despite the original book being primarily about public transportation tempos and cafe sidewalk strategies, the notion of design patterns heavily influenced the development of

languages like Smalltalk and C++.

In a charming presentation at the 1996 OOPSLA conference (Object-Oriented Programs, Systems, Languages and Applications, obviously), Alexander openly admits "I'm address a room full of people and I don't know hardly anything about what all of you do".

Some computer scientist called me and said they had a group of people in Silicon Valley willing to pay $3,000 to have dinner with me... and I thought "What the hell is this?"

, an engineer at IBM, was one of the ring leaders actively building these bridges between software and built landscapes.

Linked References

A Naive Exploration of Computer-Supported Collaborative Learning

Stian Håklev , a fellow Roam Gardener and twitter friend, clued me in to the field of Computer-Supported Collaborative Learning . Stian is a fascinating thinker, and I'd recommend this podcast…

A Brief History & Ethos of the Digital Garden

Back in April of 2020 I put up a long twitter thread on the emerging trend of Digital Gardening . It gathered a little buzz, and made clear we're in a moment where there is something culturally…

The Knowledge Hydrant

I've been looking into both Pattern Languages and Computer-Supported Collaborative Learning over the past month. The Knowledge Hydrant is where these two meet in a lovely swirl of collaborative…

Making Programming Visual, Graphical, and Learnable

Every language from FORTRAN to Python to Haskell works this way. It's then unsurprising every major IDE IDE stands for intergrated development environment. Essentially a souped up text editor with…

Silent Synchronous Reading Sessions

There's an established concept called Silent Meetings . Much like it sounds, it's a meeting where for the most part no one talks. Rather than one PowerPoint dictator lecturing to a room full of…

The Pattern Language of Project Xanadu

When it comes to visionary, before-its-time software, it's hard to find a better archetype than Ted Nelson's Project Xanadu . It's infamous in the technology community as a sixty-year project that…

Want to share?

Join the newsletter

For weekly notes on visual thinking, ethical technology, and cultural anthropology.

Maggie Appleton © 2022