I mentioned before that a complete rewrite of a complex codebase is not a badge you should wear proudly on your vest ââ¬â quite the opposite. If you need to be convinced, check out what Callum McKenzie reports from experience:
In hindsight the effort would have been better spent on incrementally changing the code-base. There was a lot of code that just didnââ¬â¢t need changing. Even the idea that a complete rewrite will get rid of all the design problems and half-baked patches isnââ¬â¢t correct: I still screwed up several parts of the design and there are still places where I did something because it was easy-to-write, not because it was the best way to do it. [ââ¬Â¦]
The extra time spent levering new code and even new designs into existing code is far less than the time you spend rewriting all the code that still works.
(Be sure to read the entire post ââ¬â the above is quoted a little selectively.)
This is not an ââ¬ÅI told you so.ââ¬Â I applaud him for consciously making this experiment on a medium complexity codebase to make a judgement, since he wasnââ¬â¢t already convinced, and for posting his results as a data point for me and you as well. Thanks, Callum.