Dora Noda
Software Engineer
2336 posts · View all authors
Ingress NGINX Is Officially Dead: The Gateway API Migration a Self-Hosted PaaS Can't Skip
Ingress-nginx went EOL on March 24, 2026 with no more CVE fixes ever. Here's the head-to-head on the two sanctioned exits — Traefik as a drop-in stopgap vs. migrating straight to Gateway API's Gateway/HTTPRoute model — plus the before/after YAML a self-hosted PaaS's routing layer should generate.
Kamal 2 Bet Against Kubernetes and Rails 8 Made It the Default: What SSH-Based Docker Deploy Gets Right (and Where It Runs Out of Room)
Kamal 2 ships zero-downtime Docker deploys over plain SSH with no cluster and no control plane — here's the exact technical wall it hits, and what a Cluster-API-managed fleet does differently on the other side of it.
Kubernetes 1.36's Pod-Level Resource Managers: The Sidecar Bin-Packing Math, After Hetzner's Price Hikes
Kubernetes 1.36 lets a Pod share one CPU/memory budget across its containers instead of summing per-container reservations. Here's the worked bin-packing math — in real CCX43 nodes and euros, after Hetzner's 2026 price hikes.
Kubernetes 1.35's Job managedBy Field Ends the Reconciliation Fight Over Agent-Triggered Batch Work
Kubernetes 1.35 made the Job managedBy field GA, letting a platform's own controller claim a Job's status end-to-end instead of racing the built-in controller for it — here's what that means for AI agents triggering migrations and one-off tasks from chat.
Kubernetes 1.36's User Namespaces Go GA: The hostUsers: false Default Every Multi-Tenant PaaS Should Ship
Kubernetes 1.36 graduated User Namespaces to GA — here's the exact node-image, subuid, and admission-policy recipe to make hostUsers: false the cluster-wide default for every tenant pod, plus the shared-kernel limitation it doesn't fix.
Kubero vs a Cluster-API PaaS: Two Kubernetes-Native Bets on "Heroku Without the Monthly Bill"
Kubero and a Cluster-API-based PaaS both promise Heroku without the invoice, but they eliminate different halves of it — here's the CRD-level breakdown of what each actually owns, what it costs, and which problem it solves.
Let's Encrypt's 6-Day Certificates Are GA: The Renewal Math Your PaaS's ACME Automation Needs to Survive It
Let's Encrypt's 6-day certificates are live and 45-day defaults are coming by 2028 — the renewal-frequency math, the real rate-limit bottleneck (your DNS provider, not Let's Encrypt), and what a self-hosted PaaS's ACME automation needs to change first.
MCP Server Cards Won't Advertise Your Tools — Here's What They Actually Do
A draft MCP proposal lets servers publish machine-readable metadata at a .well-known URL — but the real schema deliberately leaves out tool names, and that omission changes what publishing one actually buys a self-hosted platform.
MCP's Stateful Session Bottleneck: Why the 2026 Transport Roadmap Is Racing to Make Agent Servers Horizontally Scalable
MCP's official spec drops protocol-level sessions on July 28, 2026 — here's why that's the fix for the exact bug that makes a deploy-from-chat MCP server a worse single point of failure than the app it manages.