Sepia Search : notre moteur de recherche pour découvrir PeerTube

Nous ouvrons aujourd’hui une nouvelle porte d’entrée vers PeerTube, pour faciliter la découverte des vidéos qui sont publiées dans une fédération qui grandit de jour en jour.

À noter : cet article bénéficie désormais d’une version audio.
Merci à Sualtam, auteur de lectureaudio.fr pour cette contribution active.

PeerTube, c’est l’alternative que nous développons pour que chacun·e puisse émanciper ses vidéos des YouTube et autres TikTok. Sauf qu’à l’inverse de YouTube, Peertube n’est pas une plateforme unique.

PeerTube est un logiciel que des spécialistes peuvent installer sur un serveur pour créer de nombreuses plateformes vidéos (des « instances »), qui peuvent se relier entre elles au sein d’une fédération.

Une porte d’entrée vers une fédération diverse

Le problème, avec les fédérations, c’est qu’elles sont beaucoup plus variées et complexes qu’une plateforme à guichet unique. C’est bien joli de décentraliser pour empêcher la création de nouveaux géants du Web, mais elle est où la porte d’entrée ?

Doit-on vraiment expliquer la notion d’instance ? Insister sur le besoin de trouver la sienne et donc de se renseigner sur les politiques de fédération de chaque instance ? … à une personne qui demande simplement :

Mais… moi, je voulais juste regarder des vidéos !

La solution serait de créer un moteur de recherche pour toutes les vidéos publiées grâce à PeerTube.

Si l’on ouvre une porte d’entrée unique vers la fédération, alors la structure qui détient les clés de cette porte prend le pouvoir. Elle prend le pouvoir de décider ce qui sera accepté (ou refusé) dans l’annuaire de recherche, elle prend le pouvoir de noter qui a cherché quoi, quand, depuis où, et elle prend le pouvoir d’intervenir dans l’affichage et l’ordre des résultats.

C’est sur de tels mécanismes de pouvoir que Google a construit son monopole. Autant vous dire que, chez Framasoft, nous ne cherchons pas à être en situation de pouvoir… et encore moins à suivre le (mauvais) exemple de Google ! Pour autant, nous voulons montrer le potentiel émancipateur de ce logiciel qui permet de se réapproprier les moyens de diffusion.

Nous prenons donc la responsabilité de vous ouvrir Sepia Search, notre porte d’entrée vers des vidéos et des vidéastes sur PeerTube… Une porte que nous ouvrons en limitant au maximum les pouvoirs qui lui sont associés, pour respecter votre attention comme votre navigation.

Présenter PeerTube sans monopoliser les attentions

Dans l’univers de la fédération, le « fédiverse », on trouve de nombreuses instances PeerTube où des personnes s’inscrivent pour créer autant de chaînes qu’elles veulent, des chaînes où ces personnes peuvent publier leurs vidéos.

Notre objectif, avec Sepia Search, n’est pas de présenter l’intégralité de ces contenus. Nous voulons simplement vous montrer l’espace d’autonomie qu’ouvre PeerTube, en respectant les valeurs de transparence, d’ouverture et de liberté que nous défendons depuis plus de 16 ans.

Voici Sepia, læ mascotte de PeerTube – Illustration de David Revoy (CC-By)

Un outil d’indexation publiquement auditable (transparence)

Derrière Sepia Search, il y a deux logiciels.

Le premier, c’est le moteur : c’est le logiciel dans lequel on entre une recherche, qui compare cette recherche avec la liste des contenus de son annuaire, et qui donne les résultats correspondants.

Le deuxième, c’est la carrosserie : c’est le logiciel qui va présenter la barre de recherche, recevoir la demande que vous avez saisie, et vous afficher les résultats en précisant bien en orange où vous vous rendrez lorsque vous cliquerez sur « Aller voir cette vidéo ».

Le code source, la « recette de cuisine » de chacun de ces logiciels, est publié en toute transparence sur notre forge logicielle. N’importe quelle personne sachant lire ce code peut l’examiner, et déterminer s’il existe des outils pour tricher dans l’affichage des résultats, ou d’autres pour espionner vos comportements.

Nous, nous savons déjà que ces codes sont éthiques et ne vous espionnent pas. Nous avons une bonne raison : comme c’est marqué dans nos CGU, vos données ne nous intéressent vraiment, mais alors vraiment pas !

Un moteur de recherche modéré a posteriori (ouverture)

Toutes les instances PeerTube ne seront pas référencées sur Sepia Search. Ce moteur de recherche opèrera sur la liste d’instances que nous maintenons sur instances.joinpeertube.org.

Nous avons récemment annoncé un changement dans la politique d’indexation de cette liste afin qu’elle s’aligne sur la politique de l’ensemble des services que nous proposons :

Ainsi, si l’on nous signale une instance dont les contenus font explicitement l’apologie du terrorisme ou promeuvent le révisionnisme historique, nous la retirerons de l’index (non-respect des lois françaises, sur lequel nous insistons dans nos CGU), ce qui éliminera des résultats de recherche toutes les vidéos hébergées par cette instance.

A contrario, si une ou des personnes viennent abuser du temps de nos modérateur⋅ices par des signalements intempestifs et sans fondement, leur parole sera discréditée et ignorée (comme l’indique notre charte de modération).
Cette modération nous permettra de limiter les résultats proposés par Sepia Search aux vidéastes qui font des créations originales et aux chaînes (voire aux instances) qui contribuent à émanciper les esprits. Nous souhaitons qu’elle soit aussi légère que possible.

Illustration de David Revoy (CC-By)

Un outil reproductible, adaptable à vos conditions (liberté)

Il peut sembler paradoxal de parler d’ouverture pour détailler dans quelles conditions nous fermons Sepia Search à certains contenus (notamment illégaux).

Pourtant, à Framasoft, nous croyons au paradoxe de la tolérance, et donc que l’ouverture ne peut perdurer que si les limites de cette ouverture sont honnêtement définies et défendues.

Nous avons conscience qu’il s’agit là d’un point de vue venant de notre culture française, voire d’Europe de l’ouest. Il peut, par exemple, choquer des personnes de culture nord-américaine (où se pratique un Free Speech inconditionnel) ou de culture chinoise « officielle » (où, actuellement, le gouvernement pose des limites strictes à la liberté d’expression).

Nous ne voulons ni imposer notre culture, ni la renier. C’est pourquoi nous avons fait en sorte, légalement comme techniquement, que chacun·e soit libre d’éditer sa propre liste d’instances, son moteur d’indexation et son site de recherche, en copiant et adaptant ce que nous avons créé.

Sepia Search n’est que notre porte d’entrée vers PeerTube. Ce site a pour objectif de vous présenter le PeerTube émancipateur pour lequel nous travaillons, avec notre culture, notre militance et notre subjectivité.

Attendre d’un acteur qu’il fasse tout, tout seul, c’est finalement un réflexe de soumission à l’Internet des plateformes. Libre à vous de prendre le pouvoir (et les responsabilités) en hébergeant votre moteur de recherche, paramétré selon votre culture, votre politique d’indexation et vos valeurs !

Illustration de David Revoy (CC-By)

Ce que Sepia Search peut faire pour vous

Si nous avons bien travaillé, Sepia Search va vous permettre de découvrir des vidéos, donc des chaînes (voire des instances PeerTube) qui vous intéresseront !

Le site Sepia Search a été conçu pour vous informer en respectant votre attention :

  • Les résultats seront les mêmes pour tout le monde, en fonction uniquement de votre recherche (et de la langue de votre navigateur), et absolument pas pré-triés selon un profil (parce qu’il n’y a pas de profilage !) ;
  • Les résultats sont présentés de manière claire et détaillée, afin d’éviter la course à la vignette putassière et aux titres criards tout en majuscules ;
  • Les filtres de recherches vous donnent le pouvoir de trier l’affichage des résultats de manière avancée ;
  • Si vous voulez voir la vidéo, Sepia Search vous redirigera directement sur l’instance où elle est hébergée (puisque nous n’avons aucun intérêt à vous enfermer dans le site web du moteur de recherche). Cela permet au passage de montrer concrètement la notion de fédération.

Les 2 premiers résultats de la recherche du mot « critique », en filtrant pour ne garder que des vidéos en langue française.

Le moteur de recherche qui fait tourner Sepia Search est un logiciel libre, ce qui signifie qu’il est ouvert aux modifications et adaptations. Des usages plus poussés (passant par ce qu’on appelle une API) vont très vite permettre encore plus d’émancipation.

Par exemple, les internautes utilisant Firefox pourront ajouter Sepia Search à la liste des moteurs de recherche de leur navigateur directement depuis le site. De même, notre moteur (ou une autre installation du même moteur) pourra servir aux extensions qui permettent de signaler quand une vidéo YouTube est aussi disponible sur PeerTube, afin de les rendre plus performantes.

Un outil financé par la communauté

Sepia Search est une étape supplémentaire et nécessaire à la feuille de route vers la v3 de PeerTube, pour laquelle une collecte est toujours en cours.

Le fait de pouvoir rechercher des vidéos dans la fédération était très demandé : c’est pourquoi nous en avons fait la première étape de notre feuille de route. En effet, avant la version 2.3 de PeerTube, lorsqu’on utilisait la barre de recherche d’une instance, les résultats se limitaient aux vidéos dans la bulle de fédération de cette instance.

Grâce à vos dons qui ont financé notre travail, nous avons publié fin juillet la version 2.3 de PeerTube. Depuis, la même recherche peut désormais afficher les résultats de toutes les instances PeerTube listées dans un moteur de recherche « Search PeerTube », dont celui que nous mettons à disposition.

Cependant, les enquêtes d’utilisation menées par Marie-Cécile (la designer qui s’est engagée avec nous sur cette feuille de route afin d’améliorer PeerTube) et les retours dont vous nous faites part nous ont permis de comprendre que c’était insuffisant : il fallait, en plus, un site web spécifique, faisant office de moteur de recherche.

Cliquez pour découvrir SepiaSearch

Vos dons financent notre liberté d’action : nous avons vu ce manque, et nous avons annoncé mi-août que nous allions réaménager notre plan d’action et dégager du temps pour y remédier, ce qui nous semblait prioritaire. Voici comment est né Sepia Search.

Dernier arrêt avant le live !

Il reste désormais une seule et grosse ligne droite sur notre feuille de route vers la v3 de PeerTube : implémenter la diffusion de vidéos en direct et en pair à pair ! Comme nous l’avons annoncé, il s’agira là d’une première version de cette fonctionnalité, et elle sera très spartiate (sans module de tchat, ni filtres, ni réactions émoticonées).

Illustration de David Revoy (CC-By)

À l’heure où nous écrivons ces lignes, près de 1 000 personnes ont financé 42 000 € sur les 60 000 € nécessaires au développement complet de cette v3. Alors que le monde entier fait face à une pandémie, nous n’avons pas trouvé décent de conditionner ces développements à vos dons. Que nous récoltions les 60 000 € ou non, nous produirons cette v3, quitte à le faire sur nos fonds propres (ce que nous avions déjà fait pour la v2).

Nous espérons malgré tout que certain·es d’entre vous partagerons nos valeurs et notre démarche, et qu’en parlant de ce projet le plus largement possible, nous parviendrons à réunir cette somme (et à ne pas gréver notre budget pour l’an prochain !).

Pour soutenir PeerTube, pensez à partager la page de la feuille de route sur laquelle vous pouvez faire un don !

 

Pour aller plus loin

Pour aller encore plus loin (expert·es)




Une charte de modération pour les médias sociaux de Framasoft

Framasoft a grandi très vite. Peut-être un peu trop vite. Il y a quelques années, l’association était une bande de potes parmi tant d’autres, se retrouvant et discutant sur Framagora (l’ancêtre de Framacolibri, pour celleux qui s’en souviennent !). Puis nous avons lancé la campagne Dégooglisons Internet qui propose à ce jour 35 services, dont diaspora* avec Framasphère et Mastodon avec Framapiaf. Vous avez été des milliers à nous soutenir, à rejoindre ces services pour les tester et pour beaucoup, à rester et à les utiliser. Merci pour votre confiance !
Mais nous n’avions pas prévu un tel succès. Nous n’étions pas prêt⋅e⋅s à faire face à tout ce que cela impliquait. Nous avons toujours revendiqué notre droit à l’imperfection ; cependant, il y a des sujets sur lesquels nous avons été assez maladroit·e⋅s.

La croissance sans modération…

C’est le cas pour la modération. D’habitude, les communautés grandissent doucement, on recrute les modérateur⋅ices au fur et à mesure, on adapte les pratiques, et ça se passe à peu près bien. Dans notre cas, le réseau a grandi très vite : de simples chiffres qui montaient, montaient…

Mais les humains ne sont pas des chiffres. Les humains aiment et haïssent, et le font savoir. Les humains donnent leur avis, et contredisent, et s’écharpent pour un délit d’opinion. Les humains font de la poésie et s’envoient des bisous arc-en-ciel, mais parfois ils insultent aussi. Ils font des blagues, mais parfois celles-ci ne sont pas drôles et blessent d’autres humains.

L’atmosphère est devenue délétère pour certaines personnes sur nos services, et en particulier sur Framapiaf. Nous n’avons rien vu, pour plusieurs raisons. Avant tout, il y a eu peu de signalements, et avec des milliers de messages défilant chaque jour, il était (et il est toujours) impossible de repérer les problèmes lorsqu’ils ne nous sont pas signalés. Ensuite, ceux qui ont été faits ont été difficiles à gérer : personne n’était officiellement chargé de la modération. Certain⋅e⋅s de nos membres jetaient un œil parfois, sans se sentir légitimes, résolvant les cas les plus évidents, se sentant mal à l’aise sans ligne de conduite. Et sans structure organisée pour remonter les problèmes récurrents, nous n’avons pas pu prendre collectivement la mesure de l’importance de certains de ces signalements.

Après la prise de conscience

Certain⋅e⋅s des utilisateur⋅ices de nos services ont donc souffert de cette absence de modération. En outre, certain⋅e⋅s salarié⋅e⋅s de Framasoft ont été mis en difficulté par ces attaques, leurs formes, leur fréquence, tout autant que par la conscience aiguë de ne pas pouvoir en faire plus et de laisser des personnes dans la souffrance.

Une fois que nous avons mesuré l’étendue du problème que notre (mauvaise) modération pouvait poser, nous avons donc pris le sujet à bras-le-corps. Depuis janvier 2019, nos bénévoles se mobilisent afin que la modération sur Framasoft se mette enfin en place. Vaste chantier !

Nous avons avant tout travaillé d’arrache-pied sur une charte de modération. Cette charte est la base sur laquelle construire le reste : elle clarifie les comportements que nous refusons sur nos services. Elle sera peut-être trop contraignante pour certaines personnes, elle n’ira peut-être pas assez loin pour d’autres. Nous sommes à l’écoute de vos retours à condition qu’ils soient formulés de façon agréable et argumentée. Nous sommes cependant conscient⋅e⋅s que nous ne pourrons pas plaire à tout le monde. Ce n’est pas grave : vous pouvez ne pas utiliser nos services. Vous pouvez bloquer notre instance Framapiaf. En revanche, nous ne laisserons personne nous dicter ce que nous devons être et faire.

Se fédérer dans la diversité (tout un programme !)

Un aspect particulier du Fediverse est aussi à prendre en compte. Certaines instances sont dites ou se déclarent safe spaces (« espaces sécurisés » en bon français, mais on ne trouve jamais l’expression en français). Elles sont destinées à un public fragilisé, généralement des victimes d’oppressions et de harcèlements.

Ces safe spaces sont des endroits nécessaires pour que les personnes faisant partie de ces groupes puissent souffler et prendre des forces. Ces instances peuvent aussi être des instances fermées, reliées uniquement à d’autres safe spaces similaires. Ce n’est pas toujours le cas. Typiquement, plusieurs de ces instances sont fédérées avec Framapiaf.

Or Framapiaf n’est pas un safe space : c’est un espace pour les Dupuis-Morizeau, et dans la grande famille Dupuis-Morizeau, on trouve le cousin homosexuel et l’oncle catholique, la tante maghrébine et la mère chauvine, la nièce qui vote à gauche et le grand-père qui vote à droite, bref tout un éventail d’opinions pas toujours compatibles sans heurts. Nous n’allons pas virer l’oncle conservateur catholique qui ne comprend pas que deux hommes puissent se marier ; nous préférons discuter avec lui, afin de lui éviter de s’enfoncer dans une position homophobe. Nous n’allons pas plus virer la mère chauvine ; nous préférons lui laisser une chance de découvrir les recettes de la tante maghrébine et donc de s’ouvrir au monde.

