
Porter's Two Control-Plane Models, One Codebase
Porter markets itself as a PaaS that runs in your own cloud, but the control plane most customers actually get is Porter's, not theirs. A tier-by-tier look at what real self-hosting costs versus what the marketing implies.

Heroku Invented the Preview Environment for Humans. In 2026, AI Agents Are the Ones Clicking the Link.
Devin Review catches bugs before a human opens the PR, and GitHub Copilot's agentic review closes the loop even faster. Heroku's 2015 preview-environment primitive was never built for that reader — here's what has to change.

Why Talos Linux's Own Creator Didn't Build Omni on Cluster API
Sidero Labs, the team behind Talos Linux, built its own Omni product without Cluster API. Here's a point-by-point read of its six objections against what a CAPH/CAPD-based fleet like bex actually looks like.

Deploying vLLM as Just Another Git-Push App: What GPU Scheduling Actually Adds
Placement mostly reduces to a manifest field and a node-pool label. Routing doesn't — a worked example against bex's actual Hetzner GPU inventory shows exactly where 'just another git-push app' breaks down for a model server.

12-Factor Agents Is the New 12-Factor App: A Deploy Tool's Field Guide
Dex Horthy's 12-Factor Agents mirrors Heroku's 2011 methodology almost line for line. Here's what each of the twelve factors concretely costs a platform building MCP-exposed deploy and rollback tools for AI agents.

Buildpacks vs the Self-Hosted PaaS Pack: Why Coolify, Dokploy, and Kubero All Default to Heroku's git-push Instead of Cloud Native Buildpacks
Heroku co-created the Cloud Native Buildpacks standard in 2018. In 2026, the leading self-hosted PaaS tools still don't default to it — and two of them support it anyway, just not by default. Here's the actual build layer under each tool's hood.

Chaos Mesh vs LitmusChaos: Which One Actually Fits Breaking Your Own Fleet on Purpose
Chaos Mesh runs a privileged daemon on every node; LitmusChaos spins up a disposable pod per experiment. A concrete look at which one actually proves a self-hosted, multi-tenant Cluster API fleet survives a node loss, a network partition, and an etcd disk going slow — without taking down a tenant's app by accident.

Crossplane vs Cluster API: What a Self-Hosted PaaS Actually Needs
Crossplane can turn any cloud resource into a Kubernetes API; Cluster API already does that for machines. A concrete comparison of what each buys a self-hosted PaaS, and whether bolting Crossplane onto Cluster API solves a problem that's already solved.

Crossplane vs. Cluster API: Two Bets on 'API-First Infrastructure' (and the One a Git-Push PaaS Should Make)
Crossplane and Cluster API both expose infrastructure as a Kubernetes API, but they bet on opposite things. Here's the concrete test for when a self-hosted PaaS needs Crossplane's generic composition engine, and when a hand-written CRD wins instead.