
Imaginez que vous êtes mainteneur d'un projet open source largement utilisé et utilisé par des développeurs du monde entier. Être mainteneur signifie que vous décidez quelles contributions externes sont acceptées. Il y a deux contributions : l'une d'un contributeur individuel et l'autre d'une personne que vous connaissez qui travaille pour une entreprise. Vous savez que le contributeur individuel a travaillé sur le code qu'il contribue pendant son temps libre et vous appréciez la qualité de son travail. L'autre contribution est également de grande qualité. Traiteriez-vous ces contributions différemment ? Devriez-vous ?
Techniquement, ces deux personnes ne contribuent qu'au code. Mais peut-on vraiment ignorer qu'un contributeur appartient à une entreprise, ou peut-on même attribuer sa contribution principalement à cette entreprise ? Une étude récente de la Linux Foundation a révélé que les organisations contribuent à hauteur de 7,7 milliards de dollars par an à des projets open source, dont 86 % sous forme de travail individuel. Je m'intéresse au rôle des identités individuelles et des entreprises dans les contributions open source.
Pour explorer ce sujet, je présenterai d'abord le contexte des logiciels libres et un aperçu de la théorie de l'identité, tant au niveau individuel que collaboratif. J'examinerai ensuite la nature des contributions individuelles aux logiciels libres, leurs motivations et le rôle de la communauté et de la méritocratie. En revanche, j'explorerai comment et pourquoi les entreprises contribuent aux logiciels libres et les comparerai aux contributions individuelles et communautaires. Cette comparaison me permettra ensuite d'identifier les principaux défis et tensions entre les contributeurs individuels et les entreprises. La théorie de l'identité organisationnelle présentée précédemment permettra d'obtenir des éclairages intéressants. Je présenterai ensuite quelques exemples pratiques observés dans le cadre de mon travail avec les logiciels libres.
L'open source, dans sa forme la plus simple, signifie que le code source d'un logiciel est librement accessible à tous, que chacun peut analyser, modifier ou partager. En pratique, différentes licences sont publiées avec le code source, chacune assortie de droits et d'obligations spécifiques. Mais ce n'est pas le sujet que j'aborderai aujourd'hui. Ce qui fait la force de l'open source, c'est que cet accès libre au code source permet une collaboration véritablement ouverte. Eric S. Raymond a décrit ce phénomène en utilisant deux modèles de développement logiciel contrastés : le « Bazar » et la « Cathédrale ». Le « Bazar » fait ici référence à la manière dont les logiciels sont développés dans les projets open source : de manière ouverte et collaborative, avec de nombreux contributeurs. Le modèle « Cathédrale », quant à lui, symbolise le développement logiciel classique : enfermé dans des projets de développement commerciaux menés par quelques experts. Raymond soutient que le modèle « Bazar » est plus efficace pour créer des logiciels robustes et innovants.
Par souci de transparence, je tiens à préciser que mon analyse de ces sujets est principalement influencée par mon expérience personnelle au sein d'un projet open source : ROS (Robot Operating System). Il s'agit d'un framework exceptionnel pour la construction de robots, mais ses détails techniques ne seront pas abordés plus en détail dans cet article.
Avant d'explorer plus en détail les projets OSS, je souhaite toutefois présenter l'outil de cette exploration : l'identité . De manière générale, l'identité est la relation qu'une entité entretient avec elle- même . Locke a clairement indiqué que c'est fondamentalement la conscience qui permet l'identité personnelle . Cette conscience peut être étendue rétrospectivement aux actions ou pensées passées. Bien qu'il s'agisse d'un élément fondamental de l'identité, il ne suffit pas à expliquer ce qui m'intéresse.
Une interprétation plus moderne est celle de l'identité sociale . Il s'agit de « la perception qu'une personne a de son identité en fonction de son appartenance à un ou plusieurs groupes » 7 . Cette connaissance peut donner aux individus un sentiment d'appartenance, un but, une estime de soi et, surtout, une identité. En pratique, ces groupes peuvent être définis par divers facteurs, allant de l'origine ethnique ou religieuse à l'affiliation professionnelle ou aux préférences musicales. Cela peut également expliquer certains aspects de la façon dont l'identité des individus est fondée sur leur appartenance à une entreprise. Cependant, une dernière section est consacrée aux entreprises en particulier.
Lorsque les entreprises se réfèrent à elles-mêmes, on parle d' identité organisationnelle . Premièrement, les organisations sont plus qu'un ensemble d'identités individuelles. French soutient que les organisations dans leur ensemble ont une moralité. Fondamentalement, parce qu'elles ont une intentionnalité et une responsabilité. 9 Lorsqu'on pense à une entreprise, c'est sa capacité à prendre des décisions qui conduit à cette intentionnalité. Une organisation a besoin d'une identité pour prendre ces décisions. Et comme nous l'avons vu avec Locke ci-dessus, cela repose sur sa propre histoire, mais aussi sur un type d'organisation auto-attribué. Je pense que c'est très intéressant et peut servir à expliquer de nombreux phénomènes perçus en entreprise. Mais pour l'instant, le contexte est suffisant, et je souhaite maintenant examiner plus en détail la nature des contributions open source.
Pourquoi les individus contribuent-ils à l'open source ? Je pense que les motivations fondamentales sont intrinsèques. La passion inhérente pour la programmation et le développement ne doit pas être sous-estimée. Cependant, ces projets OSS sont aussi des communautés, et y participer peut être très motivant. Comme nous l'avons appris de l'identité sociale, l'appartenance à un groupe est un élément constitutif de sa propre identité.
De plus, les motivations extrinsèques jouent également un rôle. Cela inclut l'avancement professionnel, car contribuer à l'open source rend l'individu visible et peut se forger une réputation utile lors de la recherche d'emploi. La reconnaissance externe peut également constituer un facteur de motivation plus général. Se sentir considéré comme un contributeur précieux renforce l'estime de soi.
Je pense que cette citation résume bien la situation.
[Les motivations comprennent] à la fois des motivations extrinsèques, améliorant la réputation et développant le capital humain et les réseaux sociaux ; et des motivations intrinsèques, satisfaisant les besoins psychologiques, le plaisir et le sentiment d’appartenance sociale.
Bien que j'aie évoqué la reconnaissance comme une source de motivation, celle-ci sert également un objectif différent dans les projets open source : le pouvoir. Les projets open source sont souvent qualifiés de méritocraties. Il est intéressant de noter que ce terme a été popularisé par un livre dystopique intitulé « L'essor de la méritocratie » de Michael Young. Dans ce livre, la société future imaginée, fondée sur la méritocratie, présente de nombreux problèmes, le plus important étant peut-être le manque de mobilité sociale. Une analyse approfondie peut réfuter les effets négatifs de la méritocratie envisagée par Young en 1958. Aujourd'hui, la méritocratie est donc généralement considérée comme un système politique souhaitable.
Les systèmes politiques examinent la répartition du pouvoir, et dans la méritocratie, le pouvoir est attribué au mérite. C'est ce mérite que les développeurs individuels accumulent en contribuant aux projets open source. Grâce à cela, ils gagnent en influence dans la hiérarchie du projet. Cela permet généralement de prendre des décisions plus éclairées sur le plan technique, en supposant que ceux qui ont beaucoup contribué à un projet aient également une idée claire de son fonctionnement interne. Le contraste est évident avec l'organisation du pouvoir dans les entreprises, où les décisions sont généralement prises par ceux qui sont hiérarchiquement habilités à les prendre, mais qui ne disposent pas nécessairement des connaissances techniques nécessaires. Cela ne signifie pas qu'aucune décision techniquement éclairée n'est prise en entreprise, mais que le rôle et l'influence potentielle des ingénieurs individuels sont différents de ceux des projets open source. D'après mon expérience, c'est aussi une des raisons pour lesquelles les gens contribuent aux projets open source.
Il est à noter que l'on peut avancer que les structures hiérarchiques de gouvernance de nombreux projets OSS peuvent également les rapprocher des structures rigides des entreprises. Cependant, cela ne correspond pas à mes propres expériences personnelles dans ROS. Bien que cela puisse varier d'un projet à l'autre, il ne s'agit généralement pas d'une distinction binaire précise. Malgré les différences dans les modes de prise de décision, les entreprises ont également de nombreuses raisons de s'engager dans l'open source, et c'est ce que je souhaite examiner maintenant.
Pourquoi les entreprises s'intéressent-elles à l'open source ? À première vue, il peut sembler paradoxal qu'une entreprise, généralement axée sur la réussite financière, s'intéresse à l'amélioration de logiciels qui doivent, à terme, être et rester gratuits et partagés avec tous ses concurrents directs. Mais nombreux sont ceux qui ont constaté que, si historiquement, ce sont les particuliers qui contribuaient principalement à l'open source, ce sont désormais les entreprises qui en sont responsables. Pourquoi ?
La première motivation est la qualité . Eric S. Raymond a introduit la loi de Linus selon laquelle « avec suffisamment d'observateurs, tous les bugs sont superficiels », du nom de Linus Torvalds 3. Il est logique que plus un code est consulté, plus sa qualité s'améliore. Je dirais que cela peut également être attribué au fonctionnement des communautés open source. Comme le sait quiconque a travaillé sur de grands projets de développement, avoir trop d'ingénieurs ne produit pas automatiquement des logiciels de qualité. Cependant, je soutiens que c'est aussi l'organisation d'un groupe diversifié d'ingénieurs intrinsèquement motivés au sein de structures méritocratiques qui conduit à l'amélioration constante de la qualité des logiciels. Mais la promesse de qualité ne peut être la seule motivation des entreprises qui investissent ces 7,7 milliards de dollars par an dans des projets open source.
Il est très intéressant d'étudier l'innovation . Historiquement, créer de l'innovation était considéré comme une tâche inhérente à une entreprise. Cependant, l'évolution constante de l'état de l'art technique peut rendre difficile de suivre ce rythme, et encore plus de le développer par l'innovation. Les logiciels libres contribuent à cet égard en uniformisant les règles du jeu. Lorsque l'état de l'art est accessible à tous, il n'est pas nécessaire de réinventer la roue. Chaque entreprise peut concentrer ses équipes de développement sur ce qu'elle considère comme innovant. C'est également ce qui rend ces projets extrêmement intéressants pour les petites entreprises, car les effets décrits sont encore plus marqués pour elles.
Si les entreprises fondent leur capacité d'innovation, et donc parfois l'ensemble de leur modèle économique, sur des logiciels libres, il est naturel qu'elles s'intéressent à la réussite du projet OSS associé. C'est pourquoi de nombreuses entreprises soutiennent financièrement ces projets. Cependant, cette dépendance motive également le désir d'influence. Une influence stratégique à long terme est souvent accordée par le projet OSS en contrepartie d'un soutien financier. Pour une influence technique à court terme, il est souvent aussi dans l'intérêt des entreprises de rémunérer leurs développeurs pour qu'ils contribuent activement au logiciel. Cette influence peut également être plus ciblée, mais nécessite souvent de constituer des contributeurs dotés de l'influence nécessaire à long terme . Un point très intéressant de l'enquête de la Linux Foundation était que de nombreux répondants étaient relativement mieux informés sur l'ampleur de leurs contributions financières que sur leur contribution en termes de travail.
À première vue, cette relation semble mutuellement bénéfique : les ingénieurs souhaitent contribuer, les entreprises les laissent faire et gagnent en influence. Cependant, cela comporte aussi des défis. Par exemple, il est difficile pour les entreprises de savoir quelle influence elles souhaitent ou dont elles ont besoin à long terme. Il peut également être difficile pour un ingénieur qui en perçoit la nécessité de convaincre son employeur d'investir. Il est donc intéressant de se demander à quelle identité ce mérite sera ensuite lié : celle de l'entreprise ou celle de l'ingénieur lui-même. D'après mon expérience, c'est souvent l'individu qui est concerné, à tel point que ces personnes conservent leur mérite lorsqu'elles changent de poste. Ce n'est évidemment pas dans l'intérêt des entreprises qui ont spécifiquement investi dans cette personne et ce projet. Cependant, grâce à une stratégie OSS rigoureuse et à long terme, il est tout à fait possible pour les entreprises d'accumuler du mérite et de ne pas le perdre lors des changements de personnel.
Un autre défi majeur pour les contributeurs et les mainteneurs, mis en évidence par Nadia Eghbal et d'autres, est le burn-out. Ce phénomène pourrait bien être inhérent à une gouvernance insuffisante dans la gestion des projets OSS. Les mainteneurs qui occupent des postes très personnalisés sont particulièrement exposés au burn-out. Une gouvernance efficace définirait des processus permettant de répartir leur charge de travail entre davantage de personnes ou de trouver des remplaçants en cas de besoin de pause ou de tâches personnelles. Souvent, il est également tout simplement improbable de trouver quelqu'un d'autre pour reprendre le poste de cette personne. Si elle fait du bon travail, personne ne contestera son poste, et si sa charge de travail est perçue comme dépassant largement un emploi à temps plein, cela devient encore moins probable. Le lien avec l'identité de l'entreprise est ici plus faible : le phénomène décrit s'applique généralement à des individus dont l'identité est bien plus importante pour leur réussite que celle de leur entreprise, si tant est qu'elle soit pertinente. Cependant, la triste réalité est que de nombreuses autres entreprises dépendent du travail de cette personne sans pouvoir lui garantir de bonnes conditions de travail. Maintenant, je pense que nous pouvons examiner ces défis de plus près avec un peu plus de théorie de l’identité.
Un aspect intéressant de l'article de Whetten est que les identités organisationnelles sont plus fluides que les identités personnelles. C'est du moins ce que j'en déduis, et c'est logique, car en tant que personne, je m'appuie beaucoup plus sur cette identité, et elle peut provoquer de graves crises si elle est remise en question ou évolue trop radicalement. Cependant, les identités des entreprises sont plus fréquemment remises en question et ne sont souvent définies correctement qu'en cas de changement ou de crise. Cela explique pourquoi le mérite dans les logiciels libres est davantage attribué aux identités individuelles si celles-ci sont plus constantes. Cependant, il est également évident qu'une condition nécessaire à l'attribution du mérite aux entreprises requiert une identité organisationnelle forte. Celle-ci est bien sûr également influencée par l'appartenance des ingénieurs à ces entreprises dans des contextes publics comme les projets de logiciels libres.
Un autre lien intéressant peut être établi à partir de l'argumentation de French concernant la moralité des entreprises 9 . Si quelqu'un affirme que les entreprises utilisant des logiciels libres doivent restituer leurs contributions en retour, il s'agit d'une affirmation morale. Cette affirmation gagnerait ou perdrait en validité selon l'attribution de moralité aux entreprises. Avant de lire l'article de French, je n'aurais personnellement pas présumé que les entreprises étaient morales. De plus, je ne considérais pas non plus la moralité comme très pertinente dans le contexte des entreprises contribuant (ou non) à l'open source. Cependant, je pense que l'application de l'argumentation de French à l'open source peut nous apprendre quelque chose : cet argument repose sur l'intentionnalité et la responsabilité. Cela me paraît intuitivement logique : je ne peux être moralement responsable que des actes que j'ai commis intentionnellement et dont j'en suis responsable. Lorsque nous appliquons cela à une entreprise qui a l'intention d'utiliser des logiciels libres et qui en est responsable, ce n'est qu'alors qu'elle sera moralement obligée de contribuer en retour. Ce qui se passe sans intentionnalité est intéressant : si l'organisation n'avait pas l'intention d'utiliser ce code open source, par exemple parce qu'un employé a décidé de l'utiliser sans autorisation, cela n'implique pas nécessairement une nécessité morale de décision au niveau de l'entreprise de contribuer. Quant à la responsabilité, on pourrait prendre l'exemple d'une entreprise qui ne serait pas responsable de son utilisation d'un logiciel open source donné, peut-être parce qu'elle y est contrainte par un autre partenaire commercial. Je peux alors soutenir l'argument selon lequel elle n'aurait aucune obligation morale de contribuer. Il est fascinant de constater à quel point des attributs comme la moralité, bien compris par les individus, peuvent s'appliquer aux organisations. L'open source est ici un excellent exemple qui contribue à clarifier ces idées.
Pour rendre ces points encore plus compréhensibles, j'aimerais ajouter quelques exemples pratiques que j'ai observés dans ROS. Un aspect dont j'ignore la singularité par rapport à d'autres projets est la prévalence de petites entreprises ou de contributeurs indépendants. Cela offre, d'une part, un éclairage intéressant sur la moralité des entreprises, d'autant plus facile à croire qu'une entreprise est proche d'un individu. D'autre part, cela souligne l'importance des contributeurs individuels dans les logiciels libres. Nombre de ces entreprises sont non seulement petites, mais aussi en constante évolution, ce qui fait de leurs membres un élément plus constant de la communauté que leurs entreprises. J'ai ici une observation qui contredit l'affirmation de Schrape selon laquelle « les entreprises et autres organisations sont capables d'apporter leurs ressources de manière plus continue et régulière que les contributeurs individuels ». Dans ROS, et en particulier dans Nav2, nous avons constaté que de nombreuses entreprises ont cessé leurs contributions, tandis que l'implication des individus concernés semble beaucoup plus stable et constante.
Concernant la pertinence et l'importance des identités pour le travail en open source, je suis tombé sur une discussion Stack Overflow, où une personne demandait s'il serait possible de partager toutes les activités de son entreprise depuis un seul compte GitHub. Le consensus des réponses est que c'est une mauvaise idée pour plusieurs raisons, l'une d'elles étant l'importance cruciale de la communication personnelle au sein des communautés OSS. Jono Bacon a également publié un article de blog intéressant sur la pertinence des contributions anonymes aux OSS, concluant que les identités dans les OSS sont importantes pour des raisons de méritocratie, de responsabilité et d'ouverture. Ces arguments plaident en faveur de la pertinence des identités individuelles en open source, d'un point de vue très pratique.
Il existe cependant un exemple intéressant d'identité organisationnelle, à un niveau que nous n'avions pas abordé jusqu'à présent. Il s'agit de la communauté ROS elle-même. Nous pouvons appliquer ce que nous avons appris sur la nécessité d'une discussion sur l'identité organisationnelle et sur le potentiel de relancer cette discussion grâce à des changements majeurs et à la menace de perte d'identité. L'exemple est, bien sûr, l'acquisition d'une grande partie d'Open Robotics par Intrinsic en 2022. Cela a suscité de nombreuses discussions au sein de la communauté ROS et, finalement, la fondation de sa nouvelle organisation de gouvernance, l'Open Source Robotics Alliance OSRA. J'y vois donc un exemple de la perte d'identité de ROS suite à l'acquisition d'Intrinsic et à la redéfinition ultérieure de sa propre identité, aboutissant à une identité plus claire et mieux comprise qu'auparavant. Et seule cette nouvelle identité a pu conduire à la position forte que l'OSRA a aujourd'hui.
Les principaux points à retenir de cet article qui pourraient être utiles sont les suivants :
Un grand merci à Maximilian Roßmann et Sebastian Castro pour avoir peaufiné à la fois le contenu et le langage - je n'aurais pas pu le faire sans vous !
Boysel, Sam, Frank Nagle, Hilary Carter, Anna Hermansen, Kevin Crosby, Jeff Luszcz, Stephanie Lincoln, Daniel Yue, Manuel Hoffmann et Alexander Staub. 2024. « Rapport 2024 sur le financement des logiciels libres ». https://opensourcefundingsurvey2024.com/ .
Raymond, Eric S. 2001. La cathédrale et le bazar : réflexions sur Linux et l'Open Source par un révolutionnaire accidentel . 1re édition. Oxford, Royaume-Uni : O'Reilly Media.
Noonan, Harold et Ben Curtis. 2022. « Identité ». Dans The Stanford Encyclopedia of Philosophy , édité par Edward N. Zalta et Uri Nodelman, automne 2022. Laboratoire de recherche en métaphysique, Université de Stanford.
Locke, John. 1694. « Essai sur l'entendement humain ».
Gordon-Roth, Jessica. 2020. « Locke et l'identité personnelle ». Dans Stanford Encyclopedia of Philosophy , printemps 2020.
Turner, JC, RJ Brown et H. Tajfel. 1979. « Comparaison sociale et intérêt de groupe dans le favoritisme intragroupe. » Revue européenne de psychologie sociale 9 (2) : 187–204. https://doi.org/10.1002/ejsp.2420090207 .
« Théorie de l’identité sociale en psychologie (Tajfel & Turner, 1979) ». 2023. https://www.simplypsychology.org/social-identity-theory.html .
Français, Peter A. 1979. « La société en tant que personne morale. » AMERICAN PHILOSOPHICAL QUARTERLY 16 (3) : 5–13. https://www.jstor.org/stable/20009760 .
Whetten, David A. 2006. « Albert et Whetten revisités : renforcer le concept d'identité organisationnelle ». Journal of Management Inquiry 15 (3) : 219–34. https://doi.org/10.1177/1056492606291200 .
Benkler, Yochai. 2004. « Stratégies fondées sur les biens communs et problèmes des brevets ». Science 305 (5687) : 1110–1111. https://doi.org/10.1126/science.1100526 .
Young, Michael. 1958. L'essor de la méritocratie .
Allen, Ansgar. 2011. « The Rise of the Meritocracy : A Philosophical Critique » de Michael Young. British Journal of Educational Studies 59 (4) : 367–82. https://doi.org/10.1080/00071005.2011.582852 .
Schrape, Jan-Felix. 2018. « Communautés open source : l’institutionnalisation sociotechnique de l’invention collective ». Dans Collectivité et pouvoir sur Internet , 57–83. Cham : Springer International Publishing. https://doi.org/10.1007/978-3-319-78414-4\4 .
« L'évolution des contributeurs Open Source : des amateurs aux professionnels. » nd Consulté le 1er janvier 2025.https://www.redhat.com/en/blog/evolution-open-source-contributors-hobbyists-professionals .
« Participer aux communautés Open Source. » nd Consulté le 1er janvier 2025. https://www.linuxfoundation.org/resources/open-source-guides/participating-in-open-source-communities .
Nadia Eghbal. 2020. Travailler dans le public : la création et la maintenance des logiciels libres . San Francisco : Stripe Press.
« Pourquoi contribuer à l'Open Source est effrayant et comment contribuer quand même Authentik. » nd Consulté le 1er janvier 2025. https://goauthentik.io/blog/2024-03-07-why-contributing-to-open-source-is-scary/ .
« Modifications du groupe de travail Navigation2 et RECHERCHE D'EMPLOI - ROS nouvelle génération. » 2021. ROS Discourse . https://discourse.ros.org/t/navigation2-wg-changes-and-help-wanted/12348 .
« [Nav2] Un temps pour le changement - Général. » 2021. ROS Discourse . https://discourse.ros.org/t/nav2-a-time-for-change/30525 .
« Contributeur - Contribuer en tant qu'entreprise - Open Source Stack Exchange. » nd Consulté le 1er janvier 2025. https://opensource.stackexchange.com/questions/9763/contributing-as-a-company .
« Projets Open Source anonymes - Jono Bacon. » 2017. https://www.jonobacon.com/2017/04/28/anonymous-open-source-projects/ .
« Alphabet's Intrinsic acquiert la majorité d'Open Robotics - IEEE Spectrum. » nd Consulté le 24 janvier 2025. https://spectrum.ieee.org/alphabet-intrinsic-open-robotics-acquisition .
« Questions sur l'acquisition intrinsèque d'OSRC. » nd ROS Discourse . Consulté le 24 janvier 2025. https://discourse.ros.org/t/questions-about-the-intrinsic-acquisition-of-osrc/28763 .
« Annonce de l'Open Source Robotics Alliance ». nd Open Robotics . Consulté le 24 janvier 2025. https://www.openrobotics.org/blog/2024/3/18/announcing-the-open-source-robotics-alliance-osra .