Back in the 1950’s, using a computer meant typing commands into a terminal, a machine which would route your requests to another, bigger machine, called the mainframe. The mainframe is the machine that processes requests from all terminals. We’ve mostly moved away from this model, but a new one, cloud computing, seems to be gaining popularity.
Today, mainframes, although not entirely extinct, mostly form a niche market. And cloud computing is, in a nutshell, the web equivalent of mainframes and terminals: Your computer becomes a browser connected to the internet. All your files, and all your software are stored on another server—the “cloud”.
The advantages are clear: Since everything is stored on the cloud, you don’t need to wander around with a hard drive. You don’t have to worry about someone physically stealing data from your laptop. And with all your desktop applications becoming web applications, expect no more installations and virtually no software updates; since most computation and processing is done on the cloud, all you need is access to the internet.
Cloud computing can be a great way of fulfilling the heavy computational needs of scientists, engineers and web developers. However, when adapting this “innovative technology” to the needs of the general public, we will find that the sun does not shine behind the cloud, especially for those concerned with the feasibility, privacy and security issues of this endeavour.
Is this feasible / desirable?
For cloud computing to become a reality, all your favourite applications will have to be converted into web applications. Given the limitations of the tools we have for making websites, this won’t be the most pleasant of experiences, both for users and developers. We all use different browsers that adhere to different standards; displaying a website correctly for different computer configurations often requires writing code with inelegant workarounds.
But regardless of your browser, web applications will have to be as responsive and as usable as desktop applications are. Yet many web versions of popular software feel clunky and cumbersome because they are in a browser. Since you are restricted in what you can do locally, using a computer connected to the cloud almost feels like using a computer meant for demonstration purposes. Given the choice, who wouldn’t prefer the desktop version of Google Earth, Microsoft Office and Photoshop?
On the other hand, some argue that these limits will disappear as we get better at making software for the web. That is true, but we also face other problems that can’t be fixed by getting better programmers. Since your files are not at hand, whenever you need a file—a lab report, a movie or an mp3 file—you need to download (or stream) it from the cloud. If this is to be feasible, we need faster internet connection speeds and ISPs willing to invest in infrastructure that supports greater bandwidth demands.
Privacy and Security
Until a cloud server fails, or your access to internet is cut, it may be difficult to see why storing your files on someone else’s computers—the essence of cloud computing—has its problems.
In particular, what responsibilities does the cloud provider have towards their clients? Once your data is on their servers, it is unlikely they would hold themselves responsible for any loss of data or privacy. Also, if the cloud owner files for bankruptcy or decides to no longer host your files, where will your data end up?
Discussions on the merits of cloud computing are currently shrouded by hype and jargon. If cloud computing is to be useful to anyone, we must push the hype aside, be clear on what we
mean by cloud computing, unambiguously let the public know about what the implications of it are, and how these concerns will be addressed, if at all.
It is in our own interest—and especially in that of the general public—to speak truthfully about cloud computing. We cannot present it as an innovation while pushing aside legitimate concerns, or, as it were, put our heads in the cloud