Over Christmas and New Year i had a little fun with the free time i had, i did what i do most years and started a spelunking exercise into something new and exciting, this time it was: Windows Phone development. After purchasing a Samsung Omnia 7 and getting a feel for the OS and UI design, i set out to create a simple app to try my luck at the lucrative (… we’ll see) world of Windows Phone 7 development. My first Release, BurnStats - a simple app that allows you to view your FeedBurner statistics natively on the device, has finally hit the app store – in true festive spirit, there was much rejoicing to be had.
It all started out like all good little projects – i saw a need, and filled it. I am pretty obsessive about keeping up to date with my Google analytics and FeedBurner stats, and it was this addiction that left me feeling a little empty when i shifted from my iPhone to the Omnia 7. The application is not that amazing or cutting edge, and was a good little project to get started on before i move onto bigger things. At the same time i am able to make my life a little easier on the platform by having easy access to my FeedBurner stats on the move.
You can buy the app now on the Marketplace for US$0.99 or AU$1.30 at the following link:
http://social.zune.net/redirect?type=phoneApp&id=81267a29-4000-e011-9264-00237de2db9e
So how was the platform to develop for
Over the past year i have been Tech Lead on a number of projects across multiple mobile platforms. Google’s Android, Apples iPhone and a touch of BlackBerry action to test the waters. I can definitely say that Windows Phone 7 was the nicest mobile platform I've developed on to date. Every platform has its pros and cons, but Microsoft has a few tricks up its sleeve that leave the other’s in the dust from a developers point of view.
- Visual Studio
Visual tooling with an awesome debugger is number one. Working in Eclipse on Android applications is nothing short of labour intensive, debugging in Xcode i won’t even begin to get into, but working in Visual Studio is like eating cake in comparison. I cannot stress how much of a plus this is. - Simple straight forward UX and development guidelines
Microsoft was pretty straight up with its guidelines on how to develop apps to suite its platform. When you read Apple’s all you get the feeling of, is the fact that you are nothing to them and they will happily remove your app tomorrow. Even the tone that Microsoft’s UX guidelines take makes your feel more like you are a valuable part of their yearly market cap. - Silverlight is awesome for ex-web developers
The way that Silverlight manages a lot of things such as view navigation will seem very familiar to web application guys. This makes it very easy to cross over. When navigating to a new view, you are actually calling it as a URL with a query string:
NavigationService.Navigate(new Uri("/Settings.xaml?firstTime=true", UriKind.RelativeOrAbsolute));
This makes it incredibly easy to cross over from web land to mobile land as your way of thinking is very similar. Being able to write in c# is pretty awesome as well as it brings all the power of Linq and other dynamic language coolness with it.
Is it worth my time
I think definitely, and i’m not just saying this to support the time I've already invested in the platform and make myself feel better, but because it a very fun platform to develop for, and I'm only more excited when i think how great the platform is for its first revision in comparison to similar platforms when they first launched. For those of you out there that are interested in making some cash on the side, it should also pique your interest to know that there definitely appears to be a land grab going on to replicate all the cool iPhone and Android apps on Windows Phone 7, so their is no time better than the present to carve out a niche for yourself on the platform - or your rip off of an Android or iPhone app on the platform ;-)
See you in the marketplace!