Renovate Opened 40 MRs, 6 Are Red: Now What?
Renovate MR breaks your build? A practical triage workflow for failed Renovate pipelines on self-hosted GitLab, plus config that keeps the red ones manageable.
Software engineering articles and thoughts by Kenin Kujovic
Renovate MR breaks your build? A practical triage workflow for failed Renovate pipelines on self-hosted GitLab, plus config that keeps the red ones manageable.
Most product screens are compositions of the same few components. Server-driven UI describes them as data and lets each platform render natively.
How to ship schema changes with zero downtime using the expand and contract pattern. A practical walk-through of the three phases with real code.
Writing code is easy. Writing code someone can actually maintain six months from now is where most projects fall apart.
The most common cognitive biases that affect your judgment and decision-making, and how recognizing them gives you an edge.
Generate sitemap.xml for Next.js static exports using force-static mode. No server required. Works with Cloudflare Pages, Netlify, Vercel, and GitHub Pages.
Learn how to automatically patch OS vulnerabilities in container images using Trivy and Copa without rebuilding. Fix security issues in seconds, not hours.
Complete guide to fixing leaked secrets in git. Learn why git-filter-repo alone won't save you and what you actually need to do when credentials leak.
Profile Go programs with pprof and flamegraphs. Read CPU profiles visually, find real bottlenecks, and verify your fixes with worked examples.
What MAJOR.MINOR.PATCH really means, when to bump each, how ^ and ~ version ranges work, and the SemVer mistakes that quietly break builds.
How 2.5 years of coding every day changed how I think.
A simple, scalable naming system for cloud infrastructure (env-region-site-role-instance), with worked examples and the reasoning behind each piece.
How to securely forward SSH keys through SSH connections
Welcome to my blog