This is a lesson I’ve started being glad that I have learnt. It’s something that over the years has made me that there actually is no “perfect product” out there.
To explain what I mean, let me start with the topic of their being no “perfect products” out there. Just so you know, I’m referring to products found in the online space such as Facebook, Twitter etc. If we take those two as an example along and look back their history; you’ll see that both Facebook and Twitter have constantly evolved into what they are today. They’ll also continue to evolve into something way more advanced by tomorrow.
Hypothetically speaking, let’s say Facebook was at it’s pinnacle now and would be considered their “perfect product”. Imagine how much it would cost if Mark Zuckerberg approached a development agency and said, “Hey, I have this idea and I want to create something which will connect millions of people around the world with instant messaging, profiles, friends, places so people can checkin, wall posts with photos and videos, sharing, brand pages, apps that people can create (games etc.) and even through in some insane insights so we can grow the product using relative stats. Oh, and it must be able to manage over a billion people. That way, we can sell an ad service that targets people based on their usage, profile and lifestyle to make sure we only show ads they want to see. Then we would also need to see updates from friends and pages that you’re interested in on one page without distracting from the ads.
Yes, if you’re a developer you’re probably racking up the zeros just knowing the amount of effort and time that it would take to develop something like. So how did Facebook do it?
It’s simple, they launched fast and then updated fast. It’s the same with Google, Twitter, YouTube, Instagram and pretty much all the massive startups. They got a product out quickly that people started loving and they’ve been updating (very quickly) ever since.
So this is why I’m suggesting that if you’re building something. Get it up. Get some users on it. Start getting their feedback. While they’re using, develop that next feature. By the time they get “bored” of what you have to offer, you give them something more to play with and you get a ton of user feedback in return.
I think the single most important point about what I just said is that you get user feedback. This single point may change the direction of what you’re trying to build completely. This is because you’re developing for your market based on their desires.
Your last objective would then be to consistently maintain this state of “Launch fast. Update fast.” for each new feature.
I hope this helps you. It’s really helped me and a lot of the client I work with.