I attended a seminar on enterprise mobility management the other week. During one of the breakout sessions, the speaker presented a slide on market fragmentation that showed the percentage of iOS and Android devices on his network, subdivided by OS version. The presenter slyly asked us which player was missing. There were nervous chuckles across the crowd as people thought about RIM’s latest financial troubles. When the presenter advanced his slide and clarified that he actually meant Windows Phone 8, people seemed genuinely surprised. I heard one fellow in the back row mutter incredulously, “Wait, Microsoft is still in the phone business?”
Oh, good grief! Yes, Microsoft is still engaged in the smartphone and tablet market. To give it its due, the company’s latest smartphone OS is probably the best edition they’ve ever done. No matter what its market share is today, it’s likely that Microsoft will continue to grow steadily and will need to be seriously considered by third-party application developers as its player gains traction.
That represents a major problem, though: there are too many OS versions to develop for. When you’re a small developer, where do you focus your efforts? I ran a small dev project for two years, trying to bring a pair of casual games to market for iOS 6 and Samsung’s version of Android 4. Earlier this year, I shut down the project because it was no longer cost-effective to continue. I was disappointed, but not terribly surprised.
From what I’ve observed, the situation is just as bad for businesses that need to maintain feature parity for their apps between all the mainstream smartphone and tablet operating systems. Just getting web-delivered content to behave consistently between platforms can be darned tricky; keeping compiled apps up-to-date on the different platforms and editions can be maddening.
If you have a sufficiently large team of programmers and testers, you can probably just barely keep up. If you don’t, one or more of your efforts will have to be sidelined. Right now, that probably means BlackBerry. Next to drop might be Windows Phone 8 or older versions of the (currently) dominant OSs.
The same problem plagues IT support teams. Troubleshooting wildly different device types and OS versions demands a small army of highly trained support techs. For all but the largest of IT departments, that means some devices will have to be declared ineligible for technical support because it’s simply not cost-effective to keep small numbers of obscure or obsolete devices running. Ironically, in my last outfit that meant BlackBerry received premium support, yet there was no support at all for Android users when they rang the helpdesk.
In the end, it’s consumers like us who are making this a headache for developers and IT support teams: it’s so easy and cheap for us to buy the latest mobile technologies on a whim that we can’t help ourselves. Then, once we have the newest, shiniest toys, we demand our employers indulge our insatiable device appetites.
This problem affects BYOD initiatives too. Unless you’re willing to commit a significant quantity of resources, you can’t commit to supporting every possible flavour of guest device. At some point, you’ll have to declare some visitors’ devices persona non grata. That may inspire some anger from the Android 2 die-hards, but they’ll live. You have to draw a line in the sand based on the break-even point; one side reflects the commitment you’re willing to make to the majority of your customers. The other side includes all of the customers you simply cannot afford to support. It’s not personal; it’s a matter of survival.
This isn’t likely to change soon. No matter what the OS zealots preach, no one OS or platform is likely to “win” the market. Google, Apple, and Microsoft have too many compelling features lined up for any one device or version to conquer hearts for more than a few weeks. That will be great for consumers in the long run… even as it’ll likely remain a living hell for developers and support staff.