Serverless: A Platform Built From Fear

devin hurley
4 min readMar 20, 2018

--

TL;DR: At a surface level, serverless is a really cool billing model. But when I can’t use standard HTTP interfaces or I need to tightly integrate platform-specific logic to my application like I need to with AWS Lambda, serverless begins to break down in utility. This vendor lock-in is a response by cloud platforms post-realization that containers are commoditizing and cannibalizing their services.

Cloud providers are scared. Containers now pose a threat to all cloud platforms and cloud providers know this. Containers provide an interface to facilitate the commoditization of most services cloud providers offer. If a cloud service speaks HTTP, your application no longer needs to be tightly integrated into cloud services in order to speak to it; an EC2 instance becomes virtually the same as a Google Compute instance when it runs inside a container.

With the arrival of serverless platforms, we are seeing cloud providers learn these lessons and turn inwardly. Now, they are reliant on the marketing of serverless billing models to convince you to more tightly integrate your application to their platform at a code level, and charge you more. This has lead to proprietary network communication protocols and models. The serverless movement, as it stands now, poses a threat not just to your applications but to you as a developer as well.

Back in the day, Oracle controlled the world. The only way you as a developer could move up was to stay with a company that paid Oracle a bajillion dollars so that you (the developer) could get your hands on Oracle’s proprietary software, gain experience, then move on and up (maybe).

When Free Open Source Software (FOSS) arrived on the scene, we saw the opposite. Currently, if a developer wants to change careers they can spend an hour a night for a few weeks and learn a new technology and participate in a community that could be completely orthogonal to what they do during their day job, and still manage to move on and up.

As cloud platforms begin to return to the Oracle days of tightly integrated application logic, proprietary networking protocols, and syntactically complex proprietary configuration systems, you as a developer lose out. You won’t have the freedom to try out new things at home. Your bargaining power deteriorates when you spend your nights learning new configuration systems instead of new technology.

These proprietary systems are aiming for perfectionism. But this targeted perfectionism only exists within each cloud providers’ ecosystem. Perfectionism is hard to get right unless it’s within an environment that is already controlled, and thus these systems become protectionist as well. Protectionist policies don’t work in the long run. FOSS won and continues to win because great ideas and solutions are shared and implemented out in the open.

When you as a company use FOSS over proprietary software, your competitive advantage as a company increases. Utilizing FOSS gives you access to a literal market of the best people to meet your job criteria. All you have to do to find them is look at who starred / committed to a specific FOSS repository (which your company utilizes) in GitHub. Now you are armed with the right information to ask a community and see who might be interested in your job postings or company.

On the other hand, your company loses when you invest and buy into proprietary software, and serverless platforms are just that. Developers are afraid of proprietary software because it limits their job opportunities elsewhere, and when a developer is afraid of your job posting because of listed proprietary software, you’re not going to get the most skilled applicants. We as a community have a prerogative to use as much open source software as we can because of the market FOSS creates. If you as a company find yourself investing time to learn and implement a proprietary, closed-source configuration system instead of a FOSS stack, you can guarantee you will be on the losing side of history.

Developers are also more incentivized to want to use FOSS because FOSS gives them bargaining power when it comes to employment. It does this by showcasing skills or interests, and then creating a market and demand for those properties. Unfortunately, the current state of serverless ecosystems does not purport any FOSS principles, nevermind actually being FOSS. Products such as API Gateway are the epitome of vendor lock-in when it comes to serverless.

As serverless gains more momentum as a hosting platform, consider how moving your applications to full-on serverless platforms forces you into vendor lock-in. Your long term growth will be hindered as a company due to the lack of available people with the desire to learn the relevant skills in that ecosystem, and your code will cause you to pay the platform more money as you try to remove the stranglehold serverless providers sneak into your code.

I have great hope for this new era of serverless platforms, but until I see a serverless platform that actually commoditizes containers and utilizes pure HTTP interfaces to kick off the function, I will be staying away from serverless.

--

--

devin hurley

"You're Abe Froman? The sausage king of Chicago?" My slackbot will help save you time at work. Feel free to send me some feedback (https://categorylinksbot.io)