Tres generaciones más tarde, Internet Explorer 9 prácticamente hace tabla rasa. Como otros navegadores modernos del estilo de Firefox o Chrome, IE9 adopta nuevas tecnologías, como HTML5 que prometen una web más interesante, interactiva e interoperable. Pero IE9 demuestra en muchos aspectos lo que se ha aprendido de la experiencia de IE6. IE9 parece que corrige aquello que IE6 no hacía bien, incluyendo la implementación de nuevas tecnologías basadas en estándares.
Si quisiéramos resumir brevemente lo que no funcionó bien con IE6, el relato sería más o menos este. IE6 incluía tecnologías como CSS2 en un momento en que la especificación aún estaba evolucionando, sin un grado de consenso suficiente sobre el cómo –o incluso qué- elementos de la especificación deberían implementarse (y las dudas persistieron hasta la presentación de CSS 2.1 en el año 2002). Más tarde, como navegador por defecto de Windows XP, IE6 se atrincheró en la Web y, sobre todo, en las grandes compañías. Dada la lentitud con que los usuarios de la Web actualizaban sus entornos, IE6 mantuvo una cuota de mercado muy importante durante varios años, de modo que los desarrolladores Web no podían ignorar o pasar por alto sus peculiaridades.
Ahora nadie –y menos aún los desarrolladores Web- quieren que vuelva a repetirse esta historia con la nueva generación de navegadores.
Las etiquetas de audio y vídeo de HTML5 van a permitir embeber contenidos multimedia avanzados en las páginas, que se podrán reproducir directamente desde el navegador sin necesidad de plugins. La etiqueta canvas de HTML5 soporta gráficos de mapa de bits y SVG soporta gráficos vectoriales, todo ello, de nuevo, desde el propio navegador. Estas novedades, junto con los avances en los estilos de CSS3 y un motor de Javascript común, significan que los desarrolladores Web por fin podrán crear sitios emocionantes, interactivos, con una expectativa razonable de que se van a poder ver y utilizar de forma correcta en cualquier navegador moderno.
Con CSS2, IE6 hizo una apuesta decidida por una especificación que aún no estaba completa. Aquellas implementaciones quedaron petrificadas y ello condujo a permanentes quebraderos de cabeza para los desarrolladores, que se han mantenido durante todo este tiempo en la medida en que el número de usuarios que tenían instalado este navegador era bastante elevado. Aunque la mayor parte de los navegadores actuales se basa en estándares, cada fabricante tiene una opinión propia al respecto de cuándo implementarlos. la historia de IE6 es claramente un ejemplo en contra de una adopción e implementación prematura.
HTML5, que promete contenidos avanzados sin necesidad de plugins ni extensiones, va ganando terreno, pero sigue siendo una compilación de especificaciones. HTML5 y sus especificaciones anexas cubren un montón de aspectos, aportando directrices para tecnologías que van desde los gráficos vectoriales a los gráficos de mapa de bits, el audio y el almacenamiento interno en el navegador. No todas estas secciones tienen el mismo grado de maduración: algunas son estables ya pero otras tienen muchas probabilidades de verse alteradas a medida que HTML5 va avanzando en el proceso de definición de la recomendación completa del W3C.
En el caso de IE9, Microsoft ha renunciado a seguir el camino de implementar primero y preguntar después. En vez de esto, la empresa ha sido más bien selectiva a la hora de elegir las tecnologías de HTML5 que se incorporan en IE9, optando únicamente por las que cree que están suficientemente probadas y son estables. Entre ellas están el canvas, SVG, la geolocalización y los elementos de audio y vídeo. IE9 incluye además soporte para diversas características de CSS3.
Los fabricantes de navegadores pueden también optar por incluir algunas especificaciones no tan estables, como FileAPI, IndexedDB y WebSockets. Es un tanto comprometido, porque les permitiría presumir con razón de ser los primeros en implementarlas, pero esto también supone poner en la calle tales implementaciones con el riesgo de que echen raíces en las instalaciones de las empresas y en un creciente número de dispositivos de consumidor aparte de los PC , como es el caso de teléfonos y tablets.
Los consumidores disfrutan de estándares con IE9, pero los desarrolladores Web siguen necesitando acceder a las implementaciones iniciales de Microsoft basadas en los borradores de los estándares. Microsoft pone a su disposición diversos prototipos en el sitio web HTML5 Labs, para fines de test y demostración de especificaciones aún inestables o inmaduras. Existen dos prototipos de HTML5 a la fecha de esta publicación, que son IndexedDB y WebSockets, pero la empresa espera poder ofrecer prototipos con otros estándares en este mismo sitio web. También ofrece más información en MSDN.
Esta clara diferenciación entre implementaciones estables (las que ya se han integrado en el navegador) y las menos estables (en prototipos), puede funcionar bien, pero solamente si las nuevas tecnologías dan el salto desde el prototipo al navegador comercial al poco de convertirse en estables. Esperar mucho tiempo para implementar tecnologías desde los prototipos a los navegadores puede limitar el potencial de la Web, sin duda. Sólo el tiempo podrá decirnos cómo puede acabar todo esto.
Puedes encontrar más información sobre las tecnologías HTML5 en la web de W3C. Si deseas trabajar con estas tecnologías emergentes de HTML, te recomiendo que visites el sitio HTML5 Labs.