Hacker Newsnew | past | comments | ask | show | jobs | submitlogin

No, this is still a payment against technical debt. From the top of Martin Fowler's article:

"The extra effort that it takes to add new features is the interest paid on the debt."

If adding a new feature starts with, "just throw out all the code and start from scratch", that's a much larger cost over the long term than building code that's easier to maintain and refresh.



With very few exceptions code that is "easy to maintain and refresh" over any appreciable time horizon (say,longer than 2-3 years) requires the kind of engineering effort that the modern world of "CS trivia is good interview material" generally derides. I'm not even talking about "real" engineering processes as might be used for space systems or whatever; I mean just basic requirements analysis and technical documentation.


The cost of rewrite at that point is typically less than cost of straightjacketing the existing codebase to support all new requirements, otherwise it is less likely to happen. So, defaulting it is.

(Mind you I'm not fully sold myself that 'technical debt' is a useful analogy at all)




Guidelines | FAQ | Lists | API | Security | Legal | Apply to YC | Contact

Search: