»

Why serverless is such a big deal

The term serverless is now a couple of years old, and we’re still only getting to grips with it.

Serverless differs in some fundamental ways from the usual ‘x as a Service’ model. It’s also a harbinger of the future of software development. But let’s back up a bit before we unpack this new model, and just look at plain old cloud.

The National Institute of Standards and Technology, which provides guidance on technology standards, defines cloud as ‘a model for enabling ubiquitous, convenient, on-demand network access to a shared pool of configurable computing resources (e.g. networks, servers, storage, applications, and services) that can be rapidly provisioned and released with minimal management effort or service provider interaction’. This leads us to the three cloud service models: Infrastructure-, Platform- and Software-as-aService. Let’s look at the differences.

INFRASTRUCTURE-AS-A-SERVICE

Here you get virtualised resources, and your cloud provider will look after the infrastructure, such as storage, networking and the servers. You manage things like the apps, middleware and OS.

PLATFORM-AS-A-SERVICE

In this model, customers will rely on the cloud provider for app hosting and data sets. The provider will also take care of most of the infrastructure.

SOFTWARE-AS-A-SERVICE

Here, providers manage the whole lot, including the application, which is accessed through a browser. It’s also the most commonly used model for businesses. One of the earliest examples of a SaaS company is Concur, a company that made its fortune providing expense management software. Back in 1995, the company was doing what everyone else was doing — selling disks with its software. It then started selling licences to enterprises, and then in 2002, to anyone with a browser. The revenue curve follows the classic hockey stick, and by 2014, the company was making $600 million, shortly after which it was bought by SAP for $8.3 billion. Other well-known SaaS examples include Dropbox, Office 365 and Salesforce.

SERVERLESS


In this model, your cloud provider acts as the server, meaning you only pay for what you consume. You won’t need to provision or manage any infrastructure and the app just runs in the cloud, accessible through a URL. It also doesn’t mean there’s no server: there’s always going to be a server, somewhere, it just means you don’t have to manage it. Pricing is based on the amount of resources that the app consumes, instead of paying for what you think you’re going to use. One example of serverless, and the first to market, is AWS Lambda, launched in 2014. Now, there’s Google’s Cloud Functions, and IBM’s OpenWhisk, among others, to choose from.

Serverless is largely about making it easy for developers to deploy code. They can do it themselves. And quickly.

As The Register explains, every piece of code that a developer wants to execute is called a ‘function’ on Lambda, which is then placed inside a container. With Lambda, AWS is providing a set of containers that provide environments for a number of programming languages.

This, says The Register, is no less than the ‘demystification of information technology’. “Serverless means that those building applications no longer have to care about how their applications do what they do, they just have to tell the applications what to do. And it opens up really complex application development to people who never could have done this before.

” And that’s a big deal.