Q&A with Microsoft's Craig Kitterman
Craig Kitterman, product manager for the Windows Azure Team at Microsoft, gave the Day 2 keynote address at Visual Studio Live! Chicago last Wednesday. He guided attendees through the improved features and interface of the Windows Azure cloud platform, showing how dev organizations can quickly set up free Azure accounts for things like hosting cloud-enabled ASP.NET applications and creating virtual machines for dev/test operations.
In his talk (video replay available here), Kitterman stressed that there were five things devs need to keep in mind when transitioning to cloud app models. First, design to scale, making sure to properly manage session states across distributed caching environments. Second, he said, dev orgs must design for failure.
"Failure happens. Things break," Kitterman told the audience, noting that the cloud model relies on affordable, commodity hardware. "Never count on a single node, a single instance or single anything, because ultimately that thing will fail."
Third, he urged devs to decompose by workload, understanding when and where multiple nines of availability are called for in the environment, and when they are not. Fourth, he urged organizations to design for interoperability, to take modular approaches and ask, "How are things going to plug into future things?"
Finally, Kitterman urged devs to design for operations, baking maintenance into the code so applications are easier to fix, update and iterate.
I asked Craig about his keynote and the kind of response Microsoft is seeing from the dev community with regard to Windows Azure. Here is what he had to say.
MD: Tell us about your role as product manager on the Windows Azure team? When did you join the group and what brought you there?
CK: My role as product manager on the Windows Azure team is about raising awareness of the platform among developers and ensuring they have a great experience. I work closely with our core engineering team to provide insight and feedback from developer communities. I joined the Windows Azure team about one and a half years ago from the Microsoft Interoperability Strategy team (now MS Open Technologies, Inc.) where I was focused on cloud technology interoperability.
MD: A year or so ago, dev interest in Azure seemed pretty lukewarm. Are you seeing Azure interest pick up at events like Visual Studio Live? If so, why?
CK: Azure demand is definitely picking up. There are two primary reasons for this: One, concepts like Platform-as-a-Service (PaaS) are powerful, but take time (particularly in the Enterprise) to gain understanding and adoption. Traditional methods and models die hard. Two, adding Infrastructure-as-a-service (IaaS), which gives developers VMs on-demand, gives devs even more flexibility for using the cloud for things like dev and test--where traditionally IT was a major bottleneck. This, with the growth of devops, make now the right time to take advantage of the cloud.
MD: There have been a lot of dev-oriented features and capabilities rolled out in Azure lately. Are you able to single out two or three that are getting the most attention and producing the most interest in the community?
CK: That is hard to do! We are seeing the most buzz around core scenarios that developers can get started with quickly. The primary one here is the ability to use Windows Azure Virtual machines for doing dev and test in the cloud. Many developers think they have to be deploying into the cloud for production to get any benefit – but with on-demand, scriptable VMs, anyone can stand-up and tear-down a complete dev/test environment in minutes. MSDN subscribers can actually do it for free today by activating their Azure benefit in just a few minutes.
Windows Azure Web Sites and Windows Azure Mobile Services are also very popular with developers as they are so easy to use and provide awesome new capabilities for Web and mobile developers without a steep learning curve.
MD: What are some of the biggest misconceptions that developers seem to have about Azure at this point? How are you countering them?
CK: The primary one is the idea that the cloud is an all or nothing proposition. Some believe that if their organization is not completely on board for moving everything to the cloud, there isn't any opportunity there.
The reality is that there is a lot of opportunity to start small and go big, with things like dev/test environments, storage, campaign Web sites, etc. Hybrid is a core design point for Azure so we have built it from the ground up to make the onramp easy, allowing customers to leverage existing IT investments while taking advantage of some Azure services.
MD: What are the biggest obstacles to Azure deployment today? What is Microsoft doing to address these?
CK: Honestly, its awareness. We have a ways to go to help developers see and realize the full potential of the cloud. It is naturally going to take some time as enterprise application lifecycles are long, and new applications are where they will see the most benefit. Driving awareness of scenarios like dev/test and virtual machine migration that developers can take advantage of immediately will be my focus in the short term.
Posted by Michael Desmond on 05/21/2013