Astro vs Next.js in 2026: When I Reach For Each on Content Sites
I shipped the same marketing site in Next.js and then in Astro, then kept score. Here's when I actually reach for each, with bundle numbers…
I shipped the same marketing site in Next.js and then in Astro, then kept score. Here's when I actually reach for each, with bundle numbers…
Tailwind v4 ships container queries in core. Here's the rewrite that stopped my product cards from breaking in sidebars, and where I still avoid them.
Five Laravel queue habits I changed after years of failed jobs, with the maxExceptions, Horizon, and idempotency configs I now reach for on every new…
Six Docker habits I dropped from production in 2026, the ones I kept, and the small changes that cut image size, build time, and CVE…
Why I stopped writing useEffect-for-data-fetching and what TanStack Query actually replaces in 2026, with real before/after code from production.
Six months running Biome alongside ESLint on real projects. Where Biome won, where I kept ESLint, the migration gotchas, and when to switch in 2026.
Four years into Go generics, here is what I actually reach for in production, the constraints I write, and the patterns I quietly stopped using.
I shipped chat UIs the hard way before Vercel AI SDK existed. Here's what useChat, streamText, and tools v5 actually replaced in my production apps.
My one-line rule for SQLite vs Postgres, the four PRAGMAs that made SQLite production-ready for me, and the cases where I still pick Postgres without…
PHP 8.4 array_find, array_any, array_all, and array_find_key replaced years of array_filter plus current chains in my codebase. Here is what stuck.