Catégories
Architectures ouvertes Blog et vie du site Geek

[blog] Suivi des discus­sions

Vieux sujet traîné en commun avec Karl et David (mais pas que) : Faire en sorte de décen­tra­li­ser les blogs et les discus­sions qui s’en suivent.

L’his­toire

Par le passé nous avions Track­back. On envoyait une noti­fi­ca­tion aux conte­nus liés, avec le lien vers notre contenu, le nom du blog, un extrait et un titre. Le codage carac­tère était globa­le­ment mal géré, les titres et extraits se sont révé­lés globa­le­ment inutiles voire contre-produc­tifs, mais c’était implé­menté un peu partout et ça, tech­nique­ment, ça fonc­tion­nait assez bien.

Pour faire court, les gens conti­nuaient à commen­ter dans le billet d’ori­gine plutôt que de commen­ter dans un nouveau billet chez eux. Par contre les track­backs étaient très utili­sés pour le spam, avec au final un ratio signal/bruit vrai­ment mauvais et donc l’aban­don du système.

Il y a aussi eu Ping­back. Système simi­laire mais avec une auto­dé­cou­verte plus sympa et l’ar­rêt de trans­mis­sion des titres et extraits. Vu que ces derniers n’étaient jamais person­na­li­sés spéci­fique­ment pour la noti­fi­ca­tion, autant les récu­pé­rer direc­te­ment à partir du lien si jamais on en a besoin.

Diffé­rence, Ping­back propo­sait de véri­fier la présence d’un lien sortant dans le contenu tiers avant de vali­der une liai­son entrante. Cette diffé­rence fut peu impac­tante au finale. L’idée a aussi été implé­men­tée dans les track­back mais les spameurs ont vite appris à faire des liens sortants pour poster leur spam, quitte à faire des liens invi­sibles pour le lecteur ou des liens tempo­raires suppri­més après l’opé­ra­tion.

Je trouve aussi l’idée discu­table dans le sens où la valeur ajou­tée du lien n’est pas la même dans les deux sens. Si je réalise analyse sur une dépêche AFP, il peut être utile d’avoir une noti­fi­ca­tion chez plusieurs personnes qui reprennent verba­tim cette dépêche, mais cela n’au­rait aucun sens d’en lier plus d’un à partir de mon analyse (ce que la véri­fi­ca­tion de ping­back impose).

Wiki­pe­dia cite aussi Refback. Je ne l’avais jamais vu forma­lisé sous ce nom mais la pratique est connue : Explo­rer les entêtes HTTP Refer­rer pour repé­rer de nouveaux liens entrants auto­ma­tique­ment. Les spam­meurs jouaient à faus­ser ces entêtes depuis long­temps donc là aussi ça n’a pas changé grand chose.

Tous ces systèmes ne spéci­fient que la noti­fi­ca­tion. Il s’agit de parler un langage commun au niveau de cette noti­fi­ca­tion pour que ce soit plus simple pour tout le monde. Il reste à l’édi­teur du site lié de choi­sir ce qu’il fait de la noti­fi­ca­tion : L’af­fi­cher auto­ma­tique­ment avec une modé­ra­tion a poste­riori, gérer une liste blanche, mettre un système anti-spam auto­ma­tisé, ou même faire une vali­da­tion manuelle a priori.

Il y a aussi Salmon, très orienté commen­taire, mais extrê­me­ment complexe et quasi­ment pas implé­menté (les deux sont certai­ne­ment liés). J’ai du mal à voir ce proto­cole réel­le­ment implé­menté partout.

Webmen­tion

Aujourd’­hui on parle de Webmen­tion. Même séman­tique que Ping­back, même méca­nismes d’au­to­dé­cou­vertes (seule la valeur de « rel » change), même requête initiale et mêmes para­mètres (seuls les noms des para­mètres changent légè­re­ment pour reti­rer les trois derniers carac­tères).

Les diffé­rences tiennent exclu­si­ve­ment dans la préci­sion de la méthode HTTP à utili­ser (POST) et dans les codes de retours (Webmen­tion utilise les codes HTTP stan­dards et un lien vers la mention créée, là où Ping­back renvoie une code de retour dans le corps de la réponse).

C’est tech­nique­ment plus satis­fai­sant pour les affi­cio­na­dos de HTTP mais la valeur ajou­tée fonc­tion­nelle est nulle. On ne fait rien de plus, rien de moins, et pas vrai­ment diffé­rem­ment. J’échoue d’ailleurs à

Sachant que ping­back a une implé­men­ta­tion dispo­nible sur à peu près tous les gros moteurs de blogs, je ne trouve pas que cela justi­fie de lancer un nouveau proto­cole. En l’état c’est d’une utilité encore plus faible que ce que j’ima­gi­nais initia­le­ment. Pas de quoi m’em­bê­ter à l’im­plé­men­ter.

En fait à choi­sir entre ping­back et webmen­tion, une fonc­tion­na­lité forte de ping­back est l’at­tri­but ping­back, qui permet­trait de faire une noti­fi­ca­tion auto­ma­tique suivant ce dernier proto­cole, et donc de rempla­cer (en opt-in) l’en­tête HTTP Refer­rer là où elle est bloquée par HTTPS. Cette possi­bi­lité me semble bien plus utile que le respect théo­rique de HTTP (je sens que je vais atti­rer pas mal de commen­taires avec cette phrase mais j’as­sume).

Suivi des discus­sion

Et puis j’ai l’im­pres­sion qu’on regresse un peu par rapport au track­back initial. Ping­back et Webmen­tion noti­fient d’un lien entrant, pas d’un suivi de discus­sion.

Je peux avoir un lien entrant sans aucun ajout à la discus­sion, juste un relai. Inver­se­ment je peux avoir un nouveau contenu qui apporte à la discus­sion et qui méri­te­rait de noti­fier plusieurs conte­nus déjà exis­tant sans forcé­ment s’im­po­ser de faire des liens.

Autre commen­taire de Karl : Certains aime­ront avoir plus qu’un lien, avec un petit texte sur le pourquoi de la noti­fi­ca­tion, de ce qu’ajoute ce nouveau contenu au sujet déjà en cours – par exemple pour orien­ter la modé­ra­tion et le choix de (non-)publi­ca­tion. Pas forcé­ment perti­nent de le rendre obli­ga­toire (ça empê­che­rait pas mal d’au­to­ma­tismes) mais le rendre possible serait utile.

Et si je n’im­pose pas de lien dans le contenu noti­fié, il faudra que je puisse en authen­ti­fier l’ori­gine. Un système de signa­ture simpliste devrait suffire mais sera néces­saire.

Faire une spéci­fi­ca­tion qui implé­mente ça demande deux heures tout au plus. Rien n’em­pêche même qu’elle soit compa­tible avec Webmen­tion et qu’on puisse avoir un point d’en­trée unique. Simple­ment ça n’a de sens que si je ne suis pas le seul à jouer.

David, Karl, les autres ? vous en pensez quoi ?

Laisser un commentaire

Votre adresse de messagerie ne sera pas publiée. Les champs obligatoires sont indiqués avec *