What’s In the Cloud: Canada Does Windows Azure - Booom!!

What’s In the Cloud: Canada Does Windows Azure - Booom!!

Since it is the week leading up to Canada day, I thought it would be fitting to celebrate Canada’s birthday by sharing the stories of Canadian developers who have developed applications on the Windows Azure platform. A few weeks ago, I started my search for untold Canadian stories in preparation for my talk, Windows Azure: What’s In the Cloud, at Prairie Dev Con. I was just looking for a few stores, but was actually surprised, impressed, and proud of my fellow Canadians when I was able to connect with several Canadian developers who have either built new applications using Windows Azure services or have migrated existing applications to Windows Azure. What was really amazing to see was the different ways these Canadian developers were Windows Azure to create unique solutions.

This week, I will share their stories.

Leveraging Windows Azure for Social Applications

Back in May, we talked about leveraging Windows Azure for your next app idea. We talked about the obvious scenarios of using Windows Azure – web applications. Lead, for example, is a web-based API hosted on Windows Azure. Election Night is also a web-based application, with an additional feature – it can be repackaged as a software-as-a-service (hosted on a platform-as-a-service). (More on this in future posts) Connect2Fans is an example of a web-based application hosted on Windows Azure. But we also talked other, not-as-obvious scenarios such as extensions for SharePoint and CRM, mobile applications, and social applications.

Booom!! allows you to receive the information you want from your favourite brands and pages on Facebook. No more piles of messages in the "Other" box or constant posts to your wall. Booom!! only sends the stuff you want and drops it right into your personal Booom Box. Booom!! provides a simplified messaging system for both page admins and Facebook users.

At the Code Your Art Out Finale, I had a chance to chat with Karim and Trevor, the founders and developers of Booom!! about how they built Booom!! using Windows Azure.

Jonathan: When you guys were designing Booom!!, what was the rationale behind your decision to develop for the Cloud, and more specifically, to use Windows Azure?

Karim: We chose cloud technologies for the app not only because it was a technical requirement for the competition (Code Your Art Out) but we are always conscious of scalability with everything that we build. We want our applications to be able to grow with their user base and cloud technology allows us to accomplish this without much financial investment.

Trevor: We were in the final stages of evaluating Amazon’s EC2 when we entered into the Code Your Art Out competition. We were excited to hear the Windows Azure was a technical requirement because we wanted to evaluate Microsoft’s cloud solution as well. I found the Azure management portal to be very intuitive and with little effort I had commissioned a database and deployed a WCF service to the Cloud. This same scenario on Amazon would have taken at least twice as long and I would have also had to have previously installed SQL Server and any other supporting applications. One feature I saw as a real benefit was being able to promote your code from staging servers to production servers. It was a no brainer after the first deployment attempt. We are a start-up and we have limited resources and limited finances, using Azure helps to ease those pains and remain competitive.

Jonathan: What Windows Azure services are you using? How are you using them?

Trevor: We have a .NET WCF service hosted in a Windows Azure hosted service – a web role. Our PHP-based Facebook application front-end application talks to the service in Azure. We are currently working on deploying the front-end onto Azure as well, and then we will also start taking advantage of the storage services to optimize the front-end client performance. Then, we will be “all in”!

Jonathan: During development, did you run into anything that was not obvious and required you to do some research? What were your findings? Hopefully, other developers will be able to use your findings to solve similar issues.

Trevor: We did experience some issues with getting PHP deployed to the Cloud and we are still working through those issues. We used the command line tool (Windows Azure Command-line Tools for PHP) to create the deployment package and everything worked great in the DevFabric but when I deployed, I would get a "500 - Internal server error". I have determined the issue is with my "required" declaration but I'm not sure why and I could not find much documentation on this or on how to enable better error messaging or get access to logs. Still working on that. Otherwise, everything was smooth!

Jonathan: Lastly, what were some of the lessons you and your team learned as part of ramping up to use Windows Azure or actually developing for Windows Azure?

Trevor: Microsoft has always built intuitive tools and Azure is another great example. There will be many things I'm sure we will learn about cloud technologies and Azure specifically but for now it was nice to see that what we did already know was reinforced.

Karim: Azure is an impressive piece of technology that will help many small to large business grow and scale. It's nice to see Microsoft playing nicely with other technologies as well – WordPress, PHP, MySQL, etc.

I’d like to take this opportunity to thank Karim and Trevor for sharing their story. When you have a chance, check out Booom!!. Enter your email address so that you can receive an invite to the beta release when it is ready. I had the opportunity to see Booom!! being demonstrated – looks pretty cool. I, for one, am looking forward to giving it a test drive. Stay tuned for pictures and videos from the demonstration.

Tomorrow – another Windows Azure developer story.

Join The Conversation

What do you think of this solution’s use of Windows Azure? Has this story helped you better understand usage scenarios for Windows Azure? Join the Ignite Your Coding LinkedIn discussion to share your thoughts.