Two dominant platforms for the first time in computing history. And developers can't handle it.
In the early 80s there was Apple’s platform and Microsoft later ruled the roost until mobile became dominant. These platforms came one after the other and developers knew which one to write code for. They developed for the platform which had the most number of users. Everyone was happy. Until now. For the first time in computing history, we have two dominant platforms and developers don't know how to handle the situation. Over 96% of the smartphone operating system market is combinedly held by iOS and Android. While iOS commands 18.3% of the market, 78% has been obtained by Android. Those are worldwide figures and they change depending on where you live. Developers are in no position to ignore either platform for any serious app they develop. While they may initially target one, they will eventually create apps for both.
Browser wars and back to square one
The funny thing about the browser wars was that it should have never really been about the browser. It should have been about Internet services. Microsoft won the browser war, but lost the Internet war. The browser, however, went on to become the great leveler. Since a bunch of software services became available over the Internet in the mid 2000s, it was easy for people to switch platforms. Once non-Apple users tasted the iPod and the iPhone and they had the desire to buy Macs, switching from Windows was easy for them, since all they really needed to get day-to-day work done was just a browser. The browser was the real operating system and the underlying operating system was just a device driver for the hardware. The Chromebook is the pinnacle of this concept.
The browser today is stuck in adolescence. Its a weird and difficult time. You know teenagers. It was in 2007 that the iPhone launched and in spite of HTML5, you can’t develop a technically simple app like Instagram for it using just the browser. Case in point: Safari doesn't support camera access yet. Yet. I can't agree more with Benedict Evans when he says mobile is the full Internet experience and the PCs are the ones that have a basic, cut down version of it. The full Internet experience is not available via browsers on the mobile, though. And that’s a pity. You need apps that use proprietary APIs to take full advantage of the underlying device with all of it sensors.
Welcome to the platform wars
Phones from pretty much all platforms at some point will settle down with more or less the same input/output devices and sensors. But as of today, developers still have to write apps for two very different platforms. Anything else is a compromise. Anything else is a cut-down, limited, basic experience of the PC. Today, using a browser on your mobile phone is a throwback to the PC era. You need apps that use native APIs to give you the “full Internet” experience. Mobile browsers are yet to see the post-PC era.
From the image above, the two top browsers are actually from the two dominant mobile platforms. Take a look at another image below for a slightly different data set. You also see the kind of impact mobile is having on Web traffic.
Good fences make bad neighbors?
While browsers allow cross platform apps to be written, apps entrench developers deep into specific platforms. I am far from a conspiracy theorist, but what motivation will Google and Apple have to develop browsers into platforms by themselves? Platforms that can give cross-platform Web apps the “full Internet” experience that only native mobile apps can deliver today? They control the top two browsers today, too. So, there is no question, at least right now, of a third browser fixing current issues with browsers.
The Web on mobile sucks right now and the apps continue to provide an exponentially better user experience on mobile. I am not sure if the browser is really the answer. Look at projects like PhoneGap. The very name says it all. Such projects are trying to bridge the Web-App gap. It is not very difficult to find stories of why people moved away even from PhoneGap like platforms, preferring to write native apps, many a times due to performance and user experience issues.
With the two dominant platforms controlling the top two browsers, developers can’t expect the browser to become the platform. For now, if they want their users to have the best experience and the full Internet on both iOS and on Android, they have no choice but to write apps separately targeting those platforms.