This comes as a very belated response to an iDevBlogAWhatever here. The gist of the article is that releasing your first app is a terrible idea, and a complete waste of your time.
I say: bullshit!
Shipping is, at the end of the day, all that really matters. It validates every difficult decision you made, every nail-biting, bug-triaging, hair-pulling, sanity-losing moment. Some people might not like what you make, and, yes, it might be turn out to be crap. Shoot, that’s true for the AAA guys, too, with huge teams and millions of dollars behind them. Look at the Fable series! It’s been steadily going downhill for awhile now! (I kid.)
Not releasing your first app is not the important part. We’ve all (hopefully) got a little voice inside telling us just how good (or shitty) whatever we’re looking at is. We judge everything, all the time, without even thinking about it. If you don’t have that voice, you’re lying to yourself and you probably just need to find a good editor/reviewer/tester. There’s no shame in it, either – external feedback is incredibly useful, at every stage of creation. The trick, here, is that your first app is totally releasable – as long as it isn’t a total piece of shit.
Hell, even if it is total schwarbage, going through the motions of something, from start to finish, is an incredible experience. Figuring out all the little details prepares you for the next time, where you really get to go nuts.
And going nuts is a great thing, eventually. When you haven’t figured everything (or anything) out, though, you’re way better off scaling back. What’s keeping you from putting whatever you’re making into people’s hands? Art? Music? Too slow? Not fun?
Fix what you can, then shove it out there for people. Force people to tell you how much you suck, instead of just assuming that you do.