Nous allons peut-être virer la nièce et le grand-père s’ils continuent de s’insulter à la moindre discussion politique ; mais nous les virerons pour les insultes, leurs propos diffamatoires ou illégaux, pas pour leurs convictions. C’est pourquoi nous invitons les safe spaces qui l’estimeront nécessaire à bloquer notre instance : nous ne pouvons pas vous garantir que nos utilisateur⋅ices ne vont pas faire une de ces blagues pas drôles, une de ces remarques que l’interlocuteur⋅ice pense inédite mais qu’on entend pour la centième fois, exprimant un de ces préjugés qui peut blesser quand il s’agit de notre quotidien.

Nous avons besoin d’instances qui ne soient pas des safe spaces, afin d’avoir une mixité favorisant le dialogue. C’est ce que nous voulons sur nos services.

Avec modération… mais laquelle ?

Nous ne pouvons pas modérer à priori tous les messages.

Et nous ne voulons pas opérer ce genre de flicage.

Nous ne pouvons intervenir que grâce aux signalements des unes et des autres.

Si vous constatez un comportement qui enfreint notre charte, merci de nous le signaler en donnant des détails, cela facilite le travail des modérateur⋅ices. Justifier le signalement est une condition nécessaire à son traitement : nous devons vérifier que les signalements sont fondés et l’explication nous simplifie la vérification.

Les modérateur⋅ices ? Aïe, voilà un nouveau souci. Comme nous le disions plus haut, les forces sont faibles face aux millions de comptes du Fediverse. Chaque heure, c’est l’équivalent de plusieurs Guerre et Paix qui sont écrits, selon certaines statistiques, et attention : avec autant d’histoires d’amour, de haine, de drames et de retrouvailles.

Actuellement, quelques bénévoles ont pris en charge des aspects de la modération, mais c’est toujours trop peu de monde face aux besoins. La conséquence, c’est une modération au lance-pierre : imprécise, parfois brutale, parfois complètement à côté du problème.

Notre deuxième chantier, en cours, est donc de mettre en place les outils pour assister la modération (outils techniques, mais aussi formation sur « comment faire ça bien »), de trouver qui recruter et selon quels critères. À ce stade, pas la peine de nous envoyer vos candidatures : nous avons besoin de prendre du temps pour poser les choses. Cela n’aiderait pas si nous recrutions des acharné⋅es du bannissement, des modérateur⋅ice⋅s pas du tout modéré⋅es ou des personnes savourant leur pouvoir de coercition et de censure. Nous vous tiendrons au courant lorsque nous serons prêt⋅e⋅s à accueillir, former et assister les bonnes volontés.

Enfin, la grande avancée du moment, c’est cette charte de modération. Elle précise le type de comportements que nous voulons et que nous refusons sur nos services et comment nous souhaitons les gérer. Nous vous invitons à la lire et à la respecter lorsque vous êtes chez nous.

Dans le cadre du Fediverse, il est aussi possible que nous ayons une modération qui vous impacte même si vous n’êtes pas hébergé⋅e⋅s chez nous : si dans une discussion avec une personne hébergée sur Framapiaf, une autre personne hébergée ailleurs se comporte en dérogeant aux comportements encouragés sur notre charte, nous masquerons ou bloquerons les propos de cette personne. Cela ne sera visible que depuis Framapiaf.

Et autant nous engagerons le dialogue avec les personnes hébergées chez nous afin que le contrat soit compris et respecté par tout le monde, autant les personnes extérieures, qui n’ont aucune obligation de respecter ce contrat puisqu’elles n’ont rien « contractualisé » avec nous, se feront éjecter sans grandes discussions si leurs comportements portent atteinte à nos utilisateur⋅ices.

Nous espérons que ces changements contribueront à rendre nos médias sociaux plus agréables à fréquenter. Il y a encore beaucoup de travail à accomplir, mais les choses avancent !

 

Illustration réalisée avec https://framalab.org/gknd-creator/

Si vous souhaitez nous faire des retours sur cette charte, nous vous invitons à le faire sur Framacolibri où nous avons ouvert un post spécifiquement sur ce sujet : https://framacolibri.org/t/une-charte-de-moderation-pour-les-medias-sociaux-de-framasoft/. Cela nous permet de centraliser vos remarques en un seul et même espace et nous facilite les réponses que nous pouvons vous apporter.

 

 




C’est quoi, l’interopérabilité, et pourquoi est-ce beau et bien ?

Protocole, HTTP, interopérabilité, ça vous parle ? Et normes, spécifications, RFC, ça va toujours ? Si vous avez besoin d’y voir un peu plus clair, l’article ci-dessous est un morceau de choix rédigé par Stéphane Bortzmeyer qui s’est efforcé de rendre accessibles ces notions fondamentales.


Protocoles

Le 21 mai 2019, soixante-neuf organisations, dont Framasoft, ont signé un appel à ce que soit imposé, éventuellement par la loi, un minimum d’interopérabilité pour les gros acteurs commerciaux du Web.

« Interopérabilité » est un joli mot, mais qui ne fait pas forcément partie du vocabulaire de tout le monde, et qui mérite donc d’être expliqué. On va donc parler d’interopérabilité, de protocoles, d’interfaces, de normes, et j’espère réussir à le faire tout en restant compréhensible (si vous êtes informaticien·ne professionnel·le, vous savez déjà tout cela ; mais l’appel des 69 organisations concerne tout le monde).

Le Web, ou en fait tout l’Internet, repose sur des protocoles de communication. Un protocole, c’est un ensemble de règles qu’il faut suivre si on veut communiquer. Le terme vient de la communication humaine, par exemple, lorsqu’on rencontre quelqu’un, on se serre la main, ou bien on se présente si l’autre ne vous connaît pas, etc. Chez les humains, le protocole n’est pas rigide (sauf en cas de réception par la reine d’Angleterre dans son palais, mais cela doit être rare chez les lectrices et lecteurs du Framablog). Si la personne avec qui vous communiquez ne respecte pas exactement le protocole, la communication peut tout de même avoir lieu, quitte à se dire que cette personne est bien impolie. Mais les logiciels ne fonctionnent pas comme des humains. Contrairement aux humains, ils n’ont pas de souplesse, les règles doivent être suivies exactement. Sur un réseau comme l’Internet, pour que deux logiciels puissent communiquer, chacun doit donc suivre exactement les mêmes règles, et c’est l’ensemble de ces règles qui fait un protocole.

Un exemple concret ? Sur le Web, pour que votre navigateur puisse afficher la page web désirée, il doit demander à un serveur web un ou plusieurs fichiers. La demande se fait obligatoirement en envoyant au serveur le mot GET (« donne », en anglais) suivi du nom du fichier, suivi du mot « HTTP/1.1 ». Si un navigateur web s’avisait d’envoyer le nom du fichier avant le mot GET, le serveur ne comprendrait rien, et renverrait plutôt un message d’erreur. En parlant d’erreurs, vous avez peut-être déjà rencontré le nombre 404 qui est simplement le code d’erreur qu’utilisent les logiciels qui parlent HTTP pour signaler que la page demandée n’existe pas. Ces codes numériques, conçus pour être utilisés entre logiciels, ont l’avantage sur les textes de ne pas être ambigus, et de ne pas dépendre d’une langue humaine particulière. Cet exemple décrit une toute petite partie du protocole nommé HTTP (pour Hypertext Transfer Protocol) qui est le plus utilisé sur le Web.

Il existe des protocoles bien plus complexes. Le point important est que, derrière votre écran, les logiciels communiquent entre eux en utilisant ces protocoles. Certains servent directement aux logiciels que vous utilisez (comme HTTP, qui permet à votre navigateur Web de communiquer avec le serveur qui détient les pages désirées), d’autres protocoles relèvent de l’infrastructure logicielle de l’Internet ; vos logiciels n’interagissent pas directement avec eux, mais ils sont indispensables.

Le protocole, ces règles de communication, sont indispensables dans un réseau comme l’Internet. Sans protocole, deux logiciels ne pourraient tout simplement pas communiquer, même si les câbles sont bien en place et les machines allumées. Sans protocole, les logiciels seraient dans la situation de deux humains, un Français ne parlant que français, et un Japonais ne parlant que japonais. Même si chacun a un téléphone et connaît le numéro de l’autre, aucune vraie communication ne pourra prendre place. Tout l’Internet repose donc sur cette notion de protocole.

Le protocole permet l’interopérabilité. L’interopérabilité est la capacité à communiquer de deux logiciels différents, issus d’équipes de développement différentes. Si une université bolivienne peut échanger avec une entreprise indienne, c’est parce que toutes les deux utilisent des protocoles communs.

