Native vs. Web
Image Source: Mobile App Testing Blog


Seems that I missed a very good debate. I just read a blog on MoMo London event on HTML5 v.s. Native.

Seems like an eternal debate.

Today in 2012, I am still amazed we still are debating this and have not been able to address this. This is really a ~10 year old debate, still driven by the exact same issues and pros/cons as before — centralized vs. not, cross-platform vs. not, maintainability and fragmentation, code-reusability or not, better user experience vs. not, performance, security, access to device APIs vs. not, thin vs. thick, app discovery, etc. etc. etc.

We can argue the basics are here (HTML5, CSS3 and JS-and-related frameworks), but creating great mobile webapps with great user experiences is today only possible by a few; in other words, is a niche area. (Not even Facebook was able to pull it off, right?).

The day the “common mobile developer” is able to create great mobile webapps with ease, is the day this debate will end.

Today still, “user experience” (driven by network latency, app richness, toolsets, adoption by big brands) is best maximized on mobile native. Today still we have to talk about classes of mobile applications (again driven by network, richness, performance, storage, toolsets, maintainability, security, cost of one vs. other, etc) — then decide what is better suited — native vs. web on mobile.

How much longer will it take settle out this debate? 3 years? 5 years? 10 years? Right now I say around five years — I wish I am wrong. But does it really matter?

In the meantime, successful mobile developers redefine the meaning of “full stack developers”; successful mobile developers must be “End-to-end, Cross-platform, Full Stack Developers” — this is a lot of complex ground to cover.

Related to this see “The biggest mistake we made as a company was not investing enough on native.” — Zuckerberg (2012).

ceo

Tagged on:             

One thought on “The Eternal Debate — MoMo London Event on HTML5 v.s. Native (Sept 2012)

  • October 8, 2012 at 4:26 pm
    Permalink

    To make an efficient Web app you have to code everything in Javascript/DOM and not do any page loads at all, except the first one of course. All data retrieval needs to be done via HTTP requests, typically via GET/POST with JSON-encoded data for efficiency, and rather simple scripts on the server side for accessing the shared database.

    Even so, a lot of phone functionality is not available to a Web app. A “wrapper” app can solve that, that opens a WebView (and similar) that calls methods that hook up to the system. Kind of how PhoneGap works.

    Right now I’m building content in HTML5, and if the customer so desires wrap it in native apps. We are of course not talking 3D games here (or thereabouts) but information and interaction via forms etc.

Comments are closed.