by MagicClam on 1/11/12, 12:59 AM with 2 comments
by api on 1/11/12, 1:09 AM
The only exceptions I can think of are:
1) The state of the art has fundamentally changed. In this case you are not actually re-writing the same thing. Rather, you are writing something new that obsoletes the old thing. For example, one might replace a string matching based spam filter with a Bayesian spam filter.
2) The architecture is fundamentally different. For example, you might have to rewrite to port a piece of high performance computing code from MPI to GPGPU, or to make something single threaded aggressively multi-threaded. It might require a whole new approach to the problem.
3) I do believe that there exist code bases that are so fracking gawd-awful that there is nothing to be done with them but take them out behind the barn and shoot them in the head. But these are in the minority, and usually they never worked well or established any kind of "market leading position" to begin with. (If they did, it must not have been a crowded market.)
by richardg on 1/11/12, 1:40 AM
This one hits the nail on the head, also, maybe it's better since you did it yourself, rather than somebody else?
Rather than reading someone else's code, it's better to write your own..
then the next guy comes along and does the same thing to your old code..