I'm close to the completion of a first set of features for a free application I'm developing on the Android platform and I'm starting to wonder about the best time to release it to the market.
On one side I'm fond of the "ship as early as possible" model though considering that users can vote for applications I don't want to release too soon an application in beta and with a limited set of features as I won't get high ratings. I could explain that it is a beta version but will non technical users understand or care ? I don't think so.
On the other side, if I go for a waterfall model and I wait until the application is feature complete I will have a more competitive application in terms of features but the downside is that as the application grows bigger so the number of problems users are likely to experience. I know I can test my application but I don't think that's enough considering that some applications have slightly different behavious on different devices. I work at this app part-time so I fear I won't have the time to fix in a short time the issues that will eventually pop up and this will lead again to negative ratings.
I want to know from developers that have already gone through this dilemma, is it best to release an incomplete, beta quality product early or waiting until it's feature complete and then deal with the bugs all at once ? Please provide answers specific to the Android platform and market.