“The Biggest Mistake We Made Two Years Ago …
was not choosing Menlo Innovations to do our software design and development.”
- a former prospect having coffee with me the other day.
Arrrggghh.
This is a common theme and there is no joy, no schadenfreude when I hear this. My frustration does not stem from the lost revenue, losing to the competition or simply a missed opportunity. The maddening part is that a good idea didn’t make it to market and the product wasn’t widely adopted. There will be lost investor dollars and another company that one day soon will close it doors, or perhaps just limp along rather than enjoy enough success to hire more people, expand into other markets, improve the overall state of the economy.
When I hear this lament from former prospects, I ponder why? There are a variety of reasons they chose another path two years ago. Sometimes they have their own internal resources, sometimes they have an existing relationship, sometimes they just believe they can get things done less expensively. Somehow, they decide they didn’t need what we had to offer. We could see at the beginning that they were headed for trouble, but its way too self-serving to harp on that point.
So for those who are contemplating starting a software product effort, I encourage you to think about these things as you launch the effort to build the software product you dream about:
1. Your budget may be wrong. You likely have a $number in mind for how much it will cost to build the software. How did you pick that number? What if you chose the wrong number? What is the cost of being wrong? Might you expend your entire budget and only be half done? If you end up 50% done when the money runs out, the “market” will conclude you are 0% done!
2. There may actually be strong evidence that suggests your budget is wrong. Have you thought about how much others have spent to build something similar? Its amazing how much information is available to see how much others have spent on building something close to your imagined system. Find that information and be mercenary about challenging your own assumptions about “how easy this is going to be?”
3. Your plan has too many “Miracle Occurs Here” boxes in it. Designing and building solid, competitive software products that thrill end users is plain ol’ everyday hard work. Miracles never happen when you need them, and each time they do, they are typically offset by “catastrophe occurs here.”
4. Your plan to build a quality team is flawed. Too often the plan to build a great team starts with an e-mail akin to “Rich … if you know any good programmers who are looking for work, tell them we are building a team that’s going to bring an awesome product to market.” How will you know they are good programmers? How long will it take you to figure that out? How will they organize the work? How will you know they are doing a good job? How long will it take to figure out if they are not doing a good job? Who will do the “non-programming” work of project management, user experience design and quality assurance. What approach will be used?
5. Your plan lacks ruthless focus! Who exactly are you building this for? Trying to be all things to all people means you will not serve anyone well. Everyone will be frustrated. Having a specific target end user audience in mind is critical to success. Bad Example: This patient appointment product will be used by professional services firms such as doctors, lawyers and dentists. Good example: Dr. Alicia Zahn, DDS has her own small dental practice that she has run for 17 years. She is frustrated with her current patient scheduling system because …
There are many other pathologies that lead to failure. I will touch on those in future posts.
There is hope. It can work. Success is possible. There can and should be joy in software design and development. The ultimate joy is when a user stops you in a parking lot and thanks you for the wonderful software you built for them.
I wish you joy! in your efforts and results!