Traduzido e adaptado de http://blog.8thlight.com/ginny-hendry/2014/07/11/take-pride-in-your-legacy-code.html
Um desenvolvedor se juntando a um projeto, a menos que o projeto esteja iniciando uma aplicação completamente nova, irá trabalhar com o temido "código legado". O processo de se tornar produtivo pode ser um pesadelo. Código legado ganhou sua reputação por geralmente ser mal estruturado, ter grande dificuldade de se trabalhar, não ser documentado, e ser obscuro. Você verá as evidências no código com diferentes estilos de programação dos diversos desenvolvedores que já trabalharam naquela codebase.
Agravando essa realidade está o fato de que o código legado está em produção. Qualquer melhoria que você queira fazer precisa ser incremental pois, por definição, código legado já possui usuários. Os usuários esperam zero downtime, baixo tempo de resposta, e um visual consiste