While I’ve go your brain addled with images of Steve Ballmer prancing around and screaming like a lunatic, it’s interesting to reflect on two significant events in the mobile app world that have occurred in the last week. I suspect these events may not be wholly unrelated.
Behind curtain number one we have Apple finally bringing common sense to its rules for developers. If I may paraphrase: “your app will be judged on its usefulness and quality, and not on how you’re writing it”.
Behind curtain number two we have Microsoft finally shipping WinCE 7. Er Windows Mobile 7. No wait, it’s Windows Phone Series 7. Correction, I mean Windows Phone 7.
One of the fascinating things about Windows is that it has really great, easy-to-use developer tools and, by and large, really terrible software. Take word-processors for example. The only word processor anyone using Windows will voluntarily use (unless they’re a “Freetard” to quote Fake Steve Jobs) is Microsoft Word. On the Mac, Word has serious competition, notably including Pages, but also old favorites like Nisus, and innovative specialist tools like Writeroom and Ulysses. I’d suggest that if Microsoft tried to threaten Apple with pulling Word from the platform today, Mac users would hardly blink.
There’s no question that there are far more potential developers of software for Windows Phone 7 than there are, even now, for iOS or Android. But does it matter? All those developers had ample opportunity to flood Windows Phone 5… oh wait Windows Mobile 5… with fabulous high quality apps. Why didn’t they?
Part of the problem is that while Microsoft’s development tools are easier to use, they don’t offer developers sufficient control to produce a truly polished user experience* unless the developer simply gives up and writes his/her own GUI layer. (I can’t speak for the very latest APIs, since I don’t have any experience with them, but those APIs are younger than Cocoa Touch, so the arguments about “number of available developers” and “mindshare” go in the opposite direction.)
* E.g. Windows edit fields don’t behave correctly (in pretty much any respect). If you want an edit field that behaves properly (with respect to text selection, tabbing, etc.) you pretty much have to write one from scratch yourself, and then it will be different from the “standard” control. Windows has had this problem since Windows 1.0 and Microsoft’s obsession with backwards compatibility (which is highly selective) means that while you may not be able to restore backups made with old versions of your backup software, bad UI design ideas from 1984 are still faithfully reproduced in 2010.
So, let’s suppose you’re a Flash developer who was hoping to develop iPhone Apps, but Apple closed the door in your face which led you to consider learning Silverlight in the hopes that at least you could kind of transfer your skills over to WP7 development. Time to cancel that order for “Headfirst into Silverlight” on Amazon, huh? (Sorry, that book doesn’t exist.)
Market Share Slices
The biggest problem for Android developers right now (and I speak as someone with a game I’d love to port to Android) is that the Android market is so fragmented, and there’s no sign of it getting better. Assuming Windows Phone 7 is at all successful, I suspect what we’ll see is most of the current Android handset manufacturers shipping two (or, of course, more) versions of much of their hardware, one for Android and the other for WP7, possibly with highly confusing branding, and certainly with equally confusing hardware. The carriers already try to stamp their own logos on everything, so figuring out whether you’re getting a Verizon Samsung Supernova with Android or Windows Phone 7 is going to be tricky for people who know what an operating system is. How many times will a kid send their parent out to buy them X and end up with Y?
And while it’s not clear who the winner is, what we’ll see is something like this: LG has this new phone it wants to sell (which looks just like an iPhone crossed with a sidekick and then whacked with the ugly stick, based on past performance) and releases two versions of it, one with Android and another with WP7. One sells better than the other, leading the other to be hugely discounted to get rid of excess inventory. From a developer’s point of view, this sounds really great, doesn’t it? (Oh, and once again, consider the parent sent out to get X and coming back with Y? “It’s exactly the same phone but it was on clearance.”)
If this situation is going to be fixed, two things need to happen. First, users need to demonstrate — loudly and with their wallets — that these practices are not acceptable. Second, Google must take a stand for the end user and insist that parts of Android must be included on every device in order to bear the Google name — and that all carrier installed apps and services are easily and freely removed by users at their discretion.
From Will Carriers Destroy the Android Vision on Engadget.
I’d have to say that given what’s been happening with Android, we ought to be rooting for WP7 over Android at this point. I mean, at least Microsoft doesn’t go through multiple incompatible major version releases in a single year. At least Microsoft is trying to enforce some kind of interoperability standard on handset makers. (Heck, if WP7 is successful, it may even help simplify the Android handset market.) There’s some chance of having a vaguely sensible platform, isn’t there? But given the fact that carriers and handset makers will always be able to point to their “free” and “open” Android alternative, I’m guessing Microsoft will be pretty much screwed. Either let us walk all over you or we’ll just use our free bizarrely customized crapware bloated Android distro. Did I mention it’s free? kthxbye.
I really wonder if there is any such thing as “the Android vision”. It seems to me Google wanted the lowest common denominator smartphones to be able to generate ad revenue for them sooner rather than later, and that’s as far as any “vision” went.
Mission accomplished (well, kind of).
It also seems to me that the number of people buying Android phones because of any “vision” is very small. Most of the “voting with wallets” in the cellphone market is people wanting the cheapest product that does X, Y, and Z. Hoping for people who “vote” this way with their wallets to make some statement about bloatware is asking a bit much. It hasn’t happened in any other commodity market or we wouldn’t have — to pick an example — forced bundling of cable TV stations. (How many of us would opt to simply not receive the home shopping and TV Guide channels?)