Is serverless architecture the electricity of software?
Is serverless architecture the electricity of software?1
The terms serverless, lambda and “#noOps” have been circulating. At a cocktail party, it will cause business owners to find that now is the perfect time to go freshen up their drink.
Serverless architecture is as important to businesses as electricity was to the Industrial Revolution.
Serverless architecture is an infrastructure breakthrough in allowing developers to focus on business value, instead of operations. Just as we plug a toaster, iPhone or refrigerator into an electrical outlet, secure in the knowledge that we don’t have to do anything more to get what we want, so will serverless architecture power business applications. Just as the evolution from watermills to steam power to electricity powered the Industrial Revolution, so will the evolution from dedicated servers to cloud computing to serverless power the software revolution.
Originally “mills” were literally watermills, located on water ways so that water wheels could provide power. There were gristmils (to grind corn or wheat), sawmills (to cut logs into boards), paper mills (to make paper).
Before the invention of steam or coal power, humans used nature’s potential energy to drive more power than a single person could muster. Of course, the consequence of using water mills was that the mills were literally co-located with the machinery they drove. It wasn’t possible to have a water wheel power a gristmill 10 miles from the banks of the river which powered it. Your mill was by definition vertically integrated – and if there was a drought or insufficient water flow, no milling could occur.
Server farms are today’s water mills
The computer analogy of the water mill is to the first server farms. If you were a software business, you needed a data center. You needed a data center with machines that were labeled with your businesses name, and you needed people who could run them. If you had a new project, you needed to build a new server to go along with the project. Depending on how much influence you had in the organization, this could take a long time, as even with much influence, do you think it’s easy to just get a new water wheel up and running? No. It’s not easy. You had to find the budget for a server, buy the server, get the server up and running.
When steam and coal power were invented and commercialized, suddenly manufacturing throughput exploded. Mills no longer had to be at the banks of rivers, and could be anywhere, and grow much larger. Ford built the huge Rouge plant in Illinois, capable of building hundreds of autos a day. A similar step happened when AWS started selling “Web Services”. Instead of the old days of having to provision a server at a colocation facility, AWS now does it for you. Want another server? No problem! The old days of opening a ticket, waiting for your ticket to be addressed, and then installing an application are gone.
“Life as the engineering owner has gotten easier now that someone else runs the hardware for me,” says Andy Denmark, CTO Chairish and formerly of OpsCode and TripIt. “I don’t need to wait, and what used to take a full time staff member and months of work is now less money and much quicker.”
The final wave of the industrial revolution was electricity. Ford ran his own power plant to build his cars. Now, factories instead of building a power plant and being constrained by their own power supply, buy power from potentially thousands of miles away.
Serverless is the natural progression
Serverless is the same step – it allows developers to plug APIs and not worry about which server or where code runs. With Amazon’s Lambda Instead of having to worry about an AWS instance — spinning up, spinning down — just plug functionality into the grid. What server it goes to isn’t your concern.
“AWS Lambda’s been great for Wordnik.t helps us, as a small nonprofit, be extremely flexible and responsive,” says Erin McKean, CEO of Wordnik.t. “For instance, we’ve been able to prototype robust new APIs for edtech clients with minimal cost and developer time. We don’t have to spin up & pay for a 24/7 server for an API that’s just called a few hundred times for testing.”
What is the business impact? In the short term, the ability to do more, better, more quickly, by completely separating software from hardware by delegating running servers to someone else. If this seems threatening or disempowering, think about whether your business’s core competency is running servers, or building software. Do you want to do more with less overhead? Or do you want to run hardware? Of course, there will still be a very few businesses where it makes sense for them to maintain their own servers. And legacy software can’t move to serverless architecture overnight.
Serverless is the right step to make business value for applications as easy as plugging a phone into the wall.
The post Is serverless architecture the electricity of software? appeared first on ReadWrite.