You can call it the Chromification of Android.
There’s a war ranging on inside Google. It is a war between the Chrome team and the Android team. I don’t know if this is an invented war that goes inside my head only.
There’s the Android team. They go and look up at Apple’s iOS as their competitor. Playing catch up in some areas and running faster in others. They have the same thought processes: Apps economy
- Get developers to use Java APIs
- Get better integration with hardware, devices and peripherals
- Build and enhance their app store
- Try to deal with the likes of Amazon, Samsung and Xiaomi who enjoy Android by try to monetize it instead of letting Google do that
- Push the envelope into new territory – smartwatch (maybe), TV (rumored)
And then there’s the Chrome team. They are all into replacing Microsoft Windows:
- Getting Chrome browser and the web in general to do whatever is possible on a PC natively: WebGL, Web Audio, WebRTC, etc.
- Get Chrome to run as an OS of its own – Chromium OS
- Add an app environment
- Map mobile capabilities to HTML5: push notification, location, etc.
Here’s the real question though: what happens when you look into the future?
Is it going to be HTML5 apps or native apps? A hybrid approach?
What happens if we end up with a successful Firefox OS ecosystem or a Tizen one? Both of these mobile operating systems are HTML5 only. What is the direct competitor Google has in front of them? Is it Chrome OS or Android?
I think the Chrome one wins
- They are in the process of onboarding everything you need to develop in HTML5
- They are getting it to run just as fast as native code
- They have a better cross platform development story
The signs we can see of this happening is the replacement of the default browser in Android to Chrome in the recent releases of Android and the switch to using Chrome inside application web views in the KitKat release of Android (=latest version).
A web view is a way for a native app (in both Android and iOS) to run HTML5 code. It is one of the mechanisms used for cross platform development. Switching it to Chrome means tighter integration of Android to Chrome, and in the future, it might mean faster time to market for new versions.
I assume Google are working to get web views updated faster than Android versions – making the browser portion of Android to improve at the speed of the web. A lot more releases, in less time, for a better solution. It may also be a good strategy against Amazon and Samsung breaking rank – an incentive for others to stay within the official Android ecosystem.
Both teams seem very aggressive, but somehow, I think the Chrome team are the ones running with their knives between their teeth, trying to gobble up everything in their way – including Android’s lunch.
In my mind within Google the plan to create something like ChromeOS already existed before they started on Android to fight the iPhone. Android felt like a stopgap, to me, at the time.
People also love to speculate about how Sundar Pichai who is the lead of Chrome and Google Apps also became the lead of Android this year and what that means for Android.
It is ironic how the original iPhone used HTML5 apps. They stopped doing that, even worse. They are very strict in what a HTML5 app can do on iOS, you can do a lot more on a webpage in Safari on iOS than as a HTML5 app can do. For example you automatically get slower Javascript (no JIT) and a whole slew of strange issues/bugs.
WebOS didn’t make it.
Facebook App went native. There is a company that says they have a framework that can do what Facebook needed, they have demos and everything. Anyway, it wasn’t just performance that was the problem in case of Facebook, it was metrics/telemetry. They didn’t get enough information about how it was performing in the field, thus had a hardtime fixing things.
Now I have a FirefoxOS phone. To see how it works. And it works. Kinda funny how that goes.
Some say, you even need less hardware (especially memory) than Android.
I think at the end of the day we will see the Android and Chrome technologies and code bases merge. The one left standing will be more Chrome-based than Anroid oriented.
Great insight into the conflict over app developer platforms within Google. Although Android is not going away, Android native apps may decline. Android can succeed with a mix of native apps and HTML5 apps even if the Play Store sales suffer. Android is partly driven by the smartphone vendors who don’t really benefit directly from the Play Store revenue. Oddly, although Android was pushed as the defense against iOS, Google still earns more revenue off iOS over Android.
Chrome and Chrome apps are primarily a defense of the open web. Google is more threatened by Facebook or any other walled garden hiding all content from search engines which fund the vast majority of Google’s revenue. Microsoft may still try to drag their feet on web standards, but they surrendered to a mostly open web long ago. Expanding the functionality of the web is greatly in Google’s favor as they dominate web ad revenue.
I think you’re spot on about the long term advantages of HTML5. Just as HTML and javascript applications in browsers have reduced the requirement for Windows and Mac OS applications, HTML5 will reduce the need for native apps on phones and tablets. And the pain of testing and development across all the Android native diversity is real. I believe the mix will shift to HTML5 sooner rather than later.
One minor correction – Carriers who offer direct carrier billing for the Google Play store get 25% transaction fee (Google is left with 5%) as far as I know, so they have an incentive.
The other reason for carriers to push for more operating systems and ecosystems in this case is to make sure no one OS/handset vendor has too much power.
Right, I left out the carriers’ stake in Android. Do the manufacturers like Samsung get a piece of app revenue?
I don’t think that they are.
Well I think it’s clearly both (hybrid). I generally disagree with these either/or “winning” challenges! Evolution, whether natural or technological, is always messier and more complex. Cobol is still in use today. I think there is no way that Google can give up on their Android Java APIs and backward compatibility for all the apps out there and all the extensions their licensees have added. They cannot possibly now get rid of this, whether they want to or not. What they can do is provide a rich alternative HTML5 development environment tightly embedded into Android that allows more developers to more quickly develop more interesting applications. The HTML5 approach has to be complete and rich to enable this (as you point out, earlier HTML approaches failed) and that is what the Chrome team is all about. But Android developers will have a choice, Java or JavaScript/HTML5 plus the embedding of Chrome as the browser and app-engine that will allow all kinds of hybrid uses.
We manage just fine with many different cloud development choices without the world ending or anyone really winning – Java or JavaScript/Node is oft debated, plus many many more: PHP, Python, Ruby, and even C and C++. Developers will choose what they consider the right tools for the job, and if Chrome is a great Android development choice then many, but not all, will choose that over Java. And if development on Android has better development choices, then this will obviously help Google compete against iOS and hold off FirefoxOS.
I actually think the big impact is on Windows and MacOS devlopment. In today’s mobile-first world I know I need to have iOS and Android development teams, but if I can get Chrome to be my target for everything else then I really can start ignoring native Windows and maybe MacOS development. The Chrome Apps stuff is a push to make this more workable for vendors, and together with Chrome now also being a potential Android development choice means that Google ends up meeting the needs at least 2 of your top app targets. Not much room for the others.
So in the end, it’s Google that “wins”.
I don’t think that one of them will go away any time soon. I just think it will become less important to Google through time, and merge into the other project in one form or another.
You give an example of COBOL, but then say that Windows and Mac are in trouble of irrelevancy. All of these examples are irrelevant already. Yes. COBOL exist out there. There are a few developers making money out of it, because they are a few, but there’s no vibrant ecosystem around it – it is a dying playground.
I agree it’s all a matter of emphasis and timing. How quickly Chrome/HTML5 becomes the most significant Android dev-environment versus Java all depends on how good Google makes it and how they empower developers. So we will see.
I didn’t quite say that Windows & Mac are irrelevant as platforms, just that it’s now crazy for most new SaaS applications including now communications, collaboration and contact center apps, to spend any time building native apps for these platforms when HTML5/Chrome/Chrome-Apps will be an adequate target (as it has been for general web apps for quite some time).