It is common knowledge with experienced IT people that no trend stays absolutely true forever, every decade+ there is a significant shift in the industry. From the 50’s with Mainframe computers and a more centralized approach of computing to the more distributed one in the PC era, then to a more hybrid approach in the client/server era where we came back centralizing in servers but started having powerful computers to share the load. These days in the cloud era, driven by the need for speed of innovation, clouds are the new centralized infrastructure. The agility the cloud provides for organizations to execute their ideas and the fact that managing infrastructure does not differentiate the business drives many organizations to choose a “cloud-first” policy. There is no reason for a business that is not in the datacenter business to be in the datacenter business, and that truth is being considered as the only absolute truth. It is almost a heresy to suggest otherwise these days. Which is one big reason that I think a significant change is imminent.
Why cloud consumption will not go down, but “stickiness” will
I will get to explain the signals I see that make me think that cloud stickiness will start to diminish, or at least there will be an ever-increasing effort to try and reduce it. Yet I want to first explain what I mean by cloud consumption will not go down but stickiness will.
Side note- I will stop putting quotes around the term “cloud stickiness”, because, to be honest, that is not a metaphor. It is a major KPI in the ability of the clouds to retain and increase their customer base. I do not think there will be a lot of dispute on the fact that one main goal for any cloud is to increase their stickiness so that it is harder for organizations to switch to another cloud.
When I say cloud consumption will not go down that is because what I outlined above will always hold true. Most companies, especially those that rely on software or create software themselves, do not differentiate from their competitors by running their own datacenters. The level of availability the clouds provide, with the ability to connect to cloud services at the speed of a credit card swipe, makes it that It just doesn’t make sense business-wise for them to spend so much effort running their own infrastructure. The natural drive of a business is to grow and expand, never stay static. At the end of the day, for many companies, mostly the smaller and medium ones, managing a datacenter does not make sense, and renting compute services does, as that provides them much faster time to market with subscription costs (OPEX), that is a significant value for many businesses. so cloud will continue to grow. But, with that truth, there are many reasons why the current reality of applications being glued to the cloud they are on, that reality will increasingly need to change. Calling the cloud “hotel California” is no longer cute (killer guitar solo though).
So the question is, what will happen and how will it happen. How will we be able to reduce the stickiness? I don’t have all the answers, if I would that would mean that I can see the future, but I have an idea of what we CAN do these days, I’ll get to that later.
It all about the economics
For those who don’t follow Martin Casado on Twitter, I suggest you do. He is one of the most insightful people in our industry, and the best part about Martin is that he does not shy of a 1:1 public discussion about his insights. Unlike many self-anointed “thought leaders” (like yours truly 🙂 though I consider myself more of a thought scribbler), Martin puts his well-articulated research out for judgment and then turns to have direct discussions with peoples who challenge his conclusions and whose ideas and experiences might even counter what he just published. That gives us bystanders a trove of knowledge just by reading those debates, just go into Martin’s Twitter account and read the comments and answers. One of the latest research published by Martin and Sarah Wang from a16z discusses the harsh truth of cloud economics at scale, and how that affects not only the bottom line of a business using cloud at scale, but how it even holds back the company’s share price. I suggest you read that article but also read the threads on Twitter. Here is the original Tweet from Martin
Now, I will not copy-paste the entire post here, but it obviously and painfully all makes sense. As the years go by, what we used to refer to as the “true cost of cloud over time” being a prediction 10 years ago, is now the reality of many companies that see how the bill is very high. Also, as companies make the decision to lock themselves into a specific cloud, and I hear all the time statements like “we have decided to move 70% to AWS”, or “we decided that any new application will go first in Azure” etc, the power of the cloud is increasing and with that their margins. It’s just a basic rule of business, the fewer options the customers have and the more the demand is growing, the more profit the provider can take. And we have already established that the demand will just continue to increase. So according to the research, when companies are in the early days of their life, there is not a better, faster, more efficient, and more economical option for them to create software except in the cloud. But as those companies grow, and the scale of their IT operations becomes larger, the cost of the cloud, especially over time, becomes bigger and more stressful for the business up to the point that it can actually affect their stock price.
One of the main conclusions that Martin and Sarah bring in their research is the need for repatriation. This is from the blog post:
“Think about repatriation up front. Just because the cloud paradox exists — where cloud is cheaper and better early on and more costly later in a company’s evolution — exists, doesn’t mean a company has to passively accept it without planning for it. Make sure your system architects are aware of the potential for repatriation early on, because by the time cloud costs start to catch up to or even outpace revenue growth, it’s too late. Even modest or more modular architectural investment early on — including architecting to be able to move workloads to the optimal location and not get locked in — reduces the work needed to repatriate workloads in the future. The popularity of Kubernetes and the containerization of software, which makes workloads more portable, was in part a reaction to companies not wanting to be locked into a specific cloud.”.
This is true, but with an asterisk: it’s not repatriation of existing workloads or the re-refactoring back of those apps. Refactoring is a costly process that does not always make sense, and it will be very hard and not economical in most cases to repatriate existing workloads. But building NEW applications with less stickiness to the cloud they are on, is definitely something we can do. To put it in other terms, build greenfield with as little cloud stickiness as possible.
The cloud is just someone else’s computer
The cloud stickiness gives power to the cloud provider, and we’re seeing how it is in many cases too much power, for their own good. This lock can drive some workloads away from the cloud or to the less sticky cloud. What does that mean? The companies providing cloud services like AWS, Microsoft, Google, Oracle, etc are commercial companies that have their own commercial interests. These are not government-funded entities. These are publicly traded companies with their main responsibility to their shareholders. Their interests CAN conflict with those of their cloud customers.
Let me give you one example from Israel. If you didn’t know, I am from Israel, and I have many friends in the Israeli market. In the past couple of years many Israeli organizations, including ones that under regulations, starting to embrace the cloud, but that may change now. One trend we see is that there is an increasingly growing fear of using the cloud after the latest conflict Israel went through in May 2021. The global public political pressure against Israel grew, and the concern is that companies like the cloud providers may be forced to take a political stand and shut an Israeli company/ies down on their cloud infrastructure due to that political pressure. After all, the cloud companies may be subject to that pressure in other businesses that may not relate directly to their cloud business but everything affects the stock price. This concern is very valid, and it is not restricted only to Israel. The only way to address it is to start using multiple clouds or have the ability to move to another cloud including on-prem if they need to or not using cloud at all. That means reducing the cloud stickiness.
There could be also concerns from the commercial side for cloud consumers, where companies starting in the cloud may come to compete with another business their cloud provider is in, as these companies are also always looking for areas to expand to.
No one wants to be dependent on their major competitors for oxygen.
So the fact that the cloud providers have their own interests beyond just hosting the IT of another company, and the fact they own that infrastructure and can take decisions that may not always be beneficial to their customers shows that there is always a potential that business would need to move to another cloud or to on-prem sometime. That requires reducing the cloud stickiness to reduce the cost of moving.
Hubris will always get ya
We talked about the economics of the cloud, and about the power the clouds hold to the detriment of their customers (and themselves). I want to also touch on a signal that is less quantifiable but in my opinion undeniable. And that is hubris.
From Wikipedia: “In its modern usage, hubris denotes overconfident pride combined with arrogance”. We all know the stories about that person or entity who became overly confident and as a result overly arrogant and that is when the balance that was in their favor tilts in the other direction. The same goes here. Cloud is and the providers are becoming very powerful, so much so that they allow themselves to dictate their own terms and set their system to be as sticky and as opaque as possible, sometimes more than their own customer’s needs. This is usually the moment when opinions and market directions start to change, before you know it more and more public opinion can sway against the cloud stickiness and the benefit may be reduced. How will this increase, no one knows, but it is almost a law of nature that that’s how things roll. To support that just look at the fact the major cloud now has a “multi-cloud” strategy of their own. That seems counterproductive to their business after all their interest to have fewer options for their customers to move out or use other clouds, yet they do put on a public strategy for multi-cloud. The customers demand that they accept the use of multiple clouds, but in my opinion, it is mostly a facade and their interests will always lie on keeping you in. Feel free to disagree with me, this is totally subjective 🙂
You cant reduce stickiness, you must build that way
Stickiness to the cloud has many factors. The main ones are data gravity, cloud services stickiness, and infrastructure stickiness. Data gravity is a hard one to solve, cloud services is possible to reduce stickiness when it doesn’t conflict with application business requirements and infrastructure can be abstrcted. Let’s discuss:
- Data gravity – the laws of physics are absolute truths that cannot be defied. Until someone finds how to 🙂 but the fact that data travels at a top speed is a constant. That means that wherever your data is and based on your latency requirements that is also where you will put your systems. Also moving data around is expensive. Because of these factors, it is very hard to operate in many places or clouds. The answer to that is better caching, but I doubt that there will be the perfect caching algorithm that will allow customers to always predict which data needs to be in a certain place before it is being pulled. Therefore companies plan their cloud placement and exit plans based on data gravity first. Until someone invents that instant communication that is faster than the speed of light, that truth will stay.
- Cloud services stickiness – when your application uses a cloud service, such as RDS or kinesis, your application is also bound to that operationally and directly. You cannot just switch to the equivalent service on another cloud or host one yourself at a whim. In order to do so, a company needs to build their application with as less cloud service stickiness in mind and try to utilize more open and generic services. As much as possible of course. If what the application needs exist only within a specific cloud service then that requirement trumps the need to reduce stickiness every time.
- Infrastructure stickiness – When developing a new application, allowing the services within it to communicate and be secured requires the use of infrastructure components and services such as CAs DNS, IPs FW policies, LBs, directory services etc. Abstracting those with technologies such as service mesh allows companies to remove the dependency on those services. This can reduce the cost of moving to another cloud or to on-prem in the future when it is needed. It also allows companies to put their services in multiple clouds at the same time while still allowing them to communicate without being dependant on one cloud technology or another. This can reduce the stickiness of the cloud significantly and increase the ability if an application to optimize around their business logic requirements
Cloud consumption will not go down, cloud stickiness will
To conclude, cloud consumption will continue to grow exponentially. But we will see more and more and more applications to be developed with multi-cloud in mind, reducing the stickiness of the clouds and finding new ways to move around. Yes, the data is expansive to move, but with reducing the dependency on proprietary cloud services (as much as it makes sense) and the infrastructure stickiness (as much as it makes sense), a company can reduce the cost of an exit plan so the breakpoint between moving and not moving becomes lower. This means the more it makes sense to do so there will be an increasingly growing effort to reduce the cloud stickiness, not its consumption.
feel free to leave your comments here or ion my Twitter feed, feel free also to disagree with me, but be social and share