Your product is alive

No digital product gets finished: it gets maintained. What changes in design and in the organisation once you accept the product is always under construction.

December 2, 2024
Your product is alive

Today, every digital product is a work in progress. And this has changed how we design.

Y. Yamashita — "Welcome to the WIP"

There is an idea we drag along from industry that still organises our work far more than we admit: that things get finished. They are designed, manufactured, delivered and then, with luck, preserved. The vocabulary we use for digital products is full of debris from that world: launch, delivery, final version, scope freeze.

None of it describes what actually happens. A digital product is deployed several times a day, observed in use, corrected, contradicted by itself; it sheds parts that looked essential and grows others nobody anticipated. Its current version is always provisional. What you have in front of you is not a finished object: it is a state.

Designing in the present continuous

That the product is alive is not a poetic observation, it is a change of method. If the object stayed still, it would make sense to spend a great deal of effort getting it right before building, because the cost of being wrong would be enormous and hard to reverse. That is the logic of someone casting a metal part.

When the object does not stay still, the question stops being "is this correct?" and becomes "can we learn something from this soon and without wrecking anything?". It is a different question and it produces different decisions. It favours the small over the complete, the observable over the argued, the reversible over the definitive.

It also changes what an error means. In a world of finished parts, an error is a defect: something that should not have happened and for which someone is accountable. In a living product, an error is information arriving earlier than it would have arrived by other means. It is not something to celebrate, but neither does it make sense to organise the work so that errors never appear, because that organisation costs more than the errors it prevents.

Alive also means mortal

There is an uncomfortable part of the metaphor we tend to forget when we use it as encouragement. What is alive degrades. A digital product left unattended does not stay as it was: it gets worse without anyone touching it. Dependencies age, assumptions about the environment stop holding, flows that worked break because something changed on the far side of an integration.

And there is a quieter form of death. Peter Naur explained it well: programming is theory building. Code is a partial consequence of that theory, not its content. The theory lives in the heads of the people who built the product, and when those people leave, the theory leaves with them. What remains compiles perfectly and yet can no longer be modified with judgement, only with fear. Products nobody understands become archaeological objects that admit only patches.

This is why maintenance is not the residual task that appears once there is nothing interesting left to do. It is the principal form of the work. Stewart Brand wrote about buildings something that holds almost literally for software: the ones that survive are not the best designed, but the ones capable of learning from their inhabitants.

Organisational consequences

Accepting that the product is alive has effects that reach beyond design.

The first is that you have to stop buying products the way you buy projects. A project has scope, a budget and an end, and those three things presuppose that the object stays still. When you manage a product as a project, everything happening after delivery shows up as an annoying surprise: precisely the work that decides whether the product lives or not.

The second is that the continuity of people becomes a strategic matter rather than an HR one. If the theory lives in people's heads, rotating whole teams is equivalent to throwing away the product and keeping its shell.

The third, perhaps the hardest, is that you have to learn to live with something that is never presentable. Nothing you do will be finished on the day you talk about it. That permanent provisionality makes life awkward for organisations that need milestones to give meaning to their own work, and it explains a good deal of the theatre staged around launches.

A living product will never give you the satisfaction of having finished. It gives you something better: the possibility of continuing to correct yourself.

2026 © Íñigo Medina