📌 Contexte
Cette note traite du sujet de l'interopérabilité des systèmes, notamment de quelques-unes des tendances et bonnes pratiques en la matière issues du milieu du logiciel libre. Elle s'inscrit dans la série de notes Rêver En commun 2030 - un logiciel libre dans un écosystème ouvert, réalisée par FACiL.
Interopérabilité
De quoi parle-t-on quand on parle d'«interopérabilité» ? Les systèmes informatiques sont conçus en suivant des spécifications qui dans bien des cas concernent des protocoles ou des formats de données standards[1]. Lorsque par exemple deux logiciels suivent des protocoles et des formats de données communs, on peut s'attendre à ce qu'ils soient «compatibles». On parle de simple «compatibilité» lorsque les logiciels en question évoluent dans le même environnement sans rencontrer de problèmes dans leur fonctionnement normal. Par contre, on parle plutôt d'«interopérabilité» lorsqu'on considère des systèmes amenés à interagir dans des environnements hétérogènes comprenant divers fabricants de matériel, diverses versions de logiciels implémentant divers protocoles et formats de données.
L'interopérabilité est globale et c'est ultimement elle qui est visée par les développeurs de logiciels libres qui insistent sur l'adoption de standards dit «libres» ou «ouverts», c'est-à-dire des standards dont les spécifications peuvent être diffusées et implémentées sans restriction. (Voir la section «Formats libres et ouverts : libérer les données»).
ActivityPub : le Web «social» peut-il être libre ?
L'interopérabilité se joue à plusieurs niveaux et est une cible mouvante en raison de nouvelles couches de complexité qui émergent sans cesse. L'évolution du Web, notamment à travers les itérations des standards HTML ou CSS, en fournit un bon exemple. Il n'y avait évidemment rien dans ces standards permettant de diriger l'évolution du Web «social» car le Web n'a jamais été conçu pour être l'environnement de développement d'applications qu'il est devenu. Le World Wide Web Consortium (W3C) était encore occupé principalement à normaliser les contenus (textes, images, etc.) du Web quand est arrivée la vague des médias et réseaux sociaux financés par la captation et la mise en valeur des données des utilisateurs.
Bien que construits dans l'environnement du Web, les systèmes centralisés fonctionnant en silo qui ont fait connaître le Web social au public au tournant des années 2000 étaient dès le départ en rupture avec la vision - sans doute un peu mythifiée - d'un Internet salvateur propageant la connaissance librement pour le bien de l'Humanité. Il y a des exceptions bien sûr, notamment Wikipédia et les autres projets de la Wikimedia Foundation. Il y a de la résistance aussi, au travers de nombreux projets visant à «réparer» le Web en le re-décentralisant[2], en redonnant aux utilisateurs le contrôle sur leurs données. Malgré cela le fait est qu'en 2024, globalement, les Internautes interagissent quotidiennement avec des applications - conçues d'abord pour Android et iOS et peut-être ensuite pour les navigateurs Web - qui captent leur attention et leurs données dans des écosystèmes numériques contrôlés par des multinationales américaines qu'on a pris l'habitude de désigner sous le nom de «GAFAM».
Dans le camp de la résistance aux GAFAM, on retrouve des gens sympathiques qui travaillent fort - depuis le milieu des années 2000 au moins - pour «libérer» nos interactions sociales numériques en proposant des solutions de remplacement à Facebook, X (Twitter), Instagram, YouTube, etc.. Depuis 2018, le W3C recommande un protocole nommé ActivityPub qui est la culmination d'années de travail pour que les «activités» suivantes ne soient plus détournées au profit des GAFAM et compagnie : suivre ou arrêter de suivre un compte, joindre ou quitter un groupe, inviter ou accepter une invitation, publier du contenu, supprimer du contenu, répondre à une publication, réagir à une publication, signaler une publication, bloquer un contenu ou un compte, etc. Le protocole couvre également les activités qui se produisent entre les serveurs, ce qui permet la décentralisation des fournisseurs d'applications sociales dans ce qu'il est convenu d'appeler le «fédivers» : l'univers des réseaux capables de coopérer au sein de fédérations où il n'y a pas d'autorité centralisée.
💡 ActivityPub est un protocole de communication décentralisé qui permet aux plateformes et aux applications de réseaux sociaux de se connecter entre elles. Il est conçu pour que différents services puissent échanger des messages, des statuts et d'autres types de contenus entre eux, même s'ils sont sur des plateformes différentes.
Les applications qui implémentent ActivityPub sont donc interopérables au niveau des activités génériques qu'on associe avec le Web social. En 2024, le fédivers est riche d'applications sociales en principe capables de remplacer Facebook, X (Twitter), Instagram, YouTube, etc. Le fédivers fait face aux défis habituels des logiciels libres : sortir de la marge pour atteindre une masse critique d'utilisateurs et d'utilisatrices, assurer une viabilité économique, minimalement pour rémunérer les développeurs principaux, favoriser la participation des personnes non techniques, favoriser la diversité, etc.
Identités numériques interopérables ?
C'est déjà une réalité dans plusieurs endroits du monde : l'État fournit une carte d'identité numérique, qui permet aux citoyen.nes d'accéder à une panoplie de services publics en ligne voire même de voter lors des élections. En Estonie, le secteur privé offre ses services numériques dans le cadre des infrastructures d'identité et d'échange d'informations mis en place par le secteur public. Un tel niveau d'interopérabilité, impressionannt et inégalé à l'heure actuelle, ne devrait-il pas pourtant être simplement «normal» ?
Nous en sommes bien loin en Amérique du Nord, où l'absurde réalité est que les GAFAM sont bien souvent les fournisseurs de nos identités numériques (!?!), tandis que le secteur public est globalement à la traîne et certainement pas prêt à s'imposer.
Une véritable identité numérique fonctionnant au sein d'un écosystème pleinement interopérable nécessite une vaste coordination et des processus transparents impliquant les citoyen.nes. Soyons vigilants : il y a d'innombrables façons de mettre en place une identité numérique qui entraînera d'importants ratés voire des reculs en matière de droits fondamentaux : exclusion, discrimination, surveillance accrue de l'État, collecte et utilisation abusives de données personnelles, etc. Il est heureusement possible d'éviter le pire en s'inspirant des meilleures expériences dans le monde, qui nous montrent, sans trop de surprise, qu'il faut faire le choix du logiciel libre, du chiffrement de bout en bout et d'une architecture décentralisée qui remet le contrôle des clés et des données dans les mains des individus.
En attendant l'implantation au Québec d'une identité numérique digne de confiance, on peut déjà faire des pas en direction d'une reprise de contrôle collective de nos identités en ligne face aux GAFAM en déployant des systèmes libres d'authentification unique comme ceux évalués dans la note intitulée «Authentification unique : quelques logiciels libres disponibles».
Formats libres : libérer les données de nos applis
C'est très mal connu du grand public, mais jusqu'à tout récemment (2017), le très célèbre format de fichier audio MP3 était un problème pour le logiciel libre. En effet, un développeur qui voulait distribuer en toute légalité un logiciel capable d'encoder ce format devait acheter une licence commerciale ou risquer des poursuites pour violation de brevets. Depuis 2017, cette mauvaise blague est terminée et la médiathèque Wikimedia Commons peut accepter les fichiers MP3 aux côtés des autres formats de fichiers audio libres : OGG, FLAC, WAV et MIDI[3].
Si le MP3 était l'exception, ce ne serait pas trop mal, mais tout le monde a bien sûr entendu parler des formats de Microsoft Office pour la bureautique : DOCX, PPTX, XLSX. Il n'est pas aisé pour les développeurs des autres logiciels de bureautique d'assurer la compatibilité avec ces formats, qui évoluent d'une version d'Office à l'autre suivant les caprices de Microsoft.
L'exemple de la bureautique nous montre à quel point les formats libres sont aussi importants que les logiciels libres. Avec des formats non libres qui sont des standards de fait, comme les différentes versions des formats DOCX, PPTX, XLSX de Microsoft ou les différentes versions des formats PSD, AI, INDD d'Adobe, les développeurs de logiciel libre n'ont pas toutes les informations qui permettraient d'atteindre une comptabilité de 100% et par conséquent l'interropérabilité n'est pas ce qu'elle pourrait être.
Heureusement, le Web est nettement moins contraint par des formats non libres contrôlés par des multinationales américaines que la bureautique ou l'infographie. Le W3C a fait un travail important (bien qu'imparfait et sujet à critique) pour promouvoir la normalisation de tout ce qui concerne le Web et son action a dans une large mesure empêché qu'il ne devienne le joujou exclusif de Microsoft ou Google. Quelque chose qui s'appelle le Web libre et ouvert existe encore en 2024 et est reconnaissable par certains des choix que ses protagonistes font par exemple dans la conception d'une appli ou d'un site Web (à contre-courant des principales tendances actuelles) :
- La compatibilité avec les navigateurs Chrome, Edge et Safari, bien sûr, mais aussi tout autre navigateur qui respecte les standards
- Des contenus sont (souvent) récupérables sans navigateur via syndication RSS ou Atom
- Les contenus (texte, image, audio, vidéo, données, etc.) sont librement réutilisables lorsque le droit d'auteur le permet, par exemple via licences Creative Commons BY, BY-SA ou CC0
- Le code source est bien sûr aussi librement réutilisable !
- L'intégration d'OpenStreetMap est préférée à Google Maps
- Le moins possible d'intégration de bidules en Javascript qui aident les GAFAM à pister les comportements des Internautes
- La participation au fédivers notamment grâce au protocole ActivityPub
Au-delà des standards libres et ouverts : la loi et les politiques publiques
Beaucoup peut être accompli pour accroître ou maintenir l'interopérabilité en adoptant les standards libres et ouverts promus par le milieu du logiciel libre, mais dans un monde où des multinationales géantes sont capables d'imposer leurs standards, leurs plateformes et leurs règles du jeu, ça ne peut suffire. Il faut agir au niveau des spécifications techniques, au niveau du code source des logiciels qui les implémentent en pratique, mais aussi bien sûr aux niveaux politique et institutionnel.
L'Europe a montré que la loi, les règlements et les mécanismes publics ne sont pas devenus complètement caduques devant le cyberespace. Le Règlement général sur la protection des données (RGPD) entré en vigueur en 2018 est venu reconnaître un droit à la portabilité des données personnelles visant explicitement à combattre les silos de données des plateformes centralisatrices implantées en Europe (en gros les mêmes qu'ici). En vigueur depuis 2022, la Législation sur les marchés numériques contient des dispositions qui visent plus directement encore l'interopérabilité des grandes plateformes (notamment en agissant au niveau des «boutiques d'applications» ). L'approche décidée sur le Vieux Continent semble être celle de définir un «vivre-ensemble numérique» plus humain et respectueux des droits fondamentaux tout en construisant un environnement de concurrence accrue sur le marché. Est-ce la voie à suivre ?
Plus récemment, le 5 août 2024, un tribunal fédéral des États-Unis a reconnu ce que tout le monde savait depuis longtemps : Google exerce un monopole sur la recherche en ligne. Il est peu probable que les États-Unis adoptent un arsenal de mesures publiques comparable à celui de l'Europe, mais il est possible que des démantèlements d'entreprises soient ordonnés au cours des prochaines années et il est certain que le portrait d'Internet est en train de changer rapidement. Changera-t-il en profondeur ?
Notes
- Pour éviter la confusion, je ne tiens pas compte ici de la distinction parfois faite en français entre les «standards» et les «normes».
- Plusieurs projets poussent plus loin que la décentralisation (choix entre plusieurs serveurs) et proposent une architecture distribuée reposant sur le pair-à-pair.
- «The world's most popular audio file format arrives at Wikimedia», diff.wikimedia.org, 4 déc. 2017.