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

But designing "the simplest thing that could possibly work" may make harder than necessary to modify later. (and any time the requirements change after it's built, you're inching towards a big ball of mud, so this whole idea should be reviled whenever possible)

An example is databases. People design their database schemas in incredibly simplistic ways, and then regret it later when the predictable stuff most people need doesn't work with the old schema, and you can't even just add columns, but you have to modify existing ones. Avoid the nightmare by making it reasonably extensible from the start. It may not be "the simplest thing that could possibly work", but it is often useful and doesn't cost you anything extra.

Just as much as people say "don't prematurely optimize", they should also say "don't prematurely make it total crap".



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

Search: