The Code Agent Crisis
Software engineering has had two crises before. They had the same shape: something became cheap, and the work moved to whatever was still hard. We are in the middle of a third.
What changes, and what does not, when a stochastic program writes most of the code.
5 essays, in reading order
Software engineering has had two crises before. They had the same shape: something became cheap, and the work moved to whatever was still hard. We are in the middle of a third.
An agent is a stochastic function with no memory. Everything you can improve is around it, which is why the durable engineering object is the loop, not the output. The argument from first principles, and the slogan that follows: fix the loop, not the output.
The concrete loop: five activities in a ring, three components the team owns, a persistent model of the engineer at the centre, and the routing rule that decides which layer a failure belongs to.
Autonomous cycles erode the understanding of the person accountable for the system. This essay states the alignment objective, keep the engineer’s mental model tracking the project closely enough to steer it, poses it as four concrete problems, shows the public experimental tools that start to answer each, and names what is still open.
In one recorded day, a proof assistant refused a specification its engineer had approved, and later certified two true theorems about a tool whose hidden words a list of forty guessed words read off in milliseconds. A different station of the loop caught each defect. This essay walks that day, tool by tool, screen by screen, against a public record.
Introducing this blog — why I’m writing about software engineering in the agent era.