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

I've pondered this problem for a while and I think I narrowed it down to the following:

* Tight coupling (this would include global variables, among many other things)

* Lack of code cohesion

* Code duplication

* Code that doesn't fail fast (e.g. weak typing).

* Variable/class/method naming that is either not sufficiently disambiguated or is wrong.

* Lack of tools to run and debug code

* Lack of test coverage

Whenever I go looking for code to clean up this is what I keep an eye out for.

I'm pretty sure that each of these could be measured empirically somehow (I've read papers to that effect for a few), but we're not quite there yet in terms of tooling, or even in agreement over what technical debt actually is. Give it 5-10 years.



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

Search: