All boundaries are nearly gone, as we are being propelled towards a future where all computing resources will be easily transferable and tradable, just like electricity and other household services. This change will surely bring about a major paradigm shift in all stages of software development, as well as in its distribution and consumption.
Whilst globalization brought about an increasing complexity and unpredictability to the marketplace, it surely opened the floodgates to a world of new and exciting possibilities. Opening trading possibilities between all corners of the world, businesses were streamlined to their core competencies, and other tasks delegated to other businesses to which these peripheral tasks were to them, their core competency. Businesses became lighter and more efficient, bold ideas kept in the drawer for years finally saw the light of day due to new outsourcing possibilities, new distribution channels and more flexible logistics.
Globalization hits the Software Industry (again!)
The exact same shift is happening in the software world, with the advent of Cloud Computing, the Software-as-a-Service paradigm, and the increasingly accelerated evolution of the technologies that support them. Everything is moving to the Cloud, and we are moving back to the old computer terminal days, but now not out of necessity, but due to the incredible advantages of Cloud Computing.
Cloud Computing is, philosophical ramblings apart, the outsourcing of computing and storage resources, as well as full fledged services to the Internet. As so eloquently stated in Wikipedia at the time of this post’s writing, a clearer definition would be the following:
Cloud Computing is Internet-based computing, whereby shared resources, software and information are provided to computers and other devices on-demand, like electricity. It is a paradigm shift following the mainframe and client-server shifts that preceded it. Details are abstracted from the users who no longer have need of, expertise in, or control over the technology infrastructure “in the cloud” that supports them.
Due to this shift, end-users are being stripped down to their core competencies as they’re becoming increasingly able to delegate all the setup and maintenance of their computer software by using software accessible via the Internet as if it were a service (hence the term Software-as-a-Service), with all the accessibility advantages that it brings.
Down with the Desktop, Yay to the Modular Web!
This shift, along with the growing infrastructures supporting it, is paving the way for a modular web, where applications will be able to cooperate with each other on a whole new level beyond anything ever done before, and bring about at a breakneck pace immeasurably valuable applications built on leveraging various applications and services in a synergistic fashion and by making the all too common process of reinventing the wheel a thing of the past.
When we talk of these consequences, we are talking also about traditional desktop software eventually disappearing as a whole, leaving the computer with only a lightweight operating system providing solely the functionality necessary to act as a gateway to the Cloud, where all data storage, retrieval and processing operations would take place. This vision, as that of a modular web, is also highly controversial, but bear in mind that in the past one could argue that there were technological barriers both in software and hardware that prevented such a change, but this is not the case nowadays.
With browsers becoming lightning fast, and new technologies trying to bridge the gap between their sandboxed environment and the computer’s hardware, it is today possible to use the browser to deploy and run on the fly, something as demanding as a full-blown computer game. With upcoming standardizations and further backup from major industry players, this pre-meditated possibility will become completely ubiquitous (think about Google’s support of HTML5 and its investment in Chrome OS as perhaps a validation of this vision).
What Does the Horoscope Tell Us?
As to the time frame within which these changes will occur, that’s unfortunately another story, and a more unpredictable one at that, since the behavior of a single human being is unpredictable enough, let alone the whole world’s collective behavior. But since this entire post is written with an arrogant mindset, let’s just say that this will happen much faster than people thought so a couple of years ago.
Meanwhile, the Colony framework, the Omni service, and the ecosystem we are building around them, are being done with the presupposition that these transformations will inevitably take place, short of other unexpected technological or conceptual breakthroughs that could eventually render this vision obsolete.