There’s No Such Thing as a Free Lunch

I know. I said I was going to be AFK for a bit as I work on some projects. Well the leaves are starting to change color here and fall always makes me want to sit in front of a glowing LCD screen and write about the cloud. Ok, maybe not… but I received two emails in as many days last week asking about how you can work with Azure “for free”. I had a few moments today so I figured I’d toss this out for everyone.

Gather together the necessary bits

First off, we’ll need an OS. Windows 7 adoption is going great, but there’s still many folks using Windows XP. So I recommend snagging Microsoft Virtual PC 2007 and the 90 day trial version of Windows 7. Using these two tools, you can set yourself up with a nice little Win7 VPC image that will work just fine for the next 3 months. Just make sure that when you install Win7, you get the IIS feature installed.

Next, you need a copy of Visual Studio. Fortunately we can snag a trial version of Visual Studio 2010. It’s good for 30 days, but you can request an extension that will take it to 90 days. Visual Studio 2010 Express may also work well, but I haven’t tried it myself.

You may want to work with SQL Azure, so I’d recommend snagging SQL Server 2008 R2 Management Studio Express. This will allow you to attach directly to a SQL Azure server.

Now that the basics are in place, we’re going to need to get copies of the Windows Azure Visual Studio tools and SDK as well as the Azure AppFabric SDK. Make sure when running these that you’re logged in to Win7 as an admin user that has also been made a system admin of your local SQL Express db. Otherwise the development storage service may have some issues.

With this, you’ll have all the tools in place to start learning the basics of the Windows Azure platform. However, as anyone else that’s worked with the platform will tell you, you really need to be able to put stuff into the cloud to get the full picture.

Before you whip out your credit card…

Before I just toss links to getting a subscription at you, I want to take a moment to caution you. Cloud Computing is about consumption based pricing. You pay for what you use. So before you even set up an account/subscription… UNDERSTAND WHAT YOU WILL BE BILLED FOR. I’ve seen numerous instances where folks have received surprise bills and in 99% of them, they simply did not fully comprehend how the cloud platform’s pricing was calculated. So here’s a short primer.

Compute – you will be charged from the moment you deploy a service until its deleted. Windows Azure promises you a level of performance and dedicated resources. To ensure those are there, they are reserved once you deploy and not released until you delete your service. Think of it like leasing office space. You pay rent regardless of if you use the space or not.

Bandwidth – You are charged for data going in and out of a datacenter. This includes initial loads of application and data. Every time you peak at your app, you’re taking a sip of bandwidth. To help control this cost (and increase performance), put all your apps/data in the same location (aka affinity group).

Transactions – This doesn’t refer to a database transaction. Each get, put, etc.. that you make is a transaction and you will be billed accordingly. One exception to this is the Access Control Service where you are only billed for “successful” authentications.

Storage – For Azure Storage, this is pretty self-explanatory, nothing new here. SQL Azure is a bit of a different monster. You are charged per database, but charges accrued based on the number of days it exists. So one database that was provisioned for 10 days, is the same as 10 databases that were each provisioned for only 1 day. When you read the pricing chart, you’ll see simply a monthly amount.

Connections – Only applies to the AppFabric service bus. It’s the total number of active connections you can have. The AppFabric service bus is monitored in 5 minute intervals so if you have allot of short lived connections, expect your billable usage to appear to be less than whatever “pack” you may be paying for. I also suspect that as folks learn to exploit this, we may see the way billable usage is calculated change. So don’t bet on it always being the case.

The Free Lunch

One thing that makes the cloud different then on-premise software is that the service provider has on-going costs they are incurring to provide the service. So making hosting resources available for free isn’t as cost affective for them as tossing up a time bound trial version on a website that you can download.

Some providers still make things available for free. But for Windows Azure, your options are somewhat limited. There are several promotional offers available: Introductory Special, MSDN Premium Benefits, BizSpark benefits. These offers all require a credit card because once you use up the free benefits, you will be charged. Hence why I was talking about how consumption is calculated earlier.

There is another option, through October 30th, you can snag a 1 month pass for Windows Azure. This offer is good only for the month in which it was requested and limited to the first 500 requestors. It’s also extremely limited with a quota similar to the introductory offer. I really hope Microsoft decides to extend this program past the end of the October

Happy now?

Well that’s it for the moment. I’ve got to dive back into my world of PowerPoint presentations and AppFabric R&D. So until next time, enjoy the cloud. And if you happen to find a “will do PowerPoint for beer” t-shirt… let me know. Smile