Shapado un logiciel libre de questions réponses
Voici une présentation d’un logiciel original dans sa forme et dont au premier abord on serait tenté de se dire, mais à quoi bon cela peut-il servir ?
Shapado est un logiciel libre qui permet de mettre en place un site web sur lequel les visiteurs vont pouvoir venir poser des questions auxquelles les animateurs du site vont essayer de répondre. C’est une forme d’interactivité assez proche de celle des forums. Mais le format utilisé nous rapproche plus de celui d’un blog, mais avec une logique inversée. L’éditeur du site n’initiant pas la conversation par son article comme je peux le faire sur ce site.
Il existe aussi la possibilité de créer des groupes thématiques pour guider les visiteurs et les inciter à poser leurs questions au bon endroit. Encore une fois on retrouve un concept similaire aux forums. Chaque groupe peut personnaliser l’apparence du site en changeant les css ou en ajoutant du HTML. On notera la présence d’une série de widget sociaux pour Identi.ca, Twitter, etc… J’ai apprécié le fait que lorsque l’on configure un groupe, il vous est proposé de désactiver le « Like » de Facebook avec cette petite annotation : « Activer le boutton Like de Facebook (ne protège pas la vie privée) ».
Vous pouvez me poser des questions sur ce groupe.
Interview de Patrick Aljord
Patrick est un des développeurs de Shapado que j’ai interrogé pour en savoir un peu plus. Tout d’abord, l’origine du projet :
Patrick : L’un des développeurs de Shapado (David Cuadrado) est aussi l’un des développeurs de MongoMapper, un ORM ruby pour MongoDB. L’objectif initial de Shapado était de nous permettre de tester notre pile Rails/MongoMapper/MongoDB. À partir de là le projet a grandi un peu et on s’est rendu compte qu’il y avait beaucoup de gens intéressés et du coup on s’y est impliqué un peu plus.
Philippe : Shapado a été développé en utilisant la pile suivante de logiciels : Ruby on Rails pour la plateforme web, MongoDB pour la base de données et MongoMapper pour l’ORM ou mapping objet-relationnel. Pourquoi avoir fait le choix ces outils en lieu et place d’une classique pile PHP/Mysql.
Patrick : Nous pensons que le choix d’un outil est toujours subjectif, mais ne devrait pas dépendre de sa popularité (sinon nous serions tous encore sous Windows!) mais plutôt de son efficacité pour la tâche à accomplir et aussi des connaissances qu’on en a. En gros, un développeur devrait choisir la technologie qu’il connait le mieux (subjectif) et qui correspond bien à la tâche (objectif). On avait donc le choix entre python, php, ruby, perl, mais on connaissait mieux ruby et on le préfère aussi,et puis rails est parfaitement apte pour faire ce genre d’applications.
Ce qu’on aime dans Ruby c’est le côté objet et la rapidité avec laquelle on peut écrire du code, sans compter l’organisation d’une application Rails et tous les atouts de Rails. En ce qui concerne MongoDB, c’est un mixte de NoSQL et SQL, ça permet de faire des requêtes dynamiques comme mysql et c’est super rapide comme les autres DB NoSQL.
Ce que je n’aime pas avec SQL c’est qu’il faut toujours philosopher sur chacune des requêtes que l’on fait « est-ce que ça va faire planter ma DB si on monte en charge? », avec MongoDB, c’est fait pour aller vite par défaut et il n’y a pas 50 façons de faire la même requêtes.
Le fait que ce soit orienté document est aussi bien pour le web. Et puis il y a aussi le map/reduce qui permet de faire des grosses requêtes en parallèle.
Au fait, le projet Diaspora compte utiliser Rails+MongoMapper+MongoDB, donc c’est peut-être une pile qui a de l’avenir!
Philippe : Pourquoi avoir choisi de le publier sous licence libre AGPL ?
Patrick : Nous aimons beaucoup la GPL, le problème c’est que la GPL sur internet ne marche pas puisqu’il n’y a pas de redistribution du logiciel, il n’y a donc pas de nécessité de redistribuer le code. Ceci fait que sur le web, la GPL est l’équivalent ou presque d’une licence BSD. Nous aimons bien l’esprit du « je partage mes améliorations avec tous et vous faites de même », la AGPL permet exactement ça sur le web.
Philippe : Combien de personnes contribuent aujourd’hui à ce projet ?
Patrick : 3 développeurs actifs et 4 ou 5 développeurs qui contribuent de temps en temps. Nous sommes en train de travailler avec translatewiki.net pour les traductions donc ça devrait faire exploser le nombre de contributeurs (liste des traductions ici).
A savoir aussi
Le projet Shapado a reçu une belle reconnaissance de son travail et va être sponsorisé par Google Summer of Code dans le cadre du projet Encyclopedia of Life. L’objectif est de rendre Shapado plus ouvert en le dotant de mécanisme permettant d’implémenter des extensions pour le logiciel. Patrick nous confirme : « L’étudiant en question devrait commencer à travailler fin juillet, car il a des examens à terminer, mais il a déjà accomplie avec succès deux GSoC de la même manière (en commençant fin juillet) donc ça devrait aller ,mais pour l’instant on ne peut pas encore dire ce que ça va rapporter. »
La version 3.9 vient de sortir récemment avec des évolutions visant à améliorer la « sociabilité » du logiciel comme la possibilité de se connecter avec son compte Twitter ou Facebook. OpenId ou le support de protocoles comme oAuth pourrait être aussi les bienvenus. Je me mettrais même à rêver d’une interaction avec mon instance Statusnet pour pousser une question vers ce dernier. Pour l’instant seul identi.ca est supporté.
Pour finir on me dit de source bien informé que Rue89 étudierait l’opportunité d’utiliser Shapado. Mais rien de confirmer pour le moment.
Réagir à cet article
Article original écrit par Philippe Scoffoni le 09/06/2010. | Lien direct vers cet article
Cette création est mise à disposition sous un contrat Creative Commons BY à l'exception des images qui l'illustrent (celles-ci demeurent placées sous leur mention légale d'origine).