Increasingly, I believe that solving the simple case is a great strategy.
Simple has the largest TAM – it might not solve the high-value niche use cases, but the long tail of use cases is large.
Simple is easier to isolate – the more complex a product, the harder it is to isolate both good and bad effects. Complexity often is inversely proportional to the user or developer experience. The market has a way out, distilling only the essential features, but starting simple is another way.
Working code is better than a draft – Simple is hard, but simple sometimes is quick. Protocols often win not because they are the most efficient but because they solve the problem.
Small data analytics – DuckDB, SQlite, pandas, and Excel all solve small data analytics differently. You don't need a streaming data pipeline, perfectly cleaned data, or remote and beefy machines to get insights out of data.
Frontend frameworks – NextJS and Remix might not be the best from an architectural or performance standpoint, but they are one of the quickest ways to deploy a dynamic website on the internet. While the market might have seemed small for a frontend framework, companies like Vercel are expanding into the whole application stack. The frontend is eating the back end.