Archive for the 'Programmation' Category

Commentaires dans SmellyFish

Samedi, décembre 29th, 2007

J’avais parlé il y a longtemps de permettre aux visiteurs d’évaluer les recettes dans SmellyFish. Aujourd’hui, Andréanne m’a demandé s’il était possible de connaître le nom de celui qui a ajouté une recette. Je mémorisais déjà l’information, mais elle n’était pas affichée, alors c’était très facile à faire.

Et tant qu’à avoir les mains dedans, j’ai ajouté un commentaire textuel aux évaluations numériques. Prenez par exemple la recette de Filet de porc aux noix de pin .

To a man with a wiki, everything looks like a page

Mercredi, mars 1st, 2006

Certains ont eu la bonne idée de créer un wiki pour stocker des informations généalogiques, et j’ai fait la même chose. Il y a WikiTree et Rodovid, qui utilisent tous deux MediaWiki avec chacun une extension qui interprète les informations qui doivent être entrées dans un format bien particulier, dans une boîte texte. Je ne suis pas allé aussi loin avec mon installation de MoinMoin, car je ne crois pas que l’interface d’un wiki soit appropriée pour du travail intensif. Les programmes comme GRAMPS font un bon travail en présentant une interface rapide, facilitant l’entrée de données, et ayant une navigation soignée.

Ce que WikiTree et Rodovid reprochent à ces programmes, c’est qu’ils travaillent en “silos”, sans permettre de bâtir une base de donnée mondiale. Ils peuvent certes exporter en GEDCOM, mais l’importation de multiples fichiers est un casse-tête que personne n’a vraiment résolu.

Ce qu’on voit, c’est des sites web en HTML, générés à partir du fichier GEDCOM, très peu ergonomiques, souvent laids et incompréhensibles, desquels on ne peut pas facilement extraire les données qui nous intéresse pour les importer dans notre base personnelle. Il y a aussi des sites qui permettent au public d’y déposer leur fichiers et aux visiteurs de rechercher les fichiers des autres. Ces sites ne bâtissent pas une base de donnée mondiale, mais offrent simplement un engin de recherche. Tout ça vient souvent avec des abonnements où l’on doit fournir un numéro de carte de crédit…

Une des solutions, celle adoptée par WikiTree et Rodovic, est d’utiliser un Wiki, et d’y ajouter des fonctionalités au-delà du langage de formattage. Dans une boîte texte, on peut donc écrire “Spouse = Jeanne Marchand”. Ça fonctionne plutôt bien, mais c’est très loin d’offrir une interface efficace pour de l’entrée de données.

Ce qu’il faut, c’est une application Web 2.0 pour la généalogie, utilisant donc HTML, CSS, JavaScript, DOM et Ajax, et qui soit collaborative, dans la ligne de pensée du Wiki, sans être un Wiki.

À partir de ce soir, plus que jamais, je chercherai les bases d’une telle application sur internet, si quelqu’un l’a déjà commencée. Comme bases, il existe le logiciel GRAMPS mentionné plus haut, écrit en Python et dont la structure de la base de données peut probablement être ré-utilisée. Il y a aussi The GENTECH Genealogical Data Model, une mine d’or de 100 pages. Pour le reste, je maintiens une liste de signets sur del.icio.us.

Développer avec une équipe d’assurance-qualité

Jeudi, novembre 24th, 2005

Durant le développement d’un projet, mon travail est testé par une équipe d’assurance-qualité, et ça se traduit par des interactions avec une personne en particulier. C’est la première fois que quelqu’un passe véritablement en arrière de moi pour vérifier que l’application fonctionne comme il le faut. Or, au fil du temps, j’ai noté l’effet que ça a sur mon propre développement.

J’avais commencé à écrire des tests unitaires, mais l’assurance-qualité du point de vue de l’utilisateur va encore plus loin. Ça met le focus sur les résultats, d’autant plus que je suis incité à mettre à jour l’environement de test plus souvent, dès que j’ai ajouté une nouvelle fonctionalité (quelques heures de travail, ou peut-être quelques jours).

En d’autres mots, je “release early, release often”.

Enfin, l’interaction fréquente avec l’équipe de test assouvit ce besoin presque vicéral que nous avons de montrer ce qu’on a fait à quelqu’un. Il ne faudrait pas que ça remplace les présentations régulières au client-utilisateur, mais il n’en reste pas moins que cette relation est très motivante, particulièrement pour améliorer les défectuosités de moindre importance, mais qu’on néglige trop souvent.