Hacker News new | past | comments | ask | show | jobs | submit login
Featurewhack (robertheaton.com)
14 points by robheaton on Feb 28, 2013 | hide | past | favorite | 3 comments

Great article, but not quite sure about the final bit of advice. Even if you gradually build your software in layers you might be faced with exponential complexity. If you are releasing early, then you also have the "legacy data" issue along with users who are just getting used to the interface. Change will be always met with resistance.

A harder but definitely more powerful approach is to build more isolated pieces of functionality with well defined interfaces. A conscious effort to minimize the feature interdependence definitely pays off in the long run. A team of moles is harder than an uncoordinated mob!

Layers should abstract over details, and eliminate entire classes of bugs if used properly. You don't see much discussion on it here, but it's a necessity if you're writing software for the long haul.

the only issue you're likely to run into with this approach is leaky abstractions (http://www.joelonsoftware.com/articles/LeakyAbstractions.htm...) which will leak at least some implementation detail out of the container. This can be minimised though.

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