Il y a 2 ans maintenant, Alice me disait qu’elle avait envie de commencer un agenda culturel pour Clermont-Ferrand. Elle regrettait l’agenda culturel de l’imprimerie nocturne de Rennes. On a imaginé un peu les choses, en discutant aussi avec Sébastien.
Après un petit tour d’horizon des outils disponibles, et n’ayant rien identifié qui corresponde à notre cahier des charges, j’ai commencé en septembre 2023 à coder un logiciel en m’appuyant sur django, et plein d’autres briques libres. Au fil des mois, c’est devenu relativement fonctionnel, et en septembre 2024, on a commencé à annoncer autour de nous https://pommesdelune.fr/.

Au fil des premiers mois, plusieurs personnes sont venues nous rejoindre, pour participer au développement, à la modération, à la diffusion ou encore à la prospection/curation, afin que l’agenda soit de plus en plus complet.
La particularité fonctionnelle de l’outil, c’est qu’il permet l’import automatique d’un grand nombre de sources, facilitant le travail quotidien des personnes qui font vivre l’agenda. On s’est focalisés sur le Puy-de-Dôme, et on essaye de couvrir toutes les activités culturelles, bien au delà des simples concerts de musique actuelle. C’est aujourd’hui plus de 170 sources qui sont intégrées chaque nuit.
L’outil permet également aux internautes de soumettre un événement ponctuel, qui sera bien sûr intégré après modération. On s’appuie sur un ensemble d’étiquettes et de catégories pour classer les événements, qui sont aussi géolocalisés. L’interface permet de filtrer et de rechercher de manière fine, afin de trouver son bonheur. Elle permet aussi de générer un flux ical correspondant au filtrage choisi, afin d’alimenter son propre agenda.
La pile logicielle s’appuie sur docker, django, redis, celery, selenium, ou encore pico CSS. Le tout est distribué sous licence AGPL. Depuis la publication, je continue régulièrement à améliorer l’outil, pour qu’il corresponde de plus en plus aux idées que l’équipe qui anime pommes de lune. À vrai dire, j’ai du mal à m’arrêter :

Les défis sont nombreux :
- récupérer les informations depuis des sites internet qui parfois font tout pour interdire les robots d’explorer leur contenu (facebook, helloasso, etc),
- intégrer des sources très variées, car chaque organisme du territoire a ses propres modes de diffusion,
- réussir à extraire et structurer une donnée à partir d’informations prévues la plupart du temps pour être lues par des humains, et pas par des machines,
- gérer les mises à jour des événements depuis les sources, l’édition locale, la détection de doublons, la géolocalisation des événements,
- fournir une interface de consultation ergonomique, agréable, rapide et fonctionnelle,
- fournir une interface de modération efficace, pour économiser un maximum de temps aux modérateurices.
En plus du projet principal d’agenda culturel, j’ai aussi récemment développé une petite bibliothèque indépendante pour extraire les dates et heures présentes dans un texte sous forme libre : chronostring. Cette bibliothèque fonctionne par détection de motifs élémentaires, puis par la consolidation des informations présentes, jusqu’à arriver à une description complètement structurée des dates et heures.
En un peu plus d’un an de développement, j’ai appris pas mal de trucs, rencontré des gens très chouettes, passé du temps à geeker sur des questions qui m’amusent, et je pense que ça va encore continuer quelques temps. Une manière de ne pas se manger le cerveau ou le foie quand on veille son enfant malade.