Skip to content

Case study · Application modernisation

Modernising a Rails 2/Merb application to Rails 7.1 without a full rewrite

A staged modernisation across framework, runtime, data layer and infrastructure designed to reduce technical risk while preserving valuable business behaviour.

Engagement
Founder experience
Framework
Rails 2/Merb → Rails 7.1
Runtime
Ruby 1.9 → Ruby 3.3
Data layer
DataMapper → ActiveRecord

The problem

Legacy software can become difficult to change long before it stops working. The challenge is to remove obsolete dependencies and infrastructure without throwing away years of business logic or introducing unnecessary migration risk.

Work completed

  • Rails 2/Merb to Rails 7.1.
  • Ruby 1.9 to Ruby 3.3.
  • DataMapper to ActiveRecord.
  • Ubuntu 10 to Ubuntu 22.04.
Rewrite is not the default. The business logic was an asset. The route that kept it was staged modernisation.

Outcome

The programme de-risked an ageing software estate, cleared major technical debt and restored a current foundation for continued delivery.

Have an important software problem?

Tell us what you are trying to build, improve or untangle. You will speak directly with a senior engineer — no sales handoff.

Discuss a project