Recent discussions with Brian Madden and at CloudCamp, Structure09, and elsewhere this week started my thinking about the nature of Cloud. Rather than an euphemism of the Internet, I see Cloud as the next step of its fulfillment. The Internet has held the promise, if not necessarily the conscious intent, of any device, any where since its inception as ARPAnet. With every abstraction, Internet technologies have brought this promise closer to fruition. Only we technologists have been slow on the uptake to understand and realise the potential. Now, Cloud stands on the threshold of realising this across the plethora of connected devices in use.
Recently, I argued that whilst the Internet itself has been a successful model, the curious Web 1.0 of star-architecture, J2EE-centric models to have hit its wall, run its course, seen its tail collapse. The Web communities as a whole are well aware of the spectacular FAILs of badly architected web applications, as is the Enterprise of the too little, too late of EJB and Servlets. Web applications' successes derived from the concurrent and thoughtful analysis, insight, and/or inspiration w/r/t scenarios *and* technology; at the same time, enterprise applications' (those which utilised internet architectures and technologies) successes were driven by the same, with the addition of the abstraction of resources. Only with the rise of RIA and Balanced Compute has there been a grand awakening amongst IT to the fit of Web 1.0 only to task worker and basic computing scenarios.
It is this combination that has inspired the latest evolution of Internet computing, the Cloud. The Cloud is more than hand-waving marketing smooth talk, more than co-location or hosting, more than the every present desire to reduce TCO. It is enabling any device, any where. Anyone in this industry would argue this as being the goal of compute models and architectures, and anyone with more than a couple years experience can attest to the mixed success/failure of technologies to make this a reality.
Yet, what I recognise with the Cloud is a move to understand and solve a problem, rather than push a technology. This is where the current state of the Cloud, with the lack of solid standards at its level of abstraction, provides fertile ground. This is not to say standardisation is an impediment or negative. Rather, standardisation, just as with any other stage of compute maturity, has to be applied at the right time and place. Too early, and either the model/architecture/technology is not embraced, or technology is pushed as with the latest fashion without consideration for what problems are to be solved. J2EE, sadly, was one such victim. In the end, where it succeeded was largely, if not entirely, due to the inventiveness of IT (e.g. crafting their own abstractions to avoid the then high-latency, tightly-pinned EJB), and the development of models, architectures and technologies which came from outside the JCP process (e.g. Spring). Admist these successes have spectacular FAILs been observed, driven by the triumph of technological dogmatism (e.g. driving EJB when and where it clearly did not suit the task) over understanding and solving real problems.
The Cloud is at a stage where the models and architectures are being subconsciously realised, whilst the technologies themselves are nowhere near standardisation. The vendors are pushing models in the vector of solving real problems, and pushing technologies only with respect to value add. To the untrained eye, this may seem to be more of the same sort of hype. However, what is remarkable is how Cloud has brought all the interested players to push scenarios and models/architectures rather than tout technologies.
In a sense, we have Google to thank for this. Instead of speaking the babel tongue of operational semantics, and the ego-satisfying need to plough through gory details, Google 's desire to protect its IP has driven it to hide all that schmutz ;) behind abstractions. By hiding its value add, Google has encouraged its competitors to adopt the same focus. Whilst I see true Cloud success arriving with the fulmination of the Private Cloud, the Public Cloud-dominated bent has adjusted and encouraged our collective thinking in what I believe is and has always been the right direction. As such, I'll add that Cloud is any device, any where with the addition of abstraction; it is the next stage of the fulfillment of the Internet revolution, rather than an euphemism for the Internet.
Comments