The biggest waste in software is what we build and isn’t used. Since we can’t know in advance what will be a selling feature, we have to implement the feature, put it in the wild, and hope for the best.
Wait, there’s more: Remember that everything we code comes with a maintenance cost, so it may be that we build something that instead of helping us make money, can even lose money. A lot over time.
To put it bluntly, that doesn’t sound like a smart strategy, right?
I like the lean startup idea of experimenting. With a low-cost experiment we can learn before implementing a whole feature if it’s worth it, or at least get a sense of success. So I’ve began an experiment on experimenting.
After thinking long about it (almost 2 minutes!) I decided to call it the “I have an idea” form. Ideas for features vary in size, and sometimes it’s a big effort in implementation. So before I’m going full force with implementing, I need to test the waters. By forcing myself to put this in words, I can really see if it’s worth it at all, or how we can build an experiment to see if that works.
The form (Word template) has two parts: Hypothesis and Experiment
In the Hypothesis part, we describe the feature from a customer point of view:
- What is the idea?
- Whom does it help?
- What does it solve?
In the Experiment part, we describe how we can learn if our hypothesis has merit:
- What are we going to do?
- Who are we going to show it to?
- How are we going to measure it?
- How much is going to cost us?
- How will we know if it succeeded?
That’s it. Pretty simple process to signal me if I’ve given something enough thought.
Will it work?
I’ll let you know.
PS. If you look closely, it’s just not for features.