HTML5, la última versión del estándar HTML, lleva unos años en desarrollo y todavía queda tiempo hasta que todas sus características terminen de transformarse en estándares (de hecho, ni siquiera se espera HTML6: las características de próxima generación están implementándose en lo que llaman HTML.Next). Y, desde que estamos oyendo hablar de HTML5, hemos escuchado todo tipo de promesas, algunas de las cuales no se han cumplido (ni se van a cumplir que sepamos).
Pero, yendo más allá, vemos que, pese a que formalmente no es más que un borrador, HTML5 es muy importante en la Web de hoy, e incluso en algunos ámbitos más. Demos un repaso a cuál es la situación actual de HTML5.
HTML5: una evolución necesaria
Vamos a hablar un poco de estándares. HTML es quizá uno de los más importantes y de los más conocidos por todos nosotros, o por lo menos uno de los estándares con los que más contacto tenemos (aunque quizá desconiciéndolo). HTML surge de un poderoso lenguaje de etiquetas llamado SGML, y fue publicado en 1991, aunque el IETF no publicó el borrador para su estandarización hasta 1993. La figura superior es un pequeño resumen de la evolución de HTML.
Si miramos el magnífico artículo sobre la historia de HTML que nuestros compañeros de Genbeta Dev publicaron el año pasado veremos que este estándar ha evolucionado a lo largo de todos estos años, pero que HTML como tal se quedó algo estancado a finales del milenio pasado, enfocándose en XML. Hasta 2004, año en que se creó la WHATWG.
¿Por qué una nueva especificación para HTML era cada vez más necesaria? Porque la Web estaba comenzando a depender demasiado de plugins de terceros (fundamentalmente Flash), y crear contenido enriquecido para ser ejecutado mediante este complemento no es (era) en absoluto barato. HTML5 es desarrollado por WHATWG, que cuenta con una serie de ilustres miembros, a los que en 2007 se unió el propio W3C.
WHATWG se define como una comunidad interesada en hacer evolucionar a la Web. Fue fundada por gente de Apple, Mozilla y Opera debido a la falta de interés en HTML por parte del W3C. WHATWG se encarga, actualmente, de desarrollar el estándar HTML, así como otras características como los Web Workers, el Web Storage o los WebSockets, por poner algunos ejemplos.
¿Qué prometía HTML5?
HTML5, en un principio, prometía dotar de muchas más características al estándar HTML y a los navegadores Web. Y todos pecamos de ser excesivamente optimistas, tildando a HTML5 del absoluto futuro de prácticamente todo lo relacionado con la informática. En el minuto 4:35 de la charla anterior, impartida en octubre de 2012 por Chris Heilmann (developer evangelist de Mozilla), vemos exactamente a lo que me refiero, y que ahí llaman "the hype cycle".
Porque con HTML5 hemos visto promesas de todo tipo: desde una Web no dependiente de plugins hasta que el futuro completo de las aplicaciones para nuestros sistemas operativos pasa por ese nuevo estándar. No en vano, muchas de las mejoras de HTML5 pasan por mejorar la integración de las aplicaciones con los navegadores (y éstos con los sistemas operativos), o con el acceso a hardware de las propias aplicaciones Web.
Hemos visto que muchas de las cosas que se propusieron en su momento han sido implementadas, pero también vemos que otras características que en su momento se nos prometieron tanto a usuarios como a desarrolladores han sido abandonadas o pospuestas. La figura inferior, de Sergey Mavrody (licencia Creative Commons) muestra una serie de características de HTML5 o construidas a su alrededor. Algunas, como véis, están marcadas en color gris: eso significa que han sido abandonadas. Ese es el caso de WebSQL.
¿Qué tenemos ahora mismo?

