Visualizing cross-platform development

Much has been made recently of Microsoft’s shift from a Windows-centric worldview to a cross-platform approach to the development of applications and services. Sometimes, efforts like this are difficult to visualize, so I wanted to take some time to analyze the actual numbers around all this in an attempt to provide a visualization of the degree to which Microsoft has transformed itself. In the process, I’ll highlight a few other points too.

First, the overall numbers

Let’s start with some numbers. These numbers represent the number of apps each of the three major platform companies makes for each of the three main platforms. Specifically, I’m looking here at installable apps, not those that come pre-installed on phones (there is a slight issue here with the fact that Google offers many of its pre-installed apps in the Play store too, but for the sake of simplicity I’ve ignored that). The table below summarizes the current state of affairs (I’ve broken out the mobile and PC operating systems to provide additional granularity):

Cross platform development tableNow, let’s drill into some specific companies.

Apple – still living by Steve Jobs’ maxim

There’s room for debate about the extent to which Apple still reflects Steve Jobs’ values and policies, and how far it has moved beyond those. One area where it seems to have stuck pretty closely to Steve Jobs’ philosophy is cross-platform development. One of my favorite quotes on this topic comes from Walter Isaacson’s biography of Steve Jobs, in which Jobs described his attitude towards developing an iTunes app for Android thus:

We put iTunes on Windows in order to sell more iPods. But I don’t see an advantage of putting our music app on Android, except to make Android users happy. And I don’t want to make Android users happy.

That perfectly encapsulates Steve Jobs’ philosophy, and Apple’s approach in general, towards cross-platform development: do it when you have to, to enable you to sell devices to people not using Macs, but don’t do it for its own sake. Apple has remained true to that maxim so far under Tim Cook – the chart below has the relevant cells highlighted:

Apple cross platform developmentThe key conclusion here is that Apple has focused very much on its own platforms, developing a little over a dozen apps for both iOS and OS X beyond those pre-installed on devices, but barely touching the other platforms at all. Where it does so, it’s exclusively to support major Apple services for iPhone and iPad users who also use Windows: iCloud Drive and iTunes are two of the three apps, while QuickTime – necessary for playing Apple-generated video files – is the third. Development of Safari on Windows – arguably a departure from Apple’s usual rules for a time – has been discontinued. It’s also worth noting that, even on its own platforms, Apple isn’t developing dozens of apps – there’s a small, focused number, which reflects another key Apple principle: keeping things simple, and focusing on what it does best.

The one thing I’ve left out of the chart above is the Beats Music app. I left it out because it was acquired by Apple, rather than developed in-house, and because I suspect that at some point it will be replaced by something integrated with iTunes in the coming months. When that happens, it will be extremely interesting to watch what Apple does from a cross-platform perspective. Will it merely strictly honor its promises at the time of the acquisition and keep the old Beats app around for whoever wants to use it on Android, while developing an iTunes-branded alternative that’s more exclusive in its reach? Or will it use this as an opportunity to reinvent both Beats and iTunes while launching an Apple app on Android for the first time?

Google – developing for the platforms that matter most

Google’s incentives when it comes to cross-platform development are quite different, because its revenue and profits are driven by having the broadest possible audience and not by preferring its own platform. It also has a much more diverse and diffuse set of apps and services it makes available on all platforms though the web. Another favorite quote is this one from Andy Rubin (as quoted by Steven Levy in his book In the Plex), which somewhat summarizes Google’s philosophy:

We don’t monetize the thing we create… We monetize the people that use it. The more people that use our products, the more opportunity we have to advertise to them.

As such, Google develops apps very broadly, not just for its own platforms, but for Apple’s too:

Google cross platform development

Google actually offers more installable apps for iOS than Apple itself does. In fact, it’s likely that Google is among the most prolific developers for iOS around. All of Google’s core services are now available in some form on iOS, though it hasn’t made the same investment in apps on OS X, largely because these services run perfectly fine in a web browser. Google does make a handful of native apps – such as Picasa, Google Drive and Google Earth – available on both OS X and Windows, but neither platform has been a significant source of investment for Google. Meanwhile, its own Chrome OS has almost 40 apps available, largely because these are simply packaged websites.

