4 ms·
Do we really need all these articles that urge people to never, ever rewrite anything? (Classic example being Joel's article, which also uses Netscape as an exa
by romaniv 16y ago
Do we really need all these articles that urge people to never, ever rewrite anything? (Classic example being Joel's article, which also uses Netscape as an example: http://www.joelonsoftware.com/articles/fog0000000069.html http://www.joelonsoftware.com/articles/fog0000000069.html .)
Managers and business users hate rewerites as it is. That's part of the reason there is so much horrendous legacy code out there. Often, people who have the authority to make decisions about rewriting something don't interaface with the code, don't understand undetlying issues, don't see what was changed in technological context since the code was written.
In my own experience, most of the rewrites were totally worth it. It wasn't just because the code became better, it was because the understanding of the problem has matured. People were able to understand the problem better, so were were able to write better code to solve it.
- j_baker 16y agoI read it as saying "Spend a little extra time doing things the right way, and maybe you won't have to rewrite your code from scratch."
- Dylanlacey 16y agoI've found the opposite to be true: Managers and Business Users LOVE the re-write, because it's easy to tell themselves the calming little lies. Lies like "We already know what it should do!" and "We don't need to maintain the legacy, your issue will be fixed in the New System" and "There won't need to be any changes to business processes!" I have never seen a re-write done with a greater understanding of the problem. In every case I've observed, the non-developer stakeholders start insisting on features working exactly as before OR start adding new, wonderful features from the get go. It results in a mess that solves NOTHING. The debt metaphor is very apt. You can declare bankruptcy on your technical debt and walk away... But your tech credit history (IE your business systems) are a mess, your creditors (users) start to hate and mistrust you, and starting anything fresh becomes complicated beyond belief. Re-writes suck. They SUUUUUCK. And people persist in doing them. That's why we keep needing these articles.