Skip to content

The Runrig Plan

A socio-ecological methodology of software development

The Runrig Plan is a design methodology for communal software projects. It emphasizes ecology and social relations rather than any particular technology stack or software architecture. It was conceived specifically with food systems and agricultural software in mind, but there's no reason it must be restricted to that domain.

For now, the best overview is still the original draft proposal. The initial goal was to adapt and expand that proposal into several "appendices" each covering a broad subject matter, but that framework was poorly suited to the material. In its place, the Runrig Journal will offer more organic, piecemeal illustrations of Runrig's key components, which will then be outlined here and organized by topic, with links to relevant articles that go into more detail. Hopefully that will yield quicker entry points into the practical aspects of the plan, while also giving a clearer birdseye view of the project in its totality.

As much as possible, the Runrig Plan is intended to be an iterative, living document that incorporates an ever growing range of perspectives. So if you have any questions, comments, or you'd like to contribute, please don't hesitate to email Jamie.

Why a New Methodology?

Generally speaking, the purpose of establishing the Runrig Plan as a distinct methodology can be seen as threefold:

  1. The Runrig Plan will form a general critique of conventional software development methodologies – e.g., the Agile or Lean paradigms – and how they come freighted with the implicit biases of proprietary technology and capitalistic modes of production. Those biases are borne out in concepts like scalability, Software-as-a-Service (SaaS, a.k.a., "the cloud"), and even object-oriented programming (OOP), which in turn come with deeply embedded assumptions about infinite growth, enclosure, and a dualistic view of humanity's relationship to nature, respectively. The Runrig Plan aspires to create a new set of design primitives and computing metaphors that will actively combat those anti-patterns in order to redistribute control over our shared technological inheritance more equitably.

  2. In a similar respect, it will look at the ways free & open source software (FOSS) can transcend the limited scope of individual liberties to explicitly socialize the project for software freedom. This includes radical participatory design and can go so far as to blur the lines between the traditional realms of "user experience" (UX) and "developer experience" (DX). It requires leveraging the community's total knowledge and combined skills without privileging one form of expertise over another. Our collective expertise can be so much more powerful when it is based on mutual trust and a shared understanding. By designing for (and with) the shared capabilities of the entire community, design decisions become better contextualized, information systems become more deeply integrated, and the tools that we all use become more accessible to more people – in other words, they become convivial tools.

  3. Finally, through analysis of Runrig's ongoing work and emerging project proposals, the plan will address what concrete strategies have worked, which ones have not, and how to adapt those lessons to serve a broader community of farmers, food workers, and technologists. This will be in conjunction with – and mostly synthesized from – the Runrig Journal, an ongoing series of blog posts, case studies, tutorials, etc. A key tenet of Runrig since its inception has been to prioritize ecology over architecture. Runrig, as a design methodology, should be understood as a social technology, first and foremost; whatever digital architectures subsequently emerge from that social matrix must then conform to those principles. Accordingly, we cannot approach the design of our digital tools from a purely theoretical standpoint of mechanistic determinism, but must root our theory in an iterative praxis and organic spontaneity.

To wrap up and expand on that last point, I'll paraphrase the closing section of Runrig's original proposal...

Continuous experimentation and free play, jeu libre, when practiced throughout the lifecycle of a project like Runrig, can have tremendous potential that cannot be overstated. The evolution of a software system is only one factor in the evolution of the broader social and natural systems in which it is embedded. Experiments may succeed, or they may fail; ad hoc measures may eventually find wider adoption as a general solution, or they'll only ever serve a tiny niche of user scenarios; freely sharing some bit of knowledge or a particular technique may be recognized and reciprocated, or that datum will merely fade into the background hum of information and culture. Regardless, each one of these outcomes will be metabolized within an open system of communal stewardship. The small lessons and incremental progress each one marks will be contributed back to the whole, always in one form or another, so that it continues to nurture and expand the commons.

Original Documents

The original plan and its appendices have been archived for reference:

Some material from "Ecology" and "Architecture" will incorporated into newer articles, such as Illegible Agriculture. The archived documents will eventually be superseded by those updated versions, but the original content will be preserved and the links should remain stable.