jargon

Comparison

Lift and shiftvsRewrite

Lift and shift

the servers moved to the cloud unchanged, and the bill went up while nothing got faster.

Moving a system to new infrastructure with as few changes as possible. It is a legitimate first step — it buys a deadline, retires a data centre, and defers the redesign — as long as everyone understands that no architectural problem has been solved. It becomes a mistake when the second phase is assumed rather than funded, because the migrated system now costs more and behaves the same.

Full entry →

Rewrite

you decided to start again, and the old system kept receiving feature requests the whole time.

Replacing a system with a new implementation rather than evolving the existing one. It is occasionally correct — when the platform is unsupported, the model is fundamentally wrong, or the thing is small — and it is usually chosen for the wrong reason, which is that reading the old code is unpleasant. The costs that get missed are the undocumented behaviour the old system accumulated and the feature freeze that never actually holds.

Full entry →

Related comparisons