"'The statesman's task is to hear God's footsteps marching through history and to try and catch on to his coattails as he marches past'. How inevitable is technology, and how much is luck and great leadership?Read More
It’s now 7 years since the iPhone reset the phone business, and indeed the entire computing and internet businesses. But it was pretty clear at the time that the first iPhone was an MVP, and Google’s first Android… homage, the HTC G1, was even more so. It feels rather like the last 7 years have been spent adding all the things that really needed to be there to start with, both in hardware and software. For iOS and Android these have come in different orders, since their opening assumptions were very different, but they’ve ended up at much the same place in terms of the user experience and interaction model. There are small differences in how you interact, and there are always things that are on one platform before the other, but the basic user flows are very similar, and almost all the obvious gaps have been filled.
Along these lines, my colleague Steven Sinofsky makes the point that for any new ‘thing' in computing, at the beginning everyone is doing roughly the same stuff because the stuff you need to add is pretty obvious and undifferentiated - you might deliver different things in different orders but you’ve got basically the same wish list. It’s once you’ve finished building out that stuff that things start to diverge.
This, I think, is what we started to see at this year’s WWDC and Google IO - the end of the first 7 years and the start of a new phase, with the fundamental characters of Apple and Google asserting themselves. As Jean-Louis Gassée put it, iOS 8 is really iOS 2.0
Hence, WWDC was all about cloud as an enabler of rich native apps, while the most interesting parts of IO were about eroding the difference between apps and websites. In future versions of Android, Chrome tabs and apps appear together in the task list, search results can link directly to content within apps and Chromebooks can run Android apps - it seems that Google is trying to make ‘app versus web’ an irrelevant discussion - all content will act like part of the web, searchable and linkable by Google. Conversely for Apple, a lot of iOS 8 is about removing reasons to use the web at all, pulling more and more of the cloud into apps, while extensions create a bigger rather than smaller gap between what ‘apps’ and ‘web sites’ are, allowing apps to talk to each other and access each others’ cloud services without ever touching the web.
Unlike the previous differences in philosophy between the platforms, which were mostly (to generalise massively) about method rather than outcome, these, especially as they evolve further over time, point to basic differences in how you do things on the two platforms, and in what it would even mean to do specific tasks on each.The user flows become different. The interaction models become different. I’ve said before that Apple’s approach is about a dumb cloud enabling rich apps while Google’s is about devices as dumb glass that are endpoints of cloud services. That’s going to lead to rather different experiences, and to ever more complex discussions within companies as to what sort of features they create across the two platforms and where they place their priorities. It also changes somewhat the character of the narrative that the generic shift of computing from local devices to the cloud is a structural problem for Apple, since what we mean, exactly, when we say ‘cloud’ on smartphones needs to be unpicked rather more. That's a subject for my next post.
Meanwhile, this sort of divergence is why I’m a little skeptical about the other two big reveals in the last couple of months: the Fire Phone and Facebook’s mobile announcements at F8. Facebook is trying to build essential plumbing to connect the web and apps together, in particular with its deep linking project. But this is like building the plumbing for a building that’s still going up, and where you don’t know what it's going to look like. Making tools to connect apps and the web together when Apple and Google are shifting the definitions of those terms is going to be challenging.
Amazon has a bigger problem. Most obviously, more and more of what it means to be ‘Android’ will come from the closed Google services that aren't part of AOSP and that it doesn’t have access to. If Amazon wants to free-ride on the Android app ecosystem, it will need to spend more and more time replicating the Google Android APIs that the apps it wants are using, or the apps just won’t work - presuming that Amazon even has the sorts of search-led assets to do that. But more fundamentally, AOSP is being pulled along by Google’s aims, and will change in radical and unexpected ways. This isn’t like building on Linux - it could be more like taking a fork of DOS just before Windows 3.1 came out. Are we quite sure (to speculate wildly for rhetorical effect) that we won’t be running Android apps in a sandbox on our ChromeOS phones in 5 years? Where would that leave Amazon’s fork? AOSP is not necessarily a neutral, transparent platform for Amazon to build on.
The general reaction to Amazon's Fire Phone has been a puzzled shrug. It's a good but unexceptional device with entirely conventional high-end and high-margin pricing - a move as out of character for Amazon as the purchase of Beats was for Apple (and probably driven in part by the way the US pricing structure makes even $400 phones ’free’). There's an interesting quasi-3D UI feature and a big flashing BUY button, in line with Amazon's role as the Sears Roebuck of the 21st century, but little that really changes anything or couldn’t be done on any other smartphone anyway. And that leaves people wondering why Amazon bothered. The most productive line of thought, I think, is to look at Prime, Amazon's whale service, and the role that the Fire Phone plays in securing that relationship.
To me, though, the interesting thing is less the phone than the platform and what it it represents - that is to say, the first real attempt to sell phone that forks Android outside China*.
Android itself is open source, and anyone is free to take the code (AOSP) and build whatever they want. Android is the new Linux, in this sense. But AOSP doesn't give you Google's own smartphone apps and it doesn’t give you all the system services Google has built. So if you make an Android device without reference to Google, and change a bunch of things ('fork Android') your device won’t have the app store and the maps, and it won’t have the Google services APIs that lots of third-party apps need, most obviously push notifications, in-app payments, location and embedded maps. There are lots of other things Google makes as well, but those are both the important and the hard parts.
Without this Google layer you really only have a featurephone, and to get Google's layer you need to submit to Google's control over what you make, which amongst other things means that you have to use Google's interface and you have to take the whole package - whatever Google wants on the phone goes on the phone. (The core mechanic here is that you have to pass the compatibility test). Hence, Google uses access to its apps and services as a lever to control Android. This is pretty similar to the way that Microsoft used Office and Windows: selling an Android phone without Google's services is like selling a Windows PC that doesn't have Office and can't run it.
In China all of this works differently. Google services are either blocked or weak or both (the Chinese unaccountably didn't let Google send its mapping cars down every road in the country), while the Chinese internet giants Baidu, Alibaba and Tencent ('BAT') and scores of others have built lots of great Android services of their own. So the vast majority of Android phones sold in China (even from Samsung or Motorola) come with no Google apps and integrate these instead.
Outside China, though, if you want to use Android as a platform but do something different, you need to build or buy those core functions yourself, and that’s what Amazon has tried to do. It has licensed Nokia’s HERE mapping platform, it has built an app store for Android, and it has built its own versions of the key enabling APIS - location, push notifications etc.
The problem is that the maps and the app store are not commodities. Adding them is not just a matter of spending the money. Google's Maps platform is very good and HERE, at least in western markets, is not as good. As with Apple Maps, it works, mostly, but the gap is clear and there is no roadmap that points to that gap closing. For apps, though an app store itself is perhaps a commodity, Amazon has only persuaded a minority of Android developers to load their apps into its store, partly since this means they have to swap out Google’s APIs (for maps etc) for Amazon’s, and that is not necessarily trivial. Amazon has done just about as good a job as one could expect anyone to do at this stage, and there are very few other companies that could get this far - perhaps only Microsoft. But it hasn’t, remotely, reached parity with Google.
And so Amazon is testing the proposition that you have to have Play (or iTunes) and Google Maps to sell a smartphone outside China - or, rather, it is testing just how good the app store and maps have to be. How many of the latest cutting-edge apps do you have to have, if you cover the basics? How close do you have to get to Google Maps’ coverage? We know Windows Phone does not have enough apps, but can the Amazon store get there?
These same questions apply to any Android OEM that might be thinking of asserting greater independence from Google (such as Samsung), with a further complication. Google’s agreements with OEMs have been leaked several times, and they include clauses that prevent you from having a foot in both camps: you cannot sell a forked device and carry on selling official Google Android devices. So you can’t experiment on the margins (Samsung can't sell a phone running Amazon's Fire software) - you have to walk away from Google entirely, or not at all. That's really no choice at all at the moment.
All of this takes us to the elemental question - why, exactly, are you forking Android? What important problem do you solve that’s worth reinventing the wheel, while taking on the risk of building on someone else’s platform, open-source or not? Why are you asking people to buy a phone with second-rate maps and a second-rate app store? Are you offering them something you couldn’t otherwise do in return, or just addressing your own strategic concerns? Are you solving a user problem or your own problem?
Both Xiaomi and Cyanogenmod (an a16z portfolio company) have built their own very custom versions of Android that do none the less pass the compatibility test. And though Xiaomi differentiates on software, Xiaomi phones outside of China ship with Google Apps. Hugo Barra called it 'a compatible fork'. After all, it’s not as though you’re not allowed to change Android at all. Google describes the compatibility test as follows:
"Enable device manufacturers to differentiate while being compatible. The Android compatibility program focuses on the aspects of Android relevant to running third-party applications, which allows device manufacturers the flexibility to create unique devices that are nonetheless compatible."
Generally, Android OEMs have been no better at differentiating on software than were PC OEMs, even though Google allows you to change more than Microsoft did. But it doesn’t follow that you can’t make Android visibly better without forking it if you bring the right skills and culture - Xiaomi and Cyanogenmod (and a number of other Chinese companies) show that.
Hence, it seems to me that the forking question really flows not from a specific feature that you want to implement but the fundamental principle of controlling your destiny - you want a platform that’s 'yours'.
That is, a central strategic problem for both Amazon and Facebook, amongst others, is that their businesses have moved from the essentially neutral platform of the web browser, where there has been no real change in the user interaction model in 20 years, to the much messier, mediated and fast-changing platform of smartphones, where the web is just one icon and platform owners are continually adding new ways for users to discover and engage with content, such as iBeacon or Google Now. They didn’t need to make browsers because browsers had become transparent commodities, but smartphones aren’t. This of course is why Google itself made (or rather bought) Android - to make sure that it would not be shut out in this new environment. Making an entire new OS is not an sensible option for Amazon or Facebook at this stage, but building on top of a free, open-source one is worth at least thinking about. But, again, in doing that you need to solve the users' problems, not just your own.
Facebook is also poking away at this issue (such as with the abortive Home), but as Mark Zuckerberg pointed out, even a really successful Facebook Phone would only be used by 5% or 10% of Facebook’s users, so would really just be a distraction. Instead, faced with a very different set of competitive dynamics on mobile, Facebook is exploring the unbundling of its product with a 'constellation' of different apps. That is, Facebook is embracing this new and more complex environment. With the Fire Phone Amazon is going the other way - greater bundling rather than less.
I do wonder what might appear if Facebook's strategy was applied to Amazon's product - if there were half-a-dozen different interesting and useful Amazon apps for finding and buying products. But Amazon has never been a user experience company in that sense - it thinks about user experience the way Fedex does, as something to focus on ruthlessly, but not as a playground for new experiences. That means it's going to be very interesting to see how it can enchant and delight people who buy its phone.
*Note: when I wrote this on a Sunday evening the fact that Nokia (and hence now Microsoft) has been selling a forked Android phone for the last 6 months passed completely out of my mind, even though I played with one at MWC and rather liked it. It's done rather well in emerging markets, apparently, and is on sale in parts of Europe) but isn't even for sale in the USA. The main driver is that Windows Phone doesn't fit well into the hardware required of that price. The points in the blog post all remain, though.