I created my first web product in 2008. I did not code it myself but hacked it together using ExpressionEngine plugins (that was really the only thing I did good with this product). Since 2008 I’ve built, launched and ran and sold multiple products. I have learned a thing or two about this process along the way.
- don’t sweat the details (best code practices, unique UI design etc.)
- keep the scope really small (and then even smaller)
- do this really small scope really, really good
- leave out things you don’t need right away
- don’t reinvent the wheel
- don’t go for full test coverage (or no tests at all)
- don’t be smart about UX or UI—be precise, be clear
Sjabloon launched as “beta”, it could be purchased for a discounted price. I could’ve launched with all the bells and whistles, but there was no way for me to know what I had in mind was really what people were willing to pay for.
Example: When I launched I’ve had not added any mechanism to lock/prevent access when a user’s access would expire. As this was 12 months after the first purchase, there’s no rush to do this right from the start. Example 2: At launch I’ve added the most basic payment implementation using Stripe (basically what Stripe has on their site). I’ve since replaced it with the payment feature coming with Sjabloon.
With 300+ customers now (and thus proven the viability of the product) I can improve upon features. I’ve also learned a ton about how people use the product and as a result can easily make changes to the UI and the licensing model (which is always a guess really before you launch).
Do not overthink it.