Read this article on 99u: http://99u.com/articles/21757/satisficing-how-overachievers-stay-sane-and-avoid-burn-out. It contains so many inspirational points, one of which struck a particular chord with me tonight.
I've been working on a new iPhone app for a while. Motivated by the suggestion that one should 'ship early, then iterate', I'm going to release it soon in its current state. It doesn't do everything I consider that it needs to yet, but it certainly provides its core functionality clearly and usefully.
'Ship early, then iterate' seems like a good philosophy for anyone who creates products, for a number of reasons; Firstly, working on the assumption that you get your core functionality implemented first, you can provide for the majority of users in the majority of use cases. Extra features, functionality or complexity that the minority require can come along later.
Secondly, it allows a product to get out into the hands of the users. There is no better source of feedback and testing of real use cases than directly from the users of your product. The users are the ones that should be considered when any decision about the product is made and their feedback should never be ignored. Having a simpler feature set and workflow allows the design to more easily adapt to any changes required. It's much easier to correct a young a flexible platform than one that is mature and highly complex.
"To not do anything because it can’t be exactly how you imagined in your head on the first run will hinder you immensely."
I'll post up here when I get the app released. It's probably of interest to the serious audio nerds amongst you.