Perfection Kills Projects (Beta)
By Kyle McCabe | February 19, 2009
Thanks for coming back! We'd really like to hear what you think of this post, so don't be shy with the comments!
A recent blog post by Chris Brogan got me thinking again about a recurring issue I’ve encountered in web development. In his post, Brogan said this: “Stop striving for perfection, and strive for execution instead.”
While this statement may have been somewhat tongue-in-cheek in the context of his article, I find it resonates with me on a more sober note. Like many people, I admit to some (just a little) perfectionistic tendencies in my work. But enough about me.

Don't wait for "perfect." Just launch it.
A friend of mine, Ted Darling, recently wrote about perfectionism as well, and rather than leave a huge comment on his blog, I thought I’d add my thoughts here (yeah, back to me).
Obsessing causes delays
Throughout the years I’ve attempted to maintain an online portfolio to display my work. The first couple versions were pretty easy for some reason, but after a while I became so nit-picky about the design of the portfolio that I spent hours upon hours trying to get it to look just right. A couple versions took so long I burned myself out and let them sit unfinished rather than just publishing them. By the time I got back around to finishing, they were outdated. Back to the drawing board!
Enough!
In the end, I finally told myself enough is enough! I published my portfolio in WordPress using a theme I didn’t even design. As hard as it was for my over-inflated ego to handle, it was a smart move (and thus my ego is still intact). My portfolio was available, and a huge weight was off my shoulders.
This is something that more and more companies are learning: waiting until a product is completely finished and “perfected” before releasing it can be a huge mistake, both financially and marketing-wise. Just think: what if, in the time you spent “perfecting” your product, a competitor released a similar product before you did?
Improve on the fly
Rather than obsess over the details that may not be exactly perfect, strip it down to the finished pieces, release it, and add features as they are completed, or simple leave in the “rough” pieces and tweak them as you go. Call it a “beta” release – there’s really nothing wrong with that as long as you are up-front with your users that it *is* a beta and not a finished product (look at Gmail – it’s been in beta for years!). Many software developers do this all the time. Users tend to be very forgiving if you are honest, and they can be a huge help with bug reports, usability and design feedback.
I’m speaking here primarily about web applications, but this can apply to other markets and products as well – really any project you might engage in. No matter the project, the important thing is to strike a reasonable balance between a level of completeness that users will accept as a “beta”, and that ultimately unobtainable level of perfection we tend to demand of ourselves.
-
Ted Darling





