SOFTWAREafterSOFTWARE
Everything is changing.
We are in the midst of a transformation so large that nearly everything we assumed to be true about how software and business work must be rethought.
It will take years to play out.
The end game is not yet apparent.
It is better to try to keep up, instead of sitting it out.
Still underestimated: how fast these models will get better and how good they will be.
Even if you think you're factoring in exponential improvements, you're likely still underestimating. [1]
Models don't have to become perfect to break the old economics of software. They just need to be better than average.
Many of the things we currently do to help the models won't be needed anymore.
Why put training wheels on someone who never wobbles?
Why give a perfect typist a spellchecker?
Quality of output will solely depend on input, not capability of the model.
The need to review code written by agents will fade.
Errors of expression will be gone.
Every eight weeks you should give more leash to these models. Otherwise you'll be stuck on a low point of the curve.
In the future, most code will be written by agents.
The assistant sidebar is dead. Agents will no longer be mere assistants.
Agents will run regardless of whether someone is sitting in front of the computer or not.
They will run for longer and with less supervision than most people think.
An agent forced to work like a human is a wasted agent.
The unit of work becomes the delegated task, not the code to be written.
The bottleneck in software development has moved.
Writing valid code is trivial now.
Errors of engineering (priorities, sequencing, and tradeoffs) remain.
Review will shift from code to decisions.
Software development as we've known it for the last 40 years is dead.
Software, as a profession, is built on the assumption that writing code is hard and error-prone.
Software, as an industry, is built on the assumption that code is scarce.
Both assumptions no longer hold.
The old processes and practices of working with software are no longer apt.
Existing rituals and processes (planning, prioritization, handoffs, reviews) were made in a world in which implementation was slow, costly, error-prone, and human-bound. [2]
In a world of abundant code, these rituals and processes become drag.
Why spend an hour prioritizing what can be done in thirty minutes?
Why consider building a prototype when you can talk one into existence?
Why wait for a review when you can spin up five agents to review in parallel?
Why pick a single idea to try when you can try them all in parallel and dismiss four out of five without hurting a single ego?
AI is not only an accelerator for X. It changes whether X should exist at all.
Software changes form.
Software, so far, was built for human use. In the future, software will be built mainly for agent use. [3]
More software will be built just-in-time than ahead of time. Less pre-built software will be required.
The line between "using software" and "building software" will blur. It might disappear.
Value moves away from code.
Software to do X has no value when an agent can do X.
The value of software as code-someone-else-wrote-for you declines.
Software that encodes workflows becomes less valuable.
Data, permissions, distribution, trust, compliance, regulatory position, and physical assets become more valuable.
Squeezed will be vendors whose moat was "customers cannot justify building this themselves".
The last ones to admit all of this will be software companies. Their business models were built on the old scarcity.
Winners will reorganize around models.
It will not be enough to fit models into existing systems, org charts, and processes.
Agents are wasted when made to work like people.
The winners of this transformation are those who organized around the models.
A small team with strong judgment and many agents will outrun a large team trying to fit AI into processes from before the transformation.
Ability to keep up matters more than headcount.
Every serious institution needs a camp at the frontier.
Large corporations cannot sit this transformation out.
They cannot learn the future through committee.
They need a small autonomous team at the frontier, built around the models.
Its purpose is not to add AI to the old way of working.
Its purpose is to discover the new way of working and pull the corporation toward it.
It must be close enough to touch real systems, real data, real constraints, and real consequences.
Its output is not only software, but also people and practices.
The engineer changes.
The software engineer does not disappear, but changes.
Software engineering shifts away from code and toward product thinking, shaping systems, judging tradeoffs, and business outcomes. [4]
The most valuable engineers will be system thinkers and operators that can increase business value. That is and will remain unchanged.
Therefore.
We build for a world in which intelligence is abundant, continuous, and cheap.
We optimize for learning what that world looks like.
We do not preserve old software processes out of habit.
We do not wait for the end state to become obvious. The best move is to play the game.
We go to the frontier first, because that is where the future is learned.