En parallèle de mes études j’ai passé beaucoup de temps à travailler sur PHPBoost, un CMS open source écrit en PHP. Ce projet, nous l’avons lancé en 2005 avec un ami sur son initiative.
En tant que leader d’un tel projet, il faut s’occuper de tout, le tout étant bien plus vaste que ce qu’on imagine au premier abord. Le développement du produit n’est finalement que la partie visible de l’iceberg.
Passer du temps à développer un projet open source n’a de sens qui si le produit sert à quelqu’un. Mais pour avoir des utilisateurs il faut être un peu connu. Il faut donc faire de la communication aux bons endroits et espérer que le bouche-à-oreille fonctionne, ce qui a été le cas pour nous. Mais une fois qu’on a des utilisateurs, on a aussi les emmerdes (pardonnez-moi l’expression) qui vont avec… Il faut faire du support, surtout au début quand le produit n’est pas mature. Il faut écrire une documentation (malheureusement c’est nécessaire et pas toujours très passionnant…). Dans le domaine des CMS, il faut également absolument fournir quelques thèmes graphiques. Ces thèmes, il faut les maintenir. Parallèlement à tout cela, il faut continuer le développement, et plus il y a d’utilisateurs, plus il faut faire attention à conserver la compatibilité ascendante… Pas simple tout ça. Ah oui, j’oubliais, il y a aussi souvent des bugs à corriger, surtout quand on est inexpérimenté comme nous l’étions à cette époque.
Heureusement, assez vite, une communauté s’est formée autour du projet. Nous avons même eu assez rapidement des contributeurs. Les premiers nous ont aidé à assister les utilisateurs qui rencontrent des problèmes. Ainsi, nous avons pu assez rapidement déléguer l’écriture de la documentation. Assez vite également nous avons eu des contributeurs qui se sont occupés de faire des thèmes graphiques, ces derniers étant absolument nécessaires à la réussite d’un tel produit. Nous avons pu nous concentrer un peu plus sur le développement du produit en lui-même, la partie du projet qui nous intéressait vraiment, tout en assurant la supervision de l’ensemble du projet. C’est que plus tard que nous avons eu des contributions au niveau du code, certaines ont été très fructueuses et d’autres assez peu productives.
Il faut garder à l’esprit que les gens qui participent à un tel projet le font tous sur leur temps libre dans l’esprit du bénévolat. Dans cette situation, on est souvent prêt à y passer du temps à condition d’être assez libre et de ne pas avoir trop de contraintes. Le problème c’est que quand on travaille sur un tel projet, qui plus est à distance, si il n’y a pas un minimum de règles, de contraintes et d’organisation, on ne peut pas aboutir à quelque chose de constructif. Ceci a été un de nos principaux problèmes. Nous avons passé beaucoup de temps à discuter avec les contributeurs, à essayer d’arrondir les angles, à essayer d’expliquer les quelques règles que nous avions, et parfois à régler les conflits qui se formaient entre différents contributeurs. Avec du recul, je me rends compte qu’en fonction de l’état d’esprit des gens, leur apport peut être très productif, nul, et parfois-même destructif, ce qui a malheureusement été le cas à quelques reprises.
Si on ajoute à ces difficultés les retours pas toujours encourageants de certains utilisateurs peu respectueux et sans doute spécialistes en la matière (c’est un peu le sport national en France), il y a de quoi être démotivé. Et pourtant nous avons tenu bon pendant toutes ces années avec une motivation entretenue d’abord par les retours positifs. En effet, savoir que les gens se servent et sont contents du produit est une réelle satisfaction. Même si PHPBoost n’a jamais rencontré un énorme succès, il y avait à une époque plusieurs centaines de sites propulsés par notre produit. Nous étions vraiment fiers d’en être à l’origine et de rendre service aux utilisateurs du produit. Et même si il y a des gens qui prennent un malin plaisir à dénigrer tout ce qu’ils peuvent, il y a également des gens qui ont une profonde reconnaissance et qui en font part. Il existait des produits concurrents dont certains étaient développés par des entreprises avec des moyens bien plus grands que les nôtres (je pense par exemple à Joomla!), et nous avons réussi à nous faire une petite place dans ce monde. Les utilisateurs de PHPBoost appréciaient l’aspect facile à utiliser du produit et également la réactivité que nous avions. Ceci était principalement dû au fait que nous, développeurs, assurions le support du produit en français, et nous étions proches de nos utilisateurs. Avec notre produit et un peu d’aide, ils arrivaient à faire ce qu’ils souhaitaient, ce qui n’était pas forcément le cas avec d’autres produits.
Je reviendrai plus tard plus précisément sur certaines parties de cette aventure qui sont à mon sens intéressantes, aussi bien sur le plan humain que sur le plan purement technique.
L’image d’en-tête provient de Flickr.