Convergencia de proyectos, ¿una necesidad del software libre?

softwarelibreA través de algunos datos el autor muestra que la capacidad de generación de tecnología del software libre está muy lejos de su potencial. Aquí el autor esboza algunos de los pasos a dar para desatar todo ese potencial.

¿Se colabora en el mundo del software libre?

El acceso al código fuente y las libertades que permite el software libre abre la puerta a que multitud de desarrolladores trabajen sobre un mismo proyecto compartiendo esfuerzos y necesidades.

Actualmente los más recalcitrantes defensores del software libre califican la situación actual como de un gran éxito para el software libre. Puede decirse que esta afirmación es cierta, desde el punto de vista de los usuarios.

Desde el punto de vista de los desarrolladores calificar de éxito la situación actual es cuanto menos discutible. Por que si definimos éxito de una solución de software libre como la consecución de un gran número de usuarios, hay que hacer notar que por cada proyecto con ‘éxito’ existe una pléyade de proyectos abandonados o con escasa actividad y con desarrolladores que han utilizado su tiempo de forma muy poco efectiva.

Por el volumen de proyectos (más de 100.000) tomemos como referencia el sitio sourceforge.net, el mayor repositorio mundial de proyectos de software libre y analicemos algunos datos.

Dimensión de los proyectos de sofware libre

Algunos datos de interés desde el punto de vista del número de desarrolladores registrados.

5 proyectos Más activos 5 proyectos Más descargados
Cristalspace 3D SDK

61

Azureus

26

Pidgin

26

Ares Galaxy

5

Media

35

Media

9,6

y finalmente en los 5 proyectos más activos en el ámbito empresarial dentro de este mismo sitio web.

Nombre proyecto Nº desarrolladores
ADempiere Bazaar

39

ZK – Simply Ajax

6

Openbravo ERP

46

Zenoss Core – Enterprise IT Monitoring

12

Compiere ERP + CRM Business Solution

67

Media

34

La conclusión es que en el mejor de los casos estamos poniendo de acuerdo para desarrollar un proyecto a unas 70 personas y en el peor a menos de media docena. El volumen medio de 34 desarrolladores se corresponde a una solución bien pequeña dentro del ámbito empresarial de soluciones con mercado MUNDIAL. Evidentemente estos datos no reflejan la totalidad de los apoyos que consiguen estos proyectos pero si son una muestra del tamaño de los mismos.

En cualquier caso, estos primeros datos revelan la fantástica efectividad de los desarrolladores de estos proyectos que con grupos pequeños consiguen resultados que hacen palidecer a soluciones propietarias con plantillas de desarrolladores mucho mayores.

¿Cuantas soluciones hay para un problema?

Podríamos pensar de estos datos que no hay suficientes desarrolladores en el mundo del software libre, sin embargo analicemos en ese mismo sitio el número de proyectos existentes para una necesidad. Tomando datos de este mismo sitio web sourceforge.net, filtremos por ejemplo por algunas necesidades comunes:

Concepto proyecto Nº proyectos
TOTAL

3926

etc, etc, como vemos, aunque los términos de búsqueda son solo etiquetas y puede haber muchos proyectos derivados (plugins, conversores, etc), e incluso compartidos (p.e. editores de texto que además sean procesadores de textos) es sencillo encontrar cientos de proyectos referidos a un tema particular y donde como mínimo tenemos un programador. Aunque el análisis dista de ser riguroso, si es sencillo entrever una realidad. La capacidad tecnológica del software libre no se corresponde con su capacidad en número de desarrolladores.

¿Y donde se puede llegar?

Imagine el lector la utopía de qué podría suceder si esos grupos de desarrolladores que son tan efectivos como vimos en las primeras tablas fueran tan grandes en número como los que aparecen en las segundas. La calidad y capacidad tecnológica podría multiplicarse dos órdenes de magnitud en una buena parte de las soluciones de software libre ofertadas. Y sus beneficiarios no solo serían los propios desarrolladores, sino todos los usuarios y la sociedad en general.

¿Y como llegar? 1.- Consciencia del problema

El camino hasta esta utopía donde los desarrolladores de tecnologías abiertas cooperen de forma efectiva y alineen sus esfuerzos en pro de soluciones más completas y funcionales debe comenzar desde la consciencia del problema y de las oportunidades que se abren ante nosotros.

¿Y como llegar? 2.- Estandares comunes y abiertos

Aunque no es creíble una convergencia de proyectos de la noche a la mañana, un segundo paso para conseguirla sería promulgar estándares abiertos, y comunes para los proyectos de tecnologias libres. De esta forma la convergencia futura de proyectos sería mucho más factible, ya que de lo contrario, de no compartir los mismos estándares de almacenamiento cualquier posibilidad de integración futura de proyectos se convierte en casi imposible.

¿Y como llegar? 3.- Facilitar la participación

Aunque parezca mentira, hay que facilitar la participación. Y esto ha de realizarse por el mero ejecicio de voluntarismo de abrir las listas de correo, sino creando algunas estructuras que la hagan posible. Se ha probado como una solución de éxito la creación de grupos locales de desarrolladores que colaboran con un proyecto principal y que les unen características comunes como pueden ser el idioma, la ubicación, el ámbito académico, etc. Pero todos ellos comparten un repositorio principal (aun teniendo repositorios propios del grupo local). Este es sólo un ejemplo, y probablemente no pueda darse una solución general para todas las situaciones. Puede servir no obstante como punto de partida contrastado.

¿Y como llegar? 4.- Convergencia real de proyectos

Y ahora habría que diseñar caminos de convergencia entre proyectos reales y publicitar los logros obtenidos de la fusión de los mismos. Especialmente interesante sería el hecho de que los financiadores de estos proyectos (especialmente los públicos) pusieran incentivos económicos a esta convergencia.

¿Y en el ámbito español que?

La situación española es bastante representativa de lo aquí comentado. Tenemos pequeños grupos de desarrolladores que han llegado a crear soluciones de gran calidad, y tenemos un buen ejemplo de dispersión de esfuerzos en la multitud de distribuciones linux de ámbito regional. Un buen punto de comienzo sería la colaboración entre administraciones regionales en la creación de una base común para las distribuciones públicas. Ya que esta base común es perfectamente compatible con una adaptación posterior en cuanto a interfaz, idioma, aplicaciones, etc.

Así mismo las distintas fuentes de financiación del software libre (tanto públicas como privadas) deberían buscar una alineación (y optimización por tanto) de sus esfuerzos que les permita ir mucho más allá de los horizontes actuales, y que les sitúen en vanguardia de competitividad con respecto a las soluciones propietarias.

Conclusión

El artículo identifica vías de mejora de la efectividad en la generación de software libre, de forma que ayude mucho más al desarrollo tecnológico de nuestra sociedad, buscando alcanzar su potencial real de generación de soluciones gracias a la posibilidad de cooperar. No es una tarea sencilla y habrá que intentar ser pioneros como lo hemos sido en otros ámbitos del software libre en superar los inconvenientes de la dispersión de esfuerzos aplicando los principios establecidos en el apartado anterior

1.- Consciencia del problema

2.- Identificacion de Estándares comunes y abiertos

3.- Simplificación de la participación

4.- Convergencia real de proyectos

Alberto Abella es autor del libro blanco del software libre en España

Compártelo. ¡Gracias!

Comentarios deshabilitados.

Linux Zone © 2007 - 2014