Nephophobia: Why We All Fear the Cloud
The ancient Greeks are known to have suffered from “nephophobia”: the fear of clouds (nephos means “cloud” in Greek). Although modern medicine may attribute this type of phobia to genetic and hereditary causes, clouds were often feared in the past for good reasons: they could potentially bring storms that can cause destruction, injuries, and even death. Is the fear of AWS, Azure & GCP that we see in traditional businesses also justifiable in the sense that these “clouds” may spell the decimation of our IT capabilities, and therefore our businesses? I will elaborate on said fear.
The Nature of Fear
Humans fear what they don’t understand. The cloud industry, compared to what we had before (managed data centres), is indeed nebulous. And by design!
What do I mean by that?
Back in the 90s, when I was a dot com entrepreneur and we were running portals across the Americas (from the US all the way down to Argentina) we soon got to the point in which running silos in various countries would not scale and so we had to “centralise” our services in one single data centre connected to a major Internet backbone.
As part of said exercise, we sent Jorge Grippo, our CIO, on a “tour” to visit various data centres. In the end, we settled for the Exodus Communications’ data centre in New York. When Jorge went to visit the data centre itself, he wasn’t given a tablet with a URL, or an invitation to a fancy lobby with a comfy leather sofa and a Nespresso machine. Instead, he was handed a Parka-style jacket for him to enter the actual server room and see the exact rack where our servers would be deployed. When we had access to the servers, a few weeks later, we knew exactly where they were, down to floor, room and row number.
There never was a discussion such as “on-prem” vs “out there”. If we wanted encryption “at rest” we applied it, if we wanted peer-to-peer security, we applied it.
We felt in complete control.
We treated Exodus’ servers like any other beige box under our desks. They were our servers, our boxes, our pets. Again, we felt in total control…. until Exodus declared Chapter 11 bankruptcy in 2001.
We have the right to question and challenge all cloud vendors. Convincing ourselves that moving to the cloud is the “right thing to do” just on the grounds of “moving on with the times” is naive. But when it comes to fear, though, we have to qualify it in precise terms. What do we genuinely think may go wrong and what are the consequences if the worst materialises?
But the odds are that our fear is about a perceived lack of control rather than the potential for failure or lock-in.
So you've heard the Gospel of Cloud?
How do you make sure you get everything promised to you?
You need to evolve your operating model!
That Which We Fear Most
Our most dreaded horror (after aliens, closet monsters and disgruntled voters) is a lack of control. We loath not being in charge. You see, with on-prem it is my application, my OS, my metal, my electricity bill. I do what I want with it. I can take my server to a hotel room in Bangkok and run it from there if I wanted to.
Back in my entrepreneurial days in the noughties, not only was my stack 100% open source (MySQL, Apache, Perl, etc.) but I made sure that it could run on at least three different operating systems (Digital Unix, Slackware Linux and Windows 95). Control, control, control! Not taking orders from Brussels, vendors and all of that. The funny thing was that as soon as we got venture capital, the first thing we did was licence all of our open source software (gratitude is another powerful human emotion).
My thesis is that everyone fears the cloud because we don’t want to lose control, but that we deal with said fear in different ways. Naturally, some of us actually go to the opposite extreme and become cloud fanatics… but I would rate that as another pathology: Stockholm syndrome. Who really wants to build their house on someone else’s land?
Let me lead by example and disclose my fear. Remember what I said about taking my server to a hotel in Bangkok? Well, I meant it. My computer is not your computer. Mi casa no es tu casa. I want to write software in any whatever language I want (e.g. Haskell) and run my software whenever and wherever I want … my laptop, some clunky traditional data centre, GCP, Digital Ocean… and most importantly, run my workload on an Intel NUC under the coffee table of a dingy hotel room in Khao San road!
Therefore, the way that I cope with my fear of cloud is by treating it as a commoditized capability whose primary function is that of spinning up Docker images, preferably using a managed Kubernetes capability. And this is because not only I want to control my software but, also, my zero downtime deployment strategy, scalability and configuration (I’m looking at you CloudFormation).
But you see…I am irrational. Kubernetes and Docker are an answer to an imaginary problem (that having a limited set of languages to choose from is a relevant business and technical issue). It is technical architecture driven by the boogeyman. I’m not really going to write an enterprise application in Haskell. Political forces and consensus will set me back to F# or Scala as the only options and that’s if I’m lucky. Next time I go to Bangkok I won’t take my laptop (let alone my NUC). My last thought after three strawberry margarita buckets, eight singhas and two pad thais will be "which are the arguments that follow the kubectl command?".
What Should You Fear?
So there you have it. My own fear debunked in a couple of paragraphs. Some other fears, though, are actually more understandable. Lock-in, developing intellectual property dependant on a single vendor, espionage on behalf of the NSA, unexpected price hikes, the vendor going bankrupt and so on.
But now, let me tell you what is it that we should all actually fear about the cloud (and this is more terrifying to me than being stranded with F#-based Lambda functions rather than Dockerised Haskell binaries): it is the fear of irrelevance.
How can I possibly be relevant to my customers if my services aren’t available at two-digit millisecond distance from their homes by means of a rock solid Content Delivery Network (CDN)? How can I possibly be helpful to my customers if, when they try to buy my products on Black Friday and Christmas, they get a 505 error because I ran out of rack space to add more blades behind my load balancer? And what is worst: my irrelevance is my competitors’ USP.
So you see, I fear the cloud and so should you. But what I fear much more is my competitors using the same cloud that I fear to offer second-to-none service levels to my customers!
I just can’t let that happen!