Platform wars: the final score
ben-evans.com
ben-evans.com
Nothing is over, even the "browser war" is now back on in full force, I suspect a new operating system (or perhaps windows 10? who knows) will emerge that will challenge both iOS and Android. Why? because something like this always does.
DOS/Windows (and Office, another brutally fought-for market dominant) was the lifeblood of MS, Google mostly just wants to make sure a lot of people have cheap, always-on, access to the web so they can monetize their searches.
Hence why Apple is trying to bride their way into India with their 2nd hand and refurbished devices.
iOS share is <15% and declining(1), while Android has ~85% of market and is growing fast. I would not call that a fair competition..
1. http://www.statista.com/statistics/266136/global-market-shar...
EDIT: provided a more accurate link
Additionally, Apple mobile devices are typically in use longer than Android (updates available, hardware+screen more robust than the majority of Android devices), so 85/15 sales doesn't translate directly into 85/15 install base.
For context, this is what the leading Android handset looked like when the 3GS came out:
And you're following that trend off a cognitive cliffe.
Apple's market share is in high end devices. Sales for both Apple and every permium Android handset maker have stalled. So the market for premium phones is static and Apple isn't losing any market share in that space. All that's happened is that high end phones have reached saturation point so now it's about market share preservation instead of growth - at the high end.
The only reason the overall market is tilted so highly towards Android is because the ultra low end market is exploding and that's all Android (actually, all AOSP). But that poses no threat to Apple whatsoever. It's completely irrelevant to them. If anything, the growing significance of AOSP is more of a threat to Google and their full-feature licensed Android.
Apple's IOS is worse in most regards.
Have an iPhone for work and it's terrible. I honestly don't know why they're so popular. The UI/UX is atrocious.
Apple design their UX for majority. I worked on MacOS for a few weeks and it was nightmare. Like someone removed most of features that was useful to me and added a lot of garbage.
Being a 90% linux vs 10% macos kind of guy, it feels a bit weird to promote the ios UX, but I guess it emphasizes the fact that people might be inconsistent in their likings, hence the need for choice.
I am not sure how I could be more happy with my device. Right now it mostly does what I want it to do, the battery lasts a couple of days, and it rarely bugs out.
edited: changed "really" to "more" in the second paragraph.
That would be cool. Give me a 3GHz i7 quadcore with 500gb ssd that I can also put in my pocket and have the battery last 2 days.
Always having 2 or 3 expensive computers on my person seems dumb.
I am not sure how I could be more happy with my device.
Depends what you think the best possible device is. My phone meets my expectations for a smartphone. If you think phones will replace PCs for everyday office work, I'd say it falls quite a way short.Agreed, that's why I have the caveat
I think we're conditioned to have a low bar.
I want something that lasts a long as that $20 feature phone that I can pickup near the checkout line at Fry's. I want it to be $20. I want to be able to drop it repeatedly.
I read somewhere that given Apple's design esthetic, the iPhone will evolve to a slab of glass. It would look like a piece of art. Sounds right. Something with no holes. You can submerge in water. Screen would be all around, front, back, sides.
Here's what I'd love to have as a developer / power user.
1) Even better multitasking. Like ability to leave something running when I lock the device -- even at cost of battery life. More control, please.
2) Browsers could still get better too. Apple and Google should take a look how Opera Mobile removes need for horizontal scrolling while zooming.
3) Maybe some input device innovation could be done. Touch is nice, but it's not perfect. More precision would be often useful, but without clumsy stylus and such. Voice controls could be improved as well.
4a) For Android, updating and support issue needs to be solved. Apple seems to typically support its devices long enough for this not to be a real issue. It's unacceptable to just drop support after 1-3 years. There should be a clean industry standard way to install a new operating system. Failing that, vendors should for the very least offer an extended paid OS update service past the usual 2-3 year support period.
4b) For iOS, I'd really want more control of the device without need for insecure jailbreak. This is the main factor that keeps me using Android for now. I want to have completely free access to my files. I want to be able to execute dynamically generated code (even if it's running in a sandbox or needs to pass a validator of some sort). I want more control over how the UI works. Etc. Insecure or confusing for non-technical users? Put it behind a switch "advanced mode".
What I'd really like is for Apple to do the jailbreak patching on old releases and allow roll-backs. I do like iOS and iPhones, but taking my 4s up to iOS 9 after having AT&T unlock it resulted in a major performance hit. They have improved it, but it's not the way it used to be, and same with space considerations. I'm fine with the OS having to eat up a lot of space but right now Apple is in a transitional stage for iphones and iOS where legacy hardware can still run iOS9; the 8 gig phones just have almost no room on them with the dump space used that you can't manually clean on stock iOS.
Basically, I'm fine with updating, but I'd like to know I can decide to go back if my real world usage is not acceptable. Apple's legacy support is great and I do like that they include the option, but I'd like to be able to decide "not for me".
Sadly this is called buying a new phone and it won't change.
With Android devices now around 150 euros price range, I doubt very much anyone is willing to pay for updates versus a new phone.
And on the OEM side, Google seems unwilling to attach update requirements on their contracts with OEMs.
They would only need to make it part of the requirements to integrate with the Play Store, so easy, but they won't do it, looking at their current behavior.
Lack of updates was already the norm in the older days, with luck some Symbian handsets used to have just one firmware update during their lifetime, which only technical users would apply anyway.
It would maybe limit the rate at which new imcompatible things are sent to market: if you have to support that stupid thing for a number of years you better get all the drivers into some sort of mainline kernel etc etc
http://europa.eu/youreurope/citizens/consumers/shopping/guar...
I would count software problems as manufacturing defects, but I'm no lawyer. I wonder if anybody tried getting their old hardware replaced for free after discovering a software problem.
Almost all have annoyed me seriously. My last Z3? At some point Sony thought it was a good idea to start pushing ads (totally out of place Amazon shopping link.) into a really expensive phone.
Before that: 3 really not impressive Samsungs, 2 S3 (one bricked) and one Note II.
iPhone? There is a couple of reasons I don't use them: lately because other top if the line models have been waterproof. Before: iOS was just too limited for my preferences.
However the way they managed the platform just killed it for mobile handsets, even if the Surface Phone ever happens.
They might win on the tablet market, with the convergence of tablets / laptops / Phablets, since Android and iOS still don't offer a competitive replacement for all type of users, e.g. Visual Studio on Surface vs AIDE and Swift Playgrounds.
But it isn't clear if that will actually happen.
Android with its Java fork (maybe one day they properly support Java Compact Profiles) has become the MS-DOS/Windows of the mobile world.
Google is capitalizing on that for Brillo, which is basically Android/Linux with C++ instead of Java and MIT instead of (L)GPL for anything else.
As for iOS, there are still many countries where even with a subsidized contract, they are just too expensive when the average salaries are below the 500 euros line.
Yes there will always be Tizen, Ubuntu <pick your GNU/Linux fork>, but I don't see they ever managing to build a solid app story to win the hearts of developers and users.
Specially in regards to monetization.
So this effectively means iOS and Android are the ones that really matter.
Just like we have PS and XBox, Mac OS X vs PC (on the desktop), Windows vs UNIX (on server) and so on.
EDIT: I stand corrected due to having misunderstood that the claim refers specifically to the status of Windows Phone.
This is largely irrelevant. The ART runtime is open, the class libraries are open. So, it is not very hard to add support for Android applications to another system. In fact, that is what Microsoft did with the canceled Astoria project[1], as well as Blackberry before. Of course, you need to build workarounds for Google Play Services, but that is a solvable problem.
The real reason why Windows Phone with Astoria would fail, is that the platform only provides marginal benefits for most consumers (if any). Add to that uncertainty created by exceptionally bad management (two OS rebases in just a few years) and you have a dying platform.
That said, I think the real danger for Android comes from within: Chinese OEMs providing Android without Google Play Services and/or Samsung being so powerful that it could fork Android.
[1] Some people were running Android apps using a leaked build.
[1] https://developer.amazon.com/public/support/submitting-your-...
Furthermore, running unmodified Android apps on Windows Phone would have conceded the developer share further. Sure, it would've gotten holdout apps on WP at the very least, but the experience would have been subpar, and WP owners would have been reminded daily with bad UX, and the whole thing would be a tacit endorsement that their platform is second-rate, practically running an emulator of someone else's platform.
Instead, Microsoft decided to bite the bullet, scrap Astoria, roll out (the same) Windows 10 to as many desktops as they can and see if that changes the app equation. So far, it hasn't yet, but after years of screwups and scrapping platforms they finally have a strategy, and some leverage. Google knows this all too well, which is why they finally brought Android apps to Chromebooks.
If Google brings Android apps onto Chrome on Windows 10 or macOS, it's over, everyone else has lost.
Having tried BlueStacks repeatedly I wouldn't say that's game over. Unless Google pulls off the most seamless emulation ever.
It would be nice to see Google having a taste of their own medicine by having forked Java in first place.
The only thing that can pose challenge now is Geopolitical entities like China or Europe etc start putting increasing restrictions on Google/Android etc
It is nice to see though Oracle with all their money and ambition and Java ownership could not make an Android competitor / compatible system. I think meagre relief from courts of law has dampened their enthusiasm about anything beyond enterprise market.
No sane app developer would invest into it.
I was just thinking of Android itself. Samsung already has quite a few extensions.
Currently Android Java is a mixture of Java 6, 7 and 8, doesn't implement 100% of any of those versions, which fails the Java TCK with a glorious score.
Both runtimes (Dalvik/ART) are still slower than industrial Java Embedded JDKs like J9 or PTC.
All for not paying licensing fees to Sun.
Does Google call it Java? No, and you clearly know this. So why is there a need to pass the TCK? As for the TCK itself, you need look no further than Apache to see what a farce it is.
>Both runtimes (Dalvik/ART) are still slower than industrial Java Embedded JDKs like J9 or PTC.
I'd love to see the performance and resource usage of the JVM on a mobile device. You see, there's a reason Oracle failed miserably trying to build their Java phone.
Surely it does
https://developer.android.com/index.html#q=Java
I see tons of references to it.
> I'd love to see the performance and resource usage of the JVM on a mobile device. You see, there's a reason Oracle failed miserably trying to build their Java phone.
I'd love to see Google fanboys accept the fact that Google has ripped off Sun of their work and brought fragmentation to the Java world with libraries that don't work on Android.
Of course Oracle and Sun failed, Google gave their work for free to OEMs.
Reference to Java libraries doesn't mean that Google calls it Java, and you know it.
> I'd love to see Google fanboys accept the fact that Google has ripped off Sun of their work and brought fragmentation to the Java world with libraries that don't work on Android.
I suppose that Java SE, Java ME and Java EE are compatible and they are not fragmented.
Calling others fanboys? The argument you have is insulting?
Are you saying that Apache ripped off Sun?
Microsoft doesn't implement C99, C devs bash Microsoft because they don't update the language.
Google doesn't provide a proper Java implementation, it is ok they are on their right to fork the language.
Java is the whole package, virtual machine, language and libraries.
Anything else is a plain fork and word games to workaround licensing issues.
"For more information about general practices to clean up your resources when programming in Java, refer to other books or online documentation about managing resource references."
https://developer.android.com/training/articles/memory.html
> I suppose that Java SE, Java ME and Java EE are compatible and they are not fragmented.
Yes, since Java 8 there is a notion of profiles, valid across all certified implementations.
Android is not even compatible with Java compact profile 1, the smallest of them.
> Calling others fanboys? The argument you have is insulting?
Yeah apparently we are not allowed to side with Oracle.
> Are you saying that Apache ripped off Sun?
They also did not have a license to use Java on embedded devices did they?
The LGPL with classpath exception license was only valid for desktop and server deployments of Java.
Again, they don't call it Java so they can do whatever they want with it.
>Android is not even compatible with Java compact profile 1, the smallest of them.
Good thing they didn't call their implementation Java.
>Yeah apparently we are not allowed to side with Oracle.
It's kind of hard to side with a company with a reputation like Oracle and even harder for one that thinks it can sue for 9 Billion dollars for the partial use of a API's SSO.
>They also did not have a license to use Java on embedded devices did they?
They didn't call it Java so they didn't need one.
But hey lets just shout to the wind the "do no evil" crap.
I use Android Studio with Gradle and Java to write Android applications, how come it isn't Java!?!
Every other company in this planet is fine to play by the rules of the Java world, just Google not.
Instead they fill the Android documentation with the Java word everywhere, rely on Java compilers and libraries, but just because they don't put a coffee cup it isn't Java.
On top of that they cherry pick features from Java, slowly making it impossible to write portable libraries without having multiple code paths.
Which is going to become increasingly harder with Java 9 and 10 features.
Just because they play word games by putting Android on the box, it doesn't make it less Java.
Really? Now it is clear that you're just not being serious
Android is a fork of the Java eco-system that prevent 100% of Java 8, 9 and upcoming 10 features to be used on the platform.
Anything else that Google states is a plain game of words to avoid paying Oracle for what they did to Sun.
I really don't see the appeals court overturning a jury verdict. Keep dreaming, though.
>Android is a fork of the Java eco-system that prevent 100% of Java 8, 9 and upcoming 10 features to be used on the platform.
I find it funny that you think that a fork must adhere to the rules of the open source project they branched away from.
>Anything else that Google states is a plain game of words to avoid paying Oracle for what they did to Sun.
It would seem the only company getting paid is Google. First from Oracle's incompetent legal team for disclosing confidential information and secondly by Oracle for court fees and possible legal fees.
I like how you conveniently leave out the facts to try make your argument relevant. Microsoft used the Java trademarks and modified the way Java worked. Sun was justified in suing them for this.
>I use Android Studio with Gradle and Java to write Android applications, how come it isn't Java!?!
You use the Android SDK to write Android applications.
>Every other company in this planet is fine to play by the rules of the Java world, just Google not.
Why does Android/Google need to play by the rules of the Java world when they don't call their implementation Java? Android doesn't use any of the code/IP in the JVM and it doesn't use any of the concrete code implementations from the JDK (pre 7.0). The only argument you have is the SSO of a subset of API's and we all know how that went down.
>Instead they fill the Android documentation with the Java word everywhere, rely on Java compilers and libraries, but just because they don't put a coffee cup it isn't Java.
So you now have a problem with Google using a compiler, of an open source project, to generate JVM bytecode that is then translated to DEX bytecode so that it can run on a device that processes DEX bytecode into native ARM machine language?
>On top of that they cherry pick features from Java, slowly making it impossible to write portable libraries without having multiple code paths.
What's wrong with cherry picking features? Forked projects do it all the time. Do you have an issue with forking open source projects. As long as Google doesn't call their implementation Java they can cherry pick whatever they like. If Oracle has a problem with this then they should update their OpenJDK license.
>Which is going to become increasingly harder with Java 9 and 10 features.
Not really. I'm sure they'll "cherry pick" the good stuff like Value Types and discard what they don't deem necessary for their implementation.
I think you're a little confused, what the heck has to do siding with one company with you insulting the people that don't agree with you?
http://dictionary.cambridge.org/dictionary/english/fanboy
"a boy or young man who is a fan of someone or something such as an actor, a type of music, a piece of technology, etc.:"
Unless you consider an issue being called "boy or young man", then I excuse myself.
Again, please point to me a proper link where Google calls their implementation Java. For obvious trademark violation reasons they don't.
>I'd love to see Google fanboys accept the fact that Google has ripped off Sun of their work and brought fragmentation to the Java world with libraries that don't work on Android.
And I'd love to see Oracle supporters gracefully accept defeat. Google didn't rip off anything and the SSO of the API's they used were ruled fair use. Why is this so difficult for you to accept?
Samsung already maintains a (bad) fork(s?) of Android, as Android Devs who have have been fixing Samsung-specific bugs for years know very well.
This is only true in theory, it's much more difficult in practice. Look at the Jolla phones for example, they have a non-Android OS (called Sailfish) but it "can run" Android apps (without Google services, IIRC).
However, the quality is lacking. Not all apps work, many have annoying glitches and it's just not as good as advertised.
Also, I wouldn't exactly call Android "open". The source is available, but the development and the decisions are taken behind closed doors. Things can and have changed without advance warning. It takes a great amount of effort, time and money to maintain a non-Google Android version like the Chinese Androids.
>The real reason why Windows Phone with Astoria would fail, is that the platform only provides marginal benefits for most consumers (if any). Add to that uncertainty created by exceptionally bad management (two OS rebases in just a few years) and you have a dying platform.
It's already a dead platform. They simply cut their losses and pressed the eject button because they suddenly realized their implementation would have been fraught with endless problems. So they decided to go with Project Islandwood to make the process of porting iOS apps to Windows Phone easier. Unfortunately, this too has been a failure as no iOS developer is going to waste their time porting to a platform with a market share that is hovering at about 0.05% and gradually declining by the quarter.
>That said, I think the real danger for Android comes from within: Chinese OEMs providing Android without Google Play Services and/or Samsung being so powerful that it could fork Android.
I really think you underestimate the power of the Google ecosystem and Play services. Selling an Android phone outside of China without Google Play Services is just a recipe for failure.
She didn't get another SIM though, so she tethers it to the Windows phone in her handbag.
Her experience has been that an app-less Windows phone actually has quite a lot of useful features built in, especially the social network integration. It's just that as soon as you need an app for something specific it's not there.
It's not about the bare OS, it's about the ecosystem. The reason NeXT never took of is that building an ecosystem in an environment dominated by existing ecosystems is almost impossible. But as soon as it was able to infiltrate the Mac ecosystem it took off.
Even Microsoft with all it's market power, tools and software businesses and mind share wasn't able to crack back into the mobile market once iOS and Android had got established. The article is right. It really is over. iOS and Android will dominate for at least the next 10 years, and probably the next 20 or even 30 years. The sky's the limit. They'll have to keep working hard and not totally screw up, but even given MS utter debacles with Vista, Win 8 and Win 10 and their awful developer story over the last 10 years they're still dominant on the desktop. Them leaving gaps in the market left space for OSX to grow but no opportunity for a new platform to get traction. That's how powerful an established platform ecosystem is. It has massive market inertia.
So why did Symbian, BB, etc die so fast? They weren't platform ecosystems in the same way. You couldn't build a ten billion dollar software and services industry on Symbian or BB or even the old Windows Mobile. Thousands of companies worth aggregate tens of billions live or die on Android and iOS. The same goes for Windows and OSX. A new mobile platform isn't competing just with Apple or Google. It's competing with those thousands of companies worth tens of billions of dollars in each ecosystem. Those are going to be around for a generation, possibly several generations.
Imagine going back to 1986 and asking someone who the two software companies dominating the desktop OS market would be in 30 years time. The Mobile market was at the equivalent point in 2010.
1: http://www.theverge.com/2016/5/19/11711714/chromebooks-outso...
You do make an interesting point and a good one, but Chromebooks aren't really an OS platform ecosystem. Its more like a feature phone OS for desktops. They're minimal single purpose browser runners.
That's a huge advantage because it's allowed them to completely bypass the incumbent advantages of OSX and Windows, but it makes them a product but not a platform. If they switch to becoming a distinctive platform in their own right then things could get interesting but there's no real sign that they will try that or if it might work.
I am not saying it's impossible for a new platform to establish itself, I'm just saying its a ridiculously hard task to pull off and refuting the idea that a disruption like that is trivial or even inevitable. Just ask IBM (OS/2), BeOS, Sun (NeWS), Microsoft (Win Mobile), Canonical and dozens of others.
It's also interest how the Android/iOS market split is so similar to the Windows/OSX split but the demand for developers doesn't follow. There's a much higher demand for Windows Developers than there are for OSX but the demand for Android vs iOS developers seems to be lopsided with a greater demand for iOS developers.
And yet for many years Apple has earned more profits in desktop sales than the entire Windows OEM community put together, and not by a little. Linux desktop sales aren't even a blip on the chart.
Linux will probably never go away (for some arbitrary definition of 'never), but it's just not a contender in the consumer market or in terms of commercial consumer software. It's just become synonymous with UNIX and consumed the niche occupied by Unixes.
That's not quite accurate. The original smartphone and PDA (remember those?) market leader was Palm's PalmOS. Microsoft did manage to overcome Palm to become the market leader around the time of Windows Mobile 5.0, just before being blindsided by the iPhone and iPod.
The user space is fully Java based and the NDK is so constrained that you can hardly see any difference from another POSIX compatible kernel. And they don't even support a full UNIX SYSTEM V compilant API (e.g. no IPC calls)
Now with Android 7, any NDK library that tries to link directly to non-official shared objects will get killed by the dynamic linker.
So yeah, Android has Linux as kernel, but they can change it at any moment and only the OEMs writing device drivers would notice the change.
In fact Linux and Unix were developed specifically how computers work. Maybe it would be even better if someone develops an OS specifically for how smartphones work.
But within the foreseeable future (5-10 years) I doubt it.
No it doesn't. Nothing has seriously challenged MS-DOS/Windows ownership of the PC space for 25+ years. Macs have always been around but they are separate hardware.
MS-DOS/Windows owned the PC space for most of the 80s, all of the 90s, all of the 00s and will continue to own it through the 10s and onward as it slowly decays.
Linux arose in the 90s but it never made any kind of serious challenge on the desktop. Now Linux did challenge the existing server OS market, and totally changed that market around. But that was also facilitated by x86 hardware becoming powerful enough to displace the existing hardware as well. Those two things happened together and probably wouldn't have happened any other way.
So the statement that "something always does" arise to challenge dominant players just isn't true at all. Sometimes something does, but not remotely "always".
Never mind that MS have always fought dirty. Embrace, Extend, Extinguish is perhaps the unofficial company motto. Keep in mind that Active Directory is built on top of open protocols like DNS and Kerberos. But with enough MS "quirks" to make interoperability a chore.
Similarly, MS Office will happily support other file formats as inputs, but output will always have MS "quirks".
On the hardware side you had questionable contracts that meant MS got paid no matter the OS installed, or deep discounts that only applied if companies only shipped Windows pre-installed.
Damn it, they basically choked the life out of Netbooks by putting a very stringent license on Windows XP (that until then they had tried to kill off in favor of Vista) that detailed the hardware it could be run on. almost over night the Netbooks turned into carbon copies, where before each company had been playing with their own designs (Intel bringing out a ATOM package deal that fit the license perfectly likely contributed).
So you think another OS will come along to challenge Android and iOS and your argument solely consists of "something like this always does"? No it doesn't. Just like nothing has come along to ever challenge the current desktop duopoly.
2. relevance: is the platform even considered for any reasonable, non-niche task, use, or development?
3. influence: is the platform halo strong enough that it can nurture/trigger changes outside the platform (feature parity, pressure to improve/innovate)?
Apple and Google cross all thresholds by a significant margin, and adding more numbers (doubling even) to either one will not change that. "Winning" is not about market share as an end.
At a vanishingly distant 3rd and 4th places, MS is desperately fighting for 1. and 2. (and can only do so thanks to the now unified Windows platform), while BB has clearly lost 2. and is arguably losing 1. Don't even talk about 3. for either one.
One thing I'd add - likely related closely to survival and relevance is around product sustainability and platform responsibility - I'm talking mainly in regards to consistently demonstrating due-diligence of maintaining, servicing and supporting the platform / services such as widespread, timely security patching controlled and measured across a reasonable age range of products while also responsibly protecting customer privacy.
While on the surface this may seem more like measures of product quality rather than success - I believe they are critically important, key indicators of a successful product / deliverable.
As you say - winning is not solely about market share or pure profit, but also sustainability and social responsibility which in turn then feeds back into both relevance and survival in the long run.
*Pleasse excuse any typos, rushed my reply just on my phone late at night when I should be sleeping.
How can the war be over when two rivals are standing?
Unless the objective of any war in the computing arena is to be understood as: "Microsoft is not there".
Another definition of "war is over" might be that everyone has some open hardware in their hands (that they actually own), which runs a fully open source everything from the boot firmware through to the system UI and apps. In other words "Microsoft is not there; Google is not there; Apple is not there ..."
I wonder if that will be the long term view on Android vs iOS, that Apple won it as long as you focus on Lenovo and HTC and Samsung and other manufacturers and ignore Google.
Though as Google seems a little bit less focussed on capturing all the profits, possibly everyone will benefit from the competition.
The app gap is/was a brutal death blow to an otherwise very nice platform.
If you want to add to the discussion constructively, maybe consider more specifics about why the vagueness is annoying?
>>> His work goes after the hot topics and either states the obvious or makes several low information content, i.e., not disapprovable points