Fuck Gemini, stop using AI to validate your startup ideas.
"TLDR: This article shares the author's new insights and lessons learned from independent product development, including an evaluation of Gemini's coding capabilities, the limitations of the web ecosystem, and the challenges of reusing ecosystems from interpreted languages. The article delves into how to reuse the ecosystem of interpreted languages in applications, and proposes three solutions: running on the backend, integrating with a web frontend, and building as a desktop or mobile application."
Recently I've built some more indie products (some dead, some fading away), and I've gained some new insights and lessons.
- Gemini is very strong at writing code, but in everyday conversation it's too flattering and eager to please users—no matter what you say, it showers you with praise. As a result, under Gemini's constant compliments, I spent several days building a web app, only to find it was a product in a red ocean with no visitors, so I gave up.
- Although the majority of出海 products are web-based, the web ecosystem simply isn't enough to support all kinds of needs. Many things really can't run in the browser, and WASM is also crippled—not as great as it's hyped up to be. For example, to implement a feature, I needed to reuse the Python ecosystem, because that feature is almost only well-supported in Python—no one in other languages has done it before. At that point, there were only two paths: either run it on the backend, or write a desktop application.
- Currently, the hardest part of writing code is reusing ecosystems. As mentioned above, how to reuse Python is extremely troublesome.
This leads to the following question: how do you reuse the ecosystem of an interpreted language in your application?
- Run it on the backend—this is what most people do, but unfortunately my product is privacy-first, so I can't do that.
- Integrate it into the web frontend: this is also a dead end right now. There's simply no good way to run Python in the browser.
- Write it as a desktop or mobile app: this is the only viable path, but the workload is still significant.
Python is an interpreted language. If you want to ditch the VM and embrace binaries, the only option is tools like Nuitka. It's only so-so—some dynamic features aren't supported.