Application Strategy and Training as Pre-requisites to Cloud Development

You’ve heard or read in ads, videos, presentations, and even in some of my previous posts that developing for the Cloud, specifically Windows Azure, is simple if you’re already doing any kind of .NET development – you’d be able to leverage the skills you already have and the tools you already know. While this is true (in relative context), there is some thinking that needs to be done before jumping in and starting to move production applications to the Cloud.

Application Strategy

Strategizing your move to the Cloud will allow you to understand the implications the differences between hosting your solution on-premise versus hosting it in the Cloud may have. As part of your Cloud strategy, consider:

Which of your applications would be good candidates for moving to the Windows Azure

Which of public cloud, hybrid cloud, or on-premise solutions would be better suited for each application’s needs

How the benefits of Cloud computing map to the applications’ needs.

If there are any data security issues that would need to addressed

If there are any privacy issues that would need to addressed

Training

While a Cloud strategy covers off the thinking that needs to be done around the applications themselves, in order for you to realize the full benefits of moving to the Cloud, you’ll need to make sure that you understand the intricacies of Windows Azure services. There are many ways to use the various services of the Windows Azure platform, but for each of your applications, only a few combinations will meet the functional and non-functional requirements in a technical and cost-optimized manner. Experience with the platform will ensure that you design your applications in the most optimized way, and as such, your training has to start long before you start looking at migrating or writing your first application. You’ll need to understand how application requirements map onto Windows Azure services and how each non-functional requirement ultimately affect which service to use when. You’ll also need to learn how to use the services as well as the tools and toolkits that are available.

Books, training kits, classes are a great way to start ramping up; however, knowledge gained from experience working with the platform – designing and building solutions that use it – will ensure that your move to the Cloud will be successful. In short, training is required, but experience will make the difference.

Bottom Line

Start your training today, trying out learned concepts on smaller, less critical applications, to gain that experience. You’ll be able to see what works and what doesn’t work in your environment, tweaking as necessary until an optimal solution is reached. So here’s what you need to do: