Tuesday, June 2, 2009

Cloud Computing - Wrestling with defintions!

I have been poking around the Cloud Computing initiative in the last few months looking to get a better understanding of the different aspects. Now I am not exactly coming at Cloud Computing from 'out in the cold'. I did have a perception that the Cloud is some type of dynamic resource allocation initiative. Thinking back to various meetings, "The Cloud" has been on many VP's 'futures' presentations for the past 5 to 10 years.

My past experience with 'cloud' was literally a picture in the middle of a powerpoint slide. The cloud was literally a picture representing the internet that married the two sides of your infrastructure - local and remote. The cloud was a piece of "VP magic" that tied everything together. There was absolutely no detail on how the cloud (internet) would accomplish the task but it was understood that some day it would materialize. (how many of you are now thinking - 'm'kay that's probably why you aren't a VP today, Rich'.)

So what is Cloud Computing? This appears to be the $64,000 question... The industry seems to have many answers. I giggled today when I saw a blogger that attended one of the recent Cloud tradeshows and basically said that many of the manufacturers are defining the cloud from their point of strength. I think his point was - if you attended two or more sessions, you got two of more manufacturer-slanted definitions. I think that's where the high industry fails itself - a lot of companies positioning themselves in a marketing category to differentiate themselves.. it tends to confuse customers and leads to a period of 'over-hype'.

Here are a couple of definitions I like:

1- "The key characteristics of the cloud are the ability to scale and provision computing power dynamically in a cost efficient way and the ability of the consumer (end user, organization, or IT staff) to make the most of that power without having to manage the underlying complexity of the technology". Source: Open Cloud Manifesto, 2009

2- “A style of Computing where scalable and elastic IT capabilities are provided as a service to multiple customers using Internet technologies” Source: Gartner (Wikipedia uses the Gartner definition also)

3 - "A new way to deploy or virtualize IT using the internet as a method to quickly borrow/use resources (compute, storage, infrastructure, applications) and either keep those resources for any given amount of time or give those resources back after use." Source: Rich Bruklis, blog author (me)

An acquaintance of mine, Fred, suggested that I substitute "abstract and reassemble" for "deploy or virtualize - that sounds good too!

I think the definitions will probably keep coming. I think there are a couple of key criteria to use:
  1. keep it simple (dump the jargon and big adjectives)
  2. keep it short (2 to 3 lines - go for the 1 floor elevator pitch)
  3. keep it relevant (define it in terms that the customer can identify for comparison - Don't go with something like - "it optimizes your resources... Please tell me you want your resources optimized!!!")
I tried to use relevant terms in my definition that customers can easily grasp - "virtualize", "internet", "resources" (like compute, storage, infrastructure a la networking), "borrow", and a couple of easy 'time elements' - "quick", and "after use".

Don't get me wrong all the definitions above are good. The funny thing is that I suspect the customer will ultimately define the Cloud - maybe not in words but in their implementations... Their implementation will be their proud victory and they will matter-of-factly say in the end ... "Oh and we did it as a Cloud" (Note that ultimately the customer may not even care about a Cloud definition!)

Stay tuned,