This is a slightly less technical post, covering my experiences and thought on cloud computing as a viable business processing platform.
Recent Amazon EC2 failure was gathering a considerable amount of press and discussion coverage. Mostly discussions revolve around the failure of cloud computing as a promise to never go down, never lose a bit of information.
This is wrong and has been wrong for a couple of years. Marketing people should not be making promises their technical engineers can't deliver. Actually, marketing should really step down from highly technical features and services, in general. I find it funny that there is no serious marketing involved in selling BWR reactors (which fail too), but they probably serve the same amount of people as do cloud services, nowadays.
Getting back to the topic, as you may know EC2 failed miserably a couple of weeks ago. It was something that should not happen - at least in many techie minds. The fault at AWS EC2 cloud was with their EBS storage system, which failed across multiple AWS availability zones within the same AWS region in North Virginia. Think of availability zones as server racks within the same data center and regions as different datacenters.
Companies like Foursquare, Tekpub, Quora and others all deployed their solutions to the same Amazon region - North Virginia and were thus susceptive to problems within that specific datacenter. They could have replicated across different AWS regions, but did not.
Thus, clouds will fail. It's only a matter of time. They will go down. The main thing clouds deliver is a lower probability of failure, not its elimination. Thinking that cloud computing will solve the industry's fears on losing data or deliver 100% uptime is downright imaginary.
Take a look at EC2's SLA. It says 99.95% availability. Microsoft's Azure SLA? 99.9%. That's almost 4.5 hours and almost 9 hours of downtime built in! And we didn't event start to discuss how much junk marketing people will sell.
We are still in IaaS world, although Microsoft is really pushing PaaS and SaaS hard. Having said that, Windows Azure's goal of 'forget about it, we will save you anyway' currently has a lot more merit that other offerings. It is indeed trying to go the PaaS and SaaS route while abstracting the physical machines, racks and datacenters.