miércoles, diciembre 21, 2016

Así es la mayor biblioteca de código abierto del mundo

3.000 millones de archivos

Igual que las películas o los libros se preservan, el ‘software’ tampoco se puede perder. Y hay quienes están trabajando para ello. Software Heritage es un proyecto a escala mundial que busca archivar todo el ‘software’ libre que se ha creado y se crea. Desde los proyectos casi anónimos que cada día aparecen en GitHub hasta programas míticos como el Open Office, esta página web con menos de dos años de vida (aunque fue publicada hace unos meses) pretende acoger todo ese saber con el fin de que pronto esté disponible para muchos.
Desde Francia, el profesor Roberto Di Cosmo está al frente de la iniciativa, que nació como idea hace tres años. “Cuando empecé a trabajar en eso [investigar el código abierto existente], buscábamos una gran colección de todo el código disponible. No solo disponible hoy, sino que vaya a quedar disponible a largo plazo”, explica a Teknautas. Tras mucho investigar, él y su equipo no encontraron recopilación alguna: “No había nadie que se encargara de preservar el código fuente”. Para ellos, el problema era muy grave y había que solucionarlo: “El verdadero conocimiento está en el código fuente del ‘software’, no tanto en el archivo ejecutable, y estamos perdiendo ese conocimiento”.
Visto el problema, había que definir una estrategia a largo plazo. Optaron por crear una especie de “consorcio internacional” formado por voluntarios. En él estarían representados no solo personas individuales, sino también organizaciones, centros de investigación o universidades. Trabajaron un año y medio en secreto, diseñando y montando la infraestructura. La web de Software Heritage se hizo pública el pasado 30 de junio, con todo el material que habían ido recopilando en ese tiempo.

Una Wikipedia del 'software'

El objetivo es que cualquiera tenga acceso a un gran repositorio de código fuente. Di Cosmo ve muchas utilidades “no solo para el investigador que haga análisis, sino para miles de aplicaciones diferentes. Puede ser para la industria, para buscar vulnerabilidades…”. Es más, “uno podría construir alguna Wikipedia del ‘software’: la historia, por qué tal programa fue desarrollado por quién, en qué momento, ver cómo evolucionó con el tiempo…” Ellos no solo almacenan código fuente, “también toda la historia del desarrollo”. Cada seis horas se actualiza su contador: cuando se escribe este artículo, hay más de 47 millones de proyectos, que suman 3.100 millones de archivos en su seno.
En esa biblioteca hay de todo. En primer lugar, una copia integral de GitHub, la plataforma más famosa para compartir proyectos informáticos y desarrollarlos de forma colaborativa: millones de desarrolladores cooperan y comparten su trabajo para que el resto de la comunidad lo disfrute. También están repositorios como los de Debian y Google Code. “Está todo el código fuente de la mayoría de ‘software’ libre que se usa hoy en día: Linux, Firefox, Open Office… Hay gente que puso también todo el historial de Unix desde 1970, el código fuente del Apolo XI…” Y entre los colaboradores que aportan este contenido se cuentan empresas como Microsoft Francia.
A la vez que aportan el ‘software’, piden la participación de todos aquellos interesados en seguir mejorando el proyecto: para desarrollar, para dárselo a conocer a otras personas… Y ojo, porque también contratan. Es un proyecto transparente y colaborativo donde se agradece tanto una nueva pieza de ‘software’ libre como el aviso de un ‘bug’. Hay una lista de correo y un canal IRC para suscribirse.
De momento el archivo no está disponible para su descarga pública. El objetivo es no perder todo ese ‘software’ que podría dejar de estar disponible
Otra opción es patrocinar Software Heritage. De acuerdo a la cantidad de dinero que destinen cada año, los patrocinadores aparecerán reflejados como donantes en la página web y en otros apartados como las notas de prensa del proyecto. El dinero se destina a reforzar la infraestructura para seguir creciendo, así como a financiar los gastos derivados. De momento, Software Heritage es un proyecto sin ánimo de lucro del INRIA, el instituto francés de investigación informática, y sus promotores esperan que pronto se pueda “independizar”.
De momento, eso sí, el archivo no está disponible para su descarga pública: “Por ahora, nosotros nos ocupamos sobre todo de almacenar y salvar esos datos antes de que desaparezcan”, explica Di Cosmo. Es posible verificar si algo se encuentra allí, aunque no se pueda acceder a ello. Cada archivo del código fuente suele tener un identificador, un cifrado de seguridad de los denominados SHA. Si se conoce uno de esos códigos, se puede introducir en el buscador y comprobar si el archivo ya está almacenado. También se puede subir un nuevo archivo para que el equipo lo almacene o asegurarse de que alguien no lo haya hecho antes.
El objetivo es no perder todo ese ‘software’ que está disponible y que podría dejar de estarlo. Di Cosmo pone como ejemplo lo que pasó en 2015, cuando Google Code y Gitorius anunciaron su cierre: “Había que buscar todo eso antes de que desapareciera”. Una vez guardados, se preocupan de garantizar su supervivencia y, aún más, de procurar que en unos años vuelvan a funcionar. “Es un tema difícil”, reconoce el profesor. “Hay mucha gente que trabaja en eso. Para intentar pasar del código fuente al ejecutable se necesita el compilador, la librería, el entorno de desarrollo…” Ellos no se ocuparán directamente de esa parte, pero quieren trabajar codo con codo con aquellos que ya lo están haciendo.
El proyecto sigue adelante gracias a la voluntad de mucha gente con ganas de cooperar y de aportar dinero. El mayor archivo de ‘software’ libre ya está en marcha para preservar la historia de una parte esencial de nuestro día a día. Y puede que el trabajo nunca termine.

José Manuel Blanco
elconfidencial.com

No hay comentarios.: