Comment aider la communauté du Libre ?
J'étais sur le point d'écrire un long billet sur ce que je perçois comme un problème majeur dans la communauté du Logiciel Libre. Sur le fait que de nombreuses personnes sont la uniquement par la haine du logiciel propriétaire, non pas par amour du libre; sur la passivité de certains membres qui ont pourtant un potentiel plus qu'intéressant; sur la mauvaise image qui est donnée au logiciel libre a cause de quelques membres zélés; sur l'hermétisme de la contribution et du développement et ainsi de suite...
Et puis non, ça n'avance a rien mis a part gagner des ennemis et insulter des gens qui ont pourraient être de précieux atouts dans l'avancée du libre.
Cela n'empèche pas que je trouve la situation presque désespérée, que je serai presque tenté de quitter définitivement cette communauté s'il y avait quelque part une meilleure alternative.
Malgré la souffrance provoquée par la pollution du Libre, je garde toujours un certain espoir de voir les choses s'améliorer si quelques personnes arrivent a canaliser les trolleurs et autres beaux parleurs pour les pousser vers quelque chose de plus constructif.
J'ai demandé la suppression de mon compte sur les forums d'Ubuntu-fr tout en étant parfaitement conscient que cela n'arrangerais rien au problème, c'est juste histoire de dire : "Je ne veux pas être associé avec ces quelques personnes qui sont en train de détruire ce que j'aime".
Dénoncer le problème ne le résoudra pas, ce qu'il faut c'est trouver des solutions qui feront que le problème n'aura plus aucune raison d'exister. Pour cela il faut prendre plusieurs choses en considération :
- Le Logiciel Libre n'est pas en danger, il est la pour rester, et il est protégé par des licences extrêmement bien conçues. Je perçois toute personne qui tente de protéger le libre des "griffes" de Microsoft ou d'Adobe comme quelqu'un qui n'a pas confiance dans le Libre.
- Les sociétés de logiciels propriétaires doivent être perçues comme des concurrents, pas comme des ennemis. La concurrence est quelque chose de sain et nécessaire a l'évolution (il peut aussi y avoir de la concurrence au sein du Logiciel Libre). La concurrence ne se fait pas avec des plaintes, ou des combats pseudo politico-philosophiques, mais en construisant des produits supérieurs. La philosophie du Libre est très bonne, j'y adhère complètement, mais un logiciel est un produit technique, pas une réligion , tout ce qu'on lui demande c'est de bien faire son travail.
- Dans beaucoup de cas, on ne se préoccupe pas assez de la liberté N°1 : celle d'étudier le programme, je dirais même que cette liberté est bafouée a l'heure actuelle. Tout logiciel libre (même un projet énorme) doit être accessible a toute personne voulant s'y intéresser. Malheureusement les logiciels libres sont trop souvent maintenus par une équipe définie (ou une seule personne dans beaucoup de cas) et les contributions, ou même la simple compréhension d'un projet est très difficile d'accès.
- Les systèmes d'exploitation libres ne sont pas encore prêt pour le grand public, il y a encore de nombreux points ou l'ergonomie mérite d'être améliorée. Certains disent "Linux ça se mérite, il faut apprendre et ne pas être assisté", je réponds à cela : "Ayez au moins la bonne foi d'avouer que vos programmes sont mal conçus, c'est le but premier d'un ordinateur que d'assister un humain". Lorsque nous demandons a un utilisateur non informaticien de taper des commandes dans un terminal, c'est une insulte faite aux systèmes GNU/Linux modernes et montre l'incapacité de la communauté à produire de bons scripts et des interfaces intuitives.
- Les innovations faites dans le milieu du logiciel propriétaire doivent être suivies de prêt. Si le Logiciel Libre surpasse le propriétaire dans de nombreux domaines (pour les serveurs notamment), il reste a la traine dans bien d'autres notamment l'audio, la vidéo, le jeu vidéo, etc...
- Certaines avancées logicielles présentes dans le domaine propriétaire sont totalement hors de portée pour des développeurs seuls, ou même une petite équipe. On avance souvent l'argument que les projets ambitieux sont le fruits de grosses sociétés avec beaucoup de moyens financiers mais je ne croit pas que ce soit le point crucial a la réussite de ces projets. Ce qui permet de mener a terme ces projets, c'est la structure fournie par une grosse société. La communauté du libre pourrait représenter une formidable force de travail, mais il manque quelques éléments fédérateurs, des outils permettant une meilleure gestion. Ne jamais oublier qu'un projet, aussi gros soit il est le fruit de plusieurs êtres humains, les membres de la communauté du libre n'ont aucune raison d'être moins doués. Aujourd'hui pour concevoir un logiciel digne de ce nom, travailler seul n'est plus une option.
Si tout ces éléments sont pris en considération, alors le Logiciel Libre et sa communauté cesseront d'être la risée du monde propriétaire, et sera perçu comme un concurrent a part entière. Pour l'instant, 1% de part de marché dans le domaine du desktop reste insignifiant pour être considéré avec sérieux.
Proposition de réseau social
Comme certain ont pu le remarquer, ce blog est une annexe du site que j'ai débuté il y a quelques années et qui n'a jamais vraiment décollé: Tweekers. J'ai poussé le vice jusqu'a donner comme sous titre "Plateforme de conception et d'architecture logicielle collaborative" alors que depuis le début je suis l'unique contributeur au site. Le site est plus ou moins a l'abandon et j'y poste de temps a autre quelques trucs et astuces concernant la programmation et l'administration. J'ai ajouté il y a peu de temps une section Documentation qui vise a répertorier et classifier les nombreuses documentations de projets libres mais c'est à peu prêt tout ce qu'il y a de nouveau sur ce site (Il me semble même que les inscriptions sont impossibles suite a l'ajout d'un antispam expérimental, personne n'a relevé le problème c'est dire le succès énorme du site).
Pourtant des le départ, le but était clair : a chaque problème sa solution, et le but du site était de la trouver, qu'il s'agisse d'une simple option de configuration sur Apache jusqu'a la conception entière d'une application.
J'ai utilisé ce site comme excuse pour apprendre le PHP et j'ai parfaitement conscience qu'il est buggé, que son code est à jeter a la poubelle, il n'en reste pas moins que l'idée de départ est toujours bonne et doit être gardée.
Il faudrait reconstruire ce site mais en mettant en avant le coté social du site. Il est hors de question de refaire un outil existant, surtout après la libération du code de Launchpad, qui est a mes yeux, la meilleure forge existante. Tweekers ne doit pas être une forge, ni un wiki, ni un forum, mais un réseau social axé sur l'étude de code et la conception de projets. Ce réseau social doit permettre de regrouper les personnes par domaine d'intérêts et de compétences.
Pour donner quelques exemples :
- Peter a un concept génial pour un nouveau jeu vidéo, il publie l'idée sur son profil, 10 personnes sont intéressées. Steven a quelques connaissances de SDL propose de contribuer et d'écrire des tutoriaux, Hugues trouve que ce projet est l'occasion pour apprendre l'OpenGL, Georges cherchais a faire de nouvelles créations sur Blender, José a déja écrit un jeu vidéo et propose de réutiliser des morceaux de code de sa création, etc...
- Jaqueline en a assez d'un bug très irritant qui n'a pas été résolu depuis des années. Le bug est répertorié sur Launchpad mais le programme est plus ou moins maintenu. Elle fait par du problème sur son profil. Dave est un autre utilisateur du programme et propose une analyse du code, il trouve le fichier qui pose problème mais n'a pas les connaissances pour résoudre le bug. Georges est un pro du C++ mais n'a pas beaucoup de temps a passer sur ce bug, mais cela tombe bien, on lui met devant les yeux la partie du programme a corriger, quelques minutes plus tard il soumet un patch (qui est automatiquement posté sur Launchpad). Dino applique le patch sur les sources, compile et construit un paquet qu'il publie sur son PPA.
Comme je l'ai bien fait comprendre, je ne comptes pas me lancer dans la refonte de ce projet tout seul, je cherche des personnes qui pensent que ce projet peut aboutir a un résultat intéressant. Pour information je compte développer le site avec le framework Symfony, probablement avec l'ORM Doctrine (je suis au beau milieu de mon autoformation a Symfony et j'ai commencé avec Propel, toutefois Doctrine semble être plus utilisé), et la librairie jQuery . Le site sera dans déplacé chez TuxFamily dans un premier temps (n'oubliez pas d'apporter votre soutien financier a TuxFamily !). A partir du moment ou j'aurais quelques volontaires, je mettrai a disposition le plus vite possible une première version du cahier des charges et pourrais organiser une réunion sur Jabber. Je précise qu'aucune connaissance n'est exigée tant que vous êtes motivés pour apprendre.