Millones de desarrolladores impulsan el futuro del software de forma colaborativa en una red social

  Foto: Max Nelson / Unsplash

Foto: Max Nelson / Unsplash

La plataforma GitHub integra a expertos y empresas que crean cdigo de programacin para desarrollos tecnolgicos

El futuro del software pasa por una red social para desarrolladores, GitHub, que cuenta con ms de 40 millones de usuarios y cuya cuarta parte se ha sumado a esta red en 2019. Es una plataforma que hace un ao fue comprada por Microsoft por ms de 7.500 millones de dlares. Investigadores de la Universitat Oberta de Catalunya (UOC) han analizado en la revista Scientific Reports del grupo Nature Publishing cmo funciona este modelo de trabajo altruista, en el que participan desde multinacionales hasta desarrolladores a ttulo personal mediante la creacin cdigo de programacin, que puede ser aprovechado por cualquier usuario o, incluso, evolucionar gracias a los propios usuarios.

Los investigadores de la UOC han estudiado 65 proyectos que corresponden a ms de 28.000 desarrolladores. «GitHub es una plataforma para el desarrollo de software en abierto, que funciona como un repositorio pblico», apunta Mara Jos Palazzi, investigadora del grupo Complex Systems (CoSIN3), del Internet Interdisciplinary Institute (IN3). «Permite crear y compartir con su comunidad cdigos de proyectos profesionales propios y tambin da la posibilidad a expertos, sean profesionales o aficionados, de contribuir en los cdigos que ya figuran en la plataforma, haciendo cambios en ellos, validndolos, mejorando los existentes o introduciendo nuevos mdulos», comenta Palazzi. «Hay grandes empresas, como por ejemplo Facebook o Netflix, que realizan desarrollos en GitHub y cualquiera puede ver abiertamente cmo evolucionan sus proyectos e incluso, aunque la mayora no se atreva, hacer aportaciones», explica Javier Cnovas, investigador del grupo Systems, Software and Models Research Lab (SOM Research Lab), tambin adscrito al IN3. «Esta forma de trabajar colaborativa favorece la transparencia. Aunque las empresas siguen desarrollando proyectos de software de forma privada, el desarrollo colaborativo en plataformas como GitHub est en auge», aade Cnovas. Segn el investigador, este modelo de trabajo, aunque no es el primordial para las grandes corporaciones, est en auge, como el open source, es decir, los desarrollos tecnolgicos de cdigo abierto.

 

El escaparate del software

Para muestra, uno de los proyectos ms grandes en cuanto a contribuciones y nmero de desarrolladores es Tensorflow, una biblioteca de cdigo abierto para aprendizaje automtico impulsada por Google, en el que han trabajado ms de 10.000 usuarios de todo el mundo. «En GitHub tambin figuran proyectos pequeos. Yo misma he podido adaptar a mis necesidades alguna pequea biblioteca de software impulsada por otro usuario de la plataforma», explica la investigadora de la UOC. GitHub tambin proporciona visibilidad curricular. «Hay quien usa esta plataforma como repositorio personal, porque al ser visible para otros expertos de este mbito, estos pueden contactar con la persona para colaborar o incluso pueden contratarla», puntualiza Palazzi. «Consultando el perfil de los desarrolladores es posible comprobar en qu lenguaje de programacin son expertos y hacia dnde apuntan sus especializaciones», matiza Javier Cnovas, quien cuenta con un perfil activo. «Tambin puede ser una buena plataforma para reclutar a desarrolladores», concluye.

En GitHub tienen cabida desde soluciones de software muy consolidadas hasta lenguajes en particular, como JavaScript, o desarrollos muy concretos con funcionalidades especficas. Se trata de cdigo que se crea y comparte para que los dems usuarios puedan acceder a l y decidir si colaboran en su evolucin. La mayora de sus desarrolladores son hombres de entre 23 y 32 aos y provienen de Estados Unidos y Europa.

 

Organizacin del trabajo colaborativo

«Los proyectos en GitHub no se organizan con una estructura vertical como en una empresa», apunta Mara Jos Palazzi. «La jerarqua no se determina en las interacciones entre los desarrolladores, sino en la composicin del proyecto: una persona puede haber decidido trabajar en un mdulo, y otra, en uno diferente de la misma iniciativa», comenta la investigadora. El objetivo de los investigadores de la UOC fue analizar qu frmula organizativa es la habitual en los proyectos que avanzan con mayor xito, tomando como muestra 65 de los 100 ms populares. La plataforma permite, como en las webs de compra en lnea, valorar con estrellas los proyectos, de forma que adquieren mayor visibilidad los ms populares, independientemente de su tamao o antigedad.

«Hay una subdivisin de las tareas: no est todo el mundo trabajando en todas las partes del proyecto. Ms bien hay subdivisiones de desarrolladores enfocados a diferentes partes. Puede haber tambin una jerarqua en la que los impulsores del proyecto dediquen sus esfuerzos a la mayora de las cuestiones y ocasionalmente alguien externo haga una contribucin puntual», explica la investigadora. Esto no quiere decir que la organizacin del trabajo sea anrquica, sino que «se observa que los proyectos tienen una estructura interna en subgrupos, que tienen una estructura anidada», aclara Palazzi.

 

El lmite de relaciones entre las personas

Sobre el tamao de los grupos de trabajo, en principio, virtualmente no existe una limitacin para su crecimiento, pero los investigadores de la UOC creen que s emergen unos lmites. «Hay una especie de tope no marcado para el tamao de los grupos y sobre cmo se distribuyen los colaboradores en el proyecto, independientemente de la dimensin del conjunto», indica la investigadora. Palazzi apunta que de media los proyectos analizados tienen unos 400 desarrolladores y el mayor que han estudiado cuenta con ms de 1.700. En el caso de los subgrupos, los investigadores han detectado que el tope figura en torno a 200 desarrolladores, independientemente de que se trate de los proyectos ms grandes.

Estos mximos, segn la experta de la UOC, estn relacionados con los que tienen lugar en general en entornos sociales. «Existe un lmite en el nmero de relaciones factibles entre las personas que tiene que ver con nuestra limitacin cognitiva», aade. Para muestra, en el caso de Twitter, «el volumen mximo de interacciones que tienen los usuarios con el resto no est relacionado con una cuestin tecnolgica, sino humana», concluye Palazzi.

 

Artculo de referencia

Palazzi, Mara J.; Cabot, J.; Cnovas Izquierdo, J. L.; Sol-Ribalta, A.; Borge-Holthoefer, J. «Online division of labour: emergent structures in Open Source Software». Scientific Reports, 9, 13890 (2019). DOI: <https://doi.org/10.1038/s41598-019-50463-y>.

 

UOC R&I

La investigacin e innovacin de la UOC contribuye a la solucin de los retos a los que se enfrentan las sociedades globales del siglo xxi, mediante el estudio de la interaccin de las TIC con la actividad humana, con un foco especfico en la educacin en lnea y la salud digital. Los ms de 400 investigadores y 46 grupos de investigacin se articulan en torno a los siete estudios de la universidad y tres centros de investigacin, el IN3, el eLearn Center y el eHealth Center.

Los objetivos de la Agenda 2030 de Desarrollo Sostenible de las Naciones Unidas y el conocimiento abierto son ejes estratgicos de la docencia, la investigacin y la innovacin de la UOC. Ms informacin: research.uoc.edu.

#expertosUOC

Mara Jos Palazzi

Investigadora del grupO Complex Systems (CoSIN3) del IN3

Experto/a en: Mecanismos subyacentes en los sistemas complejos en red

Ámbito de conocimiento:

Tecnologas de la informacin y la comunicacin

Javier Cnovas

Investigador del grupo Systems, Software and Models Research Lab (SOM Research Lab)

Experto/a en: Modelizacin del software

Ámbito de conocimiento:

Tecnologas de la informacin y la comunicacin