Ayer se publicó un mensaje en la listas de correo de Mozilla en el que se abría el debate sobre cómo modernizar su navegador web.
Firefox es uno de los navegadores más usados a día de hoy y, de lo grandes, es el que más defiende la libertad del código a pesar de que en los últimos tiempos ha sucumbido ante ciertos estándares cerrados.
El último gran cambio en el desarrollo de Firefox se produjo hace unos años cuando se modificó el ciclo de actualizaciones al que conocemos hoy, con el que aparece una nueva versión cada 18 semanas con cambios mayores y actualizaciones de seguridad cuando son necesarias.
Dave Camp, director de ingeniería de Mozilla, publicó ayer un mensaje en la lista de correo de la fundación que dice lo siguiente:
La semana pasada en Whistler, empezamos a hablar un poco sobre los fundamento de cómo se hace Firefox. Queremos involucrar a todo el mundo lo antes posible por lo que quería exponer los antecedentes y el contexto a aquellos que no estuvieran allí.
Firefox está construido sobre tecnologías web*, pero podríamos hacer un trabajo mucho mejor si nos aprovecháramos de ello. El primer hilo de la discusión estuvo entorno al despliegue: desde que Firefox comenzó, la industria ha evolucionado constantemente en cómo despliega el código a los usuarios y hoy eso no se hace en un ciclo de 18 semanas. Creemos que hay grande beneficios en acortar el tiempo en el que las nuevas características llegan a los usuarios. Los errores críticos se deberían entregar a los usuarios en minutos, no en días. Las características individuales debería salir a una pequeña audiencia para hacer pruebas centradas y multivariable. Como Laura Thomson expuso en su presentación en Whistler, «los trenes nos han servido bien, pero es hora de construir un ‘Hyperloop'».
Para comprender la analogía, un Hyperloop es medio de transporte terrestre conceptual que alcanza velocidades superiores a los 1000 km/h.
* El segundo hilo fue sobre eliminar ese asterisco de «tecnologías web». En los primeros días de Mozilla, XUL fue nuestro intento de llenar el vacío que tenía HTML para crear aplicaciones web a gran escala. Con el tiempo, la web (y el desarrollo de las apps para la web) ha desarrollado su propio conjunto de estándares y tecnologías; deberíamos seguirlas.
La comunidad del desarrollo web ha encaminado esa necesidad a través de HTML de una forma interesante y novedosa que no dependen de tecnología específica de Mozilla. Hay una gran concentración de sabiduría sobre cómo crear aplicaciones en la web. Es hora de mirar atrás y examinar cómo podemos traer esa sabiduría a Firefox.
Debido a que XUL y XBL no son tecnologías web, no reciben la misma atención que HTML (¡por una buena razón!). Los problemas de rendimiento no se han solucionado y eso provoca una gran complejidad innecesaria dentro de Gecko. Es más complicado, incluso para los desarrolladores web experimentados, ponerse al día. Está más lejos de la web y eso no ayuda a nadie.
Nuestra intención es sacar a Firefox de XUL y XBL, pero la discusión de cómo hacer eso se encuentra en una fase temprana. Hay muchas preguntas que no han sido respondidas: ¿qué tecnologías/mejores prácticas debemos adoptar en su lugar para el desarrollo web? ¿Cómo afecta eso a los desarrolladores de complementos? ¿Hay espacio para código nativo en la ventana principal del escritorio como el que tenemos en Android? ¿Cuánto tiempo debemos dedicar a esto vs. otros asuntos relacionados con la calidad? ¿Qué preguntas no respondidas no nos hemos hecho todavía?
Algunas de estas preguntas van a llevar tiempo antes de ser respondidas e involucrarán unas cuantas discusiones en paralelo. Si empiezas viendo la discusión del proyecto «ir más rápido», se está hablando sobre cómo encaminar nuestra estrategia de despliegue. Si empiezas viendo a la gente usando referencias que a veces son demasiado violentas en cuanto a eliminar XUL/XBL de nuestro código base, este es el contexto en el que se está produciendo la discusión. Cuando veas estas discusiones (incluyendo esta), por favor, únete.
Lo que parece que está sucediendo es que quieren dejar atrás XUL (XML-based User-interface Language), un lenguaje de programación basado en XML para crear interfaces gráficas. XUL ha formado parte de Firefox desde el principio por lo que su retirada marcaría el mayor cambio del navegador web desde su nacimiento.
Como bien dice Dave, esto no solo afectaría al desarrollo de Firefox sino también al de los complementos ya que sus interfaces están programada en XUL. Este cambio haría que toda la masa de complementos actuales fueran incompatibles con la nueva generación de Firefox.
En cualquier caso, todavía queda mucho tiempo para que este gran cambio llegue al usuario final y probablemente el equipo de desarrollo encontrará una respuesta satisfactoria a todas las preguntas que han surgido y las que quedan por plantear.
El mensaje original se puede consultar en la lista de correo de Mozilla. Vía Phoronix.