Go Concurrency Patterns in 2026: What Go 1.25 Let Me Delete
Go 1.25 added WaitGroup.Go and a stable testing/synctest. Here are the Go concurrency patterns I actually use in 2026, and the boilerplate I deleted.
Go 1.25 added WaitGroup.Go and a stable testing/synctest. Here are the Go concurrency patterns I actually use in 2026, and the boilerplate I deleted.
I spent a month running local LLMs on my own GPU instead of an API. Here is where self-hosted models earned their place, and where…
I've shipped production services in both Rust and Go. Here's the decision framework I actually use, with code, honest trade-offs, and no benchmark wars.
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.