Now that Microsoft Azure is commercially available, early enterprise adopters have already begun porting over applications. Since developers now have a cloud platform specializing in .NET, Microsoft shops who were looking into other cloud vendors may think twice.
As many predicted when Microsoft announced SQL was coming to Azure, a great deal of the early activity has been application porting rather than new builds. While a developer proficient in Visual Studio can write applications for inside the enterprise or Azure's cloud computing environment, moving between the two can be complicated. Jason Haley, an independent .NET developer and Microsoft Certified Professional (MCP), said he finds Azure fairly straightforward to use.
"The great thing about Azure is Microsoft has really focused on the user experience," said Haley. "They do everything they can for you to get that application ready to ship before you get that account."
Since a great deal of the development for Azure applications can take place in Visual Studio (minimum version 2008 SP1), many Microsoft shops will already be familiar with the basic tooling involved.
At the Professional Developer's Conference (PDC) in November, Microsoft showed off some of the customers already building inside Azure. These included such companies as 3M Company, the Associated Press, Kelley Blue Book Co., Inc., and Domino's Pizza, Inc.
"In this first wave of Azure, the kinds of applications deployed are where elastic demand is required," said Rob Sanfilippo, an analyst with Directions on Microsoft. "It makes a lot of sense to easily move existing applications into the cloud to get that capacity and only pay for it when they need it instead of year-round."
Domino's, for example, has hooked Azure into its ordering system to handle sudden spikes in pizza ordering. This has been a particularly troublesome issue on Super Bowl Sunday when ordering increases by as much as 50%. Kelley Blue Book has brought Azure to its .NET-based website, kbb.com, in order to drop a reported $100,000 in hosting costs and use its resources more strategically.
Many of the initial projects involve porting existing applications over to Azure. Sanfilippo said this requires .NET developers working with Azure to think a lot about how to move applications either as a whole or piece by piece into a cloud platform. This is no simple matter. Even though it is based on .NET, he said there is still a great deal of re-factoring involved in porting applications over.
Haley said the scalability of Azure adds some complexity to application building. He said all applications are multi-threaded in .NET but most developers don't worry about concurrent access to data objects because their user scenarios don't currently expose any problems.
"Developers know they should care but get by without having to," said Haley. "With cloud computing, if developers don't take into account these issues they currently ignore, then there will be either data corruption or bottle necks that will then prevent reaping the rewards they should get by scaling out."
It was just over the past year that Sanfilippo said Microsoft really started addressing the coming inevitability of enterprises wanting to port existing applications onto Azure. Over the course of the technical preview and beta, he said, customers seemed to push back on the notion that they would have to build from scratch in an all new entity model. Giving the user community a version of the more familiar SQL Server – called SQL Azure – has made the process a bit simpler. Originally, Microsoft had planned to build Azure's data architecture around Representational State Transfer (REST).
Some software vendors are looking at Azure as well. Business process management (BPM) vendor, Metastorm, Inc., is currently developing an Azure-based offering. Greg Carter, the company's CTO, said they are working on making some of the company's BPM and enterprise architecture (EA) tools available in Azure. This, he said, will let people coordinate on projects from outside the immediate corporate environment. Carter said better collaboration will be a big draw for BPM on the cloud.
"Part of the reason we chose Azure is that there are a million .NET programmers," said Carter. "Anyone who can do Visual Studio can move onto Azure with no problem." While Amazon requires you to "administer your own universe," he said Azure is easier to manage and acts more like a "giant copy of windows."
And the .NET shops are, not surprisingly, where Sanfilippo said most of Azure's popularity will come from. He said it you use other cloud vendors like Amazon and Force.com for applications on the Microsoft platform, but that Azure will probably be the major focus for such developers going forward. He said Google App Engine, on the other hand, is more suited to Linux and PHP developers.