Go to content

Rewriting a legacy application in Elixir - Raphael Costa - ElixirConf Eu 2018

My company had a legacy application to deal with (around 100,000 LOC), and it was starting to take it’s toll on the team. Lack of consistency through the codebase, code that is hard to understand, constant rewrites because new code seemed to become legacy in a matter of weeks. It was like the application was fighting us. Then, at about 2.5 years ago, an affair with Elixir to solve an unusual problem we had quickly became a full blown rewrite, and we couldn’t be happier with our code quality today (28,000 LOC in Elixir and counting), even though the migration isn’t complete. But as much as the language and ecosystem helped us out, it wasn’t so simple. The fact that the team performing the migration had only one person (myself) at times didn’t help either. In this talk, I want to highlight the things that did and didn’t work out in the migration, how the language’s ecosystem helped us out and what we have been doing today to avoid writing legacy (or soon-to-be legacy) code. More details on website here: http://www.elixirconf.eu/elixirconfeu2018/raphae-costa

April 16, 2018