URL: https://linuxfr.org/users/palkeo/journaux/mon-projet-feedspot Title: Mon projet : Feedspot Authors: palkeo Date: 2013年08月04日T00:36:28+02:00 License: CC By-SA Tags: rss, veille_technologique, veille, moteur_de_recherche et postgresql Score: 49 Bonjour à tous, Je viens vous parler d'un projet qui est l'aboutissement de plusieurs années de travail, et qui me semble être assez mature pour que je vous le présente. Feedspot ======== Ce projet s'appelle [Feedspot](http://feedspot.palkeo.com) : il propose un ensemble de services de veille, basés sur l'actualité. Mon serveur est abonné à des centaines de milliers de flux RSS, et j'ai fabriqué 3 services autour de cette formidable masse de données : ### Radar à buzz Le [radar à buzz](http://feedspot.palkeo.com/boom/timeline) est une frise chronologique des mots clés qui font l'actualité. Elle est entièrement interactive, et est générée automatiquement (donc les mots clés ne sont pas toujours ultra-précis, mais en cliquant dessus on peut facilement savoir à quoi ils se réfèrent). C'est quelque chose que je n'ai jamais vu ailleurs, et que je trouve vraiment pratique pour s'informer rapidement des gros titres sur une période donnée. ### Buzzomètre Le [buzzomètre](http://feedspot.palkeo.com/buzzometre/) est un petit outil qui propose une courbe interactive qui affiche l'évolution d'un ou plusieurs mots-clés (ou expressions) au cours du temps dans l'actualité. C'est à dire qu'il propose une courbe avec le pourcentages d'articles qui contiennent l'expression cherchée dans le volume total, et ce au cours du temps. On peut donc voir l'évolution de « buzz », ou leur corrélation... [Google Trends](https://www.google.com/trends/explore) propose un service peu éloigné, mais basé sur les recherches, et qui semble au final assez différent. ### Flux dynamique Vous entrez une expression, et mon service de [flux dynamique](http://feedspot.palkeo.com/rss/) va se charger de vous générer un flux RSS, qui contiendra... tous les articles parus qui contiennent votre expression ! C'est pour ce service que j'ai à la base développé Feedspot, mais il est clair que c'est en fait le moins original : des systèmes similaires ont déjà été développés (Google alertes, Mention...). Je pense que ça peut toutefois être un complément correct, et surtout très simple. La technique ============ À la base, je me suis émerveillé devant la masse d'information fraîche qu'on pourrait avoir en s'abonnant automatiquement à _plein_ de flux RSS, et j'ai assez rapidement trouvé quelques applications sympa, qui sont présentées au dessus. Derrière tout ça, se cache une base de données PostgreSQL qui stocke les flux RSS, les articles... ainsi qu'un démon en python qui se charge d'aller récupérer régulièrement chaque flux RSS (en fonction de sa fréquence de parution d'articles frais). Je ne vous montrerai pas le démon en python, qui est particulièrement sale, et ultra-spécifique. ### Indexation Un aspect important est la capacité de fouiller dans les articles qui correspondent à certains mots clés. J'ai rapidement touché les limites de l'indexation plein-texte de PostgreSQL, qui doit être très bien pour rechercher sur toute une table, mais pas pour faire le genre de choses spécifique dont j'ai besoin. Plutôt que de partir sur un autre moteur d'indexation (lucene ?), j'ai préféré essayer d'en coder un moi-même (c'est fun, et puis je sais ce que je fais). Après pas mal de boulot, j'ai réussi à indexer tout le Wikipédia Français, et à rechercher dedans, avec des performances équivalentes à une recherche sur Wikipédia : victoire \o/ Je l'ai ensuite adapté pour mes besoins spécifiques à Feedspot, et c'est désormais lui qui se charge de tout l'aspect « recherche » du service (dont le buzzomètre). L'avantage, c'est que j'ai de super performances, et que je peux analyser mes mots-clés à la volée et les passer à mon « radar à buzz » si ils montent de manière anormale dans l'actualité. J'ai aussi décidé de libérer le code de base, que vous trouverez [sur GitHub](https://github.com/palkeo/indexd). Vous pourrez aussi trouver pas mal d'autres détails techniques sur **[cet article](http://www.palkeo.com/projets/feedspot.html)**. Et maintenant ? =============== Je ne viens pas à vous seulement pour vous parler de technique, mais aussi d'un aspect avec lequel j'ai bien plus de mal (c'est même pas fun :/) : **c'est cool, je me suis bien amusé. Et maintenant, je fais quoi ?** Déjà, pensez-vous que de tels services pourraient être susceptibles d'intéresser du monde ? Même si j'ai du mal à trouver une vraie utilité concrète à mes services, je les trouve bien cool, et ils pourraient servir à des gens (en particulier dans les milieux de la veille). Je me suis aussi dit qu'il serait possible d'en parler, pour avoir des avis, ou même faire de la pub... mais à qui ? Bref, je ne sais pas du tout quoi faire, et ça me ferait mal au cœur que mon projet finisse comme beaucoup d'autres avant (dans /dev/null), alors qu'il pourrait peut-être avoir une once d'utilité. Voilà, je suis ouvert à toute discussion sur l'aspect technique, mais aussi ce dernier aspect assez nouveau pour moi : je fais quoi maintenant ? À vous la parole :)