The infrastructure of Web3 is enabling software to be developed in contexts and at scales not previously viable. Platform cooperatives and decentralized collaborative organizations have the opportunity to create bespoke software solutions for specific community contexts. While these groups may not be in physical proximity, the term "neighborhood scale software" captures the heterogeneous spirit of this creation. The class I created and taught emerged from this thinking, called "Designing Neighborhood Scale Software." this course asked: how do people collaborate in this emergent context? What tools, and design patterns are most useful? What kinds of outcomes can be expected?
This project began as a handful of disparate lines of inquiry. I was following threads in management studies, economics, product development, and commons governance. All these areas of interest merged in the context of web3. As these pieces were coming together, I found myself in conversation with the founders of hyperlink academy. From this context, the syllabus emerged.
🧠 Activities: Meet and greet Prisoner's dilemma Introduce the course project
📖 Readings: Kaplinsky: "The Economies of Small" chapt 2. | Alexander: "The Timeless Way of Building" chapt 14. ✏️ Homework: Building off the readings, document two patterns from your life where technology gives life.
🧠 Activities: what makes a pattern? What makes technology appropriate? What are life giving patterns in life? Where do they intersect with technology?
📖 Readings: Hayek: "The Use of Knowledge in Society" | Oliva "The Road to Servomechanisms" | Ostrom "Governing the Commons" chapt 1. ✏️ Homework: collect patterns related to users interacting with technology.
🧠 Activities: what kinds of language is used in UX? How does this describe the user? How does this intersect with the readings? Who are your users? Are they users or something else?
📖 Readings: Zhang et al. "Policy Kit" | Benet "What Exactly is Web3?" ✏️ Homework find one example of a project that uses, or approaches appropriate use of technology. Determine what patterns it uses.
🧠 Activities: how are Ostrom's ideas brought into the digital space? How do the examples approach the use of technology? What about these patterns works?
📖 Readings Graham & Thrift: "Out of Order" | Mattern "Maintenance and Care" ✏️ Homework: identify a problem you're interested in solving. Attempt to put together some patterns that address this problem.
🧠 Activities: How does maintenance play a role? Do you encounter issues with maintenance in digital spaces? How can maintenance, overtime, create something that is more whole and alive? What is the least powerful approach needed to realize this idea?
📖 Reading Hill "Grid, Non-Grid" | PRFAQ ✏️ Homework Craft a PRFAQ for your idea
🧠 Activities: Share our ideas. Next steps? Feedback Celebration
The result was a six week class held via video chat, combined with slides and activities in figma. Discussing the readings, sharing experiences, and exploring existing tools and software, we began framing ideas using the framework of a pattern language.
The end result was a collection of design patterns growing within the emergent space of neighborhood scale software. I put together a website to serve as an archive for these patterns. Together, the patterns form a first step towards establishing a pattern language for this
While the course has concluded, this line of inquiry continues. I am in the process of using the format of the course as a framework to write a series of essays exploring the performance of decentralized collaborative organizations. With further research, and upon the publication of this writing, I hope to facilitate another cohort of this course.