Technical
The Serverless Database Choice I Keep Making
Every solo project I ship hits the same decision: which database do I run in a serverless environment? I have tried DynamoDB, Neon, Turso, Supabase, and PlanetScale. In 2026 my default is still Neon and here is why it keeps winning the evaluation each December when I reconsider.
What I Weight
- Cold start compatibility (no connection pooling headaches)
- SQL familiarity (most of my code already speaks Postgres)
- Branching for preview environments
- Price at low-traffic scale
- Backup and point-in-time recovery
Why Neon Wins for Me
Branching is the killer feature. Every PR gets its own database branch automatically. No more sharing a staging database and stepping on each other's data. That single feature justified the migration from my previous setup.
# PR environment creation
neon branches create --name pr-123
# Gets its own connection string, real data copy, disposableThe branch creates in seconds and the data is a copy of production as of the branch point. Testing migrations against real data without touching production is the feature I did not realize I needed until I had it.
Where DynamoDB Still Wins
Pure key-value workloads at huge scale. If your access patterns are known at design time and you do not need joins, DynamoDB remains unbeatable on cost and latency. For mixed workloads, I reach for Postgres. The operational simplicity of DynamoDB at high scale is real and deserves respect.
What I Rejected and Why
- Turso: great tech, my workloads do not need SQLite's specific shape
- Supabase: too much platform for projects that only need a database
- PlanetScale: great for specific MySQL shops, my work is Postgres-shaped
None of these are wrong. They just do not fit my specific portfolio.
The Anti-Pattern I Have Stopped
Picking the database based on the framework's default. Next.js ships with a lot of defaults that are fine but not optimal. The database deserves its own decision independent of the frontend framework.
The Evaluation Ritual
Every December I re-evaluate for the following year. Not because Neon stops working, but because defaults need to earn their place. Two years ago I picked DynamoDB for a similar portfolio and it was the right answer then. The default shifted. I shifted with it. The Neon docs are worth reading if you want to see the serverless Postgres architecture.
RELATED READING
The Consulting Shift I Am Making In Year Two
After a year of writing and building, my consulting practice is changing shape. Shorter engagements. Sharper outcomes.
ReadThe Frontend Shift: Shipping Less JavaScript In Year Two
A year ago I reached for Next.js for everything. This year I often reach for nothing.
ReadThe Serverless Lesson I Would Write On A Sticky Note
After a year of shipping serverless projects, one rule explains most of the wins and all of the losses.
Read