Your product must meet the needs of a niche, solving a problem
Anyone can make an app or write a book or make a WordPress theme or plugin. In fact, there are tens of thousands of products on sale, for each of the things I mentioned. Are all of them successful? No way! Many are abandoned as the business side is a failure, and they have no traction. We can say that 1% of products are highly successful, and another 9% falls into the range of products that do not have a stratospheric success but are not even a failure: a modest success.
This fits the famous Pareto principle with 90/10.
Vilfredo Pareto, an Italian engineer and economist who lived on between 1800 and 1900, is famous all over the world for identifying a sort of rule that appears in many forms in many different areas:
Most of the effects are due to a limited number of causes
Examples:
- 80% of wealth is owned by 20% of the population
- 20% of sellers make 80% of sales
- 80% of the value of the warehouse is determined by 20% of the total items.
- 20% of products on a marketplace capture 80% of revenue generated.
- 80% of a product’s success comes from having the right product-market fit.
Marc Andreesseen defines product-market fit as follows:
Product / market fit means being in a good market with a product that can satisfy that market.
Your product must meet the needs of a niche, solving a problem.
Unless they are part of the benefits communicated to the customer, technology, details, how you implemented it are of no interest to anyone if the product does not solve a problem worthy of being resolved, and if there is no marketing activity which can make the product known to the market it targets.
Warning to programmers: be uncool.
Be careful in choosing a completely new programming technology or language just for the sake of it, to create your product, as you’ll have to waste a lot of time learning it, you don’t know its limits and pitfalls, and you’ll shifts the focus from the product to the implementation details, which do not matter to anyone except you.
If you’ve made an app using TypeScript or ClojureScript instead of JavaScript, it does not matter to anyone. If you had to spend 2 days debugging a function in Node.js because it does not work as it should, but you do not understand why, maybe you should have used Python as you always do.