Accueil - Portfolio d'Emmanuelle ABOAF

Et si on dépoussiérait le flux RSS ?

Temps de lecture : 5 minutes

Introduction

Et si on dépoussiérait le flux RSS, une technologie qui existe depuis 1999 ?

Lorsque j’ai commencé à écrire des articles et les publier sur mon blog, deux personnes m’ont interpellé pour me demander s’il existait un flux RSS pour se tenir au courant de mes publications en temps réel. J’ai réalisé qu’il y avait encore quelques personnes qui sont attachées à cette technologie.

Je vous partage mon expérience avec cette technologie que je connaissais vaguement jusque-là à travers cet article.

Qu’est ce que le flux RSS ?

RSS [1]Accéder à la note n°1 en bas de page signifie “Really Simple Syndication” ou syndication vraiment simple en français.

C’est un flux permettant d’afficher les dernières mises à jour du site sans passer par les réseaux sociaux ou newsletters. Il suffit de copier l’adresse et le coller dans une application qui permet de lire les flux RSS.

Lorsqu’on est abonné au flux, le logiciel alerte le dernier article paru. Cela permet de prévenir aux personnes qui sont abonnées au RSS d’être au courant des dernières mises à jour des articles.

En général, le flux est écrit en XML.

Pourquoi mettre en place le flux RSS ?

Certes, c’est une vieille technologie qui existe depuis 25 ans mais elle a le mérite de continuer à exister. Comme vous, je me posais cette question puis j’ai changé d’avis.

Sur le conseil de Nicolas , j’ai installé l’application IOS NetNewsWire (EN) permettant de lire les flux RSS afin de tester mes développements. J’y reviendrais dans un instant.

Je suis abonnée à pleins de newsletters que je reçois dans ma boîte mail mais je ne les lis pas tous tellement j’en reçois. Je ne vous dis pas le nombre de mails non lus que j’ai en me disant « je les lirais plus tard ».

Depuis plusieurs semaines, je vais beaucoup moins sur les réseaux sociaux hormis peut-être LinkedIn. Grâce au RSS, je redécouvre le plaisir de lire les articles des blogs et newsletters sur des blogs [2]Accéder à la note n°2 en bas de page dont je ne connaissais pas leurs existences, surtout des blogs anglophones sur l'accessibilité, Angular, la culture, etc. Cela me permet, en tant que développeuse, de continuer à faire de la veille et d’apprendre de nouvelles choses.

Depuis que j’ai NetNewsWire, je suis plus à l’affût des flux RSS. Dès qu’un article m’intéresse, j’ajoute le flux RSS, quand il est disponible, dans l’application. J’ai maintenant une liste bien étoffée.

D’ailleurs, c’est grâce à cette façon de faire que je suis tombée sur un article qui disait qu’il était possible de créer un flux RSS en HTML…! Je testerai à l'occasion.

En consultant de plus en plus de blogs anglophones, j’ai aussi découvert qu’il y avait une section « links » pour faire partager les articles qu’on a lus et qu’on a appréciés. Grâce à ces liens, j'ai découvert d'autres articles et par extension, d'autres blogs. Je pense mettre cette section prochainement en place sur mon blog.

S’abonner aux flux RSS permettrait aussi de réduire son impact environnemental des mails. Selon plusieurs articles [3]Accéder à la note n°3 en bas de page, un mail envoyé équivaut à 20 grammes de CO² consommés.

Comment j'ai créé le flux RSS sur mon blog ?

Au début, j'ai créé un composant Angular englobant les balises XML pour créer mon feed. Mais, ça n'a pas bien fonctionné d'autant plus que le validateur W3C rejetait ma page en disant que c'était plus une page web qu'un feed.

En faisant mes recherches, je suis tombée sur cette explication tout simple sur Stack Overflow (EN) qui disait ceci :

Angular is a SPA framework. It it built from JavaScript running inside an HTML document.

An RSS feed is not an HTML document, so you can't run an Angular application inside it.

Generating the RSS feed as a side effect of building the application is a perfectly reasonable approach so long as you are using some form of Static Site Generation (I'm not very familiar with Angular approaches to this, but that's the technique I use in a React/Next.JS site).

If you aren't using Static Site Generation then some other approach might be better, likely one that bypassed any kind of Angular code you have entirely (e.g. a server side program that directly accesses the same data source as the client-side Angular code).

Evidemment que ca ne pouvait pas marcher. Du coup, j'ai créé manuellement un fichier XML en attendant d'avoir une solution dynamique. Renseigner le flux manuellement n'était pas une solution qui m'enchantait particulièrement jusqu'à ce que je tombe sur deux articles qui m'ont beaucoup aidé.

Je n'avais pas exploité totalement toutes les fonctionnalités de Netlify (EN) qui héberge mon blog. Grâce aux articles How to generate an RSS feed for your blog with JavaScript and Netlify functions (EN) et Getting Started with Netlify Functions for Angular (EN), j'ai pu créer une fonction en TypeScript permettant de générer dynamiquement mon flux RSS.

Si vous voulez créer un flux RSS en HTML, c'est également possible à en lire l'article RSS in HTML: A Follow-Up (EN) écrit par Jim Nielsen sur son blog. Il a mis en place le flux en trois formats : XML, HTML et JSON.

Conclusion

Le flux RSS est clairement sous-estimé (voire même sous-côté) et il a pourtant tout à y gagner pour que ca soit davantage répandu.

Je voudrais remercier les deux personnes qui m'ont poussé et encouragé à mettre en place le flux RSS de mon blog : @ElectronLibre et @Cellix . Ainsi que @nhoizey de m'avoir suggérer l'application NetNewsWire, je ne peux plus m'en passer.

J'ai appris beaucoup en développant le flux RSS et en m'abonnant à différents flux. N'hésitez pas à me faire partager des blogs que vous suivez.

Si vous n'avez pas envie de me suivre sur les réseaux sociaux et si vous avez envie d'ajouter mon flux RSS à votre lecteur RSS pour vous tenir au courant de mes publications, vous pouvez.

On voit la liste de mes articles classés par ordre descendant de publication sur l'application NetNewsWire avec le titre, la description et la date de publication

L'affichage de mon feed sur NetNewsWire


Références

Haut de page