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.
Lead is a worldwide leaderboard platform which developers can integrate into their games to engage its users. Lead provides a consistent reliable service and a growing ecosystem of products for developers regardless of the platform on which they develop. Lead is developed by Fersh, a student digital multimedia start-up based out of Toronto, Ontario. Fersh’s portfolio includes a number of award-winning mobile games, applications and developer resources. Fersh offers a range of products and services including consulting and customized software solutions across several platforms.
I had a chance to sit down with one of Lead’s developers, Kowsheek Mahmood (@aredkid) to find out how he and his team built Lead using Windows Azure.
Jonathan: Kowsheek, when you and the team were designing Lead, what was the rationale behind your decision to develop for the Cloud, and more specifically, to use Windows Azure?
Kowsheek: Being a start-up company with constrained funding, it was not feasible for us to have multiple dedicated servers for Lead. Furthermore, since we wanted Lead to provide a consistent experience across geographical locations, a distributed solution was the right fit. At Fersh we use Microsoft technologies to develop our applications which range from games to mobile and web applications. We chose Windows Azure because we could use our existing knowledge of the technologies involved and leverage them well. Also, Windows Azure provided for high availability and a flexible utility-style service, that fulfilled our requirements and was affordable.
Jonathan: What Windows Azure services are you using? How are you using them?
Kowsheek: We are using Windows Azure Compute Web Role instances to host the frontend site, as well as our simple but really powerful API with developers will integrate in their games. SQL Azure hosts our databases in which we store the leaderboard data for each game using the API. We are also using Blob Storage and the Content Delivery Network (CDN) for static content, distributed to different geographic regions.
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.
Kowsheek: While working with the ASP.NET Membership service, initially it wasn't clear how the database on SQL Azure would have to be built. A quick Bing search showed that there is a tool similar to the regular tool called "aspnet_regsqlazure" that builds the database. You can find out more in this support article. Once we downloaded the proper files and ran them against the database, all was well.
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?
Kowsheek: Initially, dedicated servers seemed feasible but after taking into consideration things like scalability and reliability, the hosting solutions seemed to fall short, so it always serves well to consider all the requirements and available options from the get-go.
That’s it for today’s interview with Kowsheek Mahmood of Fersh about their application Lead. Lead is currently in Alpha release but has already been integrated into several games, such as the popular Windows Phone 7 game Sudoku3D (Facebook, Twitter). If you’re a game developer, Lead is definitely something to check out. Perhaps you could even participate in testing Lead.
Tomorrow – another Windows Azure developer story.
This post also appears on the Canadian Developer Connection.