Lo que los desarrolladores Web han aprendido

Por Steve Apiki

Lo que los desarrolladores Web han aprendido en los últimos 10 años

Ahora que que incluso Microsoft comparte la opinión de que es el momento para que el Internet Explorer 6 desaparezca junto con la puesta del sol, ¿qué podríamos aprender de su destacada trayectoria de 10 años? En 2002, IE6 fue el explorador meta de facto; en el año 2011, cada instalación restante es un punto de dolor para los desarrolladores web y un impedimento para favorecer la innovación.

Tres generaciones de Internet Internet Explorer 9 es prácticamente una reinicio total. Al igual que otros navegadores modernos como Firefox y Chrome, IE9 incluye las nuevas tecnologías como HTML5 que prometen una web más emocionante, más interactiva y más interoperable. Pero IE9 también demuestra que, en muchos aspectos, ha aprendido de la experiencia de IE6. IE9 parece dispuesto a hacer bien las cosas que IE6 hizo mal, incluyendo la implementación de acuerdo con estándares de nuevas tecnologías.

Una breve historia de lo que salió mal con IE6 se reduce a esto: IE6 incluye tecnologías como CSS 2 en un momento en que la especificación se encuentra aún en evolución, mientras que apenas había consenso sobre cómo, o incluso qué, elementos de la especificación debían llevarse a la práctica (esto permaneció sin aclararse hasta la introducción de CSS 2.1 en 2002). Entonces, como el explorador por defecto de XP, IE6 se afianzó en toda la Web y en particular en las empresas. Con la lentitud de los usuarios de Internet para actualizar, IE6 mantuvo una cuota de mercado significativa en los últimos años, lo que imposibilitaba que los desarrolladores web pudieran pasarlo por alto.

Nadie, en especial los programadores Web, quiere ver esta historia repitiéndose con la próxima generación de exploradores.

Reglas de los Estándares

Es especialmente interesante comparar los principios del IE6 con los de los más recientes exploradores modernos porque la Web parece estar a punto de moverse hacia un nuevo grupo de tecnologías comunes en el año 2011, como ocurrió en 2001. En 2001, el cambio fue de diseños basados en tablas a CSS. Hoy, estamos entusiasmados por el potencial para crear aplicaciones Web dinámicas y enriquecidas basadas en HTML5 y CSS3.

Las etiquetas HTML5 de vídeo y audio posibilitarán que los sitios puedan incrustar medios enriquecidos que se puedan reproducir directamente en el navegador, sin que sea necesario un plugin. Las etiquetas HTML5 de lienzo soporta gráficos bitmap y uso de gráficos vectoriales SVG, una vez más, todo ello dentro del navegador. Lo anterior, junto con formateo avanzado de CSS3 y un JavaScript común, significa que los desarrolladores Web deberían ser capaces de crear emocionantes sitios interactivos con una expectativa razonable de que cualquier navegador moderno los pueda manejar apropiadamente.

Con CSS2, IE6 apostó a una especificación que prácticamente no estaba lista. Estas implementaciones se atascaron. Los desarrolladores están condenados a dolores de cabeza por compatibilidad mientras que un número significativo de clientes dejen el navegador instalado. Aunque la mayoría los exploradores modernos se basan en las normas, los proveedores de navegadores difieren sobre cuándo ponerlas en práctica. La historia del IE6 es el Anexo "A" en el caso contra implementaciones prematuras.

Las actualizaciones automáticas no son un sustituto

OUna vez que un navegador está en el medio no se puede regresar. Los navegadores (y las tecnologías de web) se atascan. Permanecen en las empresas donde los administradores quieren controlar el software que se está ejecutando. Los fabricantes de dispositivos pueden también optar por no actualizar el software. Un buen ejemplo son los teléfonos con Android. Google ya liberó la versión 3,0 pero la inmensa mayoría de los usuarios aún se encuentran en 2,1 y 2,2 y no está claro si estos usuarios actualizarán en algún momento. Mientras que HTML5 se extiende a más dispositivos (tales como televisores, teléfonos, automóviles y electrodomésticos) con ciclos de actualización más largos, el problema puede empeorar. Las expectativas de los consumidores ponen la carga sobre los desarrolladores para apoyar estas múltiples implementaciones.

Llevando la web hacía delante

El navegador y el sitio tienen cada uno un papel que desempeñar en el galimatías del huevo y la gallina para llevar adelante las nuevas tecnologías web, pero si un navegador popular comienza por el camino errado, el impacto se siente en toda la red. Entre más usuarios tenga un navegador, más conservador tendrá que ser en su planteamiento sobre las nuevas tecnologías.

HTML5, promete contenido enriquecido sin plug-ins o extensiones, está avanzando, pero sigue siendo aún una colección de especificaciones. HTML5 y sus especificaciones relacionadas cubren un vasto terreno, proporcionando las especificaciones de las tecnologías que van de gráficos vectoriales a gráficos bitmap pasando por el audio y el almacenamiento en el navegador. No todas estas secciones están al mismo nivel de madurez, algunas son estables, mientras que es casi seguro que otras cambien mientras que HTML5 se acerca a una recomendación completa del W3C.

Con IE9, Microsoft ha evitado el camino de aplicar primero y preguntar después. En cambio, la empresa ha sido selectiva sobre las tecnologías HTML5 que ha elegido para incorporar en IE9, tomando sólo aquellas que se cree son probadas y estables. Estas incluyen lienzo, SVG, geolocalización, y elementos de audio y vídeo. IE9 también incluye un nuevo soporte para un ciertas características de CSS3.

Los proveedores de navegadores también pueden elegir la inclusión de especificaciones menos estables como FileAPI, IndexedDB y WebSockets. Es tentador porque les permite con todo derecho alegar que que ellos son los primeros en implementar. Pero también pone estas implementaciones en el medio, en donde pueden quedar varadas en la empresa y el número cada vez mayor de aparatos de consumo además del PC, tales como teléfonos y tabletas.

Los consumidores obtienen estándares estables con IE9, pero los desarrolladores de sitios Web necesitan tener acceso a los proyectos de estándares de la implantaciones anticipadas de Microsoft. Microsoft pone los prototipos a su disposición a través de HTML5 Labs, un sitio construido para probar y depurar las especificaciones web anticipadas o inestables. Existen dos prototipos HTML5 al momento de escribir esto, IndexedDB y WebSockets, pero la compañía espera proporcionar prototipos que implementen normas adicionales a través del mismo sitio. También puede obtener más información al respecto en MSDN.

Esta perfecta separación entre implementaciones estables (en el navegador) y menos estables (en prototipos) podría funcionar bien, pero sólo si las nuevas tecnologías dan el salto de prototipo a navegador tan pronto como estén estables. Esperar demasiado tiempo para implementar la tecnología de los prototipos en el navegador también puede limitar el potencial de la Web. Sólo el tiempo dirá cómo se va resolver esto.

Aprendizaje a partir de IE6

Al estudiar en retrospectiva la historia del IE6 aprendemos algunas lecciones valiosas para los proveedores de navegadores como Google, Mozilla y Microsoft:

  • Lección 1: los navegadores se bloquean (incluso con actualización automática)
  • Lección 2: los navegadores deben adherirse a los estándares Web
  • Lección 3: los navegadores deberían balancear tecnologías estables e inestables con los consumidores en mente

Los programadores Web deberían elegir el momento para aplicar las nuevas tecnologías en sus sitios con estas enseñanzas en mente. Los estándares HTML5 tienen el potencial para crear increíbles experiencias en la web, pero al mismo tiempo que los desarrolladores construyan confiados sobre especificaciones estables, también deben evaluar y experimentar antes de implementar las que sean menos estables.

Usted puede aprender más acerca de todas las tecnologías HTML5 en el W3C. Para trabajar con las últimas tecnologías emergentes HTML 5, visite HTML5 Labs.

Acerca del autor

Steve Apiki es un desarrollador de Appropriate Solutions, Inc., una empresa de consultores de Peterborough, N.H., que programa soluciones de software basadas en servidor para una amplia variedad de plataformas utilizando una gran variedad de herramientas. Steve ha estado escribiendo sobre software y tecnología desde hace más de 15 años.

Deje un comentario...


Videos presentados

Otros recursos

Recursos HTML5 recientes

Temas de HTML5 en Slashdot

Webcasts presentados