Une prise électrique
Un exemple classique d’interopérabilité : la prise électrique. Kae [CC BY-SA 3.0 (https://creativecommons.org/licenses/by-sa/3.0)], via Wikimedia Commons
 

Seuls les protocoles ont besoin d’être communs : l’Internet n’oblige pas à utiliser les mêmes logiciels, ni à ce que les logiciels aient la même interface avec l’utilisateur. Si je prends l’exemple de deux logiciels qui parlent le protocole HTTP, le navigateur Mozilla Firefox (que vous êtes peut-être en train d’utiliser pour lire cet article) et le programme curl (utilisé surtout par les informaticiens pour des opérations techniques), ces deux logiciels ont des usages très différents, des interfaces avec l’utilisateur reposant sur des principes opposés, mais tous les deux parlent le même protocole HTTP. Le protocole, c’est ce qu’on parle avec les autres logiciels (l’interface avec l’utilisateur étant, elle, pour les humain·e·s.).

La distinction entre protocole et logiciel est cruciale. Si j’utilise le logiciel A parce que je le préfère et vous le logiciel B, tant que les deux logiciels parlent le même protocole, aucun problème, ce sera juste un choix individuel. Malgré leurs différences, notamment d’interface utilisateur, les deux logiciels pourront communiquer. Si, en revanche, chaque logiciel vient avec son propre protocole, il n’y aura pas de communication, comme dans l’exemple du Français et du Japonais plus haut.

Babel

Alors, est-ce que tous les logiciels utilisent des protocoles communs, permettant à tout le monde de communiquer avec bonheur ? Non, et ce n’est d’ailleurs pas obligatoire. L’Internet est un réseau à « permission facultative ». Contrairement aux anciennes tentatives de réseaux informatiques qui étaient contrôlés par les opérateurs téléphoniques, et qui décidaient de quels protocoles et quelles applications tourneraient sur leurs réseaux, sur l’Internet, vous pouvez inventer votre propre protocole, écrire les logiciels qui le parlent et les diffuser en espérant avoir du succès. C’est d’ailleurs ainsi qu’a été inventé le Web : Tim Berners-Lee (et Robert Cailliau) n’ont pas eu à demander la permission de qui que ce soit. Ils ont défini le protocole HTTP, ont écrit les applications et leur invention a connu le succès que l’on sait.

Cette liberté d’innovation sans permission est donc une bonne chose. Mais elle a aussi des inconvénients. Si chaque développeur ou développeuse d’applications invente son propre protocole, il n’y aura plus de communication ou, plus précisément, il n’y aura plus d’interopérabilité. Chaque utilisatrice et chaque utilisateur ne pourra plus communiquer qu’avec les gens ayant choisi le même logiciel. Certains services sur l’Internet bénéficient d’une bonne interopérabilité, le courrier électronique, par exemple. D’autres sont au contraire composés d’un ensemble de silos fermés, ne communiquant pas entre eux. C’est par exemple le cas des messageries instantanées. Chaque application a son propre protocole, les personnes utilisant WhatsApp ne peuvent pas échanger avec celles utilisant Telegram, qui ne peuvent pas communiquer avec celles qui préfèrent Signal ou Riot. Alors que l’Internet était conçu pour faciliter la communication, ces silos enferment au contraire leurs utilisateurs et utilisatrices dans un espace clos.

La situation est la même pour les réseaux sociaux commerciaux comme Facebook. Vous ne pouvez communiquer qu’avec les gens qui sont eux-mêmes sur Facebook. Les pratiques de la société qui gère ce réseau sont déplorables, par exemple en matière de captation et d’utilisation des données personnelles mais, quand on suggère aux personnes qui utilisent Facebook de quitter ce silo, la réponse la plus courante est « je ne peux pas, tou·te·s mes ami·e·s y sont, et je ne pourrais plus communiquer avec eux et elles si je partais ». Cet exemple illustre très bien les dangers des protocoles liés à une entreprise et, au contraire, l’importance de l’interopérabilité.

La tour de Babel, peinte par Pieter Bruegel
« La tour de Babel  », tableau de Pieter Bruegel l’ancien. Domaine public (Google Art Project)

 

Mais pourquoi existe-t-il plusieurs protocoles pour un même service ? Il y a différentes raisons. Certaines sont d’ordre technique. Je ne les développerai pas ici, ce n’est pas un article technique, mais les protocoles ne sont pas tous équivalents, il y a des raisons techniques objectives qui peuvent faire choisir un protocole plutôt qu’un autre. Et puis deux personnes différentes peuvent estimer qu’en fait deux services ne sont pas réellement identiques et méritent donc des protocoles séparés, même si tout le monde n’est pas d’accord.

Mais il peut aussi y avoir des raisons commerciales : l’entreprise en position dominante n’a aucune envie que des acteurs plus petits la concurrencent, et ne souhaite pas permettre à des nouveaux entrants d’arriver. Elle a donc une forte motivation à n’utiliser qu’un protocole qui lui est propre, que personne d’autre ne connaît.

Enfin, il peut aussi y avoir des raisons plus psychologiques, comme la conviction chez l·e·a créat·eur·rice d’un protocole que son protocole est bien meilleur que les autres.

Un exemple d’un succès récent en termes d’adoption d’un nouveau protocole est donné par le fédivers. Ce terme, contraction de « fédération » et « univers » (et parfois écrit « fédiverse » par anglicisme) regroupe tous les serveurs qui échangent entre eux par le protocole ActivityPub, que l’appel des soixante-neuf organisations mentionne comme exemple. ActivityPub permet d’échanger des messages très divers. Les logiciels Mastodon et Pleroma se servent d’ActivityPub pour envoyer de courts textes, ce qu’on nomme du micro-blogging (ce que fait Twitter). PeerTube utilise ActivityPub pour permettre de voir les nouvelles vidéos et les commenter. WriteFreely fait de même avec les textes que ce logiciel de blog permet de rédiger et diffuser. Et, demain, Mobilizon utilisera ActivityPub pour les informations sur les événements qu’il permettra d’organiser. Il s’agit d’un nouvel exemple de la distinction entre protocole et logiciel. Bien que beaucoup de gens appellent le fédivers  « Mastodon », c’est inexact. Mastodon n’est qu’un des logiciels qui permettent l’accès au fédivers.

Le terme d’ActivityPub n’est d’ailleurs pas idéal. Il y a en fait un ensemble de protocoles qui sont nécessaires pour communiquer au sein du fédivers. ActivityPub n’est que l’un d’entre eux, mais il a un peu donné son nom à l’ensemble.

Tous les logiciels de la mouvance des « réseaux sociaux décentralisés » n’utilisent pas ActivityPub. Par exemple,  Diaspora ne s’en sert pas et n’est donc pas interopérable avec les autres.

Appel

Revenons maintenant l’appel cité au début, Que demande-t-il ? Cet appel réclame que l’interopérabilité soit imposée aux GAFA, ces grosses entreprises capitalistes qui sont en position dominante dans la communication. Tous sont des silos fermés. Aucun moyen de commenter une vidéo YouTube si on a un compte PeerTube, de suivre les messages sur Twitter ou Facebook si on est sur le fédivers. Ces GAFA ne changeront pas spontanément : il faudra les y forcer.

Il ne s’agit que de la communication externe. Cet appel est modéré dans le sens où il ne demande pas aux GAFA de changer leur interface utilisateur, ni leur organisation interne, ni leurs algorithmes de sélection des messages, ni leurs pratiques en matière de gestion des données personnelles. Il s’agit uniquement d’obtenir qu’ils permettent l’interopérabilité avec des services concurrents, de façon à permettre une réelle liberté de choix par les utilisateurs. Un tel ajout est simple à implémenter pour ces entreprises commerciales, qui disposent de fonds abondants et de nombreu·ses-x programmeur·e·s compétent·e·s. Et il « ouvrirait » le champ des possibles. Il s’agit donc de défendre les intérêts des utilisateurs et utilisatrices. (Alors que le gouvernement, dans ses commentaires, n’a cité que les intérêts des GAFA, comme si ceux-ci étaient des espèces menacées qu’il fallait défendre.)

Qui commande ?

Mais au fait, qui décide des protocoles, qui les crée ? Il n’y a pas de réponse simple à cette question. Il existe plein de protocoles différents et leurs origines sont variées. Parfois, ils sont rédigés, dans un texte qui décrit exactement ce que doivent faire les deux parties. C’est ce que l’on nomme une spécification. Mais parfois il n’y a pas vraiment de spécification, juste quelques vagues idées et un programme qui utilise ce protocole. Ainsi, le protocole BitTorrent, très utilisé pour l’échange de fichiers, et pour lequel il existe une très bonne interopérabilité, avec de nombreux logiciels, n’a pas fait l’objet d’une spécification complète. Rien n’y oblige développeurs et développeuses : l’Internet est « à permission facultative ». Dans de tels cas, celles et ceux qui voudraient créer un programme interopérable devront lire le code source (les instructions écrites par le ou la programmeur·e) ou analyser le trafic qui circule, pour essayer d’en déduire en quoi consiste le protocole (ce qu’on nomme la rétro-ingénierie). C’est évidemment plus long et plus difficile et il est donc très souhaitable, pour l’interopérabilité, qu’il existe une spécification écrite et correcte (il s’agit d’un exercice difficile, ce qui explique que certains protocoles n’en disposent pas).

Parfois, la spécification est adoptée formellement par un organisme dont le rôle est de développer et d’approuver des spécifications. C’est ce qu’on nomme la normalisation. Une spécification ainsi approuvée est une norme. L’intérêt d’une norme par rapport à une spécification ordinaire est qu’elle reflète a priori un consensus assez large d’une partie des acteurs, ce n’est plus un acte unilatéral. Les normes sont donc une bonne chose mais, rien n’étant parfait, leur développement est parfois laborieux et lent.

Manuscrit médiéval montrant un moine écrivant
Écrire des normes correctes et consensuelles peut être laborieux. Codex Bodmer – Frater Rufillus (wohl tätig im Weißenauer Skriptorium) [Public domain]
 

Toutes les normes ne se valent pas. Certaines sont publiquement disponibles (comme les normes importantes de l’infrastructure de l’Internet, les RFC – Request For Comments), d’autres réservées à ceux qui paient, ou à ceux qui sont membres d’un club fermé. Certaines normes sont développées de manière publique, où tout le monde a accès aux informations, d’autres sont créées derrière des portes soigneusement closes. Lorsque la norme est développée par une organisation ouverte à tous et toutes, selon des procédures publiques, et que le résultat est publiquement disponible, on parle souvent de normes ouvertes. Et, bien sûr, ces normes ouvertes sont préférables pour l’interopérabilité.

L’une des organisations de normalisation ouverte les plus connues est l’IETF (Internet Engineering Task Force, qui produit notamment la majorité des RFC). L’IETF a développé et gère la norme décrivant le protocole HTTP, le premier cité dans cet article. Mais d’autres organisations de normalisation existent comme le W3C (World-Wide Web Consortium) qui est notamment responsable de la norme ActivityPub.

Par exemple, pour le cas des messageries instantanées que j’avais citées, il y a bien une norme, portant le doux nom de XMPP (Extensible Messaging and Presence Protocol). Google l’utilisait, puis l’a abandonnée, jouant plutôt le jeu de la fermeture.

Difficultés

L’interopérabilité n’est évidemment pas une solution magique à tous les problèmes. On l’a dit, l’appel des soixante-neuf organisations est très modéré puisqu’il demande seulement une ouverture à des tiers. Si cette demande se traduisait par une loi obligeant à cette interopérabilité, tout ne serait pas résolu.

D’abord, il existe beaucoup de moyens pour respecter la lettre d’un protocole tout en violant son esprit. On le voit pour le courrier électronique où Gmail, en position dominante, impose régulièrement de nouvelles exigences aux serveurs de messagerie avec lesquels il daigne communiquer. Le courrier électronique repose, contrairement à la messagerie instantanée, sur des normes ouvertes, mais on peut respecter ces normes tout en ajoutant des règles. Ce bras de fer vise à empêcher les serveurs indépendants de communiquer avec Gmail. Si une loi suivant les préconisations de l’appel était adoptée, nul doute que les GAFA tenteraient ce genre de jeu, et qu’il faudrait un mécanisme de suivi de l’application de la loi.

Plus subtil, l’entreprise qui voudrait « tricher » avec les obligations d’interopérabilité peut aussi prétendre vouloir « améliorer » le protocole. On ajoute deux ou trois choses qui n’étaient pas dans la norme et on exerce alors une pression sur les autres organisations pour qu’elles aussi ajoutent ces fonctions. C’est un exercice que les navigateurs web ont beaucoup pratiqué, pour réduire la concurrence.

Jouer avec les normes est d’autant plus facile que certaines normes sont mal écrites, laissant trop de choses dans le vague (et c’est justement le cas d’ActivityPub). Écrire une norme est un exercice difficile. Si on laisse beaucoup de choix aux programmeuses et programmeurs qui créeront les logiciels, il y a des risques de casser l’interopérabilité, suite à des choix trop différents. Mais si on contraint ces programmeuses et programmeurs, en imposant des règles très précises pour tous les détails, on empêche les logiciels d’évoluer en réponse aux changements de l’Internet ou des usages. La normalisation reste donc un art difficile, pour lequel on n’a pas de méthode parfaite.

Conclusion

Voilà, désolé d’avoir été long, mais les concepts de protocole et d’interopérabilité sont peu enseignés, alors qu’ils sont cruciaux pour le fonctionnement de l’Internet et surtout pour la liberté des citoyen·ne·s qui l’utilisent. J’espère les avoir expliqués clairement, et vous avoir convaincu⋅e de l’importance de l’interopérabilité. Pensez à soutenir l’appel des soixante-neuf organisations !

Après

Et si vous voulez d’autres informations sur ce sujet, il y a :




La Fée diverse déploie ses ailes

Il n’est pas si fréquent que l’équipe Framalang traduise un article depuis la langue italienne, mais la récapitulation bien documentée de Cagizero était une bonne occasion de faire le point sur l’expansion de la Fediverse, un phénomène dont nous nous réjouissons et que nous souhaitons voir gagner plus d’amplitude encore, tant mieux si l’article ci-dessous est très lacunaire dans un an !

Article original : Mastodon, il Fediverso ed il futuro decentrato delle reti sociali

Traduction Framalang : alainmi, Ezelty, goofy, MO

Mastodon, la Fediverse et l’avenir des réseaux décentralisés

par Cagizero

Peu de temps après une première vue d’ensemble de Mastodon il est déjà possible d’ajouter quelques observations nouvelles.

Tout d’abord, il faut noter que plusieurs personnes familières de l’usage des principaux médias sociaux commerciaux (Facebook, Twitter, Instagram…) sont d’abord désorientées par les concepts de « décentralisation » et de « réseau fédéré ».

En effet, l’idée des médias sociaux qui est répandue et bien ancrée dans les esprits est celle d’un lieu unique, indifférencié, monolithique, avec des règles et des mécanismes strictement identiques pour tous. Essentiellement, le fait même de pouvoir concevoir un univers d’instances séparées et indépendantes représente pour beaucoup de gens un changement de paradigme qui n’est pas immédiatement compréhensible.

Dans un article précédent où était décrit le média social Mastodon, le concept d’instance fédérée était comparé à un réseau de clubs ou cercles privés associés entre eux.

Certains aspects exposés dans l’article précédent demandent peut-être quelques éclaircissements supplémentaires pour celles et ceux qui abordent tout juste le concept de réseau fédéré.

1. On ne s’inscrit pas « sur Mastodon », mais on s’inscrit à une instance de Mastodon ! La comparaison avec un club ou un cercle s’avère ici bien pratique : adhérer à un cercle permet d’entrer en contact avec tous ceux et celles qui font partie du même réseau : on ne s’inscrit pas à une plateforme, mais on s’inscrit à l’un des clubs de la plateforme qui, avec les autres clubs, constituent le réseau. La plateforme est un logiciel, c’est une chose qui n’existe que virtuellement, alors qu’une instance qui utilise une telle plateforme en est l’aspect réel, matériel. C’est un serveur qui est physiquement situé quelque part, géré par des gens en chair et en os qui l’administrent. Vous vous inscrivez donc à une instance et ensuite vous entrez en contact avec les autres.

2. Les diverses instances ont la possibilité technique d’entrer en contact les unes avec les autres mais ce n’est pas nécessairement le cas. Supposons par exemple qu’il existe une instance qui regroupe 500 utilisateurs et utilisatrices passionné⋅e⋅s de littérature, et qui s’intitule mastodon.litterature : ces personnes se connaissent précisément parce en tant que membres de la même instance et chacun⋅e reçoit les messages publics de tous les autres membres.
Eh bien, chacun d’entre eux aura probablement aussi d’autres contacts avec des utilisateurs enregistrés sur difFerentes instances (nous avons tous des ami⋅e⋅s qui ne font pas partie de notre « cercle restreint », n’est-ce pas ?). Si chacun des 500 membres de maston.litterature suit par exemple 10 membres d’une autre instance, mastodon.litterature aurait un réseau local de 500 utilisateurs, mais aussi un réseau fédéré de 5000 utilisateurs !
Bien. Supposons que parmi ces 5000 il n’y ait même pas un seul membre de l’instance japonaise japan.nuclear.physics dont le thème est la physique nucléaire : cette autre instance pourrait avoir peut-être 800 membres et avoir un réseau fédéré de plus de 8000 membres, mais si entre les réseaux « littérature » et « physique nucléaire » il n’y avait pas un seul ami en commun, ses membres ne pourraient en théorie jamais se contacter entre eux.
En réalité, d’après la loi des grands nombres, il est assez rare que des instances d’une certaine taille n’entrent jamais en contact les unes avec les autres, mais l’exemple sert à comprendre les mécanismes sur lesquels repose un réseau fédéré (ce qui, en se basant justement sur la loi des grands nombres et les principes des degrés de séparation, confirme au contraire l’hypothèse que plus le réseau est grand, moins les utilisateurs et instances seront isolés sur une seule instance).

3. Chaque instance peut décider volontairement de ne pas entrer en contact avec une autre, sur la base des choix, des règles et politiques internes qui lui sont propres. Ce point est évidemment peu compris des différents commentateurs qui ne parviennent pas à sortir de l’idée du « réseau social monolithique ». S’il y avait sur Mastodon une forte concentration de suprémacistes blancs en deuil de Gab, ou de blogueurs porno en deuil de Tumblr, cela ne signifie pas que ce serait l’ensemble du réseau social appelé Mastodon qui deviendrait un « réseau social pour suprémacistes blancs et porno », mais seulement quelques instances qui n’entreraient probablement jamais en contact avec des instances antifascistes ou ultra-religieuses. Comme il est difficile de faire comprendre un tel concept, il est également difficile de faire comprendre les potentialités d’une structure de ce type. Dans un réseau fédéré, une fois donnée la possibilité technique d’interagir entre instances et utilisateurs, chaque instance et chaque utilisateur peut ensuite choisir de façon indépendante l’utilisation qui en sera faite.

Supposons qu’il existe par exemple :

  • Une instance écologiste, créée, maintenue et soutenue financièrement par un groupe de passionnés qui veulent avoir un lieu où échanger sur la nature et l’écologie, qui pose comme principe qu’on n’y poste ni liens externes ni images pornographiques.
  • Une instance commerciale, créée par une petite entreprise qui dispose d’un bon serveur et d’une bande passante très confortable, et celui ou celle qui s’y inscrit en payant respecte les règles fixées auparavant par l’entreprise elle-même.
  • Une instance sociale, créée par un centre social et dont les utilisateurs sont surtout les personnes qui fréquentent ledit centre et se connaissent aussi personnellement.
  • Une instance vidéoludique, qui était à l’origine une instance interne des employés d’une entreprise de technologie mais qui dans les faits est ouverte à quiconque s’intéresse aux jeux vidéos.

Avec ce scénario à quatre instances, on peut déjà décrire quelques interactions intéressantes : l’instance écologiste pourrait consulter ses utilisateurs et utilisatrices et décider de bannir l’instance commerciale au motif qu’on y diffuse largement une culture contraire à l’écologie, tandis que l’instance sociale pourrait au contraire maintenir le lien avec l’instance commerciale tout en choisissant préventivement de la rendre muette dans son propre fil, laissant le choix personnel à ses membres d’entrer ou non en contact avec les membres de l’instance commerciale. Cependant, l’instance sociale pourrait bannir l’instance de jeu vidéo à cause de la mentalité réactionnaire d’une grande partie de ses membres.

En somme, les contacts « insupportables/inacceptables » sont spontanément limités par les instances sur la base de leurs différentes politiques. Ici, le cadre d’ensemble commence à devenir très complexe, mais il suffit de l’observer depuis une seule instance, la nôtre, pour en comprendre les avantages : les instances qui accueillent des trolls, des agitateurs et des gens avec qui on n’arrive vraiment pas à discuter, nous les avons bannies, alors que celles avec lesquelles on n’avait pas beaucoup d’affinités mais pas non plus de motif de haine, nous les avons rendues muettes. Ainsi, si quelqu’un parmi nous veut les suivre, il n’y a pas de problème, mais ce sera son choix personnel.

4. Chaque utilisateur peut décider de rendre muets d’autres utilisateurs, mais aussi des instances entières. Si vous voulez particulièrement éviter les contenus diffusés par les utilisateurs et utilisatrices d’une certaine instance qui n’est cependant pas bannie par l’instance qui vous accueille (mettons que votre instance ne ferme pas la porte à une instance appelée meme.videogamez.lulz, dont la communauté tolère des comportements excessifs et une ambiance de moquerie  lourde que certains trouvent néanmoins amusante), vous êtes libres de la rendre muette pour vous seulement. En principe, en présence de groupes d’utilisateurs indésirables venant d’une même instance/communauté, il est possible de bloquer plusieurs dizaines ou centaines d’utilisateurs à la fois en bloquant (pour vous) l’instance entière. Si votre instance n’avait pas un accord unanime sur la manière de traiter une autre instance, vous pourriez facilement laisser le choix aux abonnés qui disposent encore de ce puissant outil. Une instance peut également choisir de modérer seulement ses utilisateurs ou de ne rien modérer du tout, laissant chaque utilisateur complètement libre de faire taire ou d’interdire qui il veut sans jamais interférer ou imposer sa propre éthique.

La Fediverse

symbole coloré de la fédération, comme un hexagone dont chaque sommet est relié aux autres, en étoile.
logo de la Fediverse

 

Maintenant que nous nous sommes mieux concentrés sur ces aspects, nous pouvons passer à l’étape suivante. Comme déjà mentionné dans le post précédent, Mastodon fait partie de quelque chose de plus vaste appelé la Fediverse (Fédération + Univers).

En gros, Mastodon est un réseau fédéré qui utilise certains outils de communication (il existe plusieurs protocoles mais les principaux sont ActivityPub, Ostatus et Diaspora*, chacun ayant ses avantages, ses inconvénients, ses partisans et ses détracteurs), utilisés aussi par et d’autres réalités fédérées (réseaux sociaux, plateformes de blogs, etc.) qui les mettent en contact pour former une galaxie unique de réseaux fédérés.

Pour vous donner une idée, c’est comme si Mastodon était un système planétaire qui tourne autour d’une étoile (Mastodon est l’étoile et chaque instance est une planète), cependant ce système planétaire fait partie d’un univers dans lequel existent de nombreux systèmes planétaires tous différents mais qui communiquent les uns avec les autres.

Toutes les planètes d’un système planétaire donné (les instances, comme des « clubs ») tournent autour d’un soleil commun (la plate-forme logicielle). L’utilisateur peut choisir la planète qu’il préfère mais il ne peut pas se poser sur le soleil : on ne s’inscrit pas à la plateforme, mais on s’inscrit à l’un des clubs qui, avec tous les autres, forme le réseau.

Dans cet univers, Mastodon est tout simplement le « système planétaire » le plus grand (celui qui a le plus de succès et qui compte le plus grand nombre d’utilisateurs) mais il n’est pas certain qu’il en sera toujours ainsi : d’autres « systèmes planétaires » se renforcent et grandissent.

[NB : chaque plate-forme évoquée ici utilise ses propres noms pour définir les serveurs indépendants sur lesquels elle est hébergée. Mastodon les appelle instances, Hubzilla les appelle hubs et Diaspora* les appelle pods. Toutefois, par souci de simplicité et de cohérence avec l’article précédent, seul le terme « instance » sera utilisé pour tous dans l’article]

La structure d’ensemble de la Fediverse

Les interactions de Mastodon avec les autres médias

Sur Kumu.io on peut trouver une représentation interactive de la Fediverse telle qu’elle apparaît actuellement. Chaque « nœud » représente un réseau différent (ou « système planétaire »). Ce sont les différentes plateformes qui composent la fédération. Mastodon n’est que l’une d’entre elles, la plus grande, en bas au fond. Sur la capture d’écran qui illustre l’article, Mastodon est en bas.

En sélectionnant Mastodon il est possible de voir avec quels autres médias ou systèmes de la Fediverse il est en mesure d’interagir. Comme on peut le voir, il interagit avec la plupart des autres médias mais pas tout à fait avec tous.

Les interactions de Gnu social avec les autres médias

En sélectionnant un autre réseau social comme GNU Social, on observe qu’il a différentes interactions : il en partage la majeure partie avec Mastodon mais il en a quelques-unes en plus et d’autres en moins.

Cela dépend principalement du type d’outils de communication (protocoles) que chaque média particulier utilise. Un média peut également utiliser plus d’un protocole pour avoir le plus grand nombre d’interactions, mais cela rend évidemment leur gestion plus complexe. C’est, par exemple, la voie choisie par Friendica et GNU Social.

En raison des différents protocoles utilisés, certains médias ne peuvent donc pas interagir avec tous les autres. Le cas le plus important est celui de Diaspora*, qui utilise son propre protocole (appelé lui aussi Diaspora), qui ne peut interagir qu’avec Friendica et Gnu Social mais pas avec des médias qui reposent sur ActivityPub tels que Mastodon.

Au sein de la Fediverse, les choses sont cependant en constante évolution et l’image qui vient d’être montrée pourrait avoir besoin d’être mise à jour prochainement. En ce moment, la plupart des réseaux semblent s’orienter vers l’adoption d’ActivityPub comme outil unique. Ce ne serait pas mal du tout d’avoir un seul protocole de communication qui permette vraiment tout type de connexion !

Mais revenons un instant à l’image des systèmes planétaires. Kumu.io montre les connexions techniquement possibles entre tous les « systèmes planétaires » et, pour ce faire, relie génériquement les différents soleils. Mais comme nous l’avons bien vu, les vraies connexions ont lieu entre les planètes et non entre les soleils ! Une carte des étoiles montrant les connexions réelles devrait montrer pour chaque planète (c’est-à-dire chaque « moustache » des nœuds de Kum.io), des dizaines ou des centaines de lignes de connexion avec autant de planètes/moustaches, à la fois entre instances de sa plateforme et entre instances de différentes plateformes ! La quantité et la complexité des connexions, comme on peut l’imaginer, formeraient un enchevêtrement qui donnerait mal à la tête serait graphiquement illisible. Le simple fait de l’imaginer donne une idée de la quantité et de la complexité des connexions possibles.

Et cela ne s’arrête pas là : chaque planète peut établir ou interrompre ses contacts avec les autres planètes de son système solaire (c’est-à-dire que l’instance Mastodon A peut décider de ne pas avoir de contact avec l’instance Mastodon B), et de la même manière elle peut établir ou interrompre les contacts avec des planètes de différents systèmes solaires (l’instance Mastodon A peut établir ou interrompre des contacts avec l’instance Pleroma B). Pour donner un exemple radical, nous pouvons supposer que nous avons des cousins qui sont des crétins, mais d’authentiques crétins, que nous avons chassés de notre planète (mastodon.terre) et qu’ensuite ils ont construit leur propre instance (mastodon.saturne) dans notre voisinage parce que ben, ils aiment bien notre soleil « Mastodon ». Nous décidons de nous ignorer les uns les autres tout de suite. Ces cousins, cependant, sont tellement crétins que même nos parents et amis proches des planètes voisines (mastodon.jupiter, mastodon.venus, etc.) ignorent les cousins crétins de mastodon.saturne.

Aucune planète du système Mastodon ne les supporte. Les cousins, cependant, ne sont pas entièrement sans relations et, au contraire, ils ont beaucoup de contacts avec les planètes d’autres systèmes solaires. Par exemple, ils sont en contact avec certaines planètes du système planétaire PeeeTube: peertube.10287, peertube.chatons, peertube.anime, mais aussi avec pleroma.pizza du système Pleroma et friendica.jardinage du système Friendica. En fait, les cousins crétins sont d’accord pour vivre sur leur propre petite planète dans le système Mastodon, mais préfèrent avoir des contacts avec des planètes de systèmes différents.

Nous qui sommes sur mastodon.terre, nous ne nous soucions pas moins des planètes qui leur sont complaisantes : ce sont des crétins tout autant que nos cousins et nous les avons bloquées aussi. Sauf un. Sur pleroma.pizza, nous avons quelques ami⋅e⋅s qui sont aussi des ami⋅e⋅s de certains cousins crétins de mastodon.saturne. Mais ce n’est pas un problème. Oh que non ! Nous avons des connexions interstellaires et nous devrions nous inquiéter d’une chose pareille ? Pas du tout ! Le blocage que nous avons activé sur mastodon.saturne est une sorte de barrière énergétique qui fonctionne dans tout le cosmos ! Si nous étions impliqués dans une conversation entre un ami de pleroma.pizza et un cousin de mastodon.saturne, simplement, ce dernier ne verrait pas ce qui sort de notre clavier et nous ne verrions pas ce qui sort du sien. Chacun d’eux saura que l’autre est là, mais aucun d’eux ne pourra jamais lire l’autre. Bien sûr, nous pourrions déduire quelque chose de ce que notre ami commun de pleroma.pizza dira, mais bon, qu’est-ce qu’on peut en espérer ? 😉

Cette image peut donner une idée de la façon dont les instances (planètes) se connectent entre elles. Si l’on considère qu’il existe des milliers d’instances connues de la Fediverse, on peut imaginer la complexité de l’image. Un aspect intéressant est le fait que les connexions entre une instance et une autre ne dépendent pas de la plateforme utilisée. Sur l’image on peut voir l’instance mastodon.mercure : c’est une instance assez isolée par rapport au réseau d’instances Mastodon, dont les seuls contacts sont mastodon.neptune, peertube.chatons et pleroma.pizza. Rien n’empêche mastodon.mercure de prendre connaissance de toutes les autres instances de Mastodon non par des échanges de messages avec mastodon.neptune, mais par des commentaires sur les vidéos de peertube.chatons. En fait, c’est d’autant plus probable que mastodon.neptune n’est en contact qu’avec trois autres instances Mastodon, alors que peertube.chatons est en contact avec toutes les instances Mastodon.

Essayer d’imaginer comment les différentes instances de cette image qui « ne se connaissent pas » peuvent entrer en contact nous permet d’avoir une idée plus précise du niveau de complexité qui peut être atteint. Dans un système assez grand, avec un grand nombre d’utilisateurs et d’instances, isoler une partie de celui-ci ne compromettra en aucune façon la richesse des connexions possibles.
Une fois toutes les connexions possibles créées, il est également possible de réaliser une expérience différente, c’est-à-dire d’imaginer interrompre des connexions jusqu’à la formation de deux ou plusieurs réseaux parfaitement séparés, contenant chacune des instances Mastodon, Pleroma et Peertube.

Et pour ajouter encore un degré de complexité, on peut faire encore une autre expérience, en raisonnant non plus à l’échelle des instances mais à celle des utilisateurs⋅rices individuel⋅le⋅s des instances (faire l’hypothèse de cinq utilisateurs⋅rices par instance pourrait suffire pour recréer les différentes situations). Quelques cas qu’on peut imaginer :

1) Nous sommes sur une instance de Mastodon et l’utilisatrice Anna vient de découvrir par le commentaire d’une vidéo sur Peertube l’existence d’une nouvelle instance de Pleroma, donc maintenant elle connaît son existence mais, choisissant de ne pas la suivre, elle ne fait pas réellement connaître sa découverte aux autres membres de son instance.

2) Sur cette même instance de Mastodon l’utilisateur Ludo bloque la seule instance Pleroma connue. Conséquence : si cette instance Pleroma devait faire connaître d’autres instances Pleroma avec lesquelles elle est en contact, Ludo devrait attendre qu’un autre membre de son instance les fasse connaître, car il s’est empêché lui-même d’être parmi les premiers de son instance à les connaître.

