Let me be blunt: I'm not a perfectionist, I'm a pragmatist. If something works, I do it that way until there's a practical reason to change it.
I'm that way both by choice and by force of circumstances. I work from the house, I have a wife, a nineteen year old daughter and a two year old son. My wife is currently pregnant with our third child. I only work about twenty hours a week and in that time have to support more than a dozen software applications. In addition I'm involved in a ministry work that occupies about 80 hours a month of my time.
I'm a man who can't waste time on perfection unless it's absolutely required. But the reality is that perfection is almost never required for success. In fact, perfection very often gets in the way of success! Why do I say that?
Because real success comes from taking action, getting feedback on that action, and then modifying your next steps based on the feedback.
A good example of this is software development. When I used to work for software development firms, we spent enormous amounts of time on gathering requirements, meeting with customers and going over charts and tables and diagrams. In short, we designed the software to death before releasing it because we wanted the first release to be "perfect." We often discovered, though, that what we created for the customers missed the mark, and so we went back through the cycle all over again. It was slow and expensive!
I've long since given up on that ridiculous form of product development. Now when I have an idea for a tool, I create a rough and ready version of the tool and get the people on my email list to beta test it for me and provide feedback. From that feedback I make improvements and release those improvements back to the beta testers. I repeat this cycle until I'm getting a majority of testers telling me that the tool is great. Once that happens I officially release the tool for sale. But I never stop repeating the release -> feedback -> release cycle, even after the tool is launched.
This method is vastly superior to the "design to death" methodology because it gets the product into the hands of its users much faster, and it allows the users to make design change suggestions based on actual interaction with the software rather than less tangible things like pie charts and tables. It's hard to know if a tool will do the job well until somebody uses it, no matter how many diagrams and flowcharts you show them.
The release -> feedback -> release methodology is not limited to software, though. Let's say you've got an idea for a web site, and you spend enormous amounts of time and money designing the site and creating the content, but you don't release it until everything's "perfect" -- only to find out that the idea doesn't have enough traction to be profitable. What a waste of time and money!
What if the guys who invented the VHS tape never released it because they already had the idea for the DVD, even though they knew it would be more than a decade before that product idea was complete? Think of the lost profits to the company, and of all those movies we never would have gotten to watch at home! The VHS was far from perfect, but it worked well enough and was a huge success because of it.
In my opinion, it's much better to put something together and push it out, then get feedback from your market to see if the idea has traction. If you see some encouraging results, you press on and improve based on the feedback. But if the idea flops, you're out a lot less time and money!
And don't underestimate the power of being first to market. If you wait too long trying to perfect an idea, it's likely that other people will get a similar product out before you do -- even if its of lower quality. That lower quality product can quickly become the household name, and once they have the market they improve on it as needed, making it much harder for you to get your product noticed.
To use the VHS example again, did you know that the first DVD-like disc came out in 1978? It was called laserdisc, and was the first commercial optical disc storage medium. The laserdisc made for much higher quality movies than VHS -- but it was a flop. Why? Because VHS came out in 1976, two years earlier, and was already a major product on the market. It didn't take 10 years for the "next best thing" to be invented, but it failed because the household name was already established.
Take Google as another example. How good would a new search engine have to be to replace Google as your search engine of choice? Even if the new engine was just as good or even better, people are so used to Google that getting them to switch would be very difficult.
That's why it's so important that you not waste time on perfection. If you have a great idea, you need to "get it out there" after doing enough initial testing to make sure of a reasonable amount of quality. Your customers will tell you where improvements need to be made. What you think people want is often not what they're after! I've been surprised over and over again by my customers when they ask for improvements in areas I was sure wouldn't be important to them, and just as surprised with what they thought didn't matter that I was sure would be their number one priority.
So whatever you're working on, take action, gather feedback, improve it and keep moving. Trade your perfection for a work in progress and your chances of success will greatly improve.
Please post your thoughts and questions in a comment below.