A few weeks ago, Microsoft announced its quarterly financial results, which set new records for both revenue and income. As I have discussed in this column before, these developments are a shock only to the large contingent of critics who have been writing off the Redmond giant for years by dismissing its franchise, especially in this “post-PC” world. The fumbled Windows 8 launch and the announcement of CEO Steve Ballmer's resignation added the hope for legitimacy to their condemnation until the numbers rolled in.
Microsoft's huge numbers were driven by excellent results in businesses, especially server-side technologies, where the company's franchises continue to grow. An important contributor to this growth is the rapid climb of Windows Azure the company's cloud platform.
When Azure was first released in 2010, it had all the trappings of a me-too product meant to compete with Amazon, Google App Engine (GAE), and the upcoming clouds from IBM, HP, Oracle, and ATT. But unlike many of those products, especially unlike GAE, Microsoft made sure that Azure played well with all technologies, even those not sold or even endorsed by the company. This surprising break from past traditions of exerting tight control on new platforms enabled users to run Linux and Java on instances of Azure. At the time, GAE offered nothing comparable. The OS of the GAE VMs was a custom Linux implementation, and Java was only partially supported (many AWT classes were blocked). As to databases, Google offered its proprietary technology, while Azure offered instances of SQL Server in the cloud. For the first time in recent memory where Microsoft and Google competed in a major technology sector, Microsoft had the more open product.
Azure kept evolving quickly. A subsequent release enabled sites to run Azure on local hardware, thereby merging local and remote clouds in ways that most other vendors could not. As I'll touch on shortly, this integration has now been made even tighter to the distinct benefit of developers.
As a result of these smart decisions, all-Windows shops became early adopters of Azure, followed by enterprises that were running back-end technologies on Microsoft platforms. Slowly at first, but steadily afterwards, Azure worked its way into second place (behind Amazon) as the cloud provider of choice. (According to a study cited here, Forrester projects Amazon holds 71% of the cloud-hosting platform market; while Azure holds 20%).
In the last year, Microsoft has been tailoring Azure and retooling its programming products to make the platform the first choice of developers. It recently announced Azure SDK 2.2, which enables several important activities, ranging from the convenient (single sign-on for cloud instances, optionally tied to an Active Directory instance) to the exceptional (remote debugging of a cloud-based app from within a desktop instance of VS 2012 or 2013). This last capability (see image) means that you can spin-up a remote VM instance to run, say, a regression suite of tests. When one test fails, you can replay it from the debugger and make the corrections directly from your desktop.
As the company told me last week, they expect to move ahead with even tighter integrations between Azure and Visual Studio. This is where the traditional tight integration between Microsoft's dev tools and its larger product line pay off well.
I should note that if you have a subscription to MSDN, you likely can try these capabilities for free. The higher-end subscriptions include from $50 to $150 in credits for Azure machines. The latter number would enable several instances to run 7x24 and be used for dev, testing, and continuous integration (or even continuous delivery) of small projects. Go to Windows Azure, sign up for a free trial, and login using your MSDN credentials. You should get credit there and be able to proceed without providing a credit card.
I am encouraged to see Microsoft make good choices driven by user needs rather than the politics of proprietary technologies. This not only benefits all parties, but it could well make Azure the cloud development platform of choice.