Hoy tenemos un regalo especial: un artículo de Luke Stevens, autor de The Truth About HTML5, que analiza el pasado, el presente y el futuro de HTML5.
¿Qué es HTML5, realmente? ¿Cómo ocurrió? ¿Deberíamos realmente seguir ciegamente lo que se nos dice o es necesario algún pensamiento crítico? Sigue leyendo para averiguarlo.
Dos HTML5
? HTML5, en su forma más ruidosa, ha tomado al mundo por asalto, pero todo lo que se dice es? HTML5? no es Hay, en cierto sentido, dos "HTML5": la especificación técnica y la colección de tecnología nueva y emocionante que se agrupan como "HTML5".
Por un lado, está la especificación real de HTML5, un extenso documento técnico escrito en gran parte para los proveedores de navegadores que a menudo es un mundo extraño para aquellos de nosotros que realmente marcamos páginas web día tras día. Esto es? HTML5? En el sentido técnicamente correcto. (Y realmente, ¿hay algún otro tipo?)
Por otro lado, hay HTML5 la palabra de moda: la colección de tecnología nueva (y no tan nueva) que a menudo es francamente genial, pero tiene poco que ver con la especificación HTML5 o con quienes contribuyen a ella. Por ejemplo, ¿ha visto el video musical interactivo con tecnología WebGL para el proyecto de Danger Mouses en Roma? Todo sucede de forma nativa en su navegador (excepto IE debido a problemas de seguridad), y dejará boquiabierto.
WebGL es nuevo y atractivo, pero incluso los estándares antiguos se están eliminando y renovando. ¿Viste la increíble animación de SVG Girl en IE9? El soporte acelerado por hardware de Microsoft para el estándar SVG de una década ha hecho posible en SVG cosas que solo podíamos soñar hace diez años. Y sí, eso es Microsoft, que está llevando los estándares web a nuevas alturas.
Pero SVG - una vez anunciado como 'The New Flash'? - Tampoco es HTML5.
¿Qué es HTML5?
HTML5, como una especificación, está en su mejor momento cuando está en su momento más aburrido. El editor de HTML5, Ian Hickson, ha hecho grandes esfuerzos durante muchos años para poner el estándar HTML en forma, de modo que los fabricantes de navegadores puedan implementarlo de una manera consistente. Los detalles de implementación para los fabricantes de navegadores no son cosas atractivas, pero a la larga hacen que nuestras vidas sean más fáciles, y por eso podemos estar agradecidos.
HTML5: Lo bueno
De hecho, es un pequeño milagro que HTML5 exista en absoluto. Después de declarar HTML 4.0 terminado y desempolvado en 1999, el W3C pasó la primera mitad de los 00s persiguiendo XHTML 2, una especificación de callejón sin salida que el evangelista HTML5 de Opera Bruce Lawson describió como una "hermosa especificación de pureza filosófica que no tenía absolutamente ningún parecido con ¿el mundo real?.
?????
? En 2004, un grupo que trabaja para proveedores de navegadores que operan fuera del W3C vio el futuro de HTML de manera diferente, y comenzó a trabajar en la evolución de la especificación HTML para adaptarse mejor a las aplicaciones web, y publicó un documento de posición que indica sus intenciones. Después de ser rechazado por el W3C, este grupo, el Grupo de trabajo de tecnología de aplicaciones de hipertexto web, o WHATWG, desarrolló las especificaciones de aplicaciones web 1.0 y Web Forms 2.0, editadas por Ian Hickson bajo el "dictador benevolente". Modelo de desarrollo de especificaciones.
En pocas palabras, el W3C finalmente llegó a su punto de vista y se dio cuenta de que XHTML 2 era un callejón sin salida; el WHATWG contó con el apoyo de aquellos que realmente importaron (los fabricantes de navegadores); y no tuvieron más remedio que subir a bordo y adoptar los estándares de WHATWG.
Las buenas partes de HTML5 reflejan en gran medida esta historia. Por ejemplo, HTML5 nació en parte de Web Forms 2.0 y, por lo tanto, contiene nuevas características de formularios que agregan una variedad de características para simplificar significativamente el desarrollo de formularios, incluido el atributo práctico de marcador de posición entre muchos otros. Puede ver más sobre la compatibilidad con el navegador de formularios HTML5 en la excelente guía de formularios HTML5 de Wufoo.
También hay una variedad de características orientadas a la aplicación web, incluida la API de historial, que nos permite manipular el historial del navegador y la barra de direcciones a través de JavaScript, y avanzar más allá de los feos hash-bang (¡#!) Esquemas de URL, y de hecho modelo de actualización de página completa que hemos estado intentando solucionar desde el mundo de las solicitudes Web 2.0 y AJAX.
La especificación HTML5 (y sus antecesores) es editada *, como se mencionó, por Ian Hickson. Como dice Jeffrey Zeldman:
? En realidad, hay un "factor decisivo": el editor de HTML5, Ian Hickson. Sus decisiones son definitivas, no tiene la obligación de explicar sus razones, y no necesita priorizar las recomendaciones del desarrollador por encima de un fabricante del navegador, ni por encima de un fabricante de emparedados, si se trata de eso. Por diseño, Hixie es un agente libre de acuerdo con la estructura que él mismo creó, y los usuarios finales de su navegador (¿maestros?) Les gusta que sea así?
Hickson no es solo el editor, también ha contribuido de manera muy significativa a la especificación que edita, para bien o para mal. Por ejemplo, esa demostración de WebGL que mencionamos anteriormente usa tecnología basada en OpenGL que se ejecuta a través del elemento. El elemento era algo que Apple inventó internamente para gráficos 2D simples y programables en su tablero de instrumentos de OS X en 2004. Más tarde, se agregó a Safari. Hickson realizó ingeniería inversa y lo estandarizó para otros navegadores.
Avancemos al 2012 y tenemos a Microsoft patrocinando una versión basada en el navegador del éxito móvil Cut The Rope que usa, lo adivinaste, el elemento de sus gráficos 2D. Los estándares web a veces surgen de formas extrañas.
???????
HTML5, las cosas no tan buenas
Pero, ¿qué pasa con las etiquetas HTML antiguas y simples? ¿Qué agrega HTML5 allí? Bueno, esta no es la parte tan buena. HTML5 incluye contribuciones de su editor / colaborador (como jugador y árbitro) en forma de nuevos elementos también.
Probablemente estés familiarizado con los nuevos elementos estructurales como
,,
y, además
y. Los primeros cuatro hacen casi lo mismo: crean una nueva sección en el esquema de un documento. Pero en lo que respecta a diseñadores y desarrolladores web, nadie sabe qué es un esquema de documento correcto. es, o por qué se debe crear uno (se explica en profundidad en la especificación). De hecho, mi investigación sugiere que estos nuevos elementos aparentemente fueron elaborados de manera caprichosa por el editor HTML5 en una pizarra en 2004 y, con un poco de retroalimentación, finalizó en la especificación. Una vez más, los estándares web a veces se producen de maneras extrañas.
Estos elementos pueden sonar familiares, pero la forma en que se especifican es cualquier cosa menos familiar, y eso ha creado una gran confusión. Por ejemplo, si observa la especificación, verá un ejemplo que sugiere que usemos
para comentarios, ypara el encabezado de aquellos
s? Me refiero a los comentarios. ¿Pie de página para los encabezados? Artículos para comentarios? Es un poco un desastre.
¿A dónde vamos desde aquí?
En los últimos años, ha habido muchos rumores en torno a las tecnologías relacionadas con HTML5, y muchos rumores sobre algunas de las nuevas características incluidas en la especificación real.
Sin embargo, Hype a menudo oscurece el escrutinio, y algunas de las partes más fundamentales de HTML5, como la forma en que se supone que debemos marcar una página web básica, han sido mal examinadas y simplemente pasadas como un hecho.
La verdad sobre HTML5
En mi opinión, eso no es lo suficientemente bueno, y eso es, en parte, la razón por la que escribí The Truth About HTML5. Hay muchos libros, publicaciones de blog y artículos que tratan sobre lo que está en la especificación HTML5, pero muy pocos que discuten por qué está ahí, y si debemos usarlo y cómo.
Hype no es un sustituto de la sustancia, y con demasiada frecuencia los autores simplemente repiten lo que se les ha dicho sin profundizar y formular las preguntas difíciles de la especificación HTML5. Por lo tanto, me puse a investigar la verdad sobre HTML5, y llegué a algunas posiciones controvertidas en el camino, particularmente con respecto a los nuevos elementos semánticos, que creo que muchos diseñadores y desarrolladores se han equivocado horriblemente sin saberlo.
Creo que es nuestra responsabilidad estar lo más informado posible acerca de lo que realmente es la especificación de HTML5, y cómo llegó a ser. Después de todo, si nosotros, los que trabajamos con HTML5 día tras día, no prestamos atención a lo que está en el estándar que todos usamos, ¿quién lo hará?
Nota del autor
* Ok, para aquellos de ustedes que están al tanto de lo último en política de W3C y WHATWG, el WHATWG declaró que su especificación HTML5 es un "estándar de vida". llamado HTML antiguo simple; y el W3C se ha adherido a su versión, modelo de instantánea de la más o menos la misma especificación, aún llamándolo HTML5. (¿Confuso, eh?) Ian Hickson estaba editando tanto el HTML5 del W3C como el "estándar de vida" del HTML de WHATWG, pero desde entonces ha dejado de editar la versión de HTML5 del W3C para que otros puedan cruzar las t y los puntos para la última foto del W3C HTML5 , mientras continúa trabajando en el estándar de vida HTML. En resumen, el futuro de HTML aún está en manos de un solo hombre.