3) En fait, la première utilisatrice de l’instance à entrer en contact avec les autres instances Pleroma sera Marianne. Mais elle ne les connaît pas de l’instance Pleroma (celle que Ludo a bloquée) avec laquelle ils sont déjà en contact, mais par son seul contact sur GNU Social.

Cela semble un peu compliqué mais en réalité ce n’est rien de plus qu’une réplique de mécanismes humains auxquels nous sommes tellement habitué⋅e⋅s que nous les tenons pour acquis. On peut traduire ainsi les différents exemples qui viennent d’être exposés :

1) Notre amie Anna, habituée de notre bar, rencontre dans la rue une personne qui lui dit fréquenter un nouveau bar dans une ville proche. Mais Anna n’échange pas son numéro de téléphone avec le type et elle ne pourra donc pas donner d’informations à ses amis dans son bar sur le nouveau bar de l’autre ville.

2) Dans le bar habituel, Ludo de Nancy évite Laura de Metz. Quand Laura amène ses autres amies Solène et Louise de Metz au bar, elle ne les présente pas à Ludo. Ce n’est que plus tard que les amis du bar, devenus amis avec Solène et Louise, pourront les présenter à Ludo indépendamment de Laura.

3) En réalité Marianne avait déjà rencontré Solène et Louise, non pas grâce à Laura, mais grâce à Stéphane, son seul ami à Villers.

Pour avoir une idée de l’ampleur de la Fediverse, vous pouvez jeter un coup d’œil à plusieurs sites qui tentent d’en fournir une image complète. Outre Kumu.io déjà mentionné, qui essaie de la représenter avec une mise en page graphique élégante qui met en évidence les interactions, il y a aussi Fediverse.network qui essaie de lister chaque instance existante en indiquant pour chacune d’elles les protocoles utilisés et le statut du service, ou Fediverse.party, qui est un véritable portail où choisir la plate-forme à utiliser et à laquelle s’enregistrer. Switching.software, une page qui illustre toutes les alternatives gratuites aux médias sociaux et propriétaires, indique également quelques réseaux fédérés parmi les alternatives à Twitter et Facebook.

Pour être tout à fait complet : au début, on avait tendance à diviser tout ce mégaréseau en trois « univers » superposés : celui de la « Fédération » pour les réseaux reposant sur le protocole Diaspora, La « Fediverse » pour ceux qui utilisent Ostatus et « ActivityPub » pour ceux qui utilisent… ActivityPub. Aujourd’hui, au contraire, ils sont tous considérés comme faisant partie de la Fediverse, même si parfois on l’appelle aussi la Fédération.

Tant de réseaux…

Examinons donc les principales plateformes/réseaux et leurs différences. Petites précisions : certaines de ces plateformes sont pleinement actives alors que d’autres sont à un stade de développement plus ou moins avancé. Dans certains cas, l’interaction entre les différents réseaux n’est donc pas encore pleinement fonctionnelle. De plus, en raison de la nature libre et indépendante des différents réseaux, il est possible que des instances apportent des modifications et des personnalisations « non standard » (un exemple en est la limite de caractères sur Mastodon : elle est de 500 caractères par défaut, mais une instance peut décider de définir la limite qu’elle veut ; un autre exemple est l’utilisation des fonctions de mise en favori ou de partage, qu’une instance peut autoriser et une autre interdire). Dans ce paragraphe, ces personnalisations et différences ne sont pas prises en compte.

Mastodon (semblable à : Twitter)

Copie d’écran, une instance de Mastodon, Framapiaf

Mastodon est une plateforme de microblogage assez semblable à Twitter parce qu’elle repose sur l’échange de messages très courts. C’est le réseau le plus célèbre de la Fediverse. Il est accessible sur smartphone à travers un certain nombre d’applications tant pour Android que pour iOS. Un de ses points forts est le design bien conçu et le fait qu’il a déjà un « parc d’utilisateurs⋅rices » assez conséquent (presque deux millions d’utilisateurs⋅rices dans le monde, dont quelques milliers en France). En version bureau, il se présente comme une série de colonnes personnalisables, qui montrent les différents « fils », sur le modèle de Tweetdeck. Pour le moment, Mastodon est la seule plateforme sociale fédérée accessible par des applications sur Android et iOS.

Pleroma (semblable à : Twitter et DeviantArt)

Copie d’écran, Pleroma

Pleroma est le réseau « sœur » de Mastodon : fondamentalement, c’est la même chose dans deux versions un peu différentes. Pleroma offre quelques fonctionnalités supplémentaires concernant la gestion des images et permet par défaut des messages plus longs. À la différence de Mastodon, Pleroma montre en version bureau une colonne unique avec le fil sélectionné, ce qui le rend beaucoup plus proche de Twitter. Actuellement, de nombreuses instances Pleroma ont un grand nombre d’utilisateurs⋅rices qui s’intéressent à l’illustration et au manga, ce qui, comme ambiance, peut vaguement rappeler l’ambiance de DeviantArt. Les applications pour smartphone de Mastodon peuvent également être utilisées pour accéder à Pleroma.

Misskey (semblable à : un mélange entre Twitter et DeviantArt)

Copie d’écran, Misskey

Misskey est une sorte de Twitter qui tourne principalement autour d’images. Il offre un niveau de personnalisation supérieur à Mastodon et Pleroma, et une plus grande attention aux galeries d’images. C’est une plateforme qui a eu du succès au Japon et parmi les passionnés de manga (et ça se voit !).

Friendica (semblable à : Facebook)

Friendica est un réseau extrêmement intéressant. Il reprend globalement la structure graphique de Facebook (avec les ami⋅e⋅s, les notifications, etc.), mais il permet également d’interagir avec plusieurs réseaux commerciaux qui ne font pas partie de la Fediverse. Il est donc possible de connecter son compte Friendica à Facebook, Twitter, Tumblr, WordPress, ainsi que de générer des flux RSS, etc. Bref, Friendica se présente comme une sorte de nœud pour diffuser du contenu sur tous les réseaux disponibles, qu’ils soient fédérés ou non. En somme, Friendica est le passe-partout de la Fediverse : une instance Friendica au maximum de ses fonctions se connecte à tout et dialogue avec tout le monde.

Osada (semblable à : un mélange entre Twitter et Facebook)

Image animée, réponse à un commentaire sur Osada

Osada est un autre réseau dont la configuration peut faire penser à un compromis entre Twitter et Facebook. De toutes les plateformes qui rappellent Facebook, c’est celle dont le design est le plus soigné.

GNUsocial (semblable à : un mélange entre Twitter et Facebook)

Copie d’écran : GNUsocial avec une interface en suédois.

GNUsocial est un peu le « grand-père » des médias sociaux listés ici, en particulier de Friendica et d’Osada, dont il est le prédécesseur.

Aardwolf (semblable à : Twitter, éventuellement)

 

Copie d’écran : logo et slogan d’Aardwolf

Aardwolf n’est pas encore prêt, mais il est annoncé comme une sorte d’alternative à Twitter. On attend de voir.

 

PeerTube (semblable à : YouTube)

Capture d’écran, une instance de PeerTube, aperi.tube

PeerTube est le réseau fédéré d’hébergement de vidéo vraiment, mais vraiment très semblable à YouTube, Vimeo et d’autres services de ce genre. Avec un catalogue en cours de construction, Peertube apparaît déjà comme un projet très solide.

Pixelfed (semblable à : Instagram)

Copie d’écran, Pixelfed

Pixelfed est essentiellement l’Instagram de la Fédération. Il est en phase de développement mais semble être plutôt avancé. Il lui manque seulement des applications pour smartphone pour être adopté à la place d’Instagram. Pixelfed a le potentiel pour devenir un membre extrêmement important de la Fédération !

NextCloud (semblable à : iCloud, Dropbox, GDrive)

Logo de Owncloud

NextCloud, né du projet plus ancien ownCloud, est un service d’hébergement de fichiers assez semblable à Dropbox. Tout le monde peut faire tourner NextCloud sur son propre serveur. NextCloud offre également des services de partage de contacts (CardDAV) ou de calendriers (CalDAV), de streaming de médias, de marque-page, de sauvegarde, et d’autres encore. Il tourne aussi sur Window et OSX et est accessible sur smartphone à travers des applications officielles. Il fait partie de la Fediverse dans la mesure où il utilise ActivityPub pour communiquer différentes informations à ses utilisateurs, comme des changements dans les fichiers, les activités du calendrier, etc.

Diaspora* (semblable à : Facebook, et aussi un peu Tumblr)

Copie d’écran, un « pod » de Diaspora*, Framasphere

Diaspora* est un peu le « cousin » de la Fediverse. Il fonctionne avec un protocole bien à lui et dialogue avec le reste de la Fediverse principalement via GNU social et Friendica, le réseau passe-partout, même s’il semble qu’il circule l’idée de faire utiliser à Diaspora* (l’application) aussi bien son propre protocole qu’ActivityPub. Il s’agit d’un grand et beau projet, avec une base solide d’utilisateurs⋅rices fidèles. Au premier abord, il peut faire penser à une version extrêmement minimaliste de Facebook, mais son attention aux images et son système intéressant d’organisation des posts par tag permet également de le comparer, d’une certaine façon, à Tumblr.

Funkwhale (semblable à : SoundCloud et Grooveshark)

Copie d’écran, Funkwhale

Funkwhale ressemble à SoundCloud, Grooveshark et d’autre services semblables. Comme une sorte de YouTube pour l’audio, il permet de partager des pistes audio mais au sein d’un réseau fédéré. Avec quelques fonctionnalités en plus, il pourrait devenir un excellent service d’hébergement de podcasts audio.

Plume, Write Freely et Write.as (plateformes de blog)

Copie d’écran, Write freely

Plume, Write Freely et Write.as sont des plateformes de blog assez minimalistes qui font partie de la Fédération. Elles n’ont pas toute la richesse, les fonctions, les thèmes et la personnalisation de WordPress ou de Blogger, mais elles font leur travail avec légèreté.

Hubzilla (semblable à : …TOUT !!)

Page d’accueil de Hubzilla

Hubzilla est un projet très riche et complexe qui permet de gérer aussi bien des médias sociaux que de l’hébergement de fichiers, des calendriers partagés, de l’hébergement web, et le tout de manière décentralisée. En bref, Hubzilla se propose de faire tout à la fois ce que font plusieurs des services listés ici. C’est comme avoir une seule instance qui fait à la fois Friendica, Peertube et NextCloud. Pas mal ! Un projet à surveiller !

GetTogether (semblable à : MeetUp)

Copie d’écran, GetTogether

GetTogether est une plateforme servant à planifier des événements. Semblable à MeetUp, elle sert à mettre en relation des personnes différentes unies par un intérêt commun, et à amener cet intérêt dans le monde réel. Pour le moment, GetTogether ne fait pas encore partie de la Fediverse, mais il est en train de mettre en place ActivityPub et sera donc bientôt des nôtres.

Mobilizon (semblable à : MeetUp)


Mobilizon est une nouvelle plateforme en cours de développement, qui se propose comme une alternative libre à MeetUp et à d’autres logiciels servant à organiser des réunions et des rencontres en tout genre. Dès le départ, le projet naît avec l’intention d’utiliser ActivityPub et de faire partie de la Fediverse, en conformité avec les valeurs de Framasoft, association française née avec l’objectif de diffuser l’usage des logiciels libres et des réseaux décentralisés. Voir la présentation de Mobilizon en italien.

Plugin ActivityPub pour WordPress

Plugin activityPub pour WordPress

On trouve plusieurs plugins pour WordPress qui en font un membre à part entière de la Fédération ! Il existe également des plugins comme Mastodon AutoPost, Mastodon Auto Share, mais aussi Mastodon Embed, Ostatus for WordPress, Pterotype, Nodeinfo et Mastalab comments.

Prismo (semblable à : Pocket, Evernote, Reddit)

Copie d’écran, Prismo

Prismo est une application encore en phase de développement, qui se propose de devenir un sorte de version décentralisée de Reddit, c’est-à-dire un média social centré sur le partage de liens, mais qui pourrait potentiellement évoluer en quelque chose qui ressemble à Pocket ou Evernote. Les fonctions de base sont déjà opérationnelles.

Socialhome

Capture d’écran, Socialhome

Socialhome est un média social qui utilise une interface par « blocs », affichant les messages comme dans un collage de photos de Pinterest. Pour le moment, il communique seulement via le protocole de Diaspora, mais il devrait bientôt mettre en place ActivityPub.

Et ce n’est pas tout !

Les recommandations du W3C pour ActivityPub, page d’accueil

Il existe encore d’autres applications et médias sociaux qui adoptent ou vont adopter ActivityPub, ce qui rendra la Fediverse encore plus structurée. Certains sont assez semblables à ceux déjà évoqués, alors que d’autres sont encore en phase de développement, on ne peut donc pas encore les conseiller pour remplacer des systèmes commerciaux plus connus. Il y a cependant des plateformes déjà prêtes et fonctionnelles qui pourraient entrer dans la Fediverse en adoptant ActivityPub : NextCloud en est un exemple (il était déjà constitué quand il a décidé d’entrer dans la Fediverse) ; le plugin de WordPress est pour sa part un outil qui permet de fédérer une plateforme qui existe déjà ; GetTogether est un autre service qui est en train d’être fédéré. Des plateformes déjà en place (je pense à Gitter, mais c’est juste un exemple parmi tant d’autres) pourraient trouver un avantage à se fédérer et à entrer dans une grande famille élargie. Bref : ça bouge dans la Fediverse et autour d’elle !

… un seul Grand Réseau !

Jusqu’ici, nous avons vu de nombreuses versions alternatives d’outils connus qui peuvent aussi être intéressant pris individuellement, mais qui sont encore meilleurs quand ils collaborent. Voici maintenant le plus beau : le fait qu’ils partagent les mêmes protocoles de communication élimine l’effet « cage dorée » de chaque réseau !

Maintenant qu’on a décrit chaque plateforme, on peut donner quelques exemples concrets :

Je suis sur Mastodon, où apparaît le message d’une personne que je « suis ». Rien d’étrange à cela, si ce n’est que cette personne n’est pas utilisatrice de Mastodon, mais de Peertube ! En effet, il s’agit de la vidéo d’un panorama. Toujours depuis Mastodon, je commente en écrivant « joli » et cette personne verra apparaître mon commentaire sous sa vidéo, sur Peertube.

Je suis sur Osada et je poste une réflexion ouverte un peu longue. Cette réflexion est lue par une de mes amies sur Friendica, qui la partage avec ses followers, dont certains sont sur Friendica, mais d’autres sont sur d’autres plateformes. Par exemple, l’un d’eux est sur Pleroma, il me répond et nous commençons à dialoguer.

Je publie une photo sur Pixelfed qui est vue et commentée par un de mes abonnés sur Mastodon.

En somme, chacun peut garder contact avec ses ami⋅e⋅s/abonné⋅e⋅s depuis son réseau préféré, mêmes si ces personnes en fréquentent d’autres.

Pour établir une comparaison avec les réseaux commerciaux, c’est comme si l’on pouvait recevoir sur Facebook les tweets d’un ami qui est sur Twitter, les images postées par quelqu’un d’autre sur Instagram, les vidéos d’une chaîne YouTube, les pistes audio sur SoundCloud, les nouveaux posts de divers blogs et sites personnels, et commenter et interagir avec chacun d’eux parce que tous ces réseaux collaborent et forment un seul grand réseau !

Chacun de ces réseaux pourra choisir la façon dont il veut gérer ces interactions : par exemple, si je voulais une vie sociale dans un seul sens, je pourrais choisir une instance Pixelfed où les autres utilisateurs⋅rices peuvent me contacter seulement en commentant les photos que je publie, ou bien je pourrais choisir une instance Peertube et publier des vidéos qui ne pourraient pas être commentées mais qui pourraient tourner dans toute la Fediverse, ou choisir une instance Mastodon qui oblige mes interlocuteurs à communiquer avec moi de manière concise.

Certains détails sont encore à définir (par exemple : je pourrais envoyer un message direct depuis Mastodon vers une plateforme qui ne permet pas à ses utilisateurs⋅rices de recevoir des messages directs, sans jamais être averti du fait que le/la destinataire n’aura aucun moyen de savoir que je lui ai envoyé quelque chose). Il s’agit de situations bien compréhensibles à l’intérieur d’un écosystème qui doit s’adapter à des réalités très diverses, mais dans la majorité des cas il s’agit de détails faciles à gérer. Ce qui compte, c’est que les possibilités d’interactions sont potentiellement infinies !

Connectivité totale, exposition dosée

Toute cette connectivité partagée doit être observée en gardant à l’esprit que, même si par simplicité les différents réseaux ont été traités ici comme des réseaux centralisés, ce sont en réalité des réseaux d’instances indépendantes qui interagissent directement avec les instances des autres réseaux : mon instance Mastodon filtrera les instances Peertube qui postent des vidéos racistes mais se connectera à toutes les instances Peertube qui respectent sa politique ; si je suis un certain ami sur Pixelfed je verrai seulement ses posts, sans que personne m’oblige à voir toutes les photos de couchers de soleil et de chatons de ses ami⋅e⋅s sur ce réseau.

La combinaison entre autonomie des instances, grande interopérabilité entre celles-ci et liberté de choix permet une série de combinaisons extrêmement intéressantes dont les réseaux commerciaux ne peuvent même pas rêver : ici, l’utilisateur⋅rice est membre d’un seul grand réseau où chacun⋅e peut choisir :

  • Son outil d’accès préféré (Mastodon, Pleroma, Friendica) ;
  • La communauté dans laquelle il ou elle se sent le plus à l’aise (l’instance) ;
  • La fermeture aux communautés indésirables et l’ouverture aux communautés qui l’intéressent.

Tout cela sans pour autant renoncer à être connecté à des utilisateurs⋅rices qui ont choisi des outils et des communautés différents. Par exemple, je peux choisir une certaine instance Pleroma parce que j’aime son design, la communauté qu’elle accueille, ses règles et la sécurité qu’elle procure mais, à partir de là, suivre et interagir principalement avec des utilisateurs⋅rices d’une instance Pixelfed particulière et en importer les contenus et l’esthétique dans mon instance.

À cela on peut ajouter que des instances individuelles peuvent littéralement être installées et administrées par chaque utilisateur individuel sur ses propres machines, ce qui permet un contrôle total du contenu. Les instances minuscules auto-hébergées « à la maison » et les instances de travail plus robustes, les instances scolaires et les instances collectives, les instances avec des milliers d’utilisateurs et les instances avec un seul utilisateur, les instances à l’échelle d’un quartier ou d’un immeuble, toutes sont unies pour former un réseau complexe et personnalisable, qui vous permet de vous connecter pratiquement à n’importe qui mais aussi de vous éviter la surcharge d’information.

C’est une sorte de retour aux origines d’Internet, mais un retour à un âge de maturité, celui du Web 2.0, qui a tiré les leçons de l’expérience : être passé par la centralisation de la communication entre les mains de quelques grands acteurs internationaux a renforcé la conviction que la structure décentralisée est la plus humaine et la plus enrichissante.

Rejoignez la fédération !




MobiliZon : reprendre le pouvoir sur ce qui nous rassemble

Nous voulons façonner les outils que les géants du Web ne peuvent ni ne veulent créer. Pour y parvenir, nous avons besoin de votre soutien.

Penser hors des sentiers battus par les actionnaires

Pauvre MeetUp ! Pauvre Facebook avec ses événements et ses groupes ! Vous imaginez combien c’est dur, d’être une des plus grandes capitalisations boursières au monde ? Non mais c’est que les actionnaires ils sont jamais contents, alors il faut les arracher avec les dents, ces dividendes !

Nos pauvres petits géants du Web sont o-bli-gés de coder des outils qui ne vous donnent que très peu de contrôle sur vos communautés (familiales, professionnelles, militantes, etc.). Parce qu’au fond, les centres d’intérêt que vous partagez avec d’autres, c’est leur fonds de commerce ! Nos pauvres vendeurs de temps de cerveau disponible sont trop-for-cés de vous enfermer dans leurs plateformes où tout ce que vous ferez sera retenu envers et contre vous. Parce qu’un profil publicitaire complet, ça se vend plus cher, et ça, ça compte, dans leurs actions…

Cliquez sur l’image pour aller voir la conférence « Comment internet a facilité l’organisation des révolutions sociales mais en a compromis la victoire » de Zeynep Tufekci sur TED Talk

Et nous, internautes prétentieuses, on voudrait qu’ils nous fassent en plus un outil complet, éthique et pratique pour nous rassembler…? Mais on leur en demande trop, à ces milliardaires du marketing digital !

Comme on est choubidou chez Framasoft, on s’est dit qu’on allait leur enlever une épine du pied. Oui, il faut un outil pour organiser ces moments où on se regroupe, que ce soit pour le plaisir ou pour changer le monde. Alors on accepte le défi et on se relève les manches.

On ne changera pas le monde depuis Facebook

Lors du lancement de la feuille de route Contributopia, nous avions annoncé une alternative à Meetup, nom de code Framameet. Au départ, nous imaginions vraiment un outil qui puisse servir à se rassembler autour de l’anniversaire du petit dernier, de l’AG de son asso ou de la compète de son club d’Aïkido… Un outil singeant les groupes et événements Facebook, mais la version libre, qui respecte nos sphères d’intimité.

Puis, nous avons vu comment les « Marches pour le climat » se sont organisées sur Facebook, et comment cet outil a limité les personnes qui voulaient s’organiser pour participer à ces manifestations. Cliquera-t-on vraiment sur «ça m’intéresse» si on sait que nos collègues, nos ami·e·s d’enfance et notre famille éloignée peuvent voir et critiquer notre démarche ? Quelle capacité pour les orgas d’envoyer une info aux participant·e·s quand tout le monde est enfermé dans des murs Facebook où c’est l’Algorithme qui décide de ce que vous verrez, de ce que vous ne verrez pas ?

L’outil dont nous rêvons, les entreprises du capitalisme de surveillance sont incapables de le produire, car elles ne sauraient pas en tirer profit. C’est l’occasion de faire mieux qu’elles, en faisant autrement.

Nous avons été contacté·e·s par des personnes des manifestations #OnVautMieuxQueÇa et contre la loi travail, des Nuits Debout, des Marches pour le climat, et des Gilets Jaunes… Et nous travaillons régulièrement avec les Alternatiba, l’association Résistance à l’Agression Publicitaire, le mouvement Colibris ou les CEMÉA (entre autres) : la plupart de ces personnes peinent à trouver des outils permettant de structurer leurs actions de mobilisation, sans perdre le contrôle de leur communauté, du lien qui est créé.

Groupe gilets jaunes sur Facebook : «Quelle que soit l'issue du mouvement, la base de donnée "opinion" qui restera aux mains de Facebook est une bombe démocratique à retardement ... Et nous n'avons à ce jour absolument aucune garantie qu'elle ne soit pas vendue à la découpe au(x) plus offrant(s). »
Cliquez sur cette image pour lire « Après avoir liké, les Gilets Jaunes iront-ils voter ? » d’Olivier Ertzschied.

Or « qui peut le plus peut le moins » : si on conçoit un outil qui peut aider un mouvement citoyen à s’organiser, à s’émanciper… cet outil peut servir, en plus, pour gérer l’anniversaire surprise de Tonton Roger !

Ce que MeetUp nous refuse, MobiliZon l’intègrera

Concevoir le logiciel MobiliZon (car ce sera son nom), c’est reprendre le pouvoir qui a été capté par les plateformes centralisatrices des géants du Web. Prendre le pouvoir aux GAFAM pour le remettre entre les mains de… de nous, des gens, des humains, quoi. Nous allons nous inspirer de l’aventure PeerTube, et penser un logiciel réellement émancipateur :

  • Ce sera un logiciel Libre : la direction que Framasoft lui donne ne vous convient pas ? Vous aurez le pouvoir de l’emmener sur une autre voie.
  • Comme Mastodon ou PeerTube, ce sera une plateforme fédérée (via ActivityPub). Vous aurez le pouvoir de choisir qui héberge vos données sans vous isoler du reste de la fédération, du « fediverse ».
  • L’effet « double rainbow » de la fédération, c’est qu’avec MobiliZon vous donnerez à vos événements le pouvoir d’interagir avec les pouets de Mastodon, les vidéos PeerTube, les musiques de FunkWhale
  • Vous voulez cloisonner vos rassemblements familiaux de vos activités associatives ou de vos mobilisations militantes ? Vous aurez le pouvoir de créer plusieurs identités depuis le même compte, comme autant de masques sociaux.
  • Vous voulez créer des événements réellement publics ? Vous donnerez le pouvoir de cliquer sur « je participe » sans avoir à se créer de compte.
  • Il faut lier votre événement à des outils externes, par exemple (au hasard) à un Framapad ? Vous aurez le pouvoir d’intégrer des outils externes à votre communauté MobiliZon.

dessin de MobiliZon par Devid Revoy
MobiliZon, illustré par David Revoy – Licence : CC-By 4.0

La route est longue, mais MobiliZon-nous pour que la voie soit libre !

Nous avons travaillé en amont pour poser des bases au projet, que nous vous présentons aujourd’hui sur JoinMobilizon.org. Au delà des briques logicielles et techniques, nous avons envie de penser à l’expérience utilisateur de l’application que les gens auront en main au final. Et qui, en plus, se doit d’être accessible et compréhensible par des néophytes.

Nous souhaitons éprouver ainsi une nouvelle façon de faire, en contribuant avec des personnes dont c’est le métier (designeurs et designeuses, on parlera très vite de Marie-Cécile et de Geoffrey !) pour œuvrer ensemble au service de causes qui veulent du bien à la société.

