Adding features means adding code that almost certainly has bugs.  So, not only have you invested time in putting something in, but you're on the hook for more work down the line, which reduces your ability to a) fix other bugs and b) add/change something that has a more compelling use case.<p>I'm more of the mind that apps should be made with a reasonable[0] API so that people can write add-ons and plug-ins.<p>Promoting an eco-system around your app increases its value, and it offloads (to some extent) the burden of having to add all those features people say they "must have".<p>[0]: Defining this is the tricky part ;)