Why I, A Serverless Developer, Don’t Care About Your Containers

Lars Trieloff
Mar 1, 2019 · 2 min read

A bit more than a week ago, Joe Ward wrote about the commonalities he sees between serverless computing and Kubernetes, and how Kubernetes can help in achieving a serverless architecture.

In his blog post, he concludes:

Given the rapid adoption of Kubernetes over the last few years, coupled with the increased control and reduced vendor lock-in it provides, I would argue: In the future, Kubernetes will likely be the primary way enterprise companies deploy Serverless.

Despite Joe’s eloquent and well-written argument, as a developer of serverless applications and application frameworks, I’m not convinced. In fact, I don’t actually care about Kubernetes, containers, or what’s underneath my serverless platform.

In his post, Joe talks about the auto-scaling, self-healing, and dependency-managed features of Kubernetes that will be attractive to serverless developers. But the expectations that I have, as a developer, are much better described in the Serverless Manifesto, specifically:

  • Functions are the unit of deployment and scaling.
  • No machines, VMs, or containers are visible in the programming model.
  • Permanent storage lives elsewhere.
  • Capacity scales per request. Users cannot over- or under-provision capacity.
  • There is no idleness — you never pay for cold servers/containers or the related costs.
  • It’s implicitly fault-tolerant, because functions can run anywhere.

Much has been written about the “server” aspect of serverless, but what people forget about is the “less” part.

It is serverless the same way WiFi is wireless. At some point, the e-mail I send over WiFi will hit a wire, of course. @slobodan_

“Serverless” uses servers in the same way “wireless” uses wires. But the “less” in “serverless” talks about the things, that I, as a developer, couldn’t care less about: machines, VMS, containers, scaling, provisioning, idleness, failover.

It’s as if Marie Kondo took a look at our software architecture and (after thanking each of the items) said “goodbye” to all the things that don’t spark joy. What remains is our code, our functions, and the fun that simplicity brings with it.

So here lies the paradox of serverless platforms: Yes, there are servers, containers, and probably even Kubernetes underneath; but the better job the platform provider does, the less the developer will actually see or care about any of it.

Do a good job, and you will get praised. Do a great job and you will be ignored.

Follow the Adobe Tech Blog for more developer stories and resources, and check out Adobe Developers on Twitter for the latest news and developer products.

Adobe Tech Blog

News, updates, and thoughts related to Adobe, developers…

Welcome to a place where words matter. On Medium, smart voices and original ideas take center stage - with no ads in sight. Watch

Follow all the topics you care about, and we’ll deliver the best stories for you to your homepage and inbox. Explore

Get unlimited access to the best stories on Medium — and support writers while you’re at it. Just $5/month. Upgrade

Get the Medium app

A button that says 'Download on the App Store', and if clicked it will lead you to the iOS App store
A button that says 'Get it on, Google Play', and if clicked it will lead you to the Google Play store