Skip to content
FED LABS

J-004 / DESIGN / 14 JUL 2026

Designing systems for abundance

Every abstraction in software exists to ration something scarce. When intelligence becomes cheap, the rationing machinery does not disappear — it turns into drag. Notes on designing for the opposite constraint.

Scarcity built the stack

Type systems ration programmer attention. Queues ration throughput. Forms ration data entry. Approval workflows ration judgment. The entire stack of software engineering is a collection of mechanisms for spending one scarce resource — human cognition — as carefully as possible.

This is invisible until you look for it, and then it is everywhere. Why does a pull request exist? Because a human must read it, and human reading time is scarce. Why does documentation exist? Because human comprehension is the bottleneck between a system's state and its future. Scarcity is the load-bearing assumption of the whole discipline.

What abundance dissolves

When the scarce resource becomes abundant, mechanisms built to ration it do not politely retire. They persist as friction: latency, indirection, ceremony. The approval step that protected scarce judgment becomes a delay that protects nothing. The form that rationed data entry becomes an interface obstacle between a system that wants to help and a person who wants to be helped.

Dissolving them is not a technical problem — the code is easy to delete. It is an institutional one. Every rationing mechanism is somebody's job, process, or product. Abundance threatens organizational structure more than it threatens software.

Design principles for the other side

Three principles the lab holds when building for abundance. First, keep the abstractions that ration nothing: databases, protocols, and anything that coordinates independent parties survive unchanged. Second, suspect anything that exists to move work between humans — every handoff, intermediate format, and review stage is a candidate for dissolution. Third, design for audit rather than approval: when a system can act, the human's role shifts from gatekeeping to inspection, and interfaces must be built for that shift.

The wrong response to abundance is to keep the machinery and add intelligence to it. The right one is to ask, for every mechanism, what scarcity it was rationing — and whether that scarcity still exists.