Cela fait maintenant deux ans que j’héberge ma propre instance Mastodon – depuis qu’Elon Musk a racheté Twitter.
Depuis, Twitter a été renommé en « X (anciennement Twitter) », sont apparu Threads (théoriquement interopérable avec Mastodon) et Bluesky, il est apparu qu’Elon Musk n’a pas « payé un jouet 44 G$ » mais « s’est offert l’élection présidentielle des USA pour 44 G$ » (ce qui est un meilleur investissement), Trump va de nouveau être président desdits USA, Twitter (pardon, X ) s’est définitivement transformé en dépotoir au point d’être fui par de grands médias, et je n’aime pas Mastodon. Et je vais détailler ce dernier point.
Je considère que si vous lisez ceci, vous connaissez un minimum Mastodon ; en particulier que vous savez que Mastodon (le logiciel) n’est pas ActivityPub (le protocole), et que vous avez une idée de ce qu’est une instance et la fédération d’instances.
Ceci est un billet d’humeur qui n’a pas vocation à être une critique exhaustive, pas plus qu’à une quelconque forme de neutralité. Vous êtes prévenus.
- Le fonctionnel
- L’ergonomie
- Mastodon en tant que réseau
- Le protocole
- Mastodon, la version qui fonctionne
Le fonctionnel
Mastodon est compliqué. Toute personne qui prétendrait le contraire est, au mieux, quelqu’un d’habitué qui a oublié cette complexité ; au pire de mauvaise foi.
La raison principale est que Mastodon expose et impose une séparation stricte entre les instances, ce qui oblige à exposer cette notion et toutes ses conséquences à l’utilisateur, ce qui casse énormément de choses pour l’usage quotidien.
Pour commencer, la notion même d’instance est incompréhensible pour la plupart des utilisateurs non-techniques. Et c’est pas en criant très fort le contraire que ça résoudra le problème, désolé.
Ensuite, ça provoque des comportement eux-mêmes incompréhensibles. Par exemple, si je suis connecté à mon instance, que je vois que quelqu’un a republié un message de Toto que je n’ai jamais croisé avant. Toto dit un truc intéressant, je veux voir si c’est un compte à suivre, je vais sur son profil et… je ne vois rien. Parce que mon instance n’a pas récupéré les messages de Toto. Il faut que je clique sur un lien pour voir le profil de Toto directement sur l’instance utilisée par Toto pour avoir ce profil au complet.
Même cause, mêmes conséquences, le lien « voir les messages et réponses » d’un profil fédéré est inutile en usage réel.
Comme chaque instance a son URL et qu’il n’y a pas de protocole spécifique (tout passe par https://…
) ni de nom de domaine bien connu (chaque instance a le sien, et potentiellement n’importe quel nom de domaine est concerné), ça interdit de créer une configuration de type « ouvrir ce lien avec cette application » au niveau du système sur mobile. Autant dire que l’ouverture de lien / le suivi / etc… ne fonctionnent jamais correctement et se lancent toujours sur le navigateur et pas l’application. Ça suffit à rendre l’usage extrêmement pénible sur mobile. Or, le gros de l’usage informatique se fait sur mobile aujourd’hui.
… et tout est comme ça. La notion d’instance est partout, elle complexifie tout. Comme tout est découpé en instances, tout ce qui sort de l’instance sur laquelle on est est soit défectueux, soit lent, soit incomplet, et souvent les trois à la fois.
Or, Mastodon – et surtout ses utilisateurs – déteste les grosses instances.
L’ergonomie
Ce point rejoint beaucoup le précédent : Mastodon est assez compliqué à utiliser à cause de cette notion d’instance qui apparait partout, et qui doit être comprise par l’utilisateur pour comprendre ce qu’il fait.
Pire, en copiant Twitter (souvent assez littéralement, y’a des pages qui à une époque étaient quasi indiscernables) alors que le concept derrière est très différent, Mastodon a contribué à rendre son propre usage difficile et à pousser un usage incohérent avec le protocole.
Mastodon en tant que réseau
L’aspect technique
Le système de modération et de blocage d’instances est complètement pété par conception, ce qui fait que plus une instance est grosse, plus on a de risque d’être isolé d’une partie du réseau sans même être au courant et ce à cause d’agissement de personnes dont on a même pas l’idée de l’existence.
D’autre part, des instances ferment régulièrement, y compris des grosses. Il existe bien un outil de migration, mais difficile à utiliser, peu fiable, et très partiel lorsqu’il fonctionne.
Enfin, Mastodon, le logiciel, voit son développement agoniser. Oh, il y a encore des mises à jour régulières. Mais Mastodon est en version 4.x depuis maintenant deux ans, et n’a sorti aucune nouvelle fonctionnalité notable depuis. Or, des idées à implémenter, il y en a plein. On pourrait faire une longue liste à partir des bonnes idées de modération de Bluesky1 (et des moins bonnes idées qui sont faciles à améliorer2). Ou même implémenter des trucs comme « pouvoir configurer la longueur des messages sans avoir à maintenir un patch ».
L’aspect humain
Entre :
- Les geeks persuadés qu’ils utilisent un outil simple et ergonomique et donc prennent de haut les nouveaux venus un peu perdus ;
- Les gatekeepers qui engueulent les nouveaux qui n’ont pas leurs codes ;
- Et surtout les administrateurs d’instances ni ne sont d’accord sur aucune règle de modération et donc se bloquent mutuellement à vue. En réalité, beaucoup d’instances gagneraient à ne pas se fédérer (ce qui est prévu dans la configuration), ça aurait le mérite d’être clair.
Mastodon est un repoussoir pour qui veut venir sans être déjà intégré à une communauté.
D’une certaine façon, ça se voit dans les chiffres. À l’heure où j’écris ces lignes, Bluesky a dépassé les 20 millions de comptes, lui et Threads ont à peu près le même nombre d’utilisateurs actifs… et les statistiques de Mastodon que je donnais il y a un an et demie n’ont pas significativement bougé (mastodon.social est passé de 221 milliers d’utilisateurs actifs à 278 milliers, et c’est la plus grosse évolution).
- Bluesky permet de détacher son message d’un « repost avec citation » (c’est comme si la personne citait un message qui n’existe plus. Mastodon a « évité le problème » en n’implémentant pas la fonctionnalité de repost avec citation… ce qui n’interdit absolument pas de citer le message via son URL, ce qui revient au même sauf qu’on ne sait pas qu’on a été cité.↩
- Comme la liste de blocage partagée de Bluesky, à laquelle il ne manque aujourd’hui que des raisons des blocages (individuelles) et un énorme avertissement sur le pouvoir qu’elle donne au mainteneur de cette liste, pour être parfaite.↩
Le protocole
Le protocole – ActivityPub – ne passe pas correctement à l’échelle.
Ici quand je parle d’échelle, il faut comprendre « l’échelle des réseaux sociaux de microblogging tels qu’ils fonctionnent actuellement », à savoir : des dizaines de millions d’utilisateurs, dont de très gros producteurs (plusieurs dizaines de messages par jour) à une très forte audience (plusieurs millions d’utilisateurs).
C’est assez difficile de savoir exactement dans quel but ActivityPub a été conçu : la spécification ne donne pas de cas d’usage concret, en particulier aucune forme de volumétrie ciblée. Mais de ce que j’en comprends, c’est un protocole qui a été conçu pour un usage de type « email » ou, plus généralement, « de petits groupes qui communiquent beaucoup en interne mais peu avec l’extérieur », ou encore de type « blog », c’est-à-dire « diffusion à une audience potentiellement grande mais assez passive, avec des messages peu fréquents ».
Le problème, c’est que Mastodon n’en a pas du tout cet usage. Mastodon, c’est du micro-blogging, beaucoup de messages à une audience extrêmement diverse et potentiellement énorme.
En conséquence, un serveur Mastodon consomme beaucoup pour le service rendu – CPU, mais surtout RAM et espace disque nécessaires. Un seul gros producteur sur l’instance, ou la fédération d’un gros producteur qui fait beaucoup réagir, peuvent provoquer de fortes charges serveur.
Mastodon, la version qui fonctionne
Je vois pourtant un usage de type « micro-blogging » à Mastodon qui fonctionnerait – mais hélas, c’est un usage très minoritaire.
Il s’agit de faire du micro-blogging sur une instance dédiée à un thème, sans chercher spécialement à se fédérer avec une autre instance.
Pour que ça marche, il faudrait un compte par instance qui nous intéresse, avec éventuellement du SSO pour se connecter une seule fois à toutes celles auxquels on est inscrit, et un moyen de changer facilement d’instance. Ça ne résoudrait pas certains problèmes (comme tout ce qui concerne l’utilisation sur mobile), mais serait déjà beaucoup plus cohérent.
Mais en l’état, utiliser Mastodon pour faire du Twitter/Bluesky, c’est complètement nul. Hélas, c’est comme ça qu’il se présente pour le grand public.
Je pense honnêtement que les péchés de Mastodon (et pas ActivityPub !) c’est :
- La volonté claire, mais pas totalement assumée, de vouloir refaire un Twitter avec un protocole inadapté, au lieu de se poser la question de ce qu’on pourrait faire comme réseau social intéressant à partir de ce protocole (ou de réinventer un protocole, mais là c’est pas le même boulot).
- Les geeks qui, comme souvent, sont pionniers, mais ont refusé de voir la complexité et se sont refusés à la critique « parce que c’est libre » (le seul critère qui compte chez certains, et qui s’imagine que c’est le cas pour le reste de l’univers)
- Les gestionnaires d’admin qui veulent la fédération mais que l’univers se plient à leurs règles de modération, et qui donc de fait refusent la fédération, mais sans l’admettre.
J’aurais bien aimé aimer Mastodon. Mais en l’état, je ne peux pas.
Le logo est celui de Mastodon.