2 ms·
> Bad programmers write code which lacks conceptual integrity, non-redundancy, hierarchy, and patterns, and so is very difficult to refactor. It’s easier to thr
by vog 16y ago
> Bad programmers write code which lacks conceptual integrity, non-redundancy, hierarchy, and patterns, and so is very difficult to refactor. It’s easier to throw away bad code and start over than to change it.
Note that there's an interesting way in between. That is, refactoring code with the explicit goal of eventually replacing everything. There are several strategies to achieve that.
Those techniques proved to be less expensive and especially less risky than rewriting everything from scratch. They work because although the old code has an ugly design, it still has a property that is worth keeping: It is working and (mostly) debugged code. Undervaluing that property is the root cause of the many failed attempts to rewrite big software systems.