Estamos al final de la gráfica que vemos en el vídeo superior: en un punto medio entre las casi descabelladas promesas de la segunda mitad de la década pasada y la decepción más absoluta que nos puede llevar a pensar que "esto no vale para nada". Con HTML5 y tecnologías relacionadas disponemos de muchas características que antes eran imposibles sin complementos de terceros. Por poner unos cuantos ejemplos:
-
Reproducción de audio y vídeo sin necesidad de complementos (aunque sí de códecs).
-
El elemento , que nos permite dibujar en nuestra pantalla utilizando JavaScript.
-
SVG y MathML embebido dentro de los propios documentos HTML.
-
Etiquetas semánticas como
-
API que permiten integrar aplicaciones Web con nuestros sistemas operativos, por ejemplo para hacer drag and drop, de geolocalización, para trabajar sin conexión a Internet...
-
Acceso a aceleración gráfica en nuestros navegadores para contenido bidimensional y tridimensional.
-
Mejoras en los formularios.
Un futuro prometedor...
HTML5 es el futuro más inmediato de la Web: muchos de los sitios y aplicaciones Web más importantes del momento implementan algunas de sus características, como la reproducción de vídeo, las API que permiten integrarse con el sistema operativo o la aceleración gráfica. Muchas veces vemos verdaderas virguerías en forma de experimento.
Además, hay que tener en cuenta que HTML5 es especialmente interesante para ofrecer experiencias de usuario impresionantes en dispositivos que, por defecto y casi por definición, no admiten la instalación de complementos de terceros, como móviles y tabletas. El navegador Web de iOS (en iPhone y iPad), sin ir más lejos, únicamente admite HTML5 (y sus tecnologías relacionadas).

