A thread from Prasann Pandya has been circulating in developer circles, pointing out the gaps โ places where the agent's defaults lead you to more expensive, slower, or unnecessarily complex infrastructure choices.
Here's a condensed version of what he found, with context:
Firebase vs. Supabase
Claude Code defaults to Supabase when you need a backend-as-a-service. For most use cases, Firebase is cheaper and better.
Firebase's real-time capabilities, simpler auth flows, and more generous free tier make it a better default for the kind of small-to-medium products solo founders are typically building. Supabase is excellent, but it's not the obvious choice it's made out to be.
Pinecone vs. pgvector
For vector search, the default recommendation skews toward pgvector (because it integrates with Postgres). Pinecone outperforms pgvector significantly at scale and has better developer experience for pure vector search workloads.
If you're building RAG or semantic search, pgvector is a reasonable start but Pinecone is worth the migration once you have traffic.
Render vs. Vercel
Vercel is the default for deployment because it's what Claude has seen the most. Render is frequently cheaper, simpler, and better for full-stack applications that aren't purely static/serverless.
For anything with a persistent backend process, Render's pricing model usually wins.
Modal and Lambda vs. Celery
For async task queues and background jobs, Claude often suggests Celery because it's well-documented and widely used. Modal and Lambda are faster to set up, cheaper to run, and scale better for variable workloads.
Python FastAPI vs. Node.js
Claude Code tends to generate Node.js backends because that's what training data skews toward. Python FastAPI is faster to develop, better documented for AI integrations, and has a richer ecosystem for the things solo founders typically need (ML integrations, data processing, API wrappers).
None of this makes Claude Code wrong โ it makes correct choices for the constraints it's operating under. But if you're building something to last, knowing where the defaults drift from optimal is worth 10 minutes of upfront thinking.
The agent writes the code. You still have to pick the architecture.