Essays

Writing

Short pieces on systems design and civic simulation.

Nature-centered ethics

Who is in the room when a decision gets made about a river? The farmers, the city, the utility, sometimes a lawyer for the tribe. Not the salmon. Not the cottonwoods on the bank, not the aquifer, not the people who will be born after the aquifer is gone. Every civic process has this shape. The parties with the most at stake are the ones with no channel into the process.

Nature-centered ethics starts from that gap. Value belongs to all living entities, not only to people. The measure we use is diversity: does a choice widen the range of what can live here, or narrow it? Diversity is not a sentiment. It is the capacity of a system to adapt when conditions change, and conditions are changing. Given a choice between maximizing the happiness of one group of persons and maximizing the resilience of the larger ecosystem they live inside, we choose the ecosystem, because the group lives or dies with it.

That choice has consequences for how we work. The first job in any project is to find the stakeholders, and to keep looking, because the ones we miss are by definition the ones we cannot see from where we stand. Non-human stakeholders count as stakeholders; we share a heritage with them older than any of us, and a watershed or a species needs some representation in a model that will be used to decide its fate. And we prefer systems that behave like a wilderness, resilient to the loss of any one part, over gardens that need a gardener.

Simulation is one way to give the absent a voice. A model can carry the salmon into the room, not as a slogan but as a run count that responds when someone moves the pumping lever. That is a thin kind of voice. It is thinner still if the people who built the model decided what the salmon wants. So the ethic also asks for humility about what we model, and for the right of some things and some people to stay unmodeled.

We hold to this because the alternative is to keep deciding for a world of which we see only the human slice, and to keep being surprised by the rest.

Dreaming at scale

Our built landscape is the intersection of many people's dreams. Each of the buildings we see around us, the plots of land, the gardens, the trees: each thing was at one point just an idea. They are scaffolded by natural physics and by our aesthetics, rules, policies, guidelines, expectations. Together these form invisible networks, a fabric that connects people and other entities in the neighborhoods around you. As systems designers we are expected to understand this fabric and extend it.

Developing a systems perspective for describing and extending real-world systems is hard. We are trained and rewarded for deep domain expertise, even when the challenges in front of us are multidisciplinary and difficult to understand, let alone model. We are trained to be direct, whereas systems have subtle, slow and emergent effects that take a long time to show. Our directness is often at odds with the world, and the side effects of our collective actions often dominate the intended consequences. The models we do build have their own inertia. When we meet something novel, a platypus, it bursts the previous frame.

Software tools can help us find new ways to work together, to see issues more clearly, to predict outcomes, and to give ourselves time to study each issue on its own terms. At scale the touch should be light: systems that are alive, with their own will, reactive, horizontally scalable, rhizomatic and distributed. An ecosystem, or a wilderness, rather than a garden.

The iterative loop

One tool a systems thinker has is iteration over time. The work divides roughly into three phases.

Discover is the phase of understanding the domain and its stakeholders. Identifying stakeholders is harder than it sounds, since by definition we have trouble seeing outside our own perspective, and the set changes from iteration to iteration. Game designers decompose their work into an inscribed layer, where the designer acts directly; an emergent layer, the effects that arise from interactions of simple pieces; and a cultural layer, the effects outside the game. The space we want to act on is emergent, one degree removed from direct control, so the elements we create should leave maximum room for complexity to emerge from their interaction rather than being hard-coded. We decompose a system into entities with state and behavior over time, remembering that the world itself is a seamless whole. With an entity-component pattern the decomposition is by cross-cutting capability rather than by object.

Develop is the phase of building toy models of complex systems. Coordinating many contributors is difficult, and the architecture is designed to decouple them from one another: an entity signals broadly that it is in a certain state or has a certain need, and other observers respond, updating it, rendering it, handling situations, without either side naming the other.

Distribute should happen early and often. In this phase the model is validated against outside stakeholders, against the real world, and against our own expectations. Just as importantly, it is where stakeholders are empowered and new ones recruited. Organizations should avoid driving power to the center, because concentration dissociates a project from its real stakeholders. A measure of success is when new stakeholders can take equity positions.

Reviewed 2026-09-21