Profile picture
Simon Wardley @swardley
, 24 tweets, 5 min read Read on Twitter
X : Can you explain what is serverless?
Me : The definition I use? Serverless is an event driven, utility based, stateless, code execution environment.
X : What about Amazon S3, isn't that a serverless environment?
Me : Nope, it's a web service for storage. It can used as an event source and storage of state by a serverless environment such as Lambda. It might even in the future be partially built upon a serverless environment.
X : What do you mean by code execution?
Me : Really? Ok, you are solely concerned about writing and executing code. There is no concept of machines, of operating systems or the mechanics of distribution or scaling of. Just code, not servers / VMs / containers etc.
X : What do you mean by event driven?
Me : The initiation and execution of the code is caused by some event for example the calling of an API or the storage of a file. The code is not running and listening for some input but instead is initiated and executed by the event.
X : What do you mean by utility based?
Me : You pay for the code only when it is running, and the cost paid depends upon the resources the code consumes. The is no payment for idle time or hosting.
X : What do you mean by stateless?
Me : Really? Environment in which the code runs is constructed in response to event, code is then executed, and environment deconstructed. No information can be passed between each function call by virtue of the environment it is running in.
X : What about microservices?
Me : What about them? Microservices don't make an environment serverless, they are just a common pattern used when building systems in a serverless environment.
X : What about containers?
Me : Underlying machinery (invisible subsystem) that may or may not be used. Future serverless environments will be encoded at the chip level. So, as far as serverless goes then containers is ... meh? might be used? who cares other than the provider?
X : Is OpenStack serverless?
Me : Yes and No. Yes if you've got a big enough marketing budget to convince the clueless. Otherwise no.
X: Is OpenShift serverless?
Me : See Openstack. It's closer but falls down in four key areas - event driven, utility based, stateless, code execution environment. Given there are only four areas that matter with serverless, you can pretty much say .. no.
X : AWS Lambda is bootstrapped and executed within linux containers.
Me : Yep, and those containers run on physical machines powered by electricity. This does not mean my local nuclear power plant is an example of a serverless environment. These are all lower order components.
X : Serverless is just a marketing term.
Me : Yes and No. It has meaning as the name we give to an event driven, utility based, stateless, code execution environment but yes, desperate marketing and thought leaders are helping confuse things - see the history of serverless image
... do expect that in the future someone will be selling enterprise grade "Serverless on a box" (aka serverless servers) ... something, something about one born every minute.
X : Serverless is really only useful in niche areas.
Me : That's true if you accept that one of those niches is called "The Future" and it includes pretty much all of it.
X : Are you concerned about serverless lock-in?
Me : If I was one of those companies that was concerned about lock-in with cloud and waited until I had no choice and incurred extortionate costs (due to demand for skills) then I might be concerned over making the same mistake.
... of course, I am assuming that people both :-
1) remember the costs caused by waiting to adopt cloud or building their own eye watering expensive private efforts
2) want to remember i.e. they're not incentivised to go spend oodles and oodles of cash on lost causes.
... in practice, there'll probably end up being a very lucrative market of "serverless servers" (serverless on a box) with lots of analysts claiming it is the future, launch parties galore and decade or two later hordes of company CFOs sobbing "why oh why" - see private cloud.
X : What if a public cloud provider is using OpenStack Qinling, backed by a Magnum K8s cluster, having Aodh and Zaqar enabled to trigger alarms based on events?
Me : Many components can be used to build a serverless environment. Your question now is ...
... to put this into context, my company built the first serverless environment in 2005. It is a field I know reasonably well. Would I today try to compete with AWS or MSFT in this space? Yes, if my company name is Google or Alibaba. No, if it's not.
... what you need to understand is how AWS and others play the game. If you read into basic ecosystem models e.g. ILC - blog.gardeviance.org/2014/03/unders… ... you will quickly discover that you're not competing against AWS Lambda but the entire ecosystem that's building on Lambda.
e.g. if AWS lambda had 20,000 outside developers building on it ... you need to think of this as "Amazon has a free R&D department of 20,000 finding new patterns" plus all the resources that AWS is throwing at Lambda. You don't stand a hope unless you're like Alibaba.
... hence you either just adopt it, build on top and look to build an adaptive organisation (hint, try to be "green" at all the doctrine that matters, see table) OR you build a time machine, go back about a decade and start working from there.
X : How would you build a time machine?
Me : lol ... classic. That has made my day.
X The future is not about centralised environments like serverless.
Me : At what point did I say serverless means centralised? Systems like Lambda will end up everywhere - every sensor, every device. See Greengrass. It's necessary to solve "move the data to code or vice versa"?
Missing some Tweet in this thread?
You can try to force a refresh.

Like this thread? Get email updates or save it to PDF!

Subscribe to Simon Wardley
Profile picture

Get real-time email alerts when new unrolls are available from this author!

This content may be removed anytime!

Twitter may remove this content at anytime, convert it as a PDF, save and print for later use!

Try unrolling a thread yourself!

how to unroll video

1) Follow Thread Reader App on Twitter so you can easily mention us!

2) Go to a Twitter thread (series of Tweets by the same owner) and mention us with a keyword "unroll" @threadreaderapp unroll

You can practice here first or read more on our help page!

Did Thread Reader help you today?

Support us! We are indie developers!


This site is made by just three indie developers on a laptop doing marketing, support and development! Read more about the story.

Become a Premium Member and get exclusive features!

Premium member ($3.00/month or $30.00/year)

Too expensive? Make a small donation by buying us coffee ($5) or help with server cost ($10)

Donate via Paypal Become our Patreon

Thank you for your support!