Pero el futuro prometedor, según muchos fabricantes, va más allá de la Web, y pasa por utilizar HTML5 como una plataforma completa de desarrollo de aplicaciones, en conjunción siempre con CSS3 y JavaScript. Por ejemplo, Windows 8 nos permite desarrollar aplicaciones para Windows 8 y Windows RT utilizando las mismas tecnologías que utilizaríamos para desarrollar una aplicación Web.
De hecho, algunos sistemas operativos han ido más allá. El sistema operativo de la renacida Palm, webOS, ya permitía que las aplicaciones fueran desarrolladas principalmente con tecnologías Web. Ubuntu Phone también ofrece un SDK para desarrollar e integrar aplicaciones Web en el sistema operativo. Y, llevando el concepto al extremo, Firefox OS hace que toda la interfaz gráfica de usuario sea desarrollada mediante tecnologías Web, pasando a ser el sistema operativo una especie de Linux con Gecko.
... pero no exento de críticas
No obstante, como comento, casi toda la industria ha sobreestimado HTML5 durante todos estos años, y algunos se han arrepentido de su apuesta al no tener los resultados esperados. Tal es el caso de Mark Zuckerberg (y de Facebook en general), cuyas primeras aplicaciones móviles recibieron duras críticas por su mal rendimiento.
Las aplicaciones nativas (y entendamos "nativas" por "no Web", teniendo en cuenta que muchos sistemas operativos ejecutan sus aplicaciones mediante una especie de runtime), en este momento, ofrecen un rendimiento superior a las aplicaciones Web. Hay mucho trabajo por delante en ese sentido. Firefox OS, por ejemplo, consigue un rendimiento aceptable a costa de eliminar una cantidad enorme de middleware con el que sí cuentan los otros sistemas operativos.
El potencial de HTML5 es impresionante y la creatividad de los creadores es todavía mayor. Pero los desarrolladores de navegadores y de los propios estándares aún hay mucho trabajo por delante.
En Genbeta Dev | El lento amanecer del estándar HTML5 de la W3C
Ver 28 comentarios
28 comentarios
ninggdag
Como desarrollador web estoy lo suficientemente abrumado por las novedades que nos brinda HTML5 como para no sentir ese sentimiento de decepción. Cada día encuentro cosas nuevas, así que estoy bastante satisfecho con el progreso de HTML5.
Por aplicaciones "nativas" yo entiendo aplicaciones hechas de la manera estandar que nos proponen los desarrolladores del SO. Estoy de acuerdo en que Facebook se equivocó haciendo su aplicación en HTML5, pero porque lo hizco cuando no tocaba. Probablemente todavía no es buen momento, pero caminamos hacia un punto en el que será la manera ideal de hacer aplicaciones móviles ya que los SO estaran más preparadas para ello.
pikilon
Lo de facebook se rebatio en su momento con una web llamada fastbook que iba mejor que la app nativa.
pikilon
También habría que decir que por un lado te ahorras una pasta no desarrollando y actualizando 20 apps distintas para 20 cosas.
Las apps están suponiendo (muchas veces) un paso atrás en el desarrollo en la web.
Hay una appFicación del mercado, apps para comprar en una web, apps para ver una web, etc.
No me extrañaría que la Enciclopedia encarta volviese en forma de App.
abceddn
Yo sé que falta, compilar.
JuanMa
El día que no sea necesario comprobar en 3 navegadores diferentes tu trabajo para comprobar que se vean correctamente se hará el verdadero cambio. Es increíble con los avances que tenemos que una misma web se vea de forma diferente en ie, Chrome o Firefox, ese es el gran problema de html.
xemaperez
Por no hablar del rendimiento de los juegos html5 y en general del html5 en Android 4.4 buscar el tema y alucinareis, como un juego html5 ahora tiene mejor rendimiento en un teléfono de hace 4 años que en un nexus 5, o que está ocurriendo con las aplicaciones hechas en phonegap.... Estas cosas son las que hacen que no despegue el html5 y todas sus posibilidades (por lo menos para dispositivos móviles)
kravenhart
Pues yo creo que de momento mucho humo también. Mucha oferta con HTML5 y mil librerias JS nuevecitas, para que luego en el curro cuando desarrollas algo te pidan que tiene que ser compatible con IE8, eso siendo buenos, que alguno hoy en día aún piden compatibilidad con IE6... Mucha gente no sabe ni lo que es. Lo piden por pedir, porque está de moda, y luego te llega menganito diciendo que algo no le funciona, le preguntas que navegador usa y tachannnn.. Y tu contestas que es HTML5, que no es compatible, y te dicen, pues tiene que funcionarle..., pues que cambie de navegador, respuesta: no sabe... no puede... Y en ofertas de trabajo... cuantas cárnicas lo usaran solo para sacarle mas cuartos al cliente, para luego hacer lo mismo de siempre.
jordivilaplana
Por lo que veo, en algunas cosas están tratando de pasar lo que se hacía en JavaScript directamente a HTML y CSS, en otras se trata de ofrecer más funcionalidades a JavaScript y su API. Pero bueno, aún no está todo el trabajo terminado y está por ver si, cuando se publique el estándar final, los desarrolladores de los navegadores cumplen con él o hacen "la IE".
Aunque parece ser que por ahora todos están cumpliendo (más o menos) con las especificaciones recomendadas para el tratamiento de las webs, así que sólo me queda pedir, rogar y suplicar una cosa... ¡TRATAD DIGNAMENTE A LOS E-MAILS! Siendo como son pedazos de HTML, da tremendos dolores de cabeza ver cómo un mensaje escrito en HTML (4, nada de 5), con todo embebido, sin sección head ni scripts se ve perfectamente el IE6 y horriblemente en Outlook 2013.
melibeotwin
Buen post.
marjuanmanuel
pues, mucho ruido y pocas nueces, el único navegador que implementa bastantitas funciones en chrome, firefox unas pocas e Internet Explorer sigue siendo una porquería en ese aspecto, sigo trabajando con javascript y así funciona bien en todos los navegadores ;)
sergio.mendez
Enhorabuena por el post, y muchas gracias por la información
theplayer
Es cierto que HTML5 todavía le queda mucho camino por recorrer y que quizás será una especificación rota que tendrá que subsanarse con la llegada de HTML6, pero todo el mundo está empezando a apostar por él.
Firefox OS, Ubuntu Touch, Tizen... incluso algunas de las apps de OS X son HTML5 con el App Store, Notas o Recordatorios.
También hay proyectos muy interesantes como weeZeel que están intentando llevar el concepto de sistema operativo a la nube. Todavía se le ve un poco en pañales pero es prometedor.
nachomartr
Yo espero que el lenguaje DART de Google (que ahora está en proceso de estandarización) sea en un futuro el sustituto de Javascript. Mantener aplicaciones grandes en javascript es un infierno, y además DART ofrece mejor rendimiento.
eficienciaenergetica
El HTML5 significa que podemos construir sitios web móviles multiplataforma sin que siempre tengamos que ir hacia lo nativo para poder llegar a un determinado sistema operativo móvil. La geolocalización es un buen ejemplo de un elemento HTML5 que estamos viendo en los navegadores que históricamente eran específicos de cada SO móvil. Eso es algo bueno porque muchas de las empresas y los desarrolladores no tienen necesariamente los recursos para desarrollar una aplicación para cada plataforma en la que quieran que funcione.
Un saludo