1. React
  2. ReactiveConf
  3. 2017
  4. Lessons Learned Migrating Complex Software

Lessons Learned Migrating Complex Software

Jack Franklin at ReactiveConf 2017

I've just spent a year migrating an application to React and in this talk I'll share my experiences, good and bad, about how it's gone, both technically and non-technically, and cover all the potential pitfalls of a long running migration project. The application I look after at work is a large ticketing platform that was written using Angular 1 and has not been maintained. With the new release of Angular 2, we made the decision to migrate off Angular and onto React. In this talk I’ll discuss why we did this (without criticising Angular, it has served us well) and how we’re migrating in small chunks. A big rewrite was off the cards; this application is business critical and as such we can’t afford to not be able to fix existing bugs or quickly add features because we’re rewriting. Instead we’ve split the work down into many small pieces that we can tackle one at a time. I’ll go through some code examples and talk not only about the benefits but the negatives too, because it’s not all been plain sailing. We’ll see how React’s approach and characteristics make it very adaptable and we’ll look at how we updated tests as we went to ensure our migrations maintained feature parity. If you’ve got an existing application you’d like to migrate this talk should give you plenty of ideas about doing it in a non destructive way without rewriting and building from scratch.