July 29 2011

Having Native Apps and HTML5 Together

HTML5 is an answer, but not the answer.

The debate about native apps versus browser-based apps is like a technology version of the pundits on cable TV. In this case, though, only one side is shouting – users have already decided that native apps are their overwhelming preference. The InfoWorld article, “Will HTML5 Kill the Mobile App?” has a great title, but the complaints boil down to the following:

The Difficulty of Acceptance into App Stores
At this point, most developers have a good sense of what it takes to get accepted. And much of the controversy comes not from the apps themselves, but conflicts with business models – generally with Apple’s. Writing apps to appropriate standards is a good idea and no app written with Rhodes has ever been rejected

Rising Above The Noise In An App Store
Anyone starting a business, producing an app, writing a blog, or establishing a presence recognizes that this is an uphill battle. But to think that a browser-based app will solve the problem is silly. Not only that, but the writer himself shows that the problem is being worked on with third-party catalogs and other media. It’s very rare for an app to become a hit without associated marketing and promotion across a variety of media.

Writing cross-platform will be easier with HTML5
Rhodes allows developers the productivity and portability of HTML5. But it also allows you to build native apps.

The writer quotes a gentleman from Mozilla with an interesting idea – that the web and native apps can coexist. We agree – each has its place. But there are two distinctions:

A native app already can take full advantage of the power on the device and reduce the amount of network traffic (since the presentation is local, only data is downloaded live). Native apps tend to have a more task-based focus. Web apps can be written to look and act like a native app, but why bother? With Rhodes, you can already use web skills (HTML and CSS) to build a native app that takes advantage of all the device capabilities.

Especially as new capabilities are added to ever-newer devices and individual companies develop new widgets and capabilities, the time to standardize them in HTML5 and successors will lag further and further. We believe in using standards where they exist (hence use of HTML5 for Rhodes views), but standards will never keep pace with the innovation happening in smartphones.

Rhomobile is a big believer in HTML5. The standard and associated toolkit provides a richer set of interface capabilities for mobile apps and make web sites even better. In fact, we recommend using HTML5-based UI styling libraries as a primary way to build the views in native apps written with Rhodes. Our beef is with the idea that HTML5 is going to save developers the trouble of either creating a good app or promoting their app effectively. With the availability of cross-platform mobile app frameworks, including those like Rhomobile that support HTML5-based JavaScript styling libraries such as jQuery Mobile and Sencha, there need not be an “OR” — developers can have their native app “cake” and eat HTML5, too.