Let's Set the Record Straight
We sometimes refer to apps as hybrid, when we're actually talking about native. In some regards, the distinguishing factor, is the type of view that's served in the device. Hybrid mobile web applications, are HTML5 apps served in WebViews.
Gartner Says by 2016, More Than 50 Percent of Mobile Apps Deployed Will be Hybrid (Febuary 4, 2013)
They've defined hybrid apps as HTML5 Web apps with a native container, that facilitates access to native device features. Today we've got a new category of applications, written with a single code source.
Fundamentally, there are huge disadvantages in maintaining multiple versions of the same application, in different languages. Enterprises look for ways to avoid having to build and maintain for Android mobile, Android tablet, iPhone, iPad, and responsive web.
According to Gartner, by next year over 50% of Mobile Apps deployed will be hybrid. I'm curious how many applications will be single source. Some people call apps built with React Native, or Angular 2 Native, hybrid. But they're not. These apps are served in native UI views. If these apps are considered hybrid, what about apps written in Swift, are these hybrid apps, too?
Google shares 70& of it's code across Android, iOS, and Web. These are native apps, not hybrid.
Google wants developers to write the logic once in Java, transpile it to other platforms, and then make the UI natively using the SDK for each platform. That way the apps look and feel native to the platform they're on, and the UI should run a lot more smoothly.
How Google Inbox shares 70% of its code across Android, iOS, and the Web
They aren't the only ones doing this. There are a host of startups in the same space, providing a means to maintain a single source while deploying to multiple platforms. I was recently asked by a VC firm to vet the prospects for one firm thats doing this. They allow users to deploy to Android and iOS from a GUI.
This isn't really that new. In 2011, I built a facial recognition app that was deployed to Android, iOS, and Blackberry. This was written in Ruby, deployed with Rhomobile (acquired by Motorola) and used the now defunct Face.com API (acquired by Facebook).
The web has been moving in this direction for years, as well. We're watching the rise of transpile-to languages. When was the last time you saw something written in CSS? It's mostly LESS and SASS these days. Some people tell me that CoffeeScript is going away, but that's no the case. Framer is used by some of the largest tech firms today, and everything is in CoffeeScript. Dig into the source of many NPMs and you'll find the same. We've also been seeing a big trend for TypeScript, Microsoft and Angular are heavily invested. The real question is, when does it make sense to develop native applications in their native languages?
I've been itching to build apps with Fuse, a very entertaining video below.