

HTML5 is a terrible trap - pietrofmaggi
http://john.freml.in/html5-terrible-trap

======
Kerrick
> offline access is a really important part of the mobile user experience

Yes, it is. That's why HTML5 has the cache manifest [1]. With that, you don't
need a connection on an HTML5 web app if you wouldn't need one on an installed
native app.

> access to device specific APIs like camera, accelerometer, notifications etc

There are already plans, drafted specifications [3], and working
implementations [4] for device APIs.

> performance and responsiveness will be worse.

Performance is getting better with time, as mobile JavaScript implentations
get better (Nitro on iOS, Chrome Mobile on Android). Responsiveness can be
improved by using hardware-accelerated CSS transitions instead of JavaScript
animation, by disabling built-in wait times on the touch of an HTML element
[5], and more.

[1]: <http://www.html5rocks.com/en/tutorials/appcache/beginner/> [2]:
<http://en.wikipedia.org/wiki/WebGL> [3]: <http://www.w3.org/TR/html-media-
capture/> [4]:
[http://www.html5rocks.com/en/tutorials/geolocation/trip_mete...](http://www.html5rocks.com/en/tutorials/geolocation/trip_meter/)
[5]: <https://developers.google.com/mobile/articles/fast_buttons>

------
Dr1fter
Having built a few enterprise level HTML5 based applications, a number of the
issues you discuss are easily overcome. HTML5 has local storage, such client
side databases, cross session storage like server apps do, so data can be
stored locally when offline and synchronized with a server when back on-line
using AJAX or WebSockets. Also, as Kerrick mentioned, there are 3rd party
device APIs already available such as PhoneGap, Adobe Cordova, Rhomobile,
Appcelerator, and more. As for performance, I agree with you to a degree.
Older phones, or tablets, have problems with CSS3 animations due to the OS'
lack of, also as Kerrick mentioned, hardware acceleration support in older
mobile browsers, but newer phones and tablets have no problem. As for the
loading experience, you don't need "load a bunch of JavaScript" to control the
loading experience, if you assume the default state to be loading, which is
actually very similar to native apps.

------
rizla
Youll get the same connectivity issues with a native App that requires a
connection that suddenly loses connection

Native platforms are far from bug free

It makes sense for the business to release a just good enough HTML5 app rather
than platform specific apps built by multiple teams at x times the cost.

It's easier to find a html5 developer than it is to find an android, iOS and
any other platform you want.

How do you propose you solve these issues?

------
pietrofmaggi
I can agree that this is true for the consumer market, and the Facebook mobile
app is a good proof for this story. But I'm more interested in enterprise apps
and I can see a lot of value there with HTML5. Build simple app (front-end
site, usually in the backend there are dragons) apps with a "branded UI", that
work the same on all the current, and future, mobile platform.

