Magazine High tech

Comment des communautés produisent-elles du logiciel libre ?

Publié le 16 février 2011 par Daidy

Voilà une question qui intéressera non seulement les développeurs de logiciels mais aussi toute personne intéressée par la philosophie du libre et plus largement par l’auto-organisation de plusieurs personnes autour d’un projet.

L’équipe de Framasoft, site référence sur les logiciels libres, vient de traduire le livre de Karl Fogel, Produire du logiciel libre (titre original anglais : Producing Open Source Software. How to Run a Successful Free Software Project). Bien entendu, cette traduction s’est déroulée de manière coopérative, en suivant les principes en cours chez les développeurs de logiciel libre. Elle a été prise en charge par Framalang, le réseau de traduction de Framasoft.

Produire du logiciel libre est avant tout un guide pratique, répondant à a question : Comment mener à bien un projet de logiciel libre ? Ce n’est pas pour rien si la première phrase d’introduction du livre est la suivante :

La plupart des projets de logiciels libres échouent.

Le constat est sévère… L’auteur estime cet échec à hauteur de 90 à 95 % des projets initiés. Comment remédier à cette hécatombe ?

41P K8cmhQL. SL500 AA300  Comment des communautés produisent elles du logiciel libre ?S’inspirant de plusieurs années d’expérience, Karl Fogel délivre des conseils d’ordre techniques, financiers et juridiques. Où trouver l’argent, quelle infrastructure technique mettre en place pour que les communications soient fluides (l’importance de bien documenter le code, le site web du projet, le wiki, IRC, etc.), comment gérer au mieux les différentes versions de développement, quelle licence adopter, etc.

Bien que cruciaux, ces aspects sont loin d’être les seuls facteurs éventuels d’échec. Ce serait sans compter ce que certains, parmi eux Patrick Viveret, appellent le PFH, autrement dit : « le putain de facteur humain » !

Et c’est là que le livre intéressera les non informaticiens. Il est toujours remarquable de voir que des groupes de plusieurs personnes, le plus souvent éclatées aux quatre coins du globe, participant de manière bénévole, réussissent à créer des logiciels d’une qualité égale et parfois même supérieure aux produis commerciaux des grandes multinationales.

Ce qui tient avant tout une communauté de développeurs, explique l’auteur, est :

la croyance commune qu’ils peuvent faire plus collectivement qu’individuellement.

Mais comment parviennent-ils à s’organiser ?


Un management subtil

Ces pratiques nécessitent tout un art des relations humaines ainsi qu’une forme de management informel et subtil. Notamment grâce à la présence d’un « dictateur bienveillant« . Cette expression couramment utilisée dans le milieu ressemble à un oxymore et désigne tout autre chose que le sens habituel du terme.

Généralement, les dictateurs bienveillants ne prennent pas concrètement toutes les décisions, ni même la plupart [...] les dictateurs bienveillants ne dictent généralement pas grand-chose. En revanche, ils laissent les choses s’éclaircir d’elles-mêmes au cours de la discussion et de l’expérimentation, quand c’est possible. [...] C’est seulement quand il apparaît clairement qu’un consensus ne peut être trouvé et que la majorité veut que quelqu’un prenne une décision afin que le développement puisse continuer, qu’il tape du poing sur la table en disant : « Voilà ce qu’il faut faire. ». Presque tous les dictateurs bienveillants ont en commun une aversion pour la prise de décisions par diktat ; c’est une des raisons pour lesquelles ils parviennent à garder leur rôle.

Un « dictateur bienveillant » qui se comporterait de manière tyrannique serait en effet très vite évincé par les membres du groupe. Aussi, son rôle est plutôt celui d’un juge ou d’un arbitre approuvé par la communauté. Celui-ci n’a par ailleurs aucun problème avec le fait de se montrer parfois faillible. Bref il ne s’agit ni d’un patron autoritaire, ni même d’un super développeur dont les capacités seraient au-dessus du lot.


Entre démocratie et sociocratie

Les projets de logiciels libres semblent fonctionner de manière démocratique. Mais peut-être plus que cela, le mode de décision tend vers des pratiques proches de la sociocratie. D’abord, parce que prime le consensus, défini ainsi par l’auteur :

« Consensus » veut simplement dire : accord prêt à être respecté par chacun. Il ne s’agit pas d’un état ambigu : le consensus est atteint, pour une question donnée, lorsqu’on le déclare comme tel et que cette affirmation n’est pas contredite.

Ce « consensus » est en fait un « consentement » de la part de tous les participants. Selon ce principe, tous les participants expriment leurs points de vue sur un problème donné et parviennent à une décision qui puisse convenir à tout le monde. L’intelligence collective en oeuvre dans les projets de logiciel libre répond en cela à la première des quatre règles fondamentales de la sociocratie :

En sociocratie, une décision est prise par consentement s’il n’y a aucune objection importante et argumentée qui lui est opposée.

La sociocratie est caractérisée par un mode de gouvernance par consentement des parties, là où la démocratie choisit de privilégier la décision de la majorité des voix. Cependant Kart Fogel n’exclut pas le recours au vote, et donc au choix de la majorité, lorsque le consensus n’arrive pas à émerger. L’important est en effet que le projet ne soit pas bloqué et des modes alternatifs de prises de décision, par vote ou par choix du « dictateur bienveillant », sont là, précisément pour en assurer le bon déroulement.

Produire du logiciel libre aborde d’autres questions liées aux rapports humains sur la manière de gérer au mieux les personnalités difficiles qui « monopolisent le temps et l’énergie des autres sans rien apporter de positif au projet« . Il donne également des conseils sur la façon d’encadrer les volontaires, rappelant au passage que :

Les remerciements sont la monnaie dans le monde des logiciels libres.

2326310839 b2ca7ba06f z Comment des communautés produisent elles du logiciel libre ?

@ AGoK - cc by sa

Les communautés des logiciels libres démontrent chaque jour, et de façon concrète, que d’autres modes de gouvernance sont possibles. La hiérarchie traditionnelle de l’entreprise avec son lot de chefs, petits chefs et sous-chefs, qui engendrent la plupart du temps de la frustration n’est, heureusement, pas le seul mode de relation humaine dans un cadre de travail. Le fonctionnement des communautés du libre n’est pas non plus une forme d’anarchie qui aurait un regard naïf sur les relations humaines, mais tend vers un modèle sociocratique favorable à l’expression de la créativité de chacun. Aucun membre n’est propriétaire du projet, mais chacun apporte sa pierre à l’édifice et est reconnu par les autres pour son travail. Comme le dit l’auteur :

Chacun possède un pouvoir infini et personne ne possède le moindre pouvoir : le tout produisant une dynamique intéressante.

Le livre peut être téléchargé en intégral sur Framabook. Ou bien être commandé en version papier sur InLibroVeritas ce qui, en plus, soutiendra l’ensemble du travail du réseau Framasoft.


Retour à La Une de Logo Paperblog

A propos de l’auteur


Daidy 30 partages Voir son profil
Voir son blog

l'auteur n'a pas encore renseigné son compte l'auteur n'a pas encore renseigné son compte

Dossiers Paperblog