Perspectives

Where the continuous production migration Analogy Breaks

Software migrations are intentional and judged against chosen goals. Evolution has no roadmap, product owner or universal optimization metric; history constrains which changes are…

Calling evolution a continuous production migration is useful for about five minutes. The comparison can expose structure that ordinary language hides. The problem begins when the comparison stops behaving like a tool and starts behaving like a claim about what the thing literally is.

One useful engineering analogy is a production system that can never be globally shut down for a clean rewrite. Every viable change must pass through a functioning lineage.

What the metaphor gets right

One useful engineering analogy is a production system that can never be globally shut down for a clean rewrite. Every viable change must pass through a functioning lineage.

This is why engineering metaphors are so attractive. They compress a complicated relationship into something we can manipulate mentally. In the best case, the metaphor produces predictions and sharper questions.

What it smuggles in

Software migrations are intentional and judged against chosen goals. Evolution has no roadmap, product owner or universal optimization metric; history constrains which changes are reachable.

Engineering words often carry hidden assumptions: a designer, a specification, modular ownership, explicit goals, a stable machine underneath the program. Those assumptions must be tested rather than inherited.

Return to the physical story

Evolution changes populations across generations through heritable variation, differential reproductive success, drift, migration and other processes. Natural selection has no foresight: variants are filtered in actual environments rather than against a future design document.

Once the mechanism is back in view, the analogy can be kept on a short leash. We can state which relation is genuinely similar and which difference would make the analogy generate a wrong prediction.

My three tests for a metaphor

  1. What mechanism does this comparison help me see?
  2. Which engineering assumption does the natural system not share?
  3. What would I predict incorrectly if I took the comparison literally?

The third test is the most important. An analogy that cannot fail is decoration, not explanation.

Beyond the borrowed language

Darwin's descent with modification unified observations across species, geography and fossils; genetics later supplied mechanisms of inheritance that Darwin did not know.

Evolution replaces essence with history: what something is partly reflects the path by which it arrived.

What happens to our idea of good design when there is no designer and no greenfield rewrite?

A good metaphor should eventually make itself less necessary. It gets us close enough to the real system that we can see where the scaffolding ends.

Reading trail

These links are starting points for the scientific and historical ideas. The systems interpretation, analogies and conclusions here are my own.

Quick navigationEsc