My job requires me to be at the intersection of customer buying products and services and the industry creating and bringing to market technology.  I have found that there is a great disconnect between what the industry is hyping and what is really possible.

For a number of years now we have been touting the cloud as the answer to all our infrastructure aches and pains.  “If you go cloud, you will have more flexible, just what you need, less expensive services” the trade magazines and pundits claim.  The reality though is, “it depends”.

The concept of utility computing has been around for some time. Back in the boom there were a number of companies attempting to provide storage as a service, shared infrastructure, etc.  I actually worked for one of these companies, Genuity.  What really defines utility based services is the delivery of a service just in time and the payment for such service based on consumption.  That is how the electrical services work.  And if we all needed the same exact service varying only in the quantity of it, then we would be set, but application infrastructure doesn’t run that way. If you poll organizations that have standardized on VMware as an example.  They all may have and even run application such as MSSQL Server or MySQL or another common applications, but the demands of these applications on the infrastructure will be different in every situation.

When customers ask me about cloud or how to get there, usually because someone higher up has decided that cloud is the way to go, I first ask them what it means to them.  I then try to understand the drivers behind wanting to go to the cloud.  Here are some reasons that make sense:  spikes in demand, seasonal applications or projects, don’t want to manage my application, don’t have a secondary site for my backups or DR.  The most common way to embrace the cloud actually aligns with some of the traditional business concepts such as ‘focus on your core competency and outsource secondary services’.  This means if an application or service is not core to your organizations business objectives, then consider outsourcing it.  Best examples of this include email outsourcing (Office365, gmail, other email services), email archiving, CRM, telephony and conferencing, backups, and file sharing.  It also makes sense that if you need some resources for a short period of time, it is more likely to be cost effective to go to the cloud than to procure it in house.

Of course we should keep in mind that not all clouds are the same and that not all applications are the same.  The traditional enterprise applications are highly dependent on the underlying infrastructure to perform while newer cloud-centric applications have build much of those dependencies into the application it self.  This means that your Oracle db may not work well in EC2 but your MongoDB will have no issues.

Finally, if we are talking about utility we are talking about operational costs.  If the goal is to achieve OPex rather than CAPex, cloud is not the only answer.  There are traditional outsourcing offerings in the market that allow you to consume as an OPex, even if the infrastructure is dedicated to you.  There are specialty service providers that offer services for specific applications where the infrastructure is shared but the application is yours and yours alone.  At the bottom of all these options is operational leasing.

I am not saying that cloud is not great and that it is not reality.  What I am saying is that we have to be careful when we refer to cloud.  We need to qualify what we mean, what, expect.  The technology continues to evolve; there is a lot of innovation in the industry today and we are making great progress to making cloud more ubiquitous.  Part of it designing and building applications that run better on commodity infrastructure; part is enabling quality of service and custom service delivery in a multu-tenant environment.  If you think you want cloud, just make sure you have a clear idea of what that means to you.