Migration

Migrating from React to Angular: A 'Ship of Theseus' Case Study in Production

Published: January 1, 2026 Reading time: 4 min

In the software world, the “Ship of Theseus” paradox is a daily reality. We replace parts of a system until, eventually, none of the original code remains. But usually, the industry moves toward the “shiny new thing.” At work, we did something that might sound like heresy to some: we migrated our core legacy React applications to Angular. This wasn’t a decision made out of fanboyism. It was a strategic move driven by the need for governance, stability, and long-term maintainability in a high-stakes FinTech environment. I’ll explain the architectural “why” and the pragmatic “how” of moving against the grain. ...

Continue Reading

From Laravel and AngularJS to Spring Boot and Angular: A Full-Stack Migration Field Report

Published: May 22, 2017 Reading time: 10 min

In January I wrote about moving our frontend from AngularJS to Angular. That migration is still running — we are on Angular 4 now, which shipped in March and turned out to be a painless bump from 2.4. The bigger shift landed on the backend: our APIs used to live in Laravel, and we are rewriting them in Java with Spring Boot 1.5.3. This is my first real Java project. I have years of PHP — mostly Laravel — and a few months of TypeScript from the Angular work. I also wrote C# in college, which turns out to matter more than I expected. Java does not feel like learning a foreign language. It feels like meeting someone who speaks a dialect you half understand. ...

Continue Reading

Six Months with Angular 2 After Years of AngularJS

Published: January 18, 2017 Reading time: 10 min

Angular 2.0 shipped in September. We are on 2.4 now, and the release train is already moving — Angular 4 is being talked about openly. I have been building with it since October, migrating a medium-sized internal dashboard that lived in AngularJS for three years. This is not a tutorial and not a verdict. It is a field report from someone who still dreams in $scope sometimes. The context nobody warns you about If you spent years on AngularJS, you did not “upgrade.” You rewrote. Google offers ngUpgrade to run both frameworks side by side, and we tried it for two weeks before giving up. Our app had too many directives, too much implicit magic, and too many $watches buried in places nobody remembered. We picked a greenfield module, scaffolded it with the CLI, and started porting feature by feature. ...

Continue Reading