How do you stop AI tools from turning your codebase into spaghetti?
I love using AI to speed up boilerplate and early prototypes, but after a few iterations, the code always feels untidy and hard to manage.
It feels like every time I ask AI to fix a small bug, it rewrites parts of the logic in a completely different style, making the whole file messy.
For those using AI tools in production daily: what is your personal rule or workflow to prevent AI from creating a mess in your codebase?
What do you trim off a landing page if all seems equally important?
I am working on the landing page for a tiny habit app and have come to the point when every word seems to be needed. There are eight pictures in the gallery. The description includes six features. The tagline has been revised four times this week.
After looking at successful launches in the recent past, I see that they choose one defining moment. The screenshot captures the main action and the result and everything else on the page follows from that picture. The launches which attempted to convey everything usually confused me about what the product does.
How did you handle a crisis situation that could have destroyed your company's reputation?
This week I came across a picture on Twitter of a well-known startup that was leaking its database credentials.
Someone pointed it out under a post and the company suddenly deleted the post.
How much of your mobile app lives on the server?
A lot of my fixes never become app updates. Prices, the copy of reminders and pushes, which AI engine handles a request, all of it sits on the backend or in a config document I edit from an admin panel. A bug there is fixed the same hour and nobody sees an update prompt.
The price is one rule I cannot break: every backend change has to keep working with older app versions, because a share of users never update. So the app release is left for things that really live on the device, and those go out bundled.
Where do you draw the line? What did you move to the server and regret, and what do you wish you had moved earlier?
Why does every quick-commerce app build its own dark stores instead of using the kirana next door?
I live in Delhi and there are now two dark stores within a few streets of the kirana my family has bought from for years. The kirana knows us, gives udhaar, and is 2 minutes away. I can t work out why the apps don t just use it as their inventory.
My own guess is that nobody can trust what s actually on a kirana s shelf, but I m not sure that s the whole story. Does anyone here have a real answer? Has it been tried anywhere else in the world?
How do you handle churn caused by product complexity rather than lack of features?
Building new features always feels like progress, but it was actually masking our biggest retention problem.
Every time a user canceled, we rushed to build what they asked for. Six months later, we had a bloated product with complex navigation, and users were still leaving for simpler alternatives.
For founders managing mature products: how do you decide when to freeze feature development and spend an entire sprint strictly stripping away complexity?
A model router should optimise for boring, not cheap
Every multi model product ends up building a router, and the first version always optimises for cost. Cheapest model that can plausibly handle the request. It works, and then it doesn't, in a way that's hard to see. The answer comes back confident and slightly wrong, nobody complains because nothing looked broken, and they quietly stop coming back.
What I actually want from a router is consistency. Same question, same shape of answer, tomorrow as well as today. Someone who has learned what your product is bad at can work around it. Someone who gets a different quality of answer every time can't learn anything, and that's worse than being reliably mediocre.
So the rule I've landed on is that a route only changes when I can explain why to the person using it, and cost isn't a reason I can say out loud.
The open question for me is detecting the plausible but wrong case without a human reading outputs. Everything I've tried is either a second model grading the first, which shares the blind spot, or a rule that only fires on mistakes nobody was going to make. If you're routing across models and have solved this, I'd like to hear how.
You are more than what you do
This isn t a typical post for me, or what you may usually see here, but I heard something today that feels worth sharing.
You are more than what you do.
When should an AI product ask users to confirm?
One thing I find tricky when designing AI products is deciding when the product should just act and when it should ask the user first.
Asking for confirmation feels safer, especially when AI is making decisions or changing something for the user.
But if every action needs confirmation, the experience quickly becomes annoying. At some point, the user is basically supervising the AI instead of benefiting from it.
I don t think the answer is simply confirm important actions, because what counts as important can depend on the user, the context, and whether the action can be reversed.
We picked PostHog over Mixpanel and Amplitude for our early-stage startup. Here's why.
My team just went through choosing an analytics tool for a pre-launch product. We found out "which tool to use" is turn out to be "what stage are you". Here are four tools we seriously evaluated:
PostHog Pros: generous free tier is awesome, session replay is a powerful feature. Cons: dashboards feel rough at small sample sizes, and the all-in-one breadth means some features are shallower than dedicated tools.
Mixpanel Pros: best-in-class funnel and retention analysis, clean UI makes non-technical teammates to easily use. Cons: gets expensive fast past the free tier, no session replay natively, event taxonomy needs discipline upfront.
Amplitude Pros: the most powerful behavioral cohorting, built for scale. Cons: you'll spend more time configuring than learning, and pricing is unacceptable for startup.
GA4 free and everyone has it, but it's built for marketing attribution, not product behavior. Fine as a complement, painful if you use it as the main lens.
Conclusion: if you only have dozens to hundreds of users, the tool choice matters less but the price matters more. We went with PostHog because replay and event in one place fits our stage. Curious what others picked at the earliest stage?