Navegadores: el futuro será ignorarlos

Con el aumento de aplicaciones web que se ejecutan en los navegadores, desde simples utilidades a complejos servicios o incluso sistemas operativos, los desarrolladores fuera de las grandes empresas se encuentran siempre con el problema de tener que ofrecer soporte a una innumerable cantidad de versiones de estos programas, cada

Artículos recientes

Con el aumento de aplicaciones web que se ejecutan en los navegadores, desde simples utilidades a complejos servicios o incluso sistemas operativos, los desarrolladores fuera de las grandes empresas se encuentran siempre con el problema de tener que ofrecer soporte a una innumerable cantidad de versiones de estos programas, cada uno de ellos con diferentes escalabilidades, motores de renderizado, motores javascript .... esta multiplicidad de versiones de los navegadores es, con mucho, el mayor dolor de cabeza de todo equipo de desarrollo y se lleva, con mucho, gran parte de las horas de ajuste de una aplicación web.

El problema es tan grande que, más allá de seguir en esta dinámica tan poco productiva, se están buscando soluciones al respecto de forma que el navegador sea, en sí, solo y simplemente un motor para las necesidades básicas del desarrollador, situando entre este y la aplicación web una capa de compatibilidad que sea más amigable para sus intereses.

Aunque de momento este tipo de estrategia basada en ignorar las partes poco convenientes de cada navegador para crear un entorno estandarizado sobre el que ejecutar aplicaciones web está, como quien dice, en las "mesas de dibujo", grandes empresas comienzan a intentar blindar sus ideas en este entorno en forma de patentes.

Una de las primeras ha sido Apple, que ha definido este entorno con una primera utilidad básica: el posicionamiento de texto y sus características en un procesador de textos que se ejecuta en un navegador bajo un entorno colaborativo. Esta patente describe, además, esta capa de compatibilidad como un elemento común para la ejecución de aplicaciones bajo un entorno controlado, más allá de los problemas que puedan causar las diferentes implementaciones de los navegadores. Google, por supuesto, no tardará en lanzar elementos similares para poder gestionar de forma consistente sus aplicaciones en otros navegadores... incluidos los suyos propios.

Estas capas de compatibilidad tienen un nexo en común, Webkit. WebKit es una plataforma para aplicaciones que funciona como base para los navegadores web Safari, Google Chrome, Epiphany y Midori, entre otros. Está basada originalmente en el motor de renderizado KHTML del navegador web del proyecto KDE, Konqueror. Actualmente ya se está trabajando en WebKit2, que se anunció el 8 de abril de 2010. WebKit2 está diseñado desde cero para generar un modelo de procesos divididos, donde el contenido de la web (Javascript, HTML, diseño, etc.) se ejecuta cada uno en un proceso separado. Este modelo es similar a lo que a día de hoy Google Chrome tiene implementado: la principal diferencia es que en WebKit2 se ha construido el modelo de proceso de separación directamente en un framework, permitiendo que otros desarrolladores lo puedan utilizar. Actualmente, WebKit2 está disponible para Mac y Windows. Webkit se utiliza también en casi todos los sistemas operativos móviles: desde iOS a Android, pasando por Blackberry.

No hay una fecha específica para la "liberación" de estas capas de compatibilidad para poder ejecutar aplicaciones web estandarizadas, pero a lo largo de este año se iniciarán, posiblemente, varios proyectos en esta línea, ya sean como iniciativas privadas basadas en patentes como soportadas por la comunidad Open Source.