Le développement se fera par étapes et itérations, comme cela avait été le cas pour PeerTube, de façon à livrer rapidement (fin 2019) une version fonctionnelle qui soit aussi proche que possible des aspirations de celles et ceux qui ont besoin d’un tel outil pour se mobiliser.

Voilà notre déclaration d’intention. La question est : allez-vous nous soutenir ?

Car pour avancer vers la concrétisation de MobiliZon, et prolonger l’ensemble de nos projets, il n’y a pas de secrets : nous avons besoin de dons. Des dons qui, on le rappelle, restent déductibles des impôts (pour les contribuables français·es).

Pour notre campagne de dons de cette année, nous avons fait le choix de ne pas utiliser des outils invasifs qui jouent à vous motiver (genre la barre de dons qu’on a envie de voir se remplir). On a voulu rester sobre, et du coup c’est pas super la fête : on risque d’avoir du mal à ajouter MobiliZon dans notre budget 2019…

Alors si MobiliZon vous fait rêver autant que nous, et si vous le pouvez, pensez à soutenir Framasoft.

Faire un don pour soutenir les actions de Framasoft

 




Retour sur le Fédérathon, le hackathon de la fédération

L’objectif de cette rencontre durant ces quelques jours était de réfléchir ensemble à des problématiques propres aux réseaux fédérés : ces alternatives éthiques et distribuées aux médias sociaux centralisés.

Étaient présents des développeurs et des UX designers ainsi que des étudiants, tous intéressés par le principe de fédération :

  • Séba, développeur Python ;
  • Moutmout, étudiante en mathématiques (mais qui fait aussi du Python) ;
  • Agate, principale développeuse de Funkwhale (plateforme de musique fédérée) ;
  • Maiwann, UX-designeuse ;
  • tcit, développeur et adminsys chez Framasoft ;
  • Natouille, UX-designeuse ;
  • Narf, stagiaire au sein de Framasoft qui réalise un mémoire scientifique sur le principe de la fédération (surtout ActivityPub*) et un mémoire philosophique sur les formes d’organisation non centralisées;
  • Renon, également contributeur de Funkwhale ;
  • Bat, développeur de Plume (blogs fédérés) qui contribue aussi un peu sur Funkwhale ;
  • Nathanaël, hébergeur de ce séjour et aussi membre de Framasoft.

*ActivityPub est un langage utilisé par les services fédérés pour communiquer entre eux.

Petite introduction

Nous avons commencé par un petit tour de présentation, pendant lequel nous en avons profité pour faire part à tout le monde nos souhaits et les activités que l’on proposait pour ce séjour.

Vue d'ensemble de la table avec les participants autour

 

Cela a été facilité par le fait qu’un dépôt sur Framagit a été ouvert quelques semaines plus tôt, sur lequel chacun était invité à proposer des activités et repas (le séjour reposant sur le principe d’auto-gestion).

Capture d'écran de la gestion des tickets sur Framagit
Oui oui, on ouvre des tickets sur GitLab pour faire des cookies véganes et des pizzas, yolo.

 

Nous avons ainsi pu mieux les lister et définir (avec une méthode sponsorisée par 3M*).

Réflexion autour des fiches ateliers

*3M, c’est la marque des post-its (oui si on ne sait pas, on ne peut pas comprendre la référence).

On a donc rapidement plein de petites fiches d’activités, de quoi bien nous occuper pendant le séjour :

Multiples post-its

Ensuite, nous nous sommes inscrits dans chaque activité que nous souhaitions afin de les prioriser, avec des petits motifs que chacun s’est attribués.

Petite astuce donnée par les designeuses : pour retirer un post-it, il faut le faire par le coté et pas par en bas. Comme ça il collera plus longtemps, parce que la surface de collage sera moins pliée et donc davantage en contact avec le mur. 😉

Nous avons clos cette première journée par un petit cours d’astronomie à l’œil nu proposé par Moutmout.

Design et Ergonomie

Nous avons fait un fishbowl sur le thème de l’ergonomie des logiciels, notamment comment savoir si son interface est utilisable.

Personnes assises écoutant et participant au Fishbowl

Un fishbowl (ou bocal à poissons) est un processus de communication permettant d’échanger sur un sujet particulier. Au départ, nous plaçons 4 chaises au centre de la pièce et nous invitons 3 personnes maximum à s’asseoir sur celles-ci pour prendre la parole, les autres sont invités à écouter sans intervenir. Lorsqu’une personne qui s’est exprimée se rend compte qu’elle n’a plus rien à ajouter, elle libère une place et une autre personne peut s’asseoir et discuter à son tour. Si une personne en dehors du cercle veut prendre la parole, elle s’assied sur une chaise libre (il y en a toujours une, vu qu’il y a 4 chaises pour 3 orateurs max.), et invite de fait un orateur à libérer sa place. Ce fonctionnement permet d’améliorer la dynamique de la conversation et de faciliter la prise de parole pour tout le monde.

Plus tard, Maiwann nous a présenté sa conférence Designers et Logiciels libres: et si on collaborait ?, qu’elle avait faite à Mixit quelques mois plus tôt.

Conférence Maïwann à Mixit

C’est quoi la fédération ?

Agate (qui développe Funkwhale) nous a présenté la conférence qu’elle avait faite aux RMLL quelques jours plus tôt. Cela a permis à certains de comprendre ce qu’il se passe sous le capot d’un projet utilisant ActivityPub, et à d’autres, d’avoir des idées pour mieux expliquer.

Après différents échanges, un sketch-note en est ressorti :

sketchnote d'un réseau fédéré avec ActivityPub

Partant de là, nous avons réfléchi brièvement à comment expliquer la fédération à M. ou Mme Tout-le-monde.

Nous avons ensuite fait appel à la communauté, en demandant sur Mastodon comment expliquer le principe de fédération. De nombreuses suggestions ont été proposées :

Post-its fédération

Note post-fédérathon (Nathanaël) : 2 semaines plus tard, je suis revenu avec mes frères dans la même maison, les post-its étaient encore accrochés. Alors qu’ils ne connaissaient pas le principe de fédération, je leur ai fait deviné la question qu’on avait posé, sans donner plus d’indices. Sans se concerter ils se sont tous deux mis d’accord sur cette question : * »Comment se mettre d’accord quand on est différents ? »*. Je trouve que celle-ci est au final une des meilleure réponse (et ce concept de « brainstorming inversé » est assez amusant). Et c’est vrai, c’est un peu ça la fédération.

Schéma problèmes aux réseaux fédérés

Nous avons également noté que le terme instance pouvait faire un peu peur aux néophytes.

Post-its instances Nous avons donc, une fois de plus, fait appel à la communauté Mastodon pour trouver un terme équivalent. Une foule d’idées en est ressortie (certaines nous ont bien fait rire).

N’hésitez pas à piocher dans la liste pour vos prochaines explications. 😉

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

Les identités nomades

Une des Fiches Activités qui a eu du succès concernait les identités nomades. Nous n’étions en fait pas tout à fait d’accord sur ce que ce terme signifiait et son intérêt principal.

C’est pourquoi nous avons fait un échange en groupe afin d’identifier les problématiques auxquelles peuvent être confronté·e·s les utilisateur·ice·s d’un système fédéré actuellement :

  • « J’ai un identifiant et mot de passe pour chaque service. »
  • « Comment interagir avec un contenu qui n’est pas sur mon instance ? »
  • « Si mon instance est hors-ligne je n’accède pas à mon compte. »
  • « Quand je déménage je ne veux pas perdre mes données. »
  • « Je veux qu’on me retrouve sur mes différents services. », également lié à :
  • « Je ne veux pas qu’on usurpe mon identité. »

Discussion sur les identités nomades

Nous avons ensuite listé les différentes solutions possibles à chaque problématique, en nous basant notamment sur celles déjà existantes sur certains projets comme Pleroma, KeyBase ou Diaspora.

Post-its identités nomades

Financement des créateurs

Comme proposé sur une autre Fiche Activité, nous avons discuté d’une plateforme pour faciliter le financement des créateurs présents sur le Fediverse. La problématique se rapproche de celle de l’identité évoquée plus haut.

Cette plateforme aurait pour but de trouver le contenu avec lequel l’utilisateur interagit (visualisation, like, écoute, …) afin de comptabiliser la somme à donner à chaque créateur, puis rediriger le donateur vers les plateformes choisies par le créateur (Tipeee, Liberapay, monnaie libre, …).

Il en est ressorti quelques schémas et illustrations représentant l’idée :

Schéma financement des créateurs

Ainsi que quelques sketch-notes…

sketchnote 1 financement

sketchnote 2 financement

Gouvernance

Nous avons réalisé un autre fishbowl, cette fois-ci sur le thème de la gouvernance au sein de la fédération : qu’elle se situe au niveau de la gestion des instances et de leur modération, ou bien au niveau du projet et de son développement.

Discussion gouvernance

Durant le fishbowl nous avons abordés de nombreux sujets.

Le fait par exemple que la manière de gérer un groupe dépend de sa taille : un état, un logiciel ou une entreprise ne peuvent pas s’organiser de la même manière. Il en serait donc de même pour les instances du Fediverse, où leur gouvernance pourrait être pensée vis à vis de leur taille.

sketchnote gouvernance

 

Nous avons également abordé des notions d’inclusivité et d’accessibilité, des différentes façon de gérer cela comme l’élaboration d’un code de conduite où la manière de modérer les instances.

Notre discussion s’est ensuite étendue à la gouvernance au sens large et comment celle-ci est gérée dans les groupes qui sont sensibles aux notions d’égalité (associations, squats, communautés, etc.). On note que même dans une volonté de gouvernance horizontale, une hiérarchie peut se mettre en place naturellement : simplement parce que bien souvent l’investissement des membres n’est pas le même, ce qui peut avoir un impact sur les décisions prises.

Tests utilisateurs

Si un jour vous vous retrouvez entre passionnés du libre, partants pour contribuer sans trop savoir comment et qu’un développeur de projet est avec vous, faites des tests utilisateurs.

Les tests utilisateurs sont à la contribution au libre ce que le houmous est aux repas en auberge espagnole : c’est simple à faire, c’est rapide, accessible à tous et surtout très efficace.

 

— Un fédérathoniste

Nous les avons expérimentés pendant le séjour sur plusieurs sessions, pour les logiciels Funkwhale et Plume par plusieurs personnes.

Première étape : on met quelqu’un devant un logiciel en lui donnant une mission (la moins guidée possible). En fonction de ce que l’on veut tester, ça peut être un utilisateur connaissant le logiciel ou ne l’ayant jamais vu. L’utilisateur commente tout ce qu’il fait et également ce qu’il ressent, les autres écoutent silencieusement.

Oui, pour une fois les utilisateurs peuvent ouvertement pester contre telle ou telle fonctionnalité qui n’est pas pratique, on peut se lâcher (bon, pas trop quand même hein, les développeurs sont aussi nos amis).

Deuxième étape : pendant ce temps, le ou les développeurs prennent plein de notes :
– les actions qu’ils n’avaient pas prévues dans la manière d’utiliser l’outil ;
– ce qui frustre l’utilisateur, ou au contraire le satisfait ;
– ce que les utilisateurs comprennent et ce qu’ils espéraient ;
– ce qui manque ;
– les bugs éventuels pouvant survenir.

Pour notre part, nous avons abattu environ l’équivalent d’un arbre en papier :

Diverses Notes Test utilisateurs

Troisième étape : un échange est fait avec les développeurs et UX-designeuses présentes ici, pour voir comment améliorer certains points. Si vous n’avez pas de star d’UX parmi vous, vous pouvez demander autour de vous (sur Mastodon par exemple).

Dernière étape : transformez ces notes en tickets* sur les dépôts des projets en question !

* Dans le développement logiciel, les tickets sont des propositions de modification du code. Cela peut être par exemple pour améliorer l’interface, signaler un bug ou suggérer des fonctionnalités.

Côté Funkwhale, près de 50 tickets ont été ouverts suite à ces tests.

Sur Plume, environ autant.

(c’est beaucoup).

Tous ces tickets sont quelque chose de très concret pour l’amélioration du logiciel, d’autant plus si c’est un des développeurs qui les ouvre : on passe d’une petite gêne remarquée dans l’utilisation en un truc noté sur la TODO-list du projet.

Du côté du futur projet Framameet (nom Framasoft d’un projet de site de partage d’événements fédéré), nous avons pu tester et prendre des notes sur les projets propriétaires concurrents, afin de mieux concevoir l’ergonomie du projet.

Initiations

 

Notes sur Rust

Certains d’entre nous ont proposé des initiations à des notions qu’ils maîtrisaient : tcit sur le langage Elixir, bat sur le langage Rust.

Plus brièvement, Docker et le déploiement ont aussi été abordés.

Ce n’était pas des cours mais plutôt un moyen de nous faire découvrir et aimer (ou pas) ces technos et se laisser le temps, plus tard, d’étudier plus profondément le sujet.

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

La suite

 

Capture d'écran du botAvec le joyeux groupe que nous étions, le séjour était assez riche en blagues en tout genre… Notamment la phrase « C’est un peu ça la fédération », sortait assez régulièrement les derniers jours (en réponse à un phrase adaptée).

En revenant du séjour, Moutmout a donc mis les doigts au clavier pour coder un petit bot Mastodon C’est quoi la fédération, répondant à des pouets aléatoires.

L’élaboration de ce compte-rendu à plusieurs nous a également permis d’en garder une trace et de vous le partager.

Nous avons également ouvert un autre Framapad dédié à l’après-séjour. Sur ce dernier, chacun d’entre nous pouvait partager des remarques et suggestion, ou bien donner son avis sur ce qui était bien, ou ce qu’il faudrait améliorer pour une prochaine fois.

 

 

 

 

 

Burgers végéIl en ressort globalement que nous étions très satisfaits du séjour : notamment, les tests utilisateurs et les fishbowls en ont conquis plus d’un (mais pas autant que les burgers végé :P).

Il y a également quelques petites idées pour une prochaine fois, comme le fait d’ouvrir un framapad dédié au compte-rendu en début du séjour et de le compléter ensemble tous les jours.

On note également le fait que les ateliers plus « concrets » niveau contribution étaient moins présents que nous l’envisagions, dû au fait qu’ils se font en petits groupes, alors que nous avions tous envie de faire des choses ensemble et que les ateliers en grands groupes intéressaient tout le monde. Bref, il faut accepter qu’on ne puisse pas tout faire.

Nous essayons petit à petit de voir comment poursuivre nos discussions par des actions plus concrètes : par exemple nous sommes en train de monter un groupe de discussion ouvert concernant les identités nomades et son implémentation, en espérant que cela débouche sur des propositions de modification sur des logiciels fédérés. Les thème de la gouvernance et du financement des créateurs subiront sans doute le même sort. Si par ailleurs vous êtes intéressés par ces sujets, vous pouvez me contacter (sur Mastodon : roipoussiere(@)mastodon·tetaneutral·net ou par mail : nathanael(@)framasoft·org) pour prendre part aux groupes de discussion existants.

Ah, et on raconte que certain·e·s participant·e·s ont toujours la musique de Put a banana in your ear dans la tête. On ne sait pas pourquoi.

Ce séjour était en tout cas une expérience très enrichissante pour nous toutes et tous. Et toutes ces discussions pourraient bien un jour faire germer, dans nos petites têtes de libristes, de nouveaux projets.

 

Capture d'écran de la vidéo Charlie The Unicorn




Un jeune libriste part à l’asso des mauvaises habitudes

Neil vient de finir un stage d’étudiant au terme duquel il a réussi à faire adopter des outils libres à une association. Il livre ici le récit de ses tribulations, c’est amusant et édifiant…

On aimerait bien qu’il y en ait beaucoup comme lui pour s’engager de façon aussi déterminée et efficace. Nous espérons entamer une série d’interviews de libristes qui comme lui sont particulièrement impliqué⋅e⋅s dans la diffusion des valeurs et des pratiques libristes.


avatar de Neil, un pigeon sur la tête
Avatar de Neil, image d’après Tunaniverse

Bonjour à tous,

N’ayant encore qu’assez peu d’expérience dans le domaine du libre et s’agissant de mon premier article sur Internet, je sollicite votre bienveillance et vous invite à me signaler toute éventuelle erreur ou mauvais usage des termes dans cet article.

Contexte

Les études

Avant de commencer, un peu de background. J’ai 20 ans et je suis en première année de BTS SIO (branche SLAM), formation post-bac orientée sur l’informatique de gestion et le développement d’applications.

Au bout d’un mois dans cette filière, j’ai senti qu’elle n’était pas pour moi en constatant notamment un retard assez grave dans les notions du référentiel. Mais pour des raisons financières (bourses, appartement, etc.) j’ai dû finir mon année, ce qui implique l’obligation de trouver un stage d’un mois en juin.

