This post is part of a series diving into the implementation of the @home With Windows Azure project, which formed the basis of a webcast series by Developer Evangelists Brian Hitney and Jim O’Neil. Be sure to read the introductory post for the context of this and subsequent articles in the series.
To give even more background than in the first post … way back in late March (possibly early April) Jim had the idea to start something we originally called “Azure Across America” … not be confused with AAA :). If you put yourself in our shoes, Azure is a very difficult technology for us to evangelize. It reminds me a little of what it was like to explain the value prop of “WPF/e” back when the first bits were made available, long before it took the name Silverlight. Azure is obviously a pay for use model, so what would be an interesting app to build in a webcast series? Preferably something that helps illustrate cloud computing, and not just a “hello world” application.
While we debated what this would look like (I’ll spare the details), the corp team solidified a trail account program that enabled us to get free trial accounts for attendees to the series. This changed the game completely, because now we weren’t hindered by signup costs, deployment costs, etc. In fact, the biggest challenge was doing something interesting enough that would be worth your time to deploy.
That’s when we had the idea of a distributed computing project. Contributing back to a well-known distributed computing project would be interesting, useful, demonstrate cloud computing, and not be hindered by the constant fluctuation of apps going online and offline. So now that we had the idea, which project would we choose?
We also had a number of limitations in the Azure platform. Don’t get me wrong: Azure offers a number of strengths as a fully managed PaaS … but we don’t have administrator rights or the ability to remote desktop into the VMs. In essence, we need whatever we deploy to not require admin access, and be xcopy deployable.
Stanford’s Folding@home project was perfect for this. It’s a great cause, and the console version is easy to work with. What we wanted to do was put together a site that would, in addition to providing the details, how-to’s, and recordings, show stats to track the current progress …
In the next posts, I’ll go over the site and some of the issues we faced when developing the app.