3 ms·
> Reducing technical debt by rewriting everything from scratch (almost?) never works. Agreed but this is one of those "almost" exceptions. 1. Is the code buil
by dreamcompiler 6y ago
> Reducing technical debt by rewriting everything from scratch (almost?) never works.
Agreed but this is one of those "almost" exceptions.
1. Is the code built to 40+ year old requirements, many of which are irrelevant today?
2. Is it hard to make it work for today's requirements without widespread fundamental changes?
3. Is the code a huge pile of foo that's damn near impossible to navigate, much less understand, much less debug?
4. Would a hypothetical program that solved today's requirements (with an architecture where the most important backwards compatibility features could be hooked in as needed) be smaller, simpler, and easier to maintain by newcomers?
If the answer to all of the above is "hell yes!", you might want to think about a wholesale rewrite.