Le choix de l’association

J’ai donc choisi une association que je vais appeler Ciné-Asso, qui propose des tarifs réduits pour des séances au cinéma pour les établissements scolaires et ses adhérents. Ses responsables disaient avoir besoin de retravailler leur système d’information.

C’était pour moi une chance que de pouvoir mettre mes connaissances à disposition d’une association, ce qui m’attirait bien plus que les stages choisis par mes camarades de classe (stage en banque, en dépannage/réparation informatique, au supermarché, en startup French Tech qui développe sous WinDev1. Choix judicieux que de choisir un stage WinDev en BTS SIO : WinDev fait partie des logiciels étudiés et utilisés tout comme WordPress, Microsoft Visio, Win’Design, PC Wizard 2015 et plein d’autres. (Vous comprenez pourquoi je n’aime pas cette filière ?)

Et je préférais travailler pour une asso en rapport avec l’art et la culture. Le choix était donc déjà fait.

Un peu de technique

En ce qui concerne les outils utilisés, mon ordinateur tourne sous Debian Buster (prerelease) depuis Janvier 2018. Je code exclusivement sous Vim, mon éditeur préféré. Pour le développement web, j’utilise Apache et MariaDB côté serveur (en local, donc sur mon propre poste). J’utilise souvent MySQL Workbench (la version sous licence GPL par Oracle) pour éditer la BDD, sinon en CLI. Je travaille tout le temps avec draw.io (licence Apache), un logiciel vraiment pratique pour réaliser des schémas en tous genres, des cartes mentales aux modèles relationnels. Je m’estime par ailleurs libriste et refuse, lorsque la situation le permet, de travailler avec des logiciels propriétaires. Vous allez voir que défendre ses valeurs n’est pas facile…

Tâches assignées

Principalement deux tâches me seront confiées durant ce stage d’un mois :

  • Retravailler le site web de Ciné-Asso Leur site web tournait sous une très ancienne version de Joomla ! et franchement, ce n’était pas beau à voir. Bref, un site des années 2006. Ma mission sera de développer un site vitrine pour le remplacer, avec une gestion d’évènements planifiés (de séances de films, en l’occurrence) pour l’association. Cela inclut évidemment la formation des bénévoles à l’outil ;
  • Retravailler la base de données, reconstruire la base de données utilisée pour enregistrer les adhérents et les donateurs de l’asso. La base de données actuelle a été créée il y a 10 ans sous Access 2003 (si ce n’est 98…) et elle est encore utilisée jusqu’à présent. La base n’est pas relationnelle alors qu’elle devrait l’être. Résultat : 35 champs dans une table avec les adhérents et donateurs mélangés, des doublons, des couples sur un seul enregistrement et de sérieuses limites. Je vais donc devoir créer une nouvelle base, migrer toutes les données et former les bénévoles.

Le tout, donc, en un mois, avec la contrainte personnelle de n’utiliser que des logiciels libres.

capture de la liste des entrées de la base de données ancienne
La base d’adhérents au départ…

Présentation de Ciné-Asso

Je vais donc vous présenter brièvement l’équipe de Ciné-Asso. De faux noms leur seront attribués afin de préserver leur anonymat.

M. Touron est le président de l’association. Un esprit juste et logique.

Mme Nougat est la trésorière et celle que je dois convaincre. Elle est très réticente à l’intégration de mon travail au sein de l’asso. Elle sera aussi l’une des principales utilisatrices du logiciel de gestion de base de données. J’ai donc intérêt à faire du bon travail afin de satisfaire ses attentes.

M. Réglisse s’occupe de la communication auprès des adhérents. Il utilise tout le temps l’outil informatique dans son travail, pas toujours comme il le faudrait.

Mme Caramel est une jeune bénévole qui soutient mes idées. Elle s’occupe principalement du site web.

M. Calisson est un bénévole octogénaire et maintient la base de données Access. C’est un autodidacte de l’informatique. Il racontait fièrement qu’il avait programmé en COBOL pour le gouvernement à une époque désormais révolue.

M. Prunelle est un prestataire de services extérieur à l’association et jouera un rôle crucial.

Une réunion est organisée entre deux ou trois bénévoles et moi deux fois par semaine afin de présenter l’avancée de mon travail et de m’ajuster à la demande. En dehors des réunions, je travaille en autonomie.

Un détail important à relever : aucun membre de Ciné-Asso n’est assez compétent en informatique pour s’occuper du côté technique du site après mon départ.

Le site web

J’ai consacré les 15 premiers jours à la réalisation du site web. Et parmi tous les CMS possibles, j’ai choisi… Allez, devinez… WordPress.
Vous avez le droit de jeter vos tomates pourries ; mais je n’avais aucune expérience, ni avec Drupal, ni avec Joomla! et je n’avais clairement pas le temps de tester les solutions (rappelons que j’ai seulement 15 jours pour finaliser le site, formations incluses). De plus, je connaissais déjà bien WordPress pour l’avoir utilisé par le passé. Et croyez-moi, j’ai regretté de ne pas avoir été assez curieux, car ces 15 jours mêlèrent ennuis et souffrance.

Le décor

On commence par le design. J’ai choisi la version gratuite d’un thème qui leur plaisait bien. Je leur conçois une jolie bannière d’en-tête (avec GIMP, bien évidemment). Au final, j’ai dû la refaire 16 fois dans une réunion de 4 heures pour satisfaire aux demandes de M. Touron, président. Mais passons. J’ai dû bidouiller le CSS afin de convenir à leurs attentes, au risque de tout casser à la prochaine mise à jour. En guise de solution, je leur ai demandé de tout mettre à jour, sauf le thème.
C’est sale, ça contourne le problème, mais je ne vois pas d’autre option dans le temps imparti ; de plus, les thèmes souffrent rarement d’une faille de sécurité. J’ai donc jugé le pari suffisamment sûr.
Travailler sur WordPress n’est pas jouissif. Ça me servira de leçon pour mes stages futurs.

Les plugins

Je choisis le plugin WP Theater pour programmer les séances de cinéma.
Évidemment, les fonctions les plus intéressantes sont payantes. Je me contente des fonctions de base et réussis à convenir à leurs demandes. M. Touron m’a proposé d’acheter la version payante du plugin, mais j’ai insisté en disant que n’était pas nécessaire et que pour le prix de la fonctionnalité, ça relevait plutôt de l’escroquerie.

Les deux semaines s’écoulèrent (trop) paisiblement avec quelques ajustements par-ci par-là. La formation fut terminée en une après-midi. L’intéressée, Mme Caramel, appréciait l’interface conviviale du logiciel.

Choses vues

En un mois, j’ai appris à connaître les membres de l’association : leur personnalité, leur empathie et surtout, leur usage de l’outil informatique. J’ai tout de même quelques anecdotes qui font peur.

M. Réglisse et Micro$oft Office

J’apprends que l’un des membres de l’association, M. Réglisse, utilise MS Office 2003 pour travailler sur les documents de l’asso. Malheureusement, ce logiciel de Micro$oft n’arrive plus à exporter en PDF sur son poste, pour une raison inconnue (tout autant à lui qu’à moi). Sans compter que Office 2003 ne lit pas les nouveaux formats MS Office (depuis 2007 : xlsx, docx, etc.) ni les formats libres (odt…). Et ainsi, à chaque fois que M. Réglisse souhaite lire ou éditer un fichier incompatible, il envoie ce fichier par mail à sa collègue qui le convertit en PDF (à l’aide d’Apache OpenOffice) et qui lui renvoie par mail, et ce depuis longtemps.
Il fallait quand même que je me retienne de sourire en écoutant ça.
On me demande conseil.
En bon libriste, j’explique que le logiciel est trop vieux et qu’il faut passer à LibreOffice gratuitement ou acheter le pack Office tous les 3 ans, en insistant bien sur la première option.
« Oui, mais j’ai déjà essayé, ça marche pas, y’a des bugs et c’est pas toujours compatible… » Finalement, j’ai réussi à le convaincre. Ça a changé un peu la mise en forme de ses fichiers et il ne s’est pas gêné de me faire remarquer qu’un pixel dépassait par-ci par-là, mais il devrait s’en satisfaire pour le moment.

Vive le libre !

M. Réglisse et le mailing

Dans les aventures de M. Réglisse, j’ai aussi celle où il souhaite envoyer une newsletter à tous les adhérents de l’association. Il ouvre sa base Access 2003, et demande au logiciel de lui donner tous les mails des membres de l’asso. Il ouvre Thunderbird en parallèle, crée un nouveau groupe… et ajoute tous les mails en les réécrivant un par un à la main ! On m’explique que c’était parce que certains mails peuvent avoir été entrés dans la base de données avec des erreurs (une virgule au lieu d’un point, par exemple…) et que copier coller pose alors des problèmes… Car la base de données ne détecte pas les erreurs de saisie…

Je promets à M. Réglisse que le mailing sera beaucoup plus facile avec ma solution.

La réunion à mi-chemin

Les réunions furent assez régulières avec moi au sein de l’asso, mais celle-ci fut de très loin la plus importante. Je rencontre M. Prunelle, expert en informatique, retraité. Il s’agit d’un prestataire de services extérieur à l’association, contacté par Mme Nougat dans l’idée de contrôler mon travail et de m’aiguiller. Pour la première fois, M. Calisson, mainteneur de la base de données, est présent. M. Prunelle commence donc par parler de son parcours ; il a fondé une entreprise d’informatique pendant sa jeunesse et a déjà programmé en COBOL et en assembleur, raconte-t-il avec nostalgie.

M. Prunelle joue un rôle crucial : il s’engage à maintenir mon travail à mon départ en tant que bénévole si le projet correspond à ses attentes. Il s’agit donc d’une personne avec laquelle je devrais collaborer.

Les deux premières heures

On parle beaucoup du site web. Je l’ai présenté, il était déjà globalement fini, prêt à être basculé en production. M. Prunelle approuve mon choix du CMS WordPress et raconte qu’il a de l’expérience avec. On discute des quelques bidouillages sur le CSS (peu nombreux mais hélas impératifs conformément aux demandes).
Mon code étant commenté et mes modifications légères et peu nombreuses, il les approuve et se propose même de les maintenir si ça casse après une mise à jour. Super, ça m’arrache une épine du pied !

Les deux dernières heures

J’aborde le sujet de la base de données. Il faut savoir que la trésorière, Mme Nougat, s’oppose assez fortement au fait que je travaille sur la BDD. Elle souhaite que je me consacre pleinement au site et veut plutôt confier la base à un intervenant extérieur aux frais de l’association. C’est d’ailleurs pour cela qu’elle a fait appel à M. Prunelle…

J’explique mon projet. Un intranet maison, développé from scratch, une BDD relationnelle. Le tout fait à la main. J’avais déjà préparé un schéma relationnel que je lui montre.

« Ta base m’a l’air bien, relationnelle, tout bien comme il faut, c’est du bon travail. Par contre, je ne suis pas trop d’accord avec ta solution pour l’hébergement de la base de données, Maria DB… Je connais de nom mais ce n’est pas très utilisé dans le domaine professionnel… »

Il sort son cahier. Puis son stylo. Je le remarque alors… Un stylo rose fluo, avec le fameux logo de WINDEV dessus. Gulp. Je sais ce qui m’attend.

M. Prunelle me demande alors d’aller voir sur une page cachée d’un site web sur lequel il avait récemment travaillé. Il m’épelle l’adresse, quelque chose du genre « xalex-xpert.com/xalex_expert ».
S’affiche alors une vieille interface de connexion sans TLS, et je reconnais rapidement WEBDEV, de la même boîte. Je fais la moue. J’explique alors que je ne souhaite travailler qu’avec des logiciels libres, par éthique. Un sourire en coin s’affiche sur le visage de M. Prunelle :

« Ha ha ha, moi aussi, quand j’avais ton âge, j’étais un rebelle et je votais à gauche ! Mais aujourd’hui sur le marché du travail, dans un contexte professionnel de l’industrie informatique, jamais je ne me permettrais de présenter une verrue de Linux chez un client ! »

Hein ? L’industrie professionnelle de l’informatique ? Le marché du travail ? Qui a parlé de Linux ? Une verrue ?
La rébellion gauchiste ? Ce n’est pas un #MercrediFiction ni une exagération. C’est mot pour mot ce qu’il m’a dit. Je suis resté bouche bée pendant quelques secondes avant de passer à l’offensive en défendant mes arguments.

Et là, tout de suite, la grosse condescendance. En puissance. Limite, s’il m’avait versé un coulis de caca sur la tête, ça aurait été plus respectueux.

« Non mais de toute façon voilà, c’est comme ça qu’on débute, on fait tous des erreurs, on progresse ensuite, moi j’en ai vu, c’est pas le premier, je sais comment ça se passe »

Et alors évidemment Mme Nougat s’incruste et en rajoute une couche…

« Moi je pense qu’on a la chance d’avoir un professionnel parmi nous, M. Prunelle sait ce qu’il faut faire. Quand on est jeune, on ne connaît pas le marché du travail, on ne sait pas comment bien faire les choses pour répondre aux demandes du client, c’est normal »

(Allez-y, pissez-moi dessus encore, j’aime ça.) Mais avant que je ne me fasse totalement recaler, M. Touron et Mme Caramel interviennent au moment opportun et insistent pour me laisser une chance. Ouf, c’est sauvé. Par contre, du coup, inutile de compter sur lui pour maintenir ma « verrue de Linux ». Plus qu’à me débrouiller tout seul.

Résultat, les deux solutions seront proposées au conseil d’administration et c’est le conseil qui tranchera. J’ai intérêt à bien faire le boulot.

La veille technologique, ou comment j’ai changé d’avis

Ok, j’ai donc 15 jours pour réaliser une solution convaincante à partir de rien, migrer la solution actuelle vers la mienne et enfin former les nouveaux utilisateurs… Bon, j’ai des bouts de code de prêts pour ça, je suis assez expérimenté en PHP pour me débrouiller comme un grand. Mais 15 jours…

État des lieux

Tout d’abord, le lendemain de la réunion, M. Calisson (mainteneur octogénaire de la BDD) s’est présenté à moi. Il a fait l’effort de se déplacer dans les locaux pour me proposer personnellement son aide.
Face à une telle bienveillance, je ne pouvais refuser. Il m’a donné une documentation utilisateur d’une vingtaine de pages (datant de quelques années), très détaillée, qui m’a beaucoup appris. Il a ensuite pris le temps de m’expliquer chaque détail flou de la base actuelle et décrit les attentes particulières de Mme Nougat, qui attend d’être convaincue par ma solution.

Il n’était pas obligé de faire tout ça et je lui en suis grandement reconnaissant. Avant de le rencontrer, je pensais que ça allait être un esprit conservateur qui considère que sa solution (une table, 35 champs, rappelons-le) est la meilleure de toutes… et je me suis bien trompé. Comme quoi, le code ne fait pas le développeur…

À l’aide, Mastodon !

Dans le doute, je fais appel au réseau des réseaux. Et dans la panade, je fais appel au Fediverse.

Appel à l’aide sur Mastodon…Voyez tous les conseils reçus suite à ma demande !

 

Amis, camarades, connaissances, merci à vous. Vous avez été d’un précieux soutien dans cette situation difficile, vous m’avez aiguillé quand M. Prunelle m’avait lâché. Je savais que je pouvais compter sur vous ! Et j’ai attentivement écouté vos conseils.

Alors que choisir ?

Je peux dire beaucoup de mal (à tort et à raison) de mes professeurs de BTS SIO, mais c’est l’un d’eux qui m’a conseillé Galette en premier (en l’occurrence, ce professeur revendique des valeurs libristes mais enseigne WinDev et Win’Design aux élèves, ironiquement. Il enseigne Merise aussi, en 2018. Mais passons !)

Galette est un CMS libre de gestion d’adhérents pour les associations, inscrit sur Framalibre, l’annuaire contributif où j’aurais dû chercher en premier. Le logiciel a été créé en 2004 et est toujours maintenu à l’heure actuelle via des mises à jour régulières. Il est utilisé par des dizaines d’associations et reste un choix à considérer pour un déploiement rapide et efficace.

La Fediverse m’ayant conseillé (entre autres) Galette, j’ai décidé de m’y intéresser de plus près. Je connaissais déjà Galette (de nom seulement) avant que mon professeur m’en parle, mais tout écrire de soi-même avait l’air tellement plus amusant…

Et la solution avait l’air vraiment sympa. Il m’a fallu quelques jours pour m’assurer qu’elle collait bien au cahier des charges de Mme Nougat, mais tout avait l’air d’aller comme il faut. Et comme je n’ai plus le temps, il vaut mieux choisir cette option plutôt que de partir de zéro et rendre un travail insatisfaisant ou incomplet.

Partons donc pour Galette !

Galette

Abordons un peu l’aspect technique. La formation WordPress et quelques autres tâches ayant un peu débordé sur le planning, il me reste 10 jours pour déployer la solution et former les utilisateurs.

Le cahier des charges

Je rencontre un problème. Le cahier des charges n’est pas respecté sur un point : les statistiques. L’asso a besoin de stats assez précises pour la comptabilité et Galette ne fournit que deux ou trois pauvres camemberts. Galette tournant sous PHP, je prends la décision d’écrire un plugin.

Le plugin

C’est ce qui va prendre le plus de temps. Je travaille dans un environnement avec lequel je ne suis pas familier du tout, même si c’est du PHP, car je n’ai jamais touché à des frameworks PHP ni utilisé une API conçue pour des plugins. Ma première rencontre avec Zend Framework se passe… mal. Très mal, au point où j’interroge directement la base de données avec des requêtes en dur pour faire le boulot.
J’aurais aimé apprendre comment m’en servir, mais « je n’ai pas le temps ». Bon, j’ai moins d’excuses pour le switch à 90 cases avec des requêtes SQL et les 80 lignes de HTML dans un string… Mais chut…

Blague à part, je commence à être vraiment à la bourre. Plus que quelques jours de stage déjà, et c’est fini. Je me débrouille comme je peux pour coder quelque chose qui fonctionne. Qui a parlé de maintenabilité ?
Le prochain qui passera derrière moi sera probablement un stagiaire de BTS SIO, ça lui fera les pieds 🙂 (Il va me retrouver et me tuer pour avoir écrit ça, et je ferai moins le malin quand je tomberai sur un cas similaire. Bon au moins, j’ai mis plein de commentaires)

La demande de dernière minute

J’ai présenté le plugin de stats à Mme Nougat et il a fallu s’adapter à une demande de dernière minute. Totalement justifiée cela dit, ça faciliterait grandement la comptabilité. Il s’agit encore de stats.
J’applique des quickfixes sur le code dégueulasse que j’ai pondu juste avant. Il me reste trois jours. (Comment ça, ce n’est pas une excuse ? Au moins ça fonctionne !)

Bon allez, on plie ça vite fait et on passe à l’importation, qui n’est même pas commencée !

Préparation pour la migration

Un peu plus de technique.
La base de données est sous forme de fichier. MDB (Access), format propriétaire. Elle pèse 8.5 Mo. J’ai des frissons dans le dos. J’utilise le paquet mdb-tools pour convertir la structure et les données en requêtes SQL et je crée une nouvelle DB en local (MariaDB) et j’importe le tout.
Vive le libre.

Voilà la table à 35 champs… Ma première tâche va être de séparer les entrées des couples (M. et Mme) qui ont été enregistrés en une seule entrée.
Sur le coup, LibreOffice Calc est mon ami. J’importe tous les enregistrements où Sexe=« M. et Mme » et je les sépare à coups de Chercher/Remplacer. Une fois le boulot fini, j’importe tous les autres adhérents enregistrés dans la base jusque là sur le tableur, c’est plus facile que sur Workbench. Et nous y voilà, un total de 1275 lignes.

La grande migration

Allez, c’est parti. Je saisis 1275 adhérents à la main, depuis l’interface de Galette.

Bien sûr que non. Vous croyez vraiment que j’allais faire ça manuellement ?
Je me remémore ce que disait l’un de mes professeurs de BTS SIO :

« Un développeur, c’est un branleur. Une quiche molle. Alors à un m’eng donné, il faut savoir optimiser son traitemeng ou on va se retrouver avec une KYRIELLE de travail à faire. »

Il reste 2 jours. Comptant un jour de formation et d’installation du logiciel, j’ai 24 heures pour réaliser la migration. Admettons que je prenne trois minutes par entrée (adhérent + contribution). (1275 x 3) / 60= 63h45 de travail. C’est hors limites !

La seule solution est donc d’automatiser le tout. Mais il ne s’agit pas d’un simple INSERT INTO dans une table, hélas. Galette utilise un système de champs dynamiques qui permet d’avoir des champs personnalisés par l’association. Il les gère d’ailleurs assez mal : lorsqu’on supprime un adhérent ou une contribution, les champs dynamiques associés ne se suppriment pas avec. Encore un bug à signaler, tiens. Mais passons.

Formatage des données

Je commence par ajouter un adhérent et une cotisation annuelle pour ce dernier et j’identifie dans la BDD les tables mises à jour. Il y en a trois : galette_adherents, galette_cotisations et galette_dynamic_fields.

Ensuite, ça reste quand même assez trivial. J’identifie à quoi correspondent les champs dans les tables et je prépare mes inputs selon mes besoins. Je n’oublie pas de m’adapter au logiciel. Exemple, Galette interdit les adresses mail dupliquées dans la BDD. Je supprime tous les duplicatas depuis LibreOffice avant de commencer quoi que ce soit. Puis vient le plus
pénible. Le formatage des inputs. LibreOffice est pratique pour ça, mais je préfère tellement Vim qui s’avère bien plus efficace quand on a l’habitude du logiciel.

Vérification des données

Je vérifie encore mes inputs. Les erreurs les plus courantes :
– Doubles espaces (un coup de regex et c’est fini)
– Accents dans les adresses mail
– Virgules à la place de points un peu partout
– Formatage pas toujours standardisé du numéro de téléphone… J’étale le champ adresse, unique jusque là, sur deux lignes. C’est long et pénible, un bon travail de stagiaire. Par superstition, j’enlève les guillemets placés inutilement dans les adresses physiques.
– Au passage, je découvre des adresses Yahoo, AOL, Cegetel, Alice, Wanadoo, Neuf et même quelques .gouv.*.
Ça fait un peu peur.

– Le champ galette_adherents.login_adh contient des caractères aléatoires servant d’identifiant pour l’adhérent. L’asso n’utilise pas cette fonctionnalité, mais pour ne pas contrarier Galette, je vais insérer des caractères aléatoires dedans : SUBSTRING(MD5(RAND()) FROM 1 FOR 15)
Ce n’est pas censé être un identifiant hexadécimal, mais ce n’est pas grave.

Enfin, je prends soin de distinguer les champs vides des champs NULL. On peut maudire SQL pour ça, je suppose.

Je termine la migration le 28 juin au soir, soit 24 heures avant la fin du stage. La journée de demain commencera à 09h00.

Déploiement de la solution

Ah oui, à ne pas oublier. Avant de former les utilisateurs, il faut d’abord déployer Galette sur leur réseau (en intranet). Je choisis l’utilisation de XAMPP sur l’un de leurs postes Windows.
Je configure le serveur DHCP de leur box pour que l’IP du poste en question soit fixe. Ma méthode est probablement discutable mais je ne vois pas d’autre option possible, surtout qu’héberger Galette sur le “cloud” ne leur aurait pas servi car ils ne travaillent sur la BDD qu’en local. Enfin, je déploie Galette, j’exporte la BDD depuis mon poste et je l’importe sur le leur. Je transfère aussi les fichiers de mon plugin. Évidemment, l’opération ne s’est pas déroulée sans accroc – surtout sur des postes Windows. J’ai perdu une à deux heures dans la migration.

L’imprévu fatidique

En formant l’une des deux bénévoles, on s’aperçoit ensemble que de nombreuses données de l’ancienne base sont erronées depuis quelques mois (suite à une maintenance de M. Calisson) et que ces erreurs ont été (évidemment) reportées sur la nouvelle base. Nous arrivons à une conclusion terrifiante : il faut repasser manuellement derrière chacune des 1275 adhésions à partir des bordereaux d’adhésion, conservés par précaution. Cette opération nous a coûté 4 à 5 heures. La bénévole a eu la gentillesse de m’apporter une pizza pour que je puisse finir mon travail d’esclave le plus vite possible sans sortir du bureau.

fig.1 Travailler en équipe pour résoudre un problème. La théorie.

fig.2 Travailler en équipe pour résoudre un problème. La réalité.

La formation

Vous imaginez qu’il ne me reste plus beaucoup de temps pour former les utilisateurs. La première bénévole était assez familière avec l’informatique, mais la deuxième ne l’était pas du tout – au contraire, elle détestait l’informatique. J’ai dû abréger beaucoup de points que je préciserai dans une documentation utilisateur à rédiger après mon départ. Ce fut très laborieux, mais l’essentiel a été vu. Il est 18h00, mon stage se termine et ma mission avec. Je remercie M. Touron qui m’offre une gratification de stage de 150 euros.

Le suivi

Le libre, c’est bien, mais quand il est encadré et suivi, c’est mieux. Le site web de l’association est hébergé par la Ligue de l’Enseignement, ce qui leur permet de profiter de tarifs très préférentiels. J’ai pu rencontrer l’un de leurs membres avec M. Touron dans le cadre de la migration du site de Joomla ! vers WordPress.
Ce monsieur, aux antipodes de M. Prunelle, était clairement fâché de mon choix de WordPress, en disant que les webmasters oublient souvent de mettre à jour le CMS et qu’il est généralement considéré comme une usine à gaz trouée par des failles de sécurité. Je ne peux qu’être d’accord avec lui sur ces points-là, malheureusement.
M. Touron aborde finalement la question de la gestion de la base de données (Galette, donc) et ce monsieur semble non seulement connaître le CMS, mais exprime sa satisfaction quant au choix d’un logiciel libre. Quand je lui ai dit que ce choix était par éthique, nous sommes rapidement partis dans une discussion libriste mentionnant La Quadrature du Net, l’April, Framasoft, les RMLL 2018 qui approchent à grands pas…

C’était ma première discussion avec un libriste dans la vraie vie et elle ne pouvait pas tomber à un meilleur timing. La personne idéale pour reprendre le projet était déjà trouvée, je peux dormir sur mes deux oreilles !

Ressenti personnel

Cet article est déjà beaucoup trop long, mais je tiens à exprimer mon ressenti sur ce stage. La rencontre avec M. Prunelle fut très parlante pour moi : j’ai réalisé à quel point les esprits peuvent être conservateurs dans le domaine de l’informatique.

Être libriste, c’est avant tout avoir des convictions que l’on défend au quotidien. Je ne m’attendais pas à entrer en conflit d’éthique avec qui que ce soit pendant ce stage, tout comme je ne m’attendais pas à rencontrer des personnes défendant les mêmes valeurs que moi. C’est aussi inciter les utilisateurs moins familiers vis-à-vis de l’outil informatique à découvrir les outils libres, faire face à leurs réticences dues à la peur de l’inconnu, à leur habitude d’utiliser des outils propriétaires et parfois, à leur manque de confiance en votre personne au prétexte de votre jeune âge et de votre supposé manque d’expérience.

Ce stage fut un véritable combat au nom de l’éthique et de mes propres convictions, mais il fut aussi porteur d’espoir : les libristes sont plus nombreux que je ne le pensais, et mon déplacement à mon tout premier meeting (les RMLL 2018) va probablement m’aider à mieux connaître (et sympathiser !) avec les différentes communautés et me permettre de définir plus précisément mon parcours professionnel en vue, dans l’idéal, d’un métier dans ce domaine.

Vive le libre !

@Neil@shelter.moe




Des nouvelles de notre ami Facebook – mai 2017

La revue de presse de Jonas, qui paraît quand il a le temps.

Tiens ça faisait un moment qu’on ne vous avait pas parlé de Facebook — Hein ? On en parle tout le temps ?

Oui bien sûr, mais son emprise est telle qu’on pourrait tenir une chronique quotidienne sur ce Léviathan. Dans la surabondante actualité de ce géant du Net, Jonas a prélevé trois petites choses :

1. C’est la grande forme

Quand nous nous réjouissons du rapide succès des instances de Mastodon en si peu de temps (venez sur Framapiaf, ou mieux installez votre propre instance et rejoignez le Fediverse) qui a dépassé les 600 000 utilisateurs en un mois, nous sommes bien loin de l’usage massif des réseaux sociaux propriétaires et centralisés. En ce qui concerne Facebook c’est « 1,94 milliard d’utilisateurs actifs mensuels, en hausse de 17 % par rapport au premier trimestre de 2016, avec un bénéfice net d’un peu plus de 3 milliards de dollars, en hausse de 76 pour cent par rapport à la même période l’an dernier », comme le rappelle le magazine the Verge.

 2. À la conquête de ce qui reste du monde

Facebook va toujours plus loin dans l’offre du « tout compris », il s’agit maintenant de maintenir captive la clientèle en lui proposant un service de messagerie. C’est ce que résumait le mois dernier l’article de NextInpact : la Messenger Platform 2.0 veut conquérir le monde avec ses bots. Car il ne s’agit pas d’une messagerie comme les autres : les bots doivent faire l’essentiel du travail :

Des bots de traduction aidant les réfugiés, aux bots qui répondent aux questions de santé, aux occasions de soutenir les causes et même les expériences qui aident les élèves à faire leurs devoirs, la créativité, l’ingéniosité et la vision de notre communauté de développeurs de bot ont été géniaux.
Nous pensons que Messenger va devenir le nouveau salon social du monde, où les gens peuvent sortir, partager, discuter, jouer à des jeux ou acheter des choses, tout en pouvant atteindre presque tout le monde, où qu’ils se trouvent. Nous pensons maintenant que nous combinons deux outils du passé: l’annuaire téléphonique (comme nous l’avons utilisé pour trouver des personnes) avec les Pages Jaunes (la façon dont nous avons l’habitude de trouver des entreprises). (source : le Newsroom de Facebook)

On l’a compris : l’objectif de Facebook, comme celui des autres géants du web est d’investir l’espace privé comme l’espace public, à tout instant, en effaçant le plus possible la limite déjà peu perceptible entre service rendu et commerce, sans solution de continuité. Le monde que propose Facebook à ses milliards d’utilisateurs est celui des animaux en batterie dans une ferme industrielle.

Vaches charolaises – photo par JPC24M – (CC-BY-SA-2.0)

3. L’intrusion est une vocation

Avec Facebook, c’est deux pas en avant, un pas en arrière… à chaque fois que Facebook est pris la main dans le sac pour une pratique douteuse, l’ineffable Mark Zuckerberg jure ses grands dieux, la main sur le cœur, que c’était pour la bonne cause, que toutes les précautions ont été prises, qu’aucune loi n’a été transgressée… et peu à peu nous baissons la garde et Facebook s’autorise à des pratiques de plus en plus douteuses.
Souvenez-vous, déjà en 2012, Facebook a mené une expérience qui avait déclenché la polémique sur certains de ses utilisateurs. Près de 700.000 d’entre eux ont servi de cobayes sans le savoir. Des scientifiques ont modifié les flux d’actualité des utilisateurs en bougeant le curseur du nombre de messages positifs et négatifs, pour observer les réactions sur « l’humeur » des cobayes… (source : magazine ZDNET 700 000 utilisateurs manipulés par une expérience sur la contagion émotionnelle).

Aujourd’hui, ces pratiques douteuses semblent n’avoir pas changé. En effet, le journal The Australian révèle que Facebook a mené des recherches pour cibler les adolescents émotionnellement vulnérables et insécurisés de manière à faciliter les pratiques publicitaires prédatrices.

En surveillant les messages, les commentaires et les interactions sur le site, Facebook peut savoir quand les personnes âgées de 14 ans se sentent « vaincues », « submergées », « stressées », « anxieuses », « nerveuses », « stupide », « idiot », « inutile » et « échec ».Ces informations recueillies au moyen d’un système sur l’analyse du sentiment pourraient être utilisées par les annonceurs pour cibler les jeunes utilisateurs de Facebook lorsqu’ils sont potentiellement plus vulnérables.

Dessin réalisé par l’artiste Pawel Kuczynski (son site Web)

La politique d’utilisation des données de Facebook nous avertit que l’entreprise « peut utiliser les informations que nous recevons à propos de vous… pour les opérations internes, y compris le dépannage, l’analyse des données, les tests, la recherche et l’amélioration des services ».
Les informations telles que votre statut « relationnel », votre emplacement, votre âge, votre nombre d’amis et à la manière dont vous accédez au site sont vendus aux annonceurs.

Encore une fois, Facebook a rapidement présenté des excuses et a déclaré à l’Australian :

une enquête sera menée sur la question, nous admettons qu’il était inapproprié de cibler les jeunes enfants de cette manière.

— des excuses… jusqu’à la prochaine fois ?

Allez hop, on vous rappelle avec ce bon vieux Richard Stallman que…

Facebook n’est pas votre ami, c’est un système de surveillance (source)

 

Pour aller plus loin

Pour fuir Facebook et trouver une alternative libre et décentralisée, vous avez le réseau social Diaspora*, dont nous proposons une instance nommée Framasphère* !