Why do we fall into the rewrite trap?
A reminder that Joel Spolky's essay being cited is about people rewriting <i>ugly</i> code that already works.<p>That nuance is important because successful companies do invest in rewrites when there's an <i>architecture</i> change because it's the cleanest most economical way to do it.  My previous comment of Microsoft examples:  <a href="https://news.ycombinator.com/item?id=19245653" rel="nofollow">https://news.ycombinator.com/item?id=19245653</a><p>Another example is Google rewriting their early web crawlers of Python/Java into C++ to make them more efficiently scalable to thousands of machines.  They also rewrote the frontend web server from C++ to Java.<p>But some rewrites also failed such as Evernote's rewrite to C#/WPF.<p>I think for the topic of "rewrites bad/good", it's better to list a bunch of famous real-world case studies and extract the common criteria that makes rewrites successful.