Lately, I have been taking some time to learn some new technologies. For me, the best way to learn a new technology is to jump head first into a project:
Daily deal websites such as GroupOn, LivingSocial, DealFind, etc. have really taken off over the last 6 months. With so many sites out there, my inbox was being flooded with emails from all these daily deal websites. This seemed like it might be a fun project, so I set out to build a daily deal aggregator.
First, I built a Windows Phone 7 app. I built this app using Visual Studio 2010. Silverlight for WP7, the silverlight toolkit for WP7 and WCF. Overall, I was pleased with the developer tools for Windows Phone 7 and I am looking forward to building more apps for WP7
The app conveniently presents deals for your city in a format very similar to the email client for Windows Phone 7. Users can flag deals, share deals with friends, and buy deals from over 20 daily deal websites. If you have a Windows Phone, you can download the Deal Groupie App here.
Next, I set out to learn some new web technologies. I had recently attended a Microsoft Web Camp in Calgary (presented by Jonathan McCracken) and I was impressed with what I saw. I decided to build a web version of Deal Groupie using ASP.NET MVC3. I also made use of jQuery, jQuery UI, SQL Server CE 4 and WCF. Since I had most of the backend already built, the web version did not take me nearly as long to build as the WP7 version did. I spent more time tweaking the css than anything else. The website provides daily deals for the selected city in 3 ways: a simple webpage listing all the active deals, a free daily email, and an RSS feed. The RSS feed was exceptionally easy to implement using Syndication mechanism built in to WCF.
Find deals in your city -- http://www.mydealgroupie.com/
Currently, Deal Groupie is finding more than 2000 deals per day in over 300 cities in the USA, Canada, UK, and Australia.
Overall, building the Deal Groupie app and website has been a really good learning experience. What’s next? I’m thinking of building an Android version of the app and adding some filtering options to the website.