Microsoft – broadest cross-platform development

To return to the point that sparked this post, Microsoft clearly has the broadest approach to cross-platform development of the three, developing significant numbers of apps for its own platforms but also those of Google and Apple. Within the last few weeks, Microsoft has announced its intention to add the full version of Office to the list of apps it offers on Android, and last week it released a slew of new MSN branded apps on iOS. The Microsoft column highlighted below really brings out quite how pervasive the company’s presence is on the other two companies’ platforms:

Microsoft cross platform developmentMicrosoft’s count of apps for its own platforms is skewed quite a bit by the large number of Xbox-branded games on Windows and Windows Phone, but there are also huge numbers of legacy enterprise apps on Windows in particular. But it also has almost 50 apps on iOS and over 50 on Android already, and the number looks set to grow even further. It’s worth noting that this hasn’t all happened in the past year: Microsoft has, in fact, been doing a lot of this for quite some time, so it doesn’t just reflect some Nadella epiphany. But the number and nature of those apps available on Apple and Google’s platforms has begun to increase under Nadella, and I think this will continue.

Windows – the platform only a mother could love

All of which brings us to the lonely last rows in the table, those representing Microsoft’s two platforms. While Microsoft develops for all three platforms, Google develops only for iOS and its own platforms, and Apple keeps to itself. Windows and Windows Phone are the platforms that get the least love from the other two, with hardly any apps from either Google or Apple:

Windows cross platform developmentThis is particularly remarkable because Google’s objective, as stated above, is to get its services in as many users’ hands as possible. It is likely that the calculus behind Google’s absence from Windows Phone in particular is twofold:

  • First, the investment needed to bring key services to Windows Phone is such that the current user base doesn’t justify the time and expense
  • Second, there may be a strategic element to withholding Google’s services from its traditional rival, even if Apple seems a more direct threat in many ways.

