If you had to give a name to the sort of programming I’m going to be concentrating on in 2010, I’d suggest Cloudy with a Chance of Mobile. I’m using this phrase as a catch-all that comprises the following:
Mobile computing, which means means phones, tablets and other ways to access processing power while on the go
And while it’s yet another thing to put on my plate, I can’t resist XNA, the game development platform for Windows, Xbox 360 and Zune.
Remember: these are just the technologies I’ll that I will be using my in own software development and will be writing about. My job remains helping Canadian developers be the best that they can be, primarily with any Microsoft tools and technologies. If you’ve got questions about tools and tech that aren’t listed above, I (along with my fellow Developer Evangelists, Christian Beauclair and John Bristowe) am still your resource within Microsoft!
I sometimes like to refer to this selection of technologies as “The Undesktop”. The desktop, its operating system and applications have been Microsoft’s bread and butter since the company was a handful of scruffy nerds in New Mexico building a BASIC interpreter for the Altair 8800 (the “old man” of the 8-bit machines). While the desktop has been very good to the company – I’d go so far as to call it Microsoft’s first love – it’s not the only place where the software magic happens.
Sometimes I worry that the company is a little too in love with the desktop:
(Bill Gates, DOS and a game called DONKEY.BAS actually played a surprisingly influential role in my first kiss, but that’s another story. Buy me a beer and I’ll tell you in person.)
Since the company already lavishes plenty of attention, documentation, demo code and love on the desktop, I thought that I’d do well to take a different tack and help developers build on platforms other than the desktop (and its svelte fraternal twin, the notebook).
What is Windows Azure?
In this article, I’m going to give you a quick overview of Microsoft’s cloud computing platform, Windows Azure. I figured that a good place to start would be by answering the question “What is Windows Azure?”, and doing so with a video whose title is, oddly enough, What is Windows Azure?
Steve Marx of the Azure team made this video, and it’s a quick one, running at a mere 4 minutes, 16 seconds and explains what Azure is and how and why you might want to use it:
Steve also made a video on The CIA Pickup, which features an app that says he built to impress people (okay, he wants to impress potential dates) by convincing them he’s a CIA agent. It runs on Azure and makes use of a couple of services too: Twilio for telephony, Live ID for authentication and Live Mail for… well, mail. It’s easier to show you than tell you what it is and how it works:
Azure is Live!
As of this Monday, Windows Azure has gone live. That means it’s out of beta, commercially available and ready to host websites, web apps and data. Azure will remain free-as-in-beer for you to evaluate through January 2010, after which you’ll start getting charged for Azure compute time. Take it out for a spin!
Getting Started with Azure
I’ll cover Azure in greater detail in future posts. In the meantime, here are some links to resources to help you get started developing for the cloud:
Windows Azure, where your apps, data storage live and where you can manage them.
SQL Azure, the cloud-based relational database, with lots of SQL Server goodness.
AppFabric, which makes it easier to connect cloud apps with “on-premises” (that is, non-cloud) apps through features like identity management, firewall-friendly messaging and more.
Building Azure Apps
Before you can put an app in the cloud, you need to build it on your local machine:
Once you’ve got a web app running on your local machine, it’s time to deploy it to the cloud. Here’s how you do it:
Purchase the Windows Azure platform package that works for you. And yes, there’s a free-as-in-beer one. Remember that if you have an MSDN subscription, you already have a monhtly allotment of Azure compute hours – check your subscription!
Package your application for deployment.
If your app needs a storage project, create one.
Create a hosted service for your app, then deploy the your package to that service.
If this seems a bit vague and hand-wavy for you, that’s because it is. I’m working on a step-by-step, from-the-ground-up tutorial that will cover the process in greater detail. I hope to post it in the next couple of weeks.
There were a number of Azure presentations at the Professional Developer Conference (PDC), which took place in November. If you want an introduction to Azure that goes into a little more detail, watch these:
Windows Azure Present and Future by Manuvir Das: An overview of Azure’s new features and a peek at what’s coming in future versions. If you watch only one Windows Azure talk from PDC 2009, watch this one!
Developing Advanced Applications with Windows Azure by Steve Marx: Steve Mark – yes, the guy who made the two videos above – covers advanced Azure development techniques using the new features announced at PDC. This is of those build-up-an-app-throughout-the-session talks and worth a look.
Canadian Developers Blogging About Azure
Be sure to check out Colin Melia’s and Cory Fowler’s blogs – they write about Azure quite often! (And if you’re a Canadian developer blogging about Azure, let me know.)
I do believe I’ll be ordering an ebook edition of Apress’ Windows Azure Platform.Here’s Apress’ description of the book:
Master Microsoft’s brand-new cloud-computing technology with Windows Azure Platform by Tejaswi Redkar. You’ll learn how to utilize Azure’s four core components— Windows Azure, .NET Services, SQL Services, and Live Services—both separately and together to build flawless cloud computing services.
What you’ll learn in Windows Azure Platform:
Everything you need to know about the Azure Services components—from Access Control to SQL Services, from the Service Bus to Workflow Services.
Understand both the architectural thinking behind Azure and the nuts-and-bolts code that binds your service together.
Design, build, and deploy an Azure service with the assistance of a fully worked template for end-to-end application design that mimics a real-world scenario and gives you a rock-solid example of the design and development processes that you need to work through.
The Discounts
If you bought the ebook version of their previous Azure book, Introducing Windows Azure, you’ll get an automatic 50% discount off the the price of the ebook of Windows Azure Platform.
If you didn’t buy the ebook version of Introducing Windows Azure, you can still get a discount. If you place an order for Windows Azure Platform before the end of December 31st, use the discount code APRESSHOLIDAYML, which will apply a 25% discount to your entire purchase (so you can save on other Apress books, too!)
It’s been announced on Canadian Developer Connection, but I thought I’d mention it here: we folks at Microsoft Canada are gearing up for the 2009 edition of EnergizeIT, a cross-country tour where we’ll show off our upcoming tools, technology and platforms.
For starters, we’ll be showing off Windows 7. I’ve been running it on both my “developer” and “TPS report-writing” laptops for weeks now, and it’s been nothing but rock-solid: all my XP and Vista-based software, from development apps to games and even my synth software (I run Ableton Live and FL Studio, a.k.a. “FruityLoops”) work like a charm on it. We’ll show off the improved UI, additional capabilities that you can take advantage of as a developer, and even give you a chance to install the beta on your own machine.
EnergizeIT is also an opportunity to check out what we’ve got in the way of server tech, such as the revamped Windows Server 2008 R2 with its Hyper-V virtualization and Windows Azure, our cloud computing platform that scales to meet your needs and saves you maintenance headaches.
We’ll have five different kinds of events at our EnergizeIT stops:
The Future of the Windows Platform: We’ll talk about Windows 7 and Windows Server 2008 R2, all with this question in mind: “How is this going to make my life easier?”
Energize IT: From the Client to the Cloud: Find out about our “Software + Services” vision, where you can access computing power anywhere, any time and on any device.
Student Connection: Get Energized About the Future! Get a head start on your journey from academia to “the real world” as we show you some upcoming tech and talk about the opportunities that exist, even in current economic mess.
Faculty Connection: Supporting Faculty to Support the Future: Find out about our programs to support people who teach technology and let us know what you need.
Enthusiast Connection: Windows 7 Installfest: Take Windows 7 for a spin and ask us about our experiences with our up-and-coming desktop operating system.
In the past, we’ve only held EnergizeIT in Toronto, but this time, we’re borrowing a page from Aerosmith’s book and coming to your hometown. Starting in mid-March and running through until the end of April, we’ll be hitting these cities:
Victoria
Vancouver
Edmonton
Calgary
Regina
Saskatoon
Winnipeg
London
Kitchener-Waterloo
Mississauga
Toronto
Ottawa
Montreal
Halifax
Moncton
Fredericton
St. John’s
As for how much it’ll cost for you to attend our EnergizeIT events: nothing. Zip. Zilch. Nada. Bupkis. Honkis de Konkis, as we say in some circles. Simply put, it’s free of charge.