I've been toiling with this question this morning and curious to hear the thoughts of HN. This isn't a purely academic exercise as I'm planning on launching a startup in the next couple months and this is an issue I have to grapple with. Rather than speaking in generalities I'll layout an example. Say you are Pandora and you are building the first music recommendation engine or you are Farecast and building the first prediction model for airline tickets. These companies spent years developing their predictive technologies and they are assuredly extremely comprehensive and robust. However, say they gave themselves a 2 month deadline and released a service which they strove to improve over time. Their service was not nearly as prescient as it could be if they took 3-4 years to develop it. Still, there was some data analysis that went into the service and Pandora and Farecast could advertise that fact on the website and indicate that the results will get better over time.
How many users would these services have lost? Some users will be dissatisfied with the services so they would lose potential customers. Also, another competitor could see that they could do better and launch their own service, diluting the market share for these comapnies. But these companies sacrificed revenue by not releasing their service until it was very strong. Also, there are other companies that took years of work and flopped miserably upon release. Farecast and Pandora faced the risk of joining that unenviable pool.
It's hard to argue that Farecast and Pandora went down the wrong path since they were super-successful startups. But if I'm not mistaken, both started in academia so they have a higher standard to live up to in terms of rigor. Most startups are under the pressure to launch something quickly. If you were running a similar company, when would you launch?
If you launch before you provide enough value, no one will care.
If you wait to launch, you are only doing yourself a disservice by delaying or prolonging the feedback cycle. You should be doing the opposite, figuring out how to make your feedback cycle as short as possible.
Worrying about competitors at this stage is dumb. You could only be so lucky as to have an idea good enough that someone would care enough to try to challenge you for it.