- Silicon Valley's 19 Coolest Places to Work
- Is Windows 8 Development Worth the Trouble?
- 8 Books Every IT Leader Should Read This Year
- 10 Hot Hadoop Startups to Watch
Network World - Microsoft's Windows Azure and Amazon's Elastic Compute Cloud tackle two very different cloud computing technology problems today, but are destined to emulate each other over time, Microsoft cloud official Tim O'Brien says.
Whereas Windows Azure is a platform-as-a-service cloud, giving developers the tools they need to build and deploy Web applications, Amazon EC2 is primarily an infrastructure-as-a-service cloud, offering on-demand access to customizable virtual machine instances.
Azure simplifies the building of web applications in a way that Amazon does not, but Amazon's cloud-based virtual machines have the benefit of working with multiple programming models, O'Brien says, predicting that over time Microsoft will move more into infrastructure-as-a-service and Amazon will cross over into platform-as-a-service (PaaS).
O'Brien, senior director of Microsoft's Platform Strategy Group, discussed his take on the cloud market in an interview with Network World, as well as a public presentation at the recent Cloud Leadership Forum, hosted by IDC and IDG Enterprise.
"It's a double edged sword," O'Brien said in the interview. "The reason people like infrastructure-as-a-service is because it's programming model agnostic. The bare metal VM doesn't care what language you wrote the application in, it doesn't matter what tools you use and what runtimes you've targeted. If it runs on Windows or Linux, give it a virtual machine and it will run just fine. The problem is it's a lot of extra work. You're responsible for that virtual machine the same way you're responsible for a server sitting under your desk. You're responsible for turning it on. You're responsible for turning it off. You're responsible for applying a patch or an update. If Red Hat applies a Linux patch, and you have a Linux VM running on Amazon, you have to apply that patch yourself. They won't do that for you."
But there are shortcomings in the platform-as-a-service model as well, O'Brien acknowledges. The biggest problem with PaaS may be difficulty migrating existing applications from the internal data center to the cloud.
"Platform-as-a-service has a different set of tradeoffs," O'Brien says. "All of that stuff is completely abstracted away, it's a friction-free development, you basically code up an application, you hit deploy and it'll go run on the platform that's supplied by those runtimes. So in our case its PHP, C Sharp, in the case of Google [App Engine] it's Python and Java." While building new applications is easy, and removes the need for owning internal hardware and software, other than a Web browser, "part of the challenge there is it's not necessarily optimal for migrating existing applications."
Microsoft has already announced that "at some point [in the next 12 months] we will be offering the ability to provision a bare-metal VM, and run your application on that," O'Brien says.
While Amazon provides a variety of Windows and Linux virtual machine images through EC2, the company's Web Services business offers a variety of other tools that might be useful to developers, including databases, storage services and load balancing.