Summary: Cloud computing is the latest buzzword for something that we've been doing for a long time: using applications that live on the web instead of our PCs.
So what on earth is cloud computing? Is it beneficial? We all know virtual machines can be useful, but cloud computing?
•
If you search for "cloud computing" you're likely to find a number of definitions, mostly from vendors trying to sell you services somehow related to what they think it is.
Rather than parrot those definitions verbatim, I'll give a shorter definition, and my spin on it.
I'll start by saying that while the term might seem new, what it represents is nothing new at all.
•
Here's a fine definition, courtesy of Wikipedia:
Cloud computing is an example of computing in which dynamically scalable and often virtualized resources are provided as a service over the Internet. Users need not have knowledge of, expertise in, or control over the technology infrastructure in the "cloud" that supports them.
Let's pick it apart a little.
The word "cloud" comes from the fact that when diagramming internet-based networks, engineers often use a cloud to represent the massive inter-connected complexity that is the internet:

Now, if there's been a change in thinking from that diagram at all, it's realizing that the services you use are just as abstract as the cloud itself. By that I mean you don't know if Hotmail, as shown in the above example, is one server or a dozen, if it's serviced by equipment in one location or many. It's just as "cloudy" as the internet that you use to connect to it. So in that sense the diagram for a "cloud computing" based metaphor would look more like this:

As I said, we have no idea how many servers Microsoft uses to implement Hotmail, and we don't care, as long as the service works.
In fact, the number of servers that actually comprise Hotmail is likely to change from day to day as the service grows - that's the "dynamically scalable" part of the cloud computing definition. The service can grow in capacity simply by throwing more hardware at it (or conversely, can scale down by removing hardware).
I'll sidestep a discussion of "virtualization" mentioned in the definition since, like the amount of hardware, it's an implementation detail that as a user of cloud computing services you would never actually see. For this discussion, just consider it a technique that helps make the "dynamically scalable" part work.
As you can see, Hotmail (and GMail, and Yahoo Mail, and many other web-based services) have been around for years. It's only in recent years that the term "cloud computing" has come in to vogue as more and more types of applications move to this same model.
There are a few additional characteristics of cloud computing that might help clarify it a little more:
The service is "in the cloud" - by that I mean that it's a service on the web that you sign up for and access via your browser; it's not (typically) an application that's installed on your machine.
Your data storage is "in the cloud" - you access your data via the service, and it's all kept on the services servers, not yours. You can, of course, download or copy your data as you see fit, but the primary scenario for the service is to store your data for you. A good example is simply accessing your email via Hotmail's or GMail's web interface.
You can access the service, and your data, from any connection to "the cloud" - by that I mean that for example you can access your Hotmail or GMail anywhere you can connect to the web and use a browser.
Another way to perhaps make this a little clearer is to list some examples of services that are inherently cloud-based:
Any web-based email service like Hotmail, GMail, Yahoo mail and so on.
Google Docs - web-based word processing, spreadsheet, presentation tools and more.
Quicken Online - web-based personal financial management.
Wikipedia - a web-based information resource.
Salesforce.com - a web-based "CRM" or customer relationship management tool used by many small and large companies.
JungleDisk - a PC based application that uses Amazon's or Rackspace's storage services to provide online backup "to the cloud".
In all these cases they're simply services that you can sign up for and that (hopefully) transparently scale to meet the demands their customers place on them.
Finally, a word about what it takes to build cloud-based applications.
It's both simple, and hard.
It's simple if you don't plan to scale transparently. In a sense, Ask Leo! is cloud based, since it's just a service on the web that you use. You have no idea, nor should you care, how it's actually implemented or structured. In reality, it's a single server serving up web pages and hopefully keeping up with demand. To scale it, or make it capable of handling significantly more traffic, would not be transparent, and would potentially require some downtime to re-arrange how it's implemented, or perhaps simply to move to more powerful hardware.
It's complex if you want to avoid all that. Consider the other extreme: Google itself - thousands of servers coming and going online and offline more or less constantly. There's an incredible level of complexity to make that all transparent that had to be designed in from the start.
In between there are many services out there designed to at least help those considering creating truly scalable cloud based applications. Both Amazon and Rackspace (where Ask Leo! is hosted), have sets of services ranging from simple data storage to virtual servers and more, all that can serve as building blocks for companies attempting to take their services into the cloud.
Related:
Is an online backup service a good idea? Backing up data using an online backup service is lucrative, and can be an important part of an overall strategy - within limits.
So just what is a "Server" anyway? The term "server" is used a lot in many contexts but is really just a computer, and quite often a computer that isn't all that special.
How Can I Find a Good Web Host? Where to host your website depends on what kind of a website it is. Options range from free to expensive based on your needs.
Article C3885 - October 4, 2009
The explanation has been put up expertly in a simple manner. Though it might have been more technical as such.
Posted by: Tanuj Bhargava at October 5, 2009 2:21 PMGood account.
I have Panda anti-virus software, which I believe is cloud software. How does it compare?
Posted by: Gavin Kilty at October 6, 2009 9:18 AMI use Panda Cloud A V and one thing it doesn't do,like other systems,it won't slow down your machine and it's Free!
Posted by: nawmie at October 6, 2009 10:31 AMCloud computing is the old "thin client" aka "dumb terminal" paradigm in disguise. Ever since the elite computer class, formerly barricaded behind raised floors and glass walls with their mainframe machines and monochrome-green command-line interfaces, was deposed by the masses with their lowly personal computers late in the last century, the denizens of organized computing have been seeking a way back into control. Of course banks, insurance companies, and the Government mostly ignored the personal computer revolution, but that doesn’t mean they don’t want everyone to move to the cloud.
Posted by: Howard B. Evans, Jr. at October 6, 2009 10:37 AMThank you for a very good short, concise, to the point explanation.
IMO, 'Cloud computing' seems simply to be one more in a very long line of 'money making gimmicks'.
Posted by: glennmcc at October 6, 2009 5:19 PMFrom what I understand the other important part which was not stresses was the fact that the documents in the cloud can be accessed and worked on from anywhere. Meaning many people can work on one document practically simultaneously. i.e. they don't need to update it then email to other to update email etc.....as would otherwise be the case.
Posted by: Fred at October 6, 2009 10:12 PMCloud computing has elements from the past (thin clients)and present (collaborative working), don’t get to hung up on that, it has gained currency as the current opinion is that the internet has (eventually)become the 5th utility. It is a paradigm which could be beneficial to many business requirements due to scalability, low upfront costs, centrally managed etc, hence the excitement. However, before running headlong into cloud computing, consideration of security and data ownership is essential, and evaluate the risk to your business of DOS (Denial of service). Don’t be surprised to be hearing about "private clouds" as this is realistically the immediate future of cloud computing.
Posted by: Paul: Cloud Computing Researcher at October 7, 2009 4:40 AMI love it when things are explained as simply as this. I 'kinda' had an idea from the Wikipedia article. It may be interesting to mention Software as a Service (SaaS) in this context, as well as the 'infamous' crowdsourcing.
Posted by: Luc at October 7, 2009 5:06 AMGreat stuff, Leo.
Thanks a mil
For those who have not heard Leo on New York City radio - Oct. 7, 2009
Posted by: Balthazar at October 7, 2009 8:01 PMhttp://archive.wbai.org/files/mp3/091007_200001pcs.MP3
My IE8 browser does not permit me to access Leo on the WBAI website. Whenever I try a web address ending with .MP3 - all I get is a page with a red X. (I have no trouble playing normal MP3 audio files.)
Posted by: Arthur at October 10, 2009 7:52 PM