Your login form checks the email, yet your server still takes anything. Learn what browser and server validation each do, and build both, with a live demo.
By Milos Knezevic19 min readRead the article →
Latest
11 entries
Developer Experience & Career
Why Courses Leave You Feeling Like You Know Nothing
You finished the course and still feel lost. It is not your fault. Here is why it happens, and the simple way to make learning code finally connect for good.
By Milos Knezevic·10 min→
Web Development
Modern Full-Stack Development in 2026: One Stack, Explained End to End
One modern web stack, layer by layer: rendering, types, validation, data, auth, payments, styling and deployment, with tested code and honest trade-offs.
By Milos Knezevic·31 min→
Databases
Prisma vs Drizzle: How to Choose Your TypeScript ORM
Prisma and Drizzle solve the same problem with opposite philosophies. Schemas, queries, migrations and serverless weight compared — ending in a real verdict.
By Milos Knezevic·11 min→
APIs & Integrations
Stripe Subscriptions in Next.js: The Setup That Survives Production
Checkout is the demo. Production is webhooks, idempotent sync, dunning, and the test-to-live checklist — the Stripe setup that keeps working after launch.
By Milos Knezevic·11 min→
DevOps & Infrastructure
Structured Logging in Next.js: From console.log to Searchable Events
Production breaks and you have ten thousand log lines. Structured logging — JSON events, honest levels, request IDs — finds you the five lines that matter.
By Milos Knezevic·11 min→
Cloud & Hosting
Shipping a Next.js App to Production: The Complete Playbook
The complete launch sequence for a solo Next.js developer: pre-flight checks, deploys, DNS, monitoring, rollback, and the smoke test that saves launch day.
By Milos Knezevic·17 min→
Databases
Neon vs Supabase vs Railway: Choosing Managed Postgres in 2026
Supabase, Neon and Railway all sell managed Postgres with three different philosophies. Pooling, branching, cold starts and regions decide which fits you.
By Milos Knezevic·12 min→
Security
NextAuth vs Better Auth vs Rolling Your Own: Picking Auth in 2026
NextAuth, Better Auth, hosted, or your own sessions — an honest 2026 comparison built on the one question that outlives the hype: who owns your user table.
By Milos Knezevic·11 min→
Architecture & Patterns
Zod at the Trust Boundary: Validate Where Data Enters
TypeScript types vanish at runtime. Map your app's trust boundaries and let Zod defend them — schema-first types, env checks at boot, and when to skip it.
By Milos Knezevic·12 min→
DevOps & Infrastructure
Rollback Strategies for Small Teams: No Feature Flags Required
You don't need LaunchDarkly to survive a bad deploy. A decision protocol, your host's rollback button, git revert, and an env-var kill switch cover it.
By Milos Knezevic·11 min→
Cloud & Hosting
Domains, DNS, SSL and Email: The Launch-Day Setup Nobody Teaches
DNS, SSL and email authentication explained as a system — registrars, records, propagation, SPF, DKIM, DMARC — so launch day is a checklist, not a panic.
By Milos Knezevic·12 min→
Editor's picks
Pick 01
Developer Experience & Career
“You finished the course and still feel lost. It is not your fault. Here is why it happens, and the simple way to make learning code finally connect for good.”