, 2 min read

Cloud-native essay dives into our infrastructure

TL;DR: I coined the term “stack-native” as the opposite of cloud-native. It means building your app with just enough full-stack building blocks to run reliably with minimal complexity. Talk Python runs 28 apps handling 9 million monthly requests on a single server for $65/month. An equivalent AWS setup would cost an estimated $1,226/month.

I just wrote an article entitled “Opposite of Cloud Native is?” It’s inspired by how we’re running things here at Talk Python:

There seems to be a lot of contention lately about whether you should go all-in on the cloud or to keep things as simple as possible. Those on the side of “build for the cloud” often frame this as cloud-native. By that, I believe they mean you should look at every single service offered by your cloud provider when architecting your application and generally the more services you pull together the better. … In this essay, I’ll define a new term for the modern opposite of cloud-native. I think you’ll find it appealing.

What is stack-native?

Stack-native is building your app with just enough full-stack building blocks to make it run reliably with minimal complexity. Instead of weaving together dozens of proprietary cloud services, you use well-understood open-source components. Docker, a Python web framework, a database, and a reverse proxy, all deployed on affordable VM infrastructure.

How Talk Python runs stack-native

Our entire infrastructure looks like this:

  • Application framework: Flask (via Quart for async)
  • Containerization: Docker and Docker Compose
  • Web server: Granian (Rust-based WSGI/ASGI server)
  • Reverse proxy: NGINX
  • Database: MongoDB
  • Hosting: Hetzner (single CPX41 server: 8 CPU, 16 GB RAM)

This handles 9 million monthly requests across 28 applications. Theoretically, the setup could handle 100+ million monthly requests.

Cloud-native vs stack-native: What does it cost?

Stack-native (Hetzner) Cloud-native (AWS estimate)
Monthly cost ~$65/month ~$1,226/month
Vendor lock-in Minimal Significant
Migration effort Low (standard Docker) High (proprietary services)

The full essay goes much deeper into the philosophy, the specific tradeoffs, and why “complexity merchants” push hyperscale cloud services. Read the full article at mkennedy.codes.