Macadamian Blog
iPhone vs Android vs Windows Phone 7
A few weeks ago, we started an experiment we are chronicling in a blog called The Mobile Experience. We set out to create an application across three different mobile platforms, to really get a sense for how difficult it is to create a mobile app across three different platforms at the same time. It's something that many of our customers are dealing with as they start to extend their products into mobile. Which platforms do I concentrate on? Which are the most time consuming to develop on? How are the UI paradigms and standards different?
Every week or so we'll be summarizing some of our findings in our main blog. This week I'll focus on some of our early feedback about what it's like to develop on each one of these platforms - which has the most complete toolkits, and what's it like to ramp up a development team on each platform?
Windows Phone 7 (WP7) - Although there are some limitations in the emulator and the development toolkit is seriously under featured so far (e.g. no date picker), true to Microsoft the development is fast and furious. We are managing to find work arounds for most roadblocks quickly; especially for those developers are familiar with WPF and .Net. As it matures, this is going to be an awesome platform to develop on. Think about it - WPF (SilverLight) on a mobile device!
WP7 is cool, it's slick, and it's got some soul - Microsoft is really starting to show that they too can create compelling user experience design.
iPhone Development - There is no doubt that iPhone is the toughest platform to context switch into. Dropping developers into objective C requires ramp-up time - lots of ramp-up time. Once ramped up, there are pages and pages and pages of documentation with do's and don'ts on how to use the SDK (how Apple wants you to - that's right, I said how Apple wants you to). If you are in violation - there's a chance Apple won't let you publish the application to iTunes. What does this really mean? Slower development. You need to ensure that the developers are following Apple's best practices, even if it isn't intuitive. Add the need to acquire more Macs to develop on and Apple has set the initial development cost and ramp-up bar high - something they could afford, and still can afford, to do since they were first to market (and still the market driver). But will they hang onto the lead if developers start to bemoan Apple for the development overhead for building iPhone apps?
The one thing iPhone (and Apple) does have is class, style, and soul - and this makes people flock to it.
Android - Android feels like a more mature version of WP7 with less glam. The SDK and toolkits are well established, and development is straightforward. The cost of developer ramp-up is minimal , especially for Java developers. But there is nothing that inspires you here. It just works, like a well built German engineered car from the late 90s. Maybe Android will discover its soul. Maybe...
Bottom line - if I had to make a decision about my preference, today, on just one of these platforms:
- to build a development team alone today, based on ease of ramp-up and total cost of development , there would be no question - Android.
- to pick a market that I would want to sell an application into today - iPhone.
- to pick a market and a platform to sell and develop the application in about six months - Windows Phone 7.
I have a feeling that WP7 will be a significant thorn in Apple's side.
About the Author