There may also be an element of leaving Windows Phone to the Microsoft-centric users, though it’s clear from the number of ersatz apps in the Windows Phone store that there’s strong demand for Google apps on the platform. More broadly, though, it’s likely that the first of those two bullet points is the real answer: it simply isn’t worth Google’s time and money to develop for a platform with very small market share and an increasing tendency towards low-end devices. This, of course, mirrors my recent piece on the Windows Phone app gap, and the broader challenge for Windows Phone. And all of this reinforces the need for Microsoft to embrace cross-platform development in the first place: as long as smartphone and tablet users continue to choose platforms owned by the other two companies, users aren’t coming to Microsoft, so Microsoft will have to go where they are, and that’s increasingly on iOS and Android.

  • For google not doing windows phone apps its point number two only. Googles not a startup that cant afford to put together a Windows Phone Team. 3.5% of the market may not be huge in percentage but thats a big number in absolute numbers and if their main criteria is what they say it is a calendar app, a gmail app, a drive app, these things are no brainers.. I’m stuck with google apps at work so as much as I liked the Lumia 1520 it wasnt an option for me. Google strategy is 100% about not letting a third player grow.

  • Walt French

    When Apple did Safari on Windows, did anybody use it? … Did it earn Apple any goodwill? … anybody see the clean look and decide they’d rather switch to Macs that had that nicer look?

    Safari is a quite credible program on the Mac and when Apple was offering it on Windows, it seemed a good alternative. But of course, most offices needed IE6 for compatibility with in-house apps, and anti-Apple mentality ran strong in many more IT shops.

    The same futility factor shows up in many other places. There are just SO FEW Windows Phones in existence that assigning resources to support it has a terrible cost/benefit factor. And even if say, Apple, were to put Safari onto the platform, what benefit would it get them? Almost nobody would download and use it, except perhaps as a curiosity, and there would be exactly $0.00 in revenues as a result. Even if Apple ported the iTunes Music platform to Windows Phones, Apple might garner a few downloads at 30¢ gross-to-Apple revenues, while discouraging the sale of some $600 iPhones or $300 iPods.

    It’s oh-so-different for Google, which wants to exude the air of inevitability that Redmond used to enjoy, without actually doing anything to encourage a non-established competitor.

    Microsoft, despite its gargantuan size, still needs to pick its battles smartly. Putting a host of desktop- or data-center functions onto iPhones or iPads won’t leverage the inevitability of Windows or Server, and could well distract from selling to the more casual and/or quick in-and-out function that mobile primarily supports. Already, Office products are simple adjuncts to intensive desktop work, rather than rethought-out packages for mobile.

    tl;dr: these counts tell me a very different story than the simple notions discussed. All three firms want to profit from satisfying customers, but have different means to that end because they have different profit strategies, resources and user bases.

  • Tahir Malik

    Great article!
    Windows was the monopoly and considered a very close sourced system. Microsoft has evolved and showed the world that it’s quite open.
    Apple is by far the most closed source system ever and in this time with BYOD I just can’t get it.
    Sure 3,5% of the Windows Phone market isn’t much, but even on Windows which has the majority at this moment as OS used, they don’t budge.
    So I can’t even stand it when people have Apple products in the Open Source community, they are all hypocrites. You want everything, but when it’s time to give you don’t give jack shit.

    • Shameer Mulji

      There is nothing hypocritical at all about it. Apple is one of the biggest contributors of open source projects. As a matter of fact Darwin, the OSX kernel, is open source.

      https://developer.apple.com/opensource/

      http://www.apple.com/opensource/

      OSX itself contains around 200 open source technologies / projects that Apple is involved in.

      Seriously, do your home work or back yourself up with facts instead of spouting hot air.

      • Tahir Malik

        Airplay is proprietary, the connectors used are proprietary. The OS and itself is proprietary, I can’t buy hardware and install OSX. So get your own facts straight!
        See the picture above and tell me how “Open” Apple is compared to the others.

        Here is a breakdown of iOS vs Android related to proprietary http://www.examiner.com/article/apple-ios-vs-android-the-facts-1
        IOS can only be built on OSX via XCcode. Sure there are cross-platform tools which do a lot of work for you, but that’s a work around.

        You can run a full official licensed version of Windows on OSX via bootcamp or VMWare.

        So yet again contributing doesn’t make you Open at all. They almost killed Adobe flash saying it’s a closed system, read all about the hypocrisy http://www.nwprogressive.org/weblog/2010/04/meet-hypocrites-steve-jobs.html

      • katsura

        Apple used many existing software projects to package them into a proprietary OS. If they would not at least contribute a little bit back to the Open Source community, it would be stealing.
        – BSD (UNIX) as the base of the OS
        – Browser of the K-project used as the starting point of Safari
        – GCC as the compiler (now using a different open source compiler)
        – many OpenSource utilities (openSSL, compression, vim, etc)

        Do you really think Apple would open source these projects happily if they started with a completely proprietary OS?

    • Walt French

      Yes, many millions fire up their Windows PC as soon as they get to their cubicle, and use that PC over the next 9 hours or so. Does that mean there’s a huge market for personal Windows apps? Quite the opposite; Office, Outlook and maybe a couple of third-party verticals are all that are used besides intranet access and some casual personal web-surfing with IE or Chrome.

      That market is stable and secure business for Microsoft but social, lifestyle and other personal apps just don’t happen much there.

      So the dev tools for Windows & WinPhone may be reasonably compatible, but the Job To Be Done doesn’t do much for making it cost-effective to do WinPhone personal apps—there’s just no modern, personal apps to leverage. And most personal phones aren’t going to get loaded up with business tools, especially if they need secure access to corporate databases.

      As a result, WinPhone share continues to dwindle as the hard-core Enterprise crowd—which Microsoft serves very well—isn’t making the transition to new mobile apps. Unfortunately, that’s pretty much been the Microsoft mobile strategy.

      This means that the “openness” of Windows—about which you make un-falsifiable (ie, evidence-free) and to my eyes, purely dogmatic assertions—is quite secondary to the irrelevancy of Windows and WinPhone to the current wave of software apps.

      Maybe the Next Great Thing will be led by, rather than chased by Microsoft.

  • Does Xamarin cross platform development support ios on Windows?