Serverless, emphasis on the less, and by less I mean more.
Mon, Apr 29 2019
Serverless, it's the hot new topic in web publishing technology. So where did the servers go & what is it?
Well, the servers really didn't go anywhere. There are still servers! In fact, there are more servers than ever. The main thing to understand is that Serverless is really just an application interface layer on top of many networked server resources that you can use as needed. You no longer have to maintain or configure any hardware and the network resources can scale instantly as your application or site grows, both of which are actually great. So to be clear there are still servers they are just hiding them from you behind another layer of technology.
There are some very cool things about Serverless & the hosting company netlify offers most of them. Firstly, forget FTP. You now can deploy directly from your git repo. Deploying from git is great for developing, staging & rollbacks. It's also strangely satisfying. It's awesome for node sites, Static sites & front end heavy sites. Netlify has server-like configuration options, built-in authentication, automatic integration with Amazon Lambda, free easy https & great personal customer service. If you want to get your feet wet with serverless I highly recommend netlify.
So what's stopping you from moving all your projects to Serverless tomorrow? Well, there are a few drawbacks. With the exception of NodeJs, you have no access to traditional backend programming languages that execute on the server. If the browser doesn't support it won't execute sorry... hence the name serverless. Do you need to use PHP, Go Python, Java, ASP, Cold Fusion? They will not run on your new serverless product. So what's a ninja supposed to do? Well, you are not S.O.L. they have it all planned out for you.
You can pay for and run your backend functionality on another service and use it via an API. Amazon has rolled out its Lambda service and it's integrated directly into netlify. Lambda! What a catchy name I'll say it three times. Lambda Lambda Lambda. Reminds me of Revenge of the Nerds for some reason... ok I'm on a tangent... back to serverless.
So really serverless is a form of technology compartmentalization & interdependence. It's complicating the backend process & opening up new points of failure for critical parts of your application that you have no control over. And each time you use a function it could incur a cost which is honestly a big pain in the ass. Should you worry? Well... not right now. Amazon at least, for the time being, is incredibly reliable and for most applications the cost is negligible. However, It's something to watch out for in the near future. There could come a time when you have few other alternatives to deploy your Serverless functions, the cost could skyrocket and the API calls could be less reliable... effectively driving anyone not "in the club" out of business.