It takes few minutes to setup a Cloud instance and start using it. This is always far faster and easier than provisioning your own hardware. If you look at this as a function of value vs. effort, it may look something like this. It provides limited value for limited effort. All you are getting is access to pre-provisioned instance.
It takes few minutes to write a Lambda function, deploy and start using it. People are doing this now to automate mundane operational scripts. If you look at this as a function of value vs. effort, it may look something like this. It provides limited value for limited effort. All you are doing is moving few cron jobs to a serverless infrastructure.
Over a Period of time:
Assuming you stick with putting in more effort, how will the value vs. effort function evolve?
The more effort you put in, the more value you get. Over time you will slow down a bit as you have to learn different components and how to tie them together. Standardizing on a single cloud provider will help you realize the value quicker. Below is how value vs. effort may look like.
The more effort you put in, the more value you keep getting. You will find variety of quirks in serverless platforms that will slow you down. Standardizing on a provider will help you get through these quirks faster. However, the value realized will increase dramatically even with little bit of effort.
Below is how value vs. effort may look like.
No surprise so far, right?. While the S curve might look smooth, its actually quite bumpy while its happening. For example, when Cloud adoption started, it had limited use. There were problems like the famous Christmas outage. People were unable to provision instances because Cloud provider was not able to keep up the demand. There was also case of a whole company went down in flames because their source code was all on one region and hackers shut them down. There were incidents of company services being unavailable for few days because multi region and multi AZ was still a novel concept.
Despite these issues, Cloud adoption remained stronger because at the core of it was a business model disruption. It disrupted the way companies buy infrastructure and the process of provisioning them. It gave power to developers and helped them move away from the hell of raising a service ticket with operations to get a server or a VM. For executives, it was a nice change to balance between Capex and Opex. The introduction of Reserved Instances (with all its problems) gave even more flexibility for IT execs to forecast their spend.
But, for those of us who watched the Cloud take off, it was painfully slow. We expected all enterprises to be on Cloud by 2015, here we are in 2018, there are still enterprises building on-prem infrastructure. The reason being is that while Cloud is appealing, it wasn’t an overnight game changer for some of these organizations.
Drivers for Serverless adoption are even stronger
While Cloud did wonders for developers and IT managers, serverless makes it many folds better. With Cloud, you may have still have an instance running that is not fully utilized. You may have to reserve capacity in anticipation of your workloads. While you can buy it right before demand, you still can’t guarantee that you will use all the provisioned cloud capacity. Also, you are still managing the VM and/or containers.
Other factors at play here is an increased interest in micro services and building cloud native applications. Serverless lends itself nicely to this because its damn hard to stuff a monolithic app into a serverless model.
Serverless takes you to findev, as described by excellent Simon Wardley. (PS: If you aren’t spending time regularly reading Simon’s posts, you are missing out).
Serverless allows developers to focus on writing code for most part. Serverless also allows operations to just write their code and automate their mundane tasks. Developers writing code, uploading it and it runs immediately and is triggered by events is beautiful. This was a dream every ERP vendor and enterprise software vendors had in early 2000s. It was just that we did not had a compelling platform that had the scale and reach to do this on.
Secondly, you do not reserve capacity. If you develop an app and it doesn’t have enough demand, you are only paying pennies. There are no ELAs with serverless. ( well, AWS sales reps will find a way though, they will offer you discounts, if you commit to a certain level of spend — DO NOT DO THIS YET).
Serverless today still has plenty of hurdles and warts. For one, its still a painful paradigm to tie entire development process around. There are slooooooow cold starts, and no one in their right mind will deploy a real time apps 100% on serverless today. But, this will change quickly. There will be tooling, and there will be fast starts, there will be best practices and there will be rich architectural guidance.
Well informed folks are already whispering about how fast enterprises are embracing serverless. A friend recently said of shock from a leading analyst on how fast serverless has made its way into enterprises. We are year #3 into the journey and every enterprise that matters is using bit of serverless.
The signals tell me that serverless adoption will be much more rapid than cloud adoption. It will actually benefit the laggards who did not jump onto Cloud. The ones who went all into Cloud with reserved cloud capacity will take little longer to make the switch to serverless. The ones who were little slower to start with Cloud are jumping onto serverless and will reap the benefits.
Currently, AWS has unchallenged lead in serverless. MSFT and GCP once again find themselves in the challenger position. AWS lead will grow further. We are about to witness mass market adoption of serverless, but at a much faster rate than Cloud.
Disclaimer: StackSense.io invites outside experts to offer their opinions on various topics related to Modern Enterprise IT Stacks. Neither StackSense nor Rishidot Research are responsible for their opinions. We believe in fostering an open channel for discussions on topics related to Modern Enterprise