Esteu aquí

< Tornar
14/01/2020

Milions de desenvolupadors impulsen el futur del "software" de manera col·laborativa en una xarxa social

La plataforma GitHub integra experts i empreses que creen codi de programació per a desenvolupaments tecnològics


El futur del software passa per una xarxa social per a desenvolupadors, GitHub, que té més de 40 milions d'usuaris, la quarta part dels quals s'hi ha afegit el 2019. És una plataforma que Microsoft va comprar fa un any per més de 7.500 milions de dòlars. Investigadors de la Universitat Oberta de Catalunya (UOC) han analitzat en la revista Scientific Reports, del grup Nature Publishing, com funciona aquest model de treball altruista, en el qual participen des de multinacionals fins a desenvolupadors a títol personal mitjançant la creació de codi de programació, que pot aprofitar qualsevol usuari o, fins i tot, pot evolucionar gràcies als mateixos usuaris.

Els investigadors de la UOC han estudiat 65 projectes que corresponen a més de 28.000 desenvolupadors. «GitHub és una plataforma per al desenvolupament de software obert, que funciona com un repositori públic», apunta María José Palazzi, investigadora del grup Complex Systems (CoSIN3), de l'Internet Interdisciplinary Institute (IN3). «Permet crear i compartir amb la seva comunitat codis de projectes professionals propis i també dona la possibilitat a experts, siguin professionals o aficionats, de contribuir en els codis que ja hi ha a la plataforma, fent-hi canvis, validant-los, millorant els existents o introduint nous mòduls», comenta Palazzi. «Hi ha grans empreses, com per exemple Facebook o Netflix, que fan desenvolupaments a GitHub i qualsevol persona pot veure obertament com evolucionen els projectes, i fins i tot, encara que la majoria no s'hi atreveixi, hi pot fer aportacions», explica Javier Cánovas, investigador del grup Systems, Software and Models Research Lab (SOM Research Lab), també adscrit a l'IN3. «Aquesta manera de treballar col·laborativa afavoreix la transparència. Tot i que les empreses continuen desenvolupant projectes de software de manera privada, el desenvolupament col·laboratiu en plataformes com GitHub està en auge», afegeix Cánovas. Segons l'investigador, aquest model de treball, encara que no és el primordial per a les grans corporacions, està en auge, com l'open source, és a dir, els desenvolupaments tecnològics de codi obert.

 

L'aparador del software

Com a mostra d'això, un dels projectes més grans pel que fa a les contribucions i al nombre de desenvolupadors és Tensorflow, una biblioteca de codi obert per a aprenentatge automàtic impulsada per Google, en el qual han treballat més de 10.000 usuaris de tot el món. «A GitHub també hi ha projectes petits. Jo mateixa he pogut adaptar a les meves necessitats alguna petita biblioteca de software impulsada per un altre usuari de la plataforma», explica la investigadora de la UOC. GitHub també proporciona visibilitat curricular. «Hi ha gent que fa servir aquesta plataforma com a repositori personal, perquè com que és visible per a altres experts d'aquest àmbit, es poden establir contactes per a col·laborar-hi o fins i tot per contractar algú», puntualitza Palazzi. «Consultant el perfil dels desenvolupadors és possible comprovar en quin llenguatge de programació són experts i cap a on apunten les seves especialitzacions», matisa Javier Cánovas, que té un perfil actiu. «També pot ser una bona plataforma per reclutar desenvolupadors», conclou.

A GitHub hi caben des de solucions de software molt consolidades fins a llenguatges en particular, com JavaScript, o desenvolupaments molt concrets amb funcionalitats específiques. Es tracta de codi que es crea i es comparteix perquè els altres usuaris hi puguin accedir i decidir si col·laboren en la seva evolució. La majoria dels seus desenvolupadors són homes d'entre 23 i 32 anys i provenen dels Estats Units Europa.

 

Organització del treball col·laboratiu

«Els projectes a GitHub no s'organitzen amb una estructura vertical com en una empresa», apunta María José Palazzi. «La jerarquia no es determina en les interaccions entre els desenvolupadors, sinó en la composició del projecte: una persona pot haver decidit treballar en un mòdul, i una altra, en un de diferent de la mateixa iniciativa», comenta la investigadora. L'objectiu dels investigadors de la UOC va ser analitzar quina fórmula organitzativa és l'habitual en els projectes que avancen amb més èxit, prenent com a mostra 65 dels 100 més populars. La plataforma permet, com en els webs de compra en línia, valorar amb estrelles els projectes, de manera que adquireixen més visibilitat els més populars, independentment de la dimensió o l'antiguitat que tinguin.

«Hi ha una subdivisió de les tasques: no tothom treballa en totes les parts del projecte. Més aviat hi ha subdivisions de desenvolupadors enfocats a parts diferents. També hi pot haver una jerarquia en la qual els impulsors del projecte dediquin els esforços a la majoria de les qüestions i ocasionalment algú extern hi faci una contribució puntual», explica la investigadora. Això no vol dir que l'organització de la feina sigui anàrquica, sinó que «s'observa que els projectes tenen una estructura interna en subgrups, que tenen una estructura imbricada», aclareix Palazzi.

 

El límit de relacions entre les persones

Pel que fa a la dimensió dels grups de treball, en principi, virtualment no hi ha una limitació perquè creixin, però els investigadors de la UOC pensen que sí que emergeixen uns límits. «Hi ha una mena de límit no marcat per a la dimensió dels grups i pel que fa a la manera com es distribueixen els col·laboradors en el projecte, independentment de la dimensió del conjunt», indica la investigadora. Palazzi apunta que de mitjana els projectes que s'han analitzat tenen uns 400 desenvolupadors el més gran que han estudiat en té més de 1.700. En el cas dels subgrups, els investigadors han detectat que el límit se situa entorn de 200 desenvolupadors, independentment que es tracti dels projectes més grans.

Aquests màxims, segons l'experta de la UOC, estan relacionats amb els que tenen lloc en general en entorns socials. «Hi ha un límit en el nombre de relacions factibles entre les persones que té a veure amb la nostra limitació cognitiva», afegeix. Com a mostra d'això, en el cas de Twitter, «el volum màxim d'interaccions que tenen els usuaris amb la resta no està relacionat amb una qüestió tecnològica, sinó humana», conclou Palazzi.

 

Article de referència
Palazzi, María J.; Cabot, J.; Cánovas 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 recerca i innovació de la UOC contribueix a la solució dels reptes a què s’enfronten les societats globals del segle xxi, mitjançant l’estudi de la interacció de les TIC amb l’activitat humana, amb un focus específic en l’educació en línia i la salut digital. Els més de 400 investigadors i 46 grups de recerca s’articulen entorn dels set estudis de la Universitat i tres centres de recerca, l’IN3, l’eLearn Center i l’eHealth Center.
Els objectius de l’Agenda 2030 de Desenvolupament Sostenible de les Nacions i el coneixement obert són eixos estratègics de la docència, la recerca i la innovació de la UOC. Més informació: research.uoc.edu.