La Leyenda De Las Apps Html
23-09-2014
TL;DR
Muchos dicen que existen, que las han visto, incluso que las han programado; lo cierto es que yo cada día veo menos aplicaciones en HTML5 para móvil.
¿Qué ha ocurrido? Yo era el principal defensor de las aplicaciones en HTML sobre móvil, a todos les decía que reducíamos el coste (tiempo) a la mitad, ¡incluso más!, y que solo mantendríamos un único codebase. Todo bonito.
Resultó ser cierto, la casa se terminaba más rápido, era bonita, así de lejos… Luego cuando entrabas a veces no funcionaban los grifos, o el sofá era incómodo, incluso alguna gotera. Aunque lo peor era si la comparabas con una aplicación nativa, sobretodo si era de iOS… La tuya, hecha en ese “gran” html5 (con todo ese boilerplate) siempre acababa pareciendo una chabola. No se vendía.
Todo esto lo hemos comprobado rápidamente, ¿verdad? cuando hicimos nuestra primera app html5. Pero no perdíamos la esperanza: Steve Jobs va a arreglar el mundo, ya verás con el iPhone4… o el 5, irán muy rápidas estas apps, los engines de Javascript estarán avanzadísimos. Y los de Android, siendo Google los “amos” de webkit y chrome, les interesa que funcione.
Pero la cosa seguía igual, incluso a veces alguna feature se rompía entre versión y versión de Android, y con tanto stock browser de por medio.
Pero en esa época todos teníamos ilusión, cada día teníamos herramientas nuevas, startups que apostaban por ello, Phonegap… Por fin accederíamos a las APIs internas, solo al alcance de Obj-C y Java. Las apps html5 iban a invadir los stores. ¡La aplicación oficial de Facebook era en html5!
Luego pasó el tiempo, aunque parecía que para las apps html5 se detenía, o cada vez iba más lento. Cierto, las apps html5 cada vez iban peor, algunas features se rompían, o incluso peor, en mi móvil funcionaban y en el tuyo no.
Algo parecía andar mal y Facebook hizo un comunicado explicando que pasaría su aplicación iOS a Obj-C, es decir, a nativa. Ha llovido, fue en 2012. De hecho no sé si la aplicación Android es nativa o siguen manteniendo la versión html5, pero lo dudo.
Muchos no lo querían ver pero html5 perdía un gran aliado. ¿jQuery mobile, Sencha Touch, Phonegap, Cordova? Buenas herramientas, pero parece que la industria tenía poco interés en “hacerse la competencia”. Steve Jobs siempre fue un purista, quería que las apps fueran perfectas, si html5/js hubiera sido perfecto yo no estaría programando en Swift ahora mismo. El caso de Android es simplemente como todos sus problemas, eso que llaman fragmentación.
Lo cierto es que la fundación Wikimedia ya ha abandonado phonegap, aunque en la página web de phonegap no lo digan, y apuestan por una solución nativa y controlada, aunque también incluyen un UIWebView. En la página del repositorio de la app de Wikipedia para iOS explican que es para aumentar la rapidez, mejorar tiempo de carga, etc:
This generation of the Wikipedia reader app is built around native UI chrome (menus, toolbars, search UI, preferences, caching, etc) to improve startup time, responsiveness and “nativey” look-n-feel versus a previous HTML-based approach using PhoneGap/Apache Cordova.
¿Pero volverá algún dia Html5 a reinar el mundo móvil?
Los últimos benchmarks no son alentadores.
Podéis seguirme en twitter como @josep_llodra.