Wednesday, October 28, 2009

Is cloud computing ready?

I recently read Infoworld's coverage of Cloud Computing (link here). I think the description is overly complex, futuristic and not clear. The cloud is too new to bed considered as a stack. Let me try to simplify the cloud.

IMO, there are 3 types of cloud services:-
1) SaaS (i.e., email outsourced, etc.)
2) Web services (i.e. google maps, facebook connect, XML APIs, ProgrammableWeb, etc.)
3) Infrastructure (i.e. Amazon EC2). This is what I think of when I say "the cloud"

SaaS is relatively easy, either do it or don't, depending on whether SaaS product provides the features you need. Web services is also easy, really just a web API. (NOTE: I am making the assumption that security issues in the cloud meet appropriate standards for you applications. This is different in different industries and applications).

Infrastructure is hard. The main barrier is with existing applications that are two or more years old, and not cloud compatible. I've not seen nor heard of any CTOs moving an existing application to the cloud. I've only seen it done for new application frameworks which are cloud-friendly, typically PHP, Ruby-On-Rails and other open source frameworks. Many startups are using these open source frameworks and the cloud for infrastructure, and having great success.

The other "unspoken" barrier is that deploying in the cloud invalidates existing corporate data center investments. Oops! You would think a private cloud would solve this investment dilemma, but I have not seen large corporations move this way. I was completely surprised when I discovered that most very large corporations have no intentions of building a private cloud.

Question: how is a CTO to move to the cloud?
Answer: by replacing existing application with a brand-new application which is cloud-friendly

This is tough, who has time, budget or inclination to completely replace existing applications? This is way harder than internet-enabling applications, which CTOs have been doing or completed in the last 5+ years. How long will it take for us to completely replace all our application frameworks?

In the meantime, we'll continue to watch with envy as startups make full use of the cloud.