#1. Ignoring Gall's Law
Rebuilds are sometimes necessary when the technology used to build the application has been replaced by a newer technology. I was Scrum Master of a team that was rewriting a B2B web application originally written in AngularJS which was replaced by Angular. For two very good reasons, it was decided to rewrite the application in Angular. First, Angular is a better language, based on TypeScript. Second, over time, it would have been increasingly difficult to find AngularJS developers to support the application.
The rewrite was 100% successful and included some better design elements. Over time, the new application also had 100% coverage of automated tests for what could be automated.
This really spoke to me and my experience. I am looking forward to Part 2!
I enjoyed the insight of this article, but in the end it fell in the trap of actually misquoting that famous quote "Premature optimization is the root if all evil".
That should be used in the context it was intended too. I think we've taught a couple of generations of programmers to just repeat that as a mantra, without doing the due diligence and applying some critical thinking to it.