Et bien, cela faisait un moment qu’on n’avait pas vu de nouvel article sur ZeTechnology. La faute aux nouveaux projets : un moteur de recherche en C++, un composant d’édition d’images pour eZ Publish, Piwam, et un certain nombre de projets personnels.
Piwam était ma première vraie expérience en matière de logiciel libre, côté développeur j’entends. Maintenant que les premières versions sont bel et bien lancées, je suis en mesure de retranscrire par ce billet mes premières impressions, revenir sur certaines rumeurs ou vérités.
S’il fallait mettre l’accent sur un point qui revient souvent dans cet univers, c’est bien l’aspect communautaire. Le logiciel libre est en effet souvent mis en avant pour sa communauté toujours active. Je dois avouer qu’avec Piwam, les retours dépassent mes espérances. Nombreux sont ceux qui font parvenir leur avis sur l’outil et l’accueillent plutôt à bras ouvert.
Parallèlement, il y avait évidemment les inévitables « retours d’erreurs ». Oui, dans Piwam aussi, il y a des erreurs. Et s’il y a quelque chose de fort agréable avec les libristes, c’est que les erreurs mènent à des recherches, voir des corrections de la part de ceux qui ont observés ces problèmes.
Pour ceux qui ne sont pas habitués à cet univers, voici comment les choses se présentent concrètement. Piwam est hébergé sur un espace Google Code, qui offre un outil de suivi de bugs (à l’instar de Trac ou Bugzilla, pour ne citer qu’eux). Par le biais de cet outil, les utilisateurs peuvent faire savoir les problèmes qu’ils ont rencontré, suivre le traitement de ces problèmes, ou soumettre des idées d’améliorations souhaitées. Non content de pouvoir soumettre un problème, les utilisateurs peuvent soumettre des idées de résolution, ou même la solution du problème sous forme de patch. Là, le développeur (moi) peut décider d’appliquer le patch, et ainsi corriger le soucis rencontré.
En quoi ces retours utilisateurs sont-il importants ? J’accorde une très grande importance aux tests dans un projet. Et bien que de nombreux tests sont mis en place, notamment en émulant toute une série de configurations de serveurs possibles, il arrive – quasi systématiquement – que telle ou telle situation imprévue se présente à vous et met à mal votre solution. Pour citer un exemple, la fonction PHP « apache_get_modules » n’était pas présente chez un certain nombre d’hébergeurs. Il a donc fallu trouver un remède au problème. De même, les configurations d’Apache faisaient que telle ou telle configuration du VirtualHost et/ou des .htaccess ne fonctionnait pas systématiquement. L’occasion alors de développer la documentation.
Un petit mot de conclusion ? La communauté libriste apporte réellement au développeur. Tant en tant que classique beta-testeur qu’en véritable aide pouvant se porter garant de la qualité et sécurité du code, ouvert et donc, on le rappelle, modifiable par tout à chacun.