Cloud computing is a term that has been bandied about a lot the past couple of years. Like “Web 2.0,” it’s a term that has been adopted by companies and used for marketing purposes and for which everyone has their own definition. In a session this week at the Web 2.0 Expo in New York, Albert Wenger of Union Square Ventures — which invests in some cloud computing startups, such as 10gen — laid out his thoughts on what makes the cloud the cloud.
Wenger laid out four principles of cloud computing that he thinks define what the cloud really is. His requirements are simple, but fairly strict, and has lead him to the possibly controversial conclusion that Google App Engine is the only true cloud computing platform available today.
4 Defining Principles of Cloud Computing
- No more machines. Cloud computing is, ideally, “post machine computing,” says Wenger. By this Wenger means that when deploying cloud infrastructure you shouldn’t have to worry about individual machines. And it is for this reason that he believes that Amazon’s EC2 is a transitional stop on the road to true cloud computing. Using Amazon means dealing with machine instances, so it isn’t post machine computing.
- Code over configuration. The cloud should be really easy to deploy. The set up should basically take care of itself and there should be no reason for you to waste valuable time worrying about configuring your cloud set up. Spend your time writing actual code that does stuff not setting up your cloud, says Wenger.
- No fail whale. The cloud must painlessly scale and your code should keep working like it did the day you first wrote it no matter how much you grow. In order to be a real cloud computing platform by Wenger’s definition, code needs to scale without unreasonable expectations placed on the developer.
- It’s mashable. Cloud computing should make it really easy to bring web services together, according to Wenger.
Because Google App Engine is the only current platform that meets Wenger’s definition, at times his session at the Web 2.0 Expo felt a lot like a commercial for App Engine. Wenger gushed about how Google’s platform requires virtually no configuration and the first 5 million page views are free. He showed examples of applications built on the platform and bragged about how quickly they were created and deplayed. In other words, he really likes App Engine.
But the ease at which developers can get started on App Engine is not without a price. One of the reasons App Engine can be virtually config free is that it only works with Python. So you get ease of use, but the price you pay is lack of flexibility. And that’s essentially what the Amazon Web Services team told me when I caught up with them on the Expo floor. Amazon was hesitant to compare AWS with App Engine, or any other cloud platform, but basically said that everyone has different requirements and App Engine won’t be a fit for everyone.
Though Wenger was clearly in love with Google’s offering, he also doesn’t want to see Google dominate the cloud. Who controls the cloud is very important, and Wenger hopes for a future where the cloud is open and there is a healthy ecosystem of developers working on making it better.
These are still early days in cloud computing, says Wenger, and it will “have a profound impact on how we innovate” going forward.