The other day I say this article, about the publisher of the popular iPhone game “Angry Birds” refusing offers from Microsoft and Google to write games for Windows Phone 7 and Android mobile operating systems. I’ve seen other people tweet similar things, usually saying things along the lines of “we won’t be writing Android apps any time soon” and similar quips.
My question is, why would you ignore an obvious, growing sector of the mobile market? Yes, I understand that right now, Apple has the store that has on numerous occasions made people millions for simple applications. However, that doesn’t mean that the Android Marketplace or Windows Phone 7 Marketplace will not make you any money.
We have developers who are making it a public point to not write applications for non-iPhone devices. Which to mean, from a business standpoint is a poor decision. I have no problems with writing the iPhone app first and getting it to market. People think iPhone when they think mobile app, so I get that you have to have an iPhone app to have mobile exposure. I understand this, I really do. But to say, well I see this other mobile OS (Android) is gaining market share, but I’m going to ignore it and only focus on the iPhone.
The only time that people seem to look at mobile application alternatives is when their app gets dumped from the iPhone App Store. You see it all the time, “Our app was removed for no reason” and while Steve Jobs has recently made it a point to say why most apps are removed, rejected from the store, we all know there are apps that shouldn’t have been rejected (Google Voice App anyone?). But again, this is the only time that people start looking at alternative avenues for mobile development. Wouldn’t a smart business plan be to have your app on as many platforms as possible? I know that I’d want to maximize my revenue streams, but some people seem to be okay with ignoring anything that isn’t the iPhone.
What are your thoughts on this? I’d really like to hear why some are choosing to ignore Android and Windows Phone 7 for their apps. Because to me it just seems like poor business. But hey, I could be wrong.
Scenario (let's just say):Build for iPhone only:cost: $50000benefit: $50000.risk of App store deletion: ??? 1%? thus ~$500? Higher risk for certain categories of apps.Build for Android:additional cost: $40000additional benefit: $5000strategic benefit: ??? better be >$35000Build for Windows PhoneAdditional cost: $80000additional benefit: $10.strategic benefit: ??? Better be >$79990–I'm making up the numbers, but the ratio of money paid for the same Android and iPhone apps is about a 1/10 ratio heavily in favor of the iPhone. You yourself have admitted this in the past.So I don't know. Maybe the problem with this (your blog post) is that you're writing a specific rebuttal to that article but trying to extrapolate a larger idea from the whole thing. It's pretty clear why very few people write cross-platform apps for ALL mobile platforms, and that's because they lose money doing it. I'd be curious to hear if Facebook was paid to build the BlackBerry and Palm OS versions of their app, or if they did it for strategic reasons, for example.But the answer to your question is clear: it's (usually) bad business to write an Android app for sale in the Android app store, because it's CLEAR that you will lose money doing so. The Angry Birds guys may be able to sell a lot of copies on the Android, so maybe they should give it a go. But almost no one else should. At least, not for “business reasons.”
Besides the fact that most mobile developers who develop for the iPhone probably do not actually know the programming language to develop for Android and WinMo, I would suggest that fragmentation, an unclear development roadmap, and the general (continual) cost of development would be the main barriers to entry for developers.Apple has mandated a very clear development roadmap, which means that the risk associated with developing iPhone applications in terms of general compatibility is more or less mitigated. The likelihood that an OS update will break APIs (assuming the developer has programmed his/her app correctly) is minimal. Likewise, the problem of legacy and cross-device compatibility is almost non-existent. Granted, some apps require the better hardware to run effectively (or at all), but the delivery mechanise for OS updates (iTunes) virtually ensures that most (if not all users) are running the latest version of the software. Likewise, since Apple controls the hardware, developers need only specify between device iterations (vs. brands and iterations in the case of Andriod devices).The problem with Android, as I understand it, is that developers are required to write and re-write their applications to accommodate OS updates (which are not universally distributed for a number of reasons), to accommodate hardware variations (often limiting application features to the lowest common denominator hardware-set. Considering the ubiquity of Android, it would only make sense for developers to push apps to the platform if they could guarantee the time and money to maintain the apps across a spectrum of hardware and software fragmentation (it isn’t legacy, let’s be honest). If a developer does not have the time or the money to do that, it makes little sense to inadvertently devalue their brand (their apps). Rather, they would be wise to focus on a single platform (by no coincidence, in most cases, this is the most stable and profitable platform – iOS).In terms of Windows Mobile, it is more likely a question of the overall success of the platform. Microsoft has a habit of either dumping products (see Kin), or leaving them to rot without a proper development roadmap (see previous versions of Win Mo).I think, then, it’s pretty obvious why developers would choose a specific platform (more often than not the iPhone). The small gains that could be made by having a cross-compatible app are lost in the continual development time required to maintain an app across vastly different platforms (with their own inherent barriers to entry like fragmentation and unclear development roadmaps).