Tuesday, October 28, 2008

Azure Services Platform Rude Q&A

When pitching Azure Services Platform to your manager or client for your next big project, or even sharing with your fellow technologists, how do you best prepare for their rough questions?

Usually when Microsoft launches a new technology, or even pitches it internally to executives, they typically assemble a Rude Q&A to summarize the expected rough questions and to be prepared with answers--think Hard Ball with Chris Matthews for technology instead of politics.

Tonight I did a quick Google search for a Rude Q&A for the Azure Services Platform, but I came up empty-handed.  I'm sure the Microsoft guys have one, but since I've not seen it I've decided to write my own.   For now, I'll start with my initial questions, and then I'll later update it with more and with appropriate answers.

PLEASE NOTE:  I'm obviously excited by this technology, so don't perceive this as an attack on the Azure Services Platform.  Rather, it's a way to ask the appropriate questions to ensure that answers exist and are easily communicated so that the platform can succeed.

To get a good start, I went to Slashdot, the epitome of Microsoft critics.  Please feel free to add your own questions in the comments and I'll add them to the post when I update it.   Microsoft employees, if you want to provide answers, I'll add them as well.

UPDATE: I've added my answers to the Rude Q&A.  These are my opinions only.  When I hear a more official answer from Microsoft, I'll add their feedback with mine.

Q:  Microsoft Windows has a perception of being an unstable and unreliable operating system.  Why can I trust Windows Azure to host my applications without an Azure Screen of Death?

Erik's Answer:  Windows' Blue Screen of Death is almost always a result of either failing hardware or a bad device driver.  This is part of the cost of having an operating system that is open to lots of different types of hardware.

Next week is WinHEC and Microsoft will be talking to hardware vendors about what is required to be certified for the new versions of Windows.  In order to be Certified for Windows Azure, the guidelines are going to be much stricter than for any previous version of Windows.   Because Windows Azure will only be running in Microsoft's Data Centers, you can be assured that Microsoft will ensure that all of the hardware is Certified for Windows Azure before it can be added to the data center.

In addition, you will have a Service Level Agreement with Microsoft for your application.  There will be financial consequences for Microsoft if they fail to meet the guidelines of the SLA.

Q:  By choosing to use the Azure Services Platform, am I required to host my applications on the Microsoft Data Center?  Or can I choose to host my application with third parties like Amazon and Google?

Erik's Answer: I spoke with one Microsoft employee who said that Microsoft will be working with 3rd party data centers, so there could be other authorized data centers that could host the Azure Services Platform. 

Whether or not Amazon or Google choose to host the Azure Services Platform is up to them, based upon customer feedback and their own business objectives.

Q:  Can I decide to change hosts later, if I feel that another host offers a better value proposition?

Erik's Answer: This question is clearly dependent upon the last one.  If there are 3rd party data center hosts, it should be possible to transition from one to another.  Like our cell phone carriers, though, there may be a service contract that stipulates when that can happen.

Q:  Microsoft is promising to build the Azure Services Platform on open standards, but as a company they have a mixed record on this.  How can we know that this is not just another opportunity for Microsoft to embrace, extend and extinguish their competition to hold onto their monopoly?

Erik's Answer:  Just as standards were required for the industrialization of gun factories, they will be required for the industrialization of the software industry.  Microsoft didn't always get this, but they seem to get it now.  Listen to them.  They've got religion about honoring standards.

Q:  Previous Microsoft PDC's have made big announcements where Microsoft was betting the company on a new technology, only to have the technology be shelved before release.   How do we know that Azure Services Platform isn't this PDC's Hailstorm or WinFS?

Erik's Answer:  Microsoft has invested billions of dollars to build the software and the data centers.  It would be very painful for them to fail.

Q: If my application is hosted on Microsoft Data Centers, how can I assure privacy for my code and data?  What are the penalties to Microsoft if there is a breach in privacy?

Erik's Answer:  Microsoft will have a privacy policy as part of the service contract.  In order to monitor the health of your application, Windows Azure will need to read the instrumentation data from your application, but this must be an automated process to scale.  If Microsoft does violate the privacy policy and you can prove it, you will  have a legal suit for breach of contract and the bad press would hurt their business.  In other words, it doesn't make good business sense for them to violate the privacy policy.

Q: By choosing Azure Services Platform, I'm giving over control to Microsoft.   How do I ensure that I have control over my application?

Erik's Answer:  You are giving up some level of control, but you can choose to start, pause or stop your service and switch to another platform anytime within the limits of your service contract.  In exchange for giving up some of the control, you gain greater scalability and availability than most small and medium companies can achieve on their own at a cheaper price.

Q: Microsoft has a great track record for availability of their web sites and services, but not perfect.   Even during the PDC, accessing http://blogs.msdn.com/ has been slow and difficult to access due to the demand for information.   How can Microsoft assure high availability of my application, and what are the penalties to Microsoft when it isn't available and my business is interrupted?

Erik's Answer:  Microsoft's track record isn't perfect, but it is still better than most businesses.   Utility companies aren't perfect either; there are blackouts and brown outs locally and even occasionally regionally, but these are rare.

Your service will be guaranteed with a Service Level Agreement (SLA), just like it is with your other utilities.  There will be a financial consequence to Microsoft if they fail to meet the promised level.   Service contracts will probably be cheaper if you are willing to accept a looser SLA and more expensive if you want a stricter SLA.

Q: Microsoft has chosen to discontinue support for old technologies, like VB6 and FoxPro, forcing customers to upgrade or transition their applications to the new platform.  When this happens on my Data Center, I can choose to upgrade or not.  If I choose Azure and the Microsoft Data Center, is Microsoft going to force me to upgrade my applications when Azure 2.0 or 3.0 is available?

Erik's Answer:  Microsoft supported VB6 for a decade after it was replaced by VB7, so there will be plenty of time for you to transition your code.  If you're considering hosting your application in the Cloud, you're probably a pioneer of new technologies.  Do you really think that you'll want to stay behind on an obsolete technology like VB6? 

1 comment:

Anonymous said...

Frankly phrasing that question as about "VB6" and FoxPro is misleading. Nobody expected VB6 to be supported stagnant forever. What they wanted was continuing VB support and development - and that's what we didn't get.

The lack of VB6 support as a first class citizen in Azure has driven me to competitors. I'm sure only those in the grip of the .Net Kool-Aid will be Azure fans. Azure is too closed a system in a Cloud Computing universe. Even the Java world, notoriously infected with NIH Syndrome, isn't this closed.