Meta-Press.es

Moteur de recherche décentralisé & revue de presse automatisée

2022 recap

1. 2022 en résumé

Commençons par quelques statistiques.

Il y a eu 7 grosses sorties (pour un total de 14 nouvelles versions si on compte aussi les corrections de bogue et la maintenance des sources) en 2022 et 12 communications sur ce site.

301 commits ont été poussés par 3 personnes (merci à : Baignoirphe et Matthieu Rakotojaona) via 14 merge requests sur Framagit. Cela représente à peu près un tier des 1088 commits qui compte le projet. 2022 a donc été une bonne année pour Meta-Press.es.

La dernière version publiée affiche 675 sources ce qui est grosso modo le double du nombre de sources accessibles fin 2021.

Les principales fonctionnalités ajoutées en 2022 furent :

  • le mode enfant, qui limite d’un clic les sources de Meta-Press.es à celles approuvées pour les enfants

  • le bouton de signalement d’une source défectueuse

  • le formulaire de création de sources, pour ajouter facilement sa source préférée même sans connaissance particulières en programmation (pour l’instant encore limité aux sources servant leurs résultats sous forme de flux RSS comme c’est le cas avec WordPress)

  • les exports de résultats au format CSV

  • la nouvelle liste des sources permettant de les parcourir et de les choisir une par une

De gros changement ont également été opéré en profondeur dans le code :

  • la prise en charge des traductions via WebLate (et de nouvelles chaînes de caractères arriveront bientôt)

  • la récupération des actualités à partir des flux RSS des sources (au lieu de leur page d’accueil qui bouge tout le temps) et qui comportent désormais une illustration lorsqu’elle est disponible dans le flux

  • l’utilisation de Intl.DisplayNames pour les noms de pays et de la langue ainsi que de Intl.DateTimeFormat pour récupérer les numéros de mois à partir de leurs noms

  • la création d’une page dédiée au test des sources, toutes d’un coup (erreur, avertissements, problèmes réseaux…)

  • les premiers tests de bout en bout (via Selenium) pour éviter les régressions entre deux versions (travail encore en cours)

2. perspectives pour 2023

2.1. Grâce au soutien financier de la NLnet

NGI0 tag
Figure 1. NGI0 logo

Meta-Press.es a obtenu, pour la 3e fois, une aide via l’initiative NGI0 de la Comission Européenne, piloté par la NLnet.

Il s’agit à nouveau de 20k€ et cela en vue de financer les 8 développements suivants.

2.1.1. Migration de la WebExtension au format manifest v3 (MV3)

Le "manifest v3" est une évolution de la manière d’organiser une WebExtension. Cette version imposée par Google introduit de nouveaux conceptes et en retire d’autres. Parmis les conceptes retirés certains sont utiles à Meta-Press.es et risquent de nécessiter de gros efforts pour pouvoir s’en passer. "MV3" était initialement annoncé pour janvier 2023 mais a été repoussé à juin 2023 par Google, alors que Mozilla a sorti en janvier sa propre implémentation sapant du même les efforts de Google pour réduire via le MV3 l’efficacité des bloqueurs de publicité.

Voir :

2.1.2. Modularisation : réorganisation en Modèle-Vue-Controleur

Meta-Press.es est passé d’un petit projet de 1000 lignes de JavaScript à 5000 lignes de code, alors que son organisation est restée monolithique. Cette réorganisation permettra d’isoler un noyau de fonctionnalités sous la forme d’un module JavaScript indépendant auquel différentes interfaces pourront se greffer.

Un client en ligne de commande servira de preuve de concept à la réorganisation MVC. Il devra permettre de réaliser des recherches en dehors d’un navigateur web, en listant les résultats directement dans le terminal.

2.1.3. Version Android: via Geckoview dans une coquille vide en Kotlin

Il y a probablement 1000x d’utilisateurs d’Android dans le monde qu’il n’y a d’utilisateurs de Firefox ayant installé une WebExtension. Permettre à Meta-Press.es d’être distribué sous la forme d’une application Android devrait mécaniquement augmenter son nombre d’utilisateurs.

Cette première étape consiste à créer un conteneur vide permettant l’exécution d’une WebExtension via Geckoview.

Puis il s’agira de faire fonctionner une version complète de Meta-Press.es dans la précédente coquille vide, et à enregistrer cette nouvelle "app" Android Meta-Press.es auprès des principaux canaux de distribution : F-Droid.org et Google Play.

2.1.4. Terminer le formulaire d’ajout de sources (gestion des réponses HTML et JSON)

Meta-Press.es permet la contribution de nouvelles sources par les utilisateurs depuis sa version 1.0, mais les contributions n’étaient en pratique possible que pour les développeurs. Pour permettre à tous les utilisateurs d’ajouter leurs sources favorites à Meta-Press.es, un formulaire semi-automatique a été mis en place. Il vise à simplifier la tâche au maximum. Une première version de ce formulaire a déjà été publiée mais elle est limitée aux sources fournissant leurs résultats sous la forme de flux RSS (comme WordPress). Il s’agira donc ici d’ajouter d’autres cas de figure au formulaire : les réponses servies sous forme de page web ou d’objet JSON.

2.1.5. Gérer le besoin de cookies de certaines sources

Avec l’application du RGPD un nombre grandissant de sources imposent désormais la présence de leur cookie pour pouvoir faire une recherche. Il faut donc que Meta-Press.es apprenne à récupérer ces cookie (et autres jetons) via une requête préliminaire pour les sources les plus pénibles. Ceci implique une évolution de l’API définissant l’intégration des sources (ainsi que de sa documentation).

2.1.6. Re-qualification de certaines sources approximatives en sources précises sur 'un mot'

Il s’agit d’un autre ajout à l’API d’intégration des sources à Meta-Press.es afin d’ajouter un post-traitement à certaines sources pour ne garder que leurs résultats contenant effectivement le mot clé recherché. Certaines sources garnissent en effet leurs résultats d’un extrait contenant les mots clés recherchés et il est alors facile de vérifier leur présence.

2.2. Grâce au soutien financier de la Région Nouvelle-Aquitaine

logo1rouge
Figure 2. Région Nouvelle-Aquitaine bandeau

La Région Nouvelle-Aquitaine dispose d’un programme de financement du logiciel libre innovant nommé NAOS (Nouvelle-Aquitaine Open Source).

Après plusieurs années de démarches administratives compliquées un financement de 49k€ a été accordé à l’entreprise Acoeuro pour travailler sur Meta-Press.es.

Ce financement permettra de développer un modèle économique autour de l’outil Meta-Press.es dans le but de le rendre auto-suffisant.

2.2.1. Vigipress.com

Une nouvelle plateforme web sera ainsi développée afin de proposer un service payant d’hébergement de revues de presses (publiques ou privées) facilement alimentables par Meta-Press.se. Cette plateforme proposera également à ses utilisateurs une version web de Meta-Press.es (rendant l’outil accessible à de nouveaux publics) ainsi que d’autres services à valeur ajoutée comme des notifications par courriel de nouveaux résultats ou une édition PDF personnalisée (avec logo) des revues de presse.

Cette nouvelle plateforme s’appellera Vigipress.com et sera hébergée par Globenet.org, un hébergeur associatif français vénérable et reconnu. Ce partenariat fut annoncé dans sa lettre d’information de novembre 2022.

2.3. Présence aux JdLL 2023

J’ai proposé deux conférences pour la prochaine édition des JdLL les 1 et 2 avril prochain.

Les deux conférences ont été retenues et j’aurais donc la chance d’y présenter les sujets suivants.

2.3.1. Financement du logiciel libre par l’Europe : 3 ans de soutien à Meta-Press.es

Découvrez avec quelle simplicité et quelle efficacité la NLnet peut soutenir votre logiciel libre.

Quelques courriels, beaucoup de sérieux et des dizaines de milliers d’euros… Voilà à quoi se résume le tour de force qu’opère la NLnet en tant qu’intermédiaire entre la Commission Européenne (via son programme Next Generation Internet) et le fourmillant monde du logiciel libre.

Votre projet ouvre de nouveaux usages du net ? Il est éthiquement en logiciel libre ? Vous ne perdrez probablement pas de temps à répondre à un appel à candidature de la NLnet. C’est simple, direct et efficace… surtout en comparaison avec les 2 années de parcours du combattant pour obtenir la même chose de l’administration d’une grande région française (également décrites dans cette conférence).

2.3.2. Web scrapping : retrospective et lessons tirées de l’intégration de 675 sources à Meta-Press.es

Ça aurait dû être 675 journaux (qui se ressemblent), mais ça s’est transformé en ode à la créativité humaine !

Florilège de bizarreries qu’on croise vraiment sur le web.

Analyser une page web à partir de JavaScript dans une WebExtension, ça avait l’air simple pourtant !

Oui, mais le serveur il répond du JSONP en fait et le content-type ment comme un patient du DrHouse ! En plus y’a d’abord une redirection et puis le charset, bah c’est pas UTF8 … T_T

Florilège de ce que l’humanité fait vraiment du web dans 64 pays et 71 langues !

2.4. Nouveau stagiaire

Qui aurait parié que tant stagiaires seraient passés par Pougne-Hérisson (un petit village de moins de 300 irréductibles Deux-Sèvriens) pour travailler sur l’état de l’art de l’alternative décentralisée à Google Actualités ?

Ce printemps pourtant Olivier Villaverde se rendra au quartier général de Meta-Press.es pour un stage en immersion facilitée.

3. Meta-Press.es a besoin de retour utilisateur

Depuis presqu’un an que le bouton de signalement d’une source défectueuse est apparu sur l’interface utilisateur de Meta-Press.es, personne n’a jamais cliqué dessus. Le signal que j’ai reçu c’était moi qui testais le truc (encore et encore) pour vérifier que ça fonctionne.

Comme vous pouvez le constater à la lecture de ce billet, le projet Meta-Press.es va très bien, mais il faut mitiger un peu cette observation. En fait la principale faiblesse du projet aujourd’hui c’est son faible nombre d’utilisateurs. Avec plus d’un téléchargement par jour, les statistiques d’utilisation fournies par Mozilla montrent que le nombre d’utilisateurs quotidien reste à 700 (les bons jours) depuis 2 ans.

Il y a donc un grand nombre d’utilisateurs qui sont perdus en route… ils téléchargent, testent, mais ne gardent pas.

Si vous vous reconnaissez dans cette description, ou si ayant testé Meta-Press.es vous la moindre remarque à formuler (vous auriez voulu ça, ou autre chose) je vous encourage vivement à me parler de votre expérience par courriel. Il y a quelque chose à améliorer quelque part…

L’adresse c’est : contact@ <project-name>