Listen up, creators: Don't wait until that thing you're making is "perfect" or absolutely finished. Ship version 1.0 when it's good enough but you might even be embarrassed by it.
Photo by dno1967b.
The quote above comes from Matt Mullenweg, founding developer of WordPress. He describes how trying to fit in just "one more thing" can be detrimental to your project:
What killed us was "one more thing." We could have easily done three major releases that year if we had drawn a line in the sand, said "finished," and shipped the darn thing. The problem is that the longer it's been since your last release the more pressure and anticipation there is, so you're more likely to try to slip in just one more thing or a fix that will make a feature really shine. For some projects, this literally goes on forever.
[...]I imagine prior to the launch of the iPod, or the iPhone, there were teams saying the same thing: the copy + paste guys are *so close* to being ready and we know Walt Mossberg is going to ding us for this so let's just not ship to the manufacturers in China for just a few more weeks… The Apple teams were probably embarrassed. But if you're not embarrassed when you ship your first version you waited too long.
Shipping early and often, he continues, gives you the critical feedback from users that's needed to improve your work:
You can never fully anticipate how an audience is going to react to something you've created until it's out there. That means every moment you're working on something without it being in the public it's actually dying, deprived of the oxygen of the real world.
1.0 Is the Loneliest Number [Ma.tt]