Monday, October 08, 2007

Fancy Computing

There was news today that Google and IBM were collaborating on a "cloud computing" project.

Google and I.B.M. Join in ‘Cloud Computing’ Research


Even the nation’s elite universities do not provide the technical training needed for the kind of powerful and highly complex computing Google is famous for, say computer scientists. So Google and I.B.M. are announcing today a major research initiative to address that shortcoming

The two companies are investing to build large data centers that students can tap into over the Internet to program and research remotely, which is called “cloud computing.



I've heard of the term "cloud computing" before but I honestly never knew what it meant. So I decided to look it up and fortunately Wikipedia had a definition for it.

Cloud computing is a term used to describe applications that were developed to be rich internet applications. In the cloud computing paradigm, software that is traditionally installed on personal computers is shifted or extended to be accessible via the internet. These "cloud applications" or "cloud apps" utilize massive data centers and powerful servers that host web applications and web services. They can be accessed by anyone with a suitable internet connection and a standard web browser.


I still don't get it. Isn't the above just a definition for a web application? Aren't Google and IBM essentially just offering hosting services? Ok, so it's a "rich" (whatever that means) web application but does that really warrant a new term? OK, so it uses massive data centers but what high traffic web application doesn't have those these days? Am I missing something here?

And now we also have term "utility computing". From Wikipedia

Utility computing (also known as on demand computing) is the packaging of computing resources, such as computation and storage, as a metered service similar to a physical public utility (such as electricity, water, natural gas, or telephone network). This system has the advantage of a low or no initial cost to acquire hardware; instead, computational resources are essentially rented. Customers with very large computations or a sudden peak in demand can also avoid the delays that would result from physically acquiring and assembling a large number of computers.



In hardware terms isn't that just a fancy name for "hosting". In terms of applications, I used to hear terms like "software for rent" or "software as a service" and so on. Salesforce.com would be an example of this kind of application.

But I actually like the term "utility computing". I think it is more to the point than "cloud computing". But if we're talking about renting IT services, why not just call it "rent computing" instead?