Hacker News new | past | comments | ask | show | jobs | submit login

Bad code is hard to read. Good code is easy to change.

That's it, I think. Then you recurse up into architecture.

Bad architecture is hard to follow. (spaghetti code) Good architecture is easy to change.

Yes, this means you can have code that's neither bad (it's easy to read) nor good (but still hard to change). In the past I've called this "lasagna code" - the layers are super clear, and it's easy to follow how each connects, but they're far too integrated to allow for any changes.

It's harder to phrase on the level of "software", but mabye something like:

Bad software is hard to use. Good software does its job and then gets out of the way.




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

Search: