Qu'est-ce qu'un logiciel libre ? 2. Participation et organisation d'un projet libre

Magazine
Marque
GNU/Linux Magazine
Numéro
173
Mois de parution
juillet 2014
Spécialité(s)


Résumé
Pourquoi et comment contribuer à un projet libre ? Est-ce que le travail coopératif n'existe que sur Internet ? Est-ce plus facile dans le cas du logiciel ? Cet article présente les grandes caractéristiques de l'organisation des communautés libres, du pourquoi les personnes contribuent.

Body

Quand on parle de logiciel libre, on a souvent en tête l'exemple de GNU/Linux, à l'image du titre du journal dans lequel sont publiées ces lignes. Ils ne sont qu'une partie des centaines de milliers de projets existants, portés par des équipes de développement qui varient d'une seule personne (la très grande majorité) à plusieurs centaines de développeurs (une poignée de projets). D'autres domaines de la connaissance ont vu l'émergence de projets collaboratifs, organisant la contribution volontaire de collaborateurs sur Internet. Wikipédia est sans doute le plus emblématique, mais les projets d'« open hardware », d'encyclopédies plus spécialisées comme l'encyclopédie des espèces (Encyclopedia of Life, http://eol.org/), de la botanique (http://www.tela-botanica.org), jusqu'aux substituts alimentaires (Soylent, http://diy.soylent.me/recipes), témoignent de la variété de cette dynamique.

Soulignons tout de suite l'importance d'Internet dans cette dynamique : parce que ce réseau permet de mettre en contact, à un niveau mondial (au moins tous ceux qui partagent une même langue), il permet de constituer des groupes de « pairs », de personnes partageant la même passion ou les mêmes objectifs. À condition, bien sûr, que ces groupes puissent échanger et créer en ligne. Les projets basés sur une production écrite de connaissance (logiciel, textes encyclopédiques, recettes) sont évidemment favorisés par ce média (le lecteur intéressé par creuser ce point pourra consulter l'ouvrage de mes collègues, G. Dang Nguyen et S. Dejean, particulièrement les chapitres 3 et 4 [1]).

Reste que, pour un économiste, le fait de contribuer à un projet dont on peut bénéficier « gratuitement » intrigue. La réponse, corroborée par de nombreuses études, dans différentes communautés de production de connaissance - logiciel libre, Wikipédia, botanique, géomatique, pour ne citer que celles que je connais - est simple. Tout d'abord, seule une minorité des utilisateurs participe, et seule une minorité de projets attire suffisamment de contributeurs pour être des projets collectifs. Ensuite, les participants s'engagent parce que cela leur apporte des bénéfices immédiats : soit parce qu'ils ont besoin de développer le logiciel/d'écrire un document de toute façon, et que le faire dans le cadre d'un projet existant est plus simple (l'architecture existe déjà, il y aura des retours utilisateur, la contribution sera maintenue, etc.) ; soit parce que cela représente un challenge intellectuel, permet d'apprendre quelque chose ; dans tous les cas, cet engagement est perçu comme amusant, stimulant. Ensuite, pour les plus investis, dans le temps et en termes de volume de contribution, d'autres raisons poussent à ne pas arrêter : une dimension sociale (on connaît des personnes, avec qui on travaille, même virtuellement), et, parfois, une dimension professionnelle, notamment dans le logiciel libre : ce qu'on fait dans les communautés est reconnu par le marché du travail et permet d'accéder à des postes, des projets plus intéressants. Arrêter le projet voudrait dire renoncer à ces « connexions », abandonner des collègues, des camarades, renoncer à un statut social d'expert, ce qui est toujours difficile.

Ces différents rôles, et la taille respective de la population qui les endosse, sont souvent représentés sous la forme d'un schéma en « oignon » (figure 1) : au centre, quelques développeurs très investis, qui sont aussi ceux qui réalisent la plupart des développements, et à la périphérie les utilisateurs, bien plus nombreux.

article_figure_1_participer_projets_libres

Fig. 1 : Organisation d'un projet libre

La flèche représente le parcours « type » d'un contributeur, ou « carrière » (au sens sociologique du mot, http://sociologie.revues.org/1197), qui commence parfois par une simple utilisation, avant de proposer des modifications et, pour certains, de s'engager encore plus avant dans la production. Cette carrière peut prendre plusieurs mois, mais est souvent assez rapide pour les plus curieux ou les plus engagés.

Le graphique met en avant une autre caractéristique de ces communautés : leur organisation. Ouvert ne veut pas dire anarchique, ou sans hiérarchie. Il existe, dans toutes ces communautés de production, dès qu'elles dépassent l'individu unique, des règles, plus ou moins explicites (comme la « constitution » du projet Debian, https://www.debian.org/devel/constitution.fr.html), et une hiérarchie entre les personnes : certains ont droit de contribution, d'autres seulement de proposition, certains ont droit d'exclusion des membres, etc. Rappelons que la règle des « 20/80 », ou principe de Pareto, s'applique : les contributeurs principaux sont peu nombreux (20 % des utilisateurs) et assurent pourtant l'essentiel de la production (80 %), les autres développeurs et les testeurs étant là en support. Dans les très gros projets, comme Linux, ou Apache, cette organisation peut être répétée dans des sous-projets qui s'occupent chacun d'un module, ce qui permet de maintenir des équipes de petite taille dans chaque module. Un point faible de cette organisation est qu'il faut être précis sur les communications entre les modules. Le fait que le code soit ouvert facilite cette coordination, mais il existe aussi des développeurs qui appartiennent à plusieurs projets/modules et qui assurent la transmission d'information. Des discussions de planification des évolutions majeures doivent être organisées, afin de coordonner les feuilles de route de ces différents sous-projets. Enfin, le développement d'outils de travail coopératif permettant de synchroniser les contributions et les versions est évidemment un facteur clef du succès de ces organisations (Subversion, ou SVN, GitHub pour les plus connus). Il est amusant de noter que, mis à part le fait que les personnes sont volontaires et choisissent où elles veulent contribuer - différence évidemment fondamentale - toute cette organisation est très proche de celle développée par Microsoft dans les années 1980 (voir l'analyse de Cusumano et Standley [2]).

L'autre point qui rapproche les organisations de production du logiciel libre des entreprises est que, toujours pour les projets les plus connus, l'implication des entreprises est de plus en plus importante. On sait par exemple que, au moins depuis la fin des années 1990, pour la grande majorité des développeurs d'Apache, participer au développement fait partie de leur travail [3]. De même, les personnes présidant les groupes de travail ou appartenant au bureau de la fondation Apache sont aussi, pour la plupart, salariées des grandes entreprises de l'informatique, comme IBM.

Pour conclure, le mouvement du logiciel libre, et plus généralement, des communautés en ligne produisant de la connaissance, repose sur le volontariat et il est unique par sa taille, mais aussi par son impact sur certaines industries (informatique, mais aussi encyclopédies). Il est favorisé par le fait que les personnes échangent des documents écrits, qui sont en même temps l'objet de la coopération et le produit final (contrairement au mouvement open hardware, par exemple, il n'y a pas besoin d'usine pour obtenir le produit final). Mais il s'ancre aussi dans des pratiques humaines bien plus anciennes :

- sur la participation, les motivations sont proches de celles qu'on trouve chez les participants aux associations (un de mes amis faisait même l'analogie avec le mouvement des « scouts », ou éclaireurs) ;

- sur l'organisation, on retrouve les règles en vigueur dans la gestion par des communautés de biens communs locaux, si bien analysées par Elinor Ostrom [4], et plus généralement des actions collectives (Marwell et Oliver [5]), et en termes d'organisation de la production, sur des organisations industrielles.

Enfin, dans la confrontation et le métissage avec ces organisations industrielles, qui interviennent quand les produits se diffusent, ces groupes s'affirment, se structurent et s'institutionnalisent. Les raisons et les modalités d'implication des entreprises feront l'objet du prochain article.

Références

[1] Dang Nguyen G. et Dejean S., « Le numérique. Économie du partage et des transactions », Economica, 2014.

[2] Cusumano M., et Standley A., « Beyond the waterfall: software development at Microsoft », Document de travail No 3844-95, Massachusetts Institute of Technology (MIT), Sloan School of Management, 1995.

[3] Lakhani K. et von Hippel E., « How open source software works: “free” user-to-user assistance », Research Policy, Volume 32, Issue 6, June 2003, p. 923 à 943.

[4] Hess C. et Elinor O. (éditrices), « Understanding Knowledge as a Commons. From Theory to Practice », MIT Press, 2006.

[5] Marwell G. et Oliver P., « The Critical Mass in Collective Action », Cambridge University Press, 1993.




Article rédigé par

Par le(s) même(s) auteur(s)

Est-ce que tout le monde peut et doit adopter le logiciel libre ?

Magazine
Marque
GNU/Linux Magazine
Numéro
186
Mois de parution
octobre 2015
Spécialité(s)
Résumé
Depuis quelques années, des logiciels libres grand public existent et à l'origine du logiciel libre, il y a cette idée de fournir la liberté à tous les utilisateurs. De nombreuses entreprises proposent aussi des solutions basées sur du logiciel libre, il existe de nombreux tutoriels, des listes de logiciels libres par grands types d'usage, etc. Alors, tous utilisateurs du logiciel libre ?

Qu'est-ce qu'un logiciel libre ? 3. Les modèles d'affaire des entreprises du libre

Magazine
Marque
GNU/Linux Magazine
Numéro
174
Mois de parution
août 2014
Spécialité(s)
Résumé
Les logiciels libres sont souvent gratuits. Et malgré la gratuité, certaines entreprises vivent de la vente de ces logiciels et des services associés. Troisième volet d'une série consacrée aux questions non-techniques posées par le logiciel libre, cet article discute des modèles d'affaires des entreprises du « libre » et leur implication dans les communautés de développement.

Qu'est ce qu'un logiciel libre ? 1. Histoire et définition

Magazine
Marque
GNU/Linux Magazine
Numéro
172
Mois de parution
juin 2014
Spécialité(s)
Résumé
Les logiciels libres sont souvent gratuits. Mais les logiciels gratuits ne sont pas toujours libres. Et malgré la gratuité, tout le monde n'utilise pas ces logiciels et certaines entreprises vivent de la vente de ces logiciels et des services associés. Cet article, sur l'histoire et la définition du libre, est le premier d'une série qui se propose de répondre aux questions non techniques sur ce qu'est le libre.

Les derniers articles Premiums

Les derniers articles Premium

La place de l’Intelligence Artificielle dans les entreprises

Magazine
Marque
Contenu Premium
Spécialité(s)
Résumé

L’intelligence artificielle est en train de redéfinir le paysage professionnel. De l’automatisation des tâches répétitives à la cybersécurité, en passant par l’analyse des données, l’IA s’immisce dans tous les aspects de l’entreprise moderne. Toutefois, cette révolution technologique soulève des questions éthiques et sociétales, notamment sur l’avenir des emplois. Cet article se penche sur l’évolution de l’IA, ses applications variées, et les enjeux qu’elle engendre dans le monde du travail.

Petit guide d’outils open source pour le télétravail

Magazine
Marque
Contenu Premium
Spécialité(s)
Résumé

Ah le Covid ! Si en cette période de nombreux cas resurgissent, ce n’est rien comparé aux vagues que nous avons connues en 2020 et 2021. Ce fléau a contraint une large partie de la population à faire ce que tout le monde connaît sous le nom de télétravail. Nous avons dû changer nos habitudes et avons dû apprendre à utiliser de nombreux outils collaboratifs, de visioconférence, etc., dont tout le monde n’était pas habitué. Dans cet article, nous passons en revue quelques outils open source utiles pour le travail à la maison. En effet, pour les adeptes du costume en haut et du pyjama en bas, la communauté open source s’est démenée pour proposer des alternatives aux outils propriétaires et payants.

Sécurisez vos applications web : comment Symfony vous protège des menaces courantes

Magazine
Marque
Contenu Premium
Spécialité(s)
Résumé

Les frameworks tels que Symfony ont bouleversé le développement web en apportant une structure solide et des outils performants. Malgré ces qualités, nous pouvons découvrir d’innombrables vulnérabilités. Cet article met le doigt sur les failles de sécurité les plus fréquentes qui affectent même les environnements les plus robustes. De l’injection de requêtes à distance à l’exécution de scripts malveillants, découvrez comment ces failles peuvent mettre en péril vos applications et, surtout, comment vous en prémunir.

Bash des temps modernes

Magazine
Marque
Contenu Premium
Spécialité(s)
Résumé

Les scripts Shell, et Bash spécifiquement, demeurent un standard, de facto, de notre industrie. Ils forment un composant primordial de toute distribution Linux, mais c’est aussi un outil de prédilection pour implémenter de nombreuses tâches d’automatisation, en particulier dans le « Cloud », par eux-mêmes ou conjointement à des solutions telles que Ansible. Pour toutes ces raisons et bien d’autres encore, savoir les concevoir de manière robuste et idempotente est crucial.

Les listes de lecture

9 article(s) - ajoutée le 01/07/2020
Vous désirez apprendre le langage Python, mais ne savez pas trop par où commencer ? Cette liste de lecture vous permettra de faire vos premiers pas en découvrant l'écosystème de Python et en écrivant de petits scripts.
11 article(s) - ajoutée le 01/07/2020
La base de tout programme effectuant une tâche un tant soit peu complexe est un algorithme, une méthode permettant de manipuler des données pour obtenir un résultat attendu. Dans cette liste, vous pourrez découvrir quelques spécimens d'algorithmes.
10 article(s) - ajoutée le 01/07/2020
À quoi bon se targuer de posséder des pétaoctets de données si l'on est incapable d'analyser ces dernières ? Cette liste vous aidera à "faire parler" vos données.
Voir les 65 listes de lecture

Abonnez-vous maintenant

et profitez de tous les contenus en illimité

Je découvre les offres

Déjà abonné ? Connectez-vous