The end of a week is a good time to reflect, and there’s nothing better to reflect on than that huge, complex, disorderly transition of global IT and network services that we call “the cloud”. It’s wonderful to be fuzzy, I guess, because when you are your boundaries can be smeared around at will to envelop anything and everything. That’s true of the cloud in the short term; it’s what gives rise to the notion of “cloudwashing”. In the long term, it’s clear to anyone who looks objectively that the cloud IS anything and everything so no pretense is needed. What’s at issue is whether a given “thing” (be it vendor or product) has a place in the cloud or becomes a “nothing” by definition.
The big winner in the cloud of the future is the concept of “orchestration”. This is the highly evocative term that means the coordination of both cloud resources and cloud application components to combine and create a harmonious experience for a worker or consumer. Clearly you have to apply orchestration to resources or virtual things stay virtual and nobody gets anything but promises. What’s not been clear but needs to be is that when you take component elements of functionality and host them anywhere, whether they’re assigned static or dynamic resources, you have to orchestrate these components to create something cohesive. So what characterizes the cloud is “multi-dimensional orchestration”.
The big at-least-potential loser in the cloud of the future is, surprisingly, the cloud of the present. We have in the cloud a vision of a new IT world that’s confronting the leavings of the old one. There’s little or nothing out there today that can fairly be called a “cloud application”. What we have are non-cloud applications that somebody has shoehorned into running in the cloud. If the cloud were mature and real in its final form, you’d not need to argue about things like operating systems or virtualization. All that stuff is under the covers. All future cloud applications and experiences are assembled by orchestrating service elements exposed as APIs by processes that live in something we don’t care about. IaaS, the kingpin of the cloud today, is a way of getting VM hosting to facilitate server-consolidation-like applications that, once we realize what the cloud means will never be written again. If this low-level stuff is important then the cloud is too complicated to ever justify itself. The cloud’s own evolution will make it transparent, as it has to be. That means that cloud providers have to treat the current market as what it is, a transition strategy to reach the future market. That, in turn, means that their offerings have to address that future now, and gain ownership of its issues.
I think there are some basic truths we can rely on in doing this. First, there will be a number of future cloud platforms, just as there are a number of OSs today. What made current OS leaders into leaders was getting out there quickly and gaining developer and user support. Same for the cloud. Second, the cloud of the future won’t need virtualization to run on, and so virtualization has to be a feature and not a focus. Third, you can’t differentiate cloud offerings on management interfaces. The purpose of the cloud is to serve, and only services can differentiate you there.