1Les algorithmes ont depuis longtemps quitté le domaine des mathématiques et des sciences de l’information pour s’imposer sur la scène de nos interactions quotidiennes. Sans nécessairement comprendre leur fonctionnement, ni posséder de représentation claire de ce qu’ils sont et font, ni même toujours soupçonner leurs fragilités intrinsèques, force est de constater que nous nous sommes peu à peu habituées à l’évocation répétée de leur présence. Quand bien même resteraient-ils cantonnés à l’arrière-plan de nos mondes partagés – logés dans l’infrastructure des réseaux de communication, par exemple – les algorithmes ont presque atteint le statut de catégorie de pensée dans le langage ordinaire. Alors qu’il reste sans doute nécessaire de distinguer l’algorithmique (soit les modalités de production des règles rendant possible la conception d’algorithmes) de ses applications, nous mobilisons le plus souvent le terme « algorithme » pour évoquer tour à tour : la formulation de routines systématiques, le codage de scripts informatiques, des éléments logiciels spécifiques, ou bien encore des façons de faire et de penser.
2Issu d’une thèse de doctorat, The Constitution of Algorithms offre une exploration des espaces dans lesquels l’algorithme, cette « méthode de calcul informatisée » (p. 5), prend vie. Si l’ouvrage n’entend pas discuter de prime abord ce que font les algorithmes, il propose d’étudier ce qui se joue avant que les algorithmes ne deviennent ces dispositifs « fluides, rapides et distribués » (p. 8), qui le plus souvent se révèlent à nous dans leurs effets. Le propos s’inscrit dans une conversation, désormais bien identifiée, sur la capacité d’agir (agency) des algorithmes (par exemple, Amoore & Piotukh, 2015 ; Cellar, 2022 ; ou bien Mittelstadt et al., 2016). Florian Jaton entend ainsi ajouter à la littérature existante, laquelle a déjà beaucoup travaillé la question des effets produits par les algorithmes. Il s’agit bien davantage pour lui d’enquêter sur les causes de ces effets (p. 11, cf. également pp. 283 et 291), quelles qu’en soient la multiplicité et l’ampleur de la distribution. Il s’agit également, et peut-être de façon plus originale, de lever le voile sur le type de pratiques qu’implique le développement des algorithmes. Offrant au lecteur un accès aux conditions d’élaboration de ces outils in situ, l’auteur décrit avec précision les pratiques, échanges et interactions qu’il a pu observer au sein d’un laboratoire de recherche, logé dans une structure académique européenne, entre novembre 2013 et février 2016. Sont ainsi décrits dans le détail des problèmes de saillance (saliency detection, une étape de traitement informatisée des images visant à identifier les objets saillants d’une image donnée), mais également les différentes étapes de codification d’un algorithme dans l’environnement et le langage MATLAB, ou bien encore les modalités de test de l’algorithme ainsi développé.
3L’ouvrage est structuré en trois parties, chacune scindée en deux moments : l’un théorique, l’autre empirique. Trois questions sont successivement étudiées : la définition des problèmes à même d’être résolus de manière computationnelle (Partie I, « Ground-truthing »), la programmation comme activité pratique (Partie II, « Programming ») et enfin le rôle des mathématiques dans la mise en forme des algorithmes (Partie III, « Formulating »). Au sein de chaque partie, une définition commune est généralement proposée, pour en souligner les limites, les tensions et paradoxes internes, jusqu’à opérer de façon assez classique un déplacement en direction d’une nouvelle définition, davantage problématisée. Chaque moment empirique qui suit cette réévaluation conceptuelle entend fournir une illustration du déplacement opéré, et vise à enrichir la nouvelle définition à la lumière de l’expérience. De ce point de vue, l’ouvrage est très didactique, et rend accessible un sujet que l’on aurait aisément tenu pour aride au premier abord. L’introduction précédant les trois parties constitutives de l’ouvrage invite par ailleurs le lecteur à s’emparer pleinement du livre, pour y choisir le parcours qui lui convient – celui-ci n’ayant pas nécessairement besoin de suivre la linéarité imposée par la pagination (p. 25).
4La première partie est consacrée aux pratiques de « ground-truthing », soit l’établissement des vérités fondamentales à partir desquelles l’algorithme va être développé. Il s’agit pour l’auteur de montrer en quoi l’étape consistant à définir les problèmes qui feront l’objet d’une solution computationnelle constitue un fonds épistémique souvent invisibilisé dans les études sur les algorithmes (p. 77). Passant en revue quelques définitions communément mobilisées dans les manuels de sciences de l’information – l’algorithme y étant souvent décrit comme « une méthode systématique contenant différentes étapes » (p. 48), ou bien une « méthode pour résoudre des problèmes qui se prêtent à une mise en œuvre informatique » (n. 19, p. 305, citant ici Sedgewick & Wade, 2011) –, l’auteur interroge : ces définitions ne sont-elles pas insatisfaisantes ? Non seulement elles semblent présupposer l’existence de problèmes à résoudre sans vraiment chercher à les justifier, mais encore laissent-elles de côté les diverses facettes du processus de problématisation de l’algorithme : comment le problème à résoudre apparaît-il ? Comment est-il évalué ? Quelles sont les questions d’ordre politique qui sont ainsi laissées de côté, alors même qu’elles irriguent nécessairement les décisions prises lors de son développement ? En somme, l’activité de programmation y apparaît toujours comme un moyen en vue d’une fin, mais reste en tant que telle non interrogée.
5Pourtant, et les parties empiriques de l’ouvrage le montrent de façon détaillée, l’activité consistant à développer un algorithme ne saurait être réduite de telle façon. Il faut dès lors ouvrir la boîte noire que constituent les algorithmes (p. 50) pour se défaire de ce réductionnisme : c’est ce travail qu’initie le chapitre deux, qui propose une première illustration empirique à travers le récit de la quête d’une nouvelle ground truth, qualifiée de « point de passage obligé » (p. 68) en référence à Callon (1986). De fait, cette ground truth constitue un élément incontournable dans le développement de l’outil algorithmique, elle en est la « matrice historique mais contingente » (Jaton, 2019, p. 338). La restitution ethnographique nous fait vivre les discussions au sein d’un petit groupe de chercheurs spécialisés dans la détection de saillance (saliency detection, p. 52 sq.). Constituer l’échantillon à partir duquel développer l’algorithme requiert la collecte et le traitement d’un nombre important d’images : c’est cet échantillon qui fournira, tout au long du développement de l’algorithme, la « vérité de terrain » définissant l’empan de ses possibles. Plusieurs processus entrent ici en jeu : un travail d’identification est mené par l’entremise d’une campagne de crowdsourcing, dont les résultats sont ensuite synthétisés par un script informatique. Si certaines étapes du processus sont automatisables, on perçoit à l’examen que certaines en revanche ne le sont pas (p. 78). De la sorte, l’auteur souligne l’existence des biais contribuant fondamentalement à la constitution des algorithmes (cf. n. 17, p. 307) : « la normativité propre aux systèmes algorithmiques doit [ainsi] être considérée à la lumière des tensions qui ont contribué à rendre cette normativité exprimable. » (pp. 78-79). C’est une facette de la performativité spécifique des algorithmes qui se trouve ainsi mise en lumière.
6La seconde partie de l’ouvrage s’intéresse aux pratiques de programmation, comprise comme
l’activité située consistant à inscrire des listes d’instructions numérotées qui peuvent être exécutées par des processeurs informatiques, afin d’organiser le mouvement des bits et de modifier des données de la manière souhaitée (p. 93).
7Retraçant brièvement l’historique du développement des architectures informatiques par une évocation du First Draft of a Report on the EDVAC, document fondateur rédigé en 1945 par John Von Neumann, Florian Jaton montre comment le formalisme a peu à peu été adopté dans les modélisations informatiques. En effet, le First Draft tend à réduire un grand nombre de processus sociotechniques à un ensemble de fonctions, passant sous silence les pratiques requises dans le cadre d’opérations de computation (p. 98). Ces pratiques s’en sont trouvées invisibilisées alors même qu’elles sont constitutives de la programmation : les travaux de Von Neumann ont ainsi eu pour effet de décorréler la compréhension du travail de computation, des pratiques nécessaires à sa réalisation (p. 102). Poursuivant son développement, Jaton montre comment les sciences cognitives en sont venues à étudier les processus computationnels (p. 114), bientôt suivies par la tradition behavioriste. Dans les années 1950-1960, des efforts importants ont en effet été consentis pour comprendre comment améliorer les tâches de programmation, à l’instar des tests d’aptitude développés par IBM (p. 109). Pourtant, et c’est là l’objet de la critique adressée par l’auteur aux approches susmentionnées, l’approche cognitiviste mélange prémisses et conséquences, lorsque l’approche behavioriste enferme les pratiques de programmation dans une boîte noire, pour ne s’intéresser qu’aux conditions (les paramètres contextuels) et aux conséquences (le nombre d’erreurs) de la programmation (p. 116).
8Le chapitre quatre propose une seconde étude de cas, qui montre à l’inverse comment l’activité de programmation est essentiellement pratique et située. De façon à prendre la mesure de cette activité, l’auteur explique avoir décidé de développer lui-même un modèle algorithmique, de façon à comprendre comment le codage se déroule en pratique (p. 137). Rapidement, l’on perçoit qu’il fait face à la prolifération d’inscriptions qui le plus souvent ne sont guère mentionnées dans les études qui ont pour objet des programmes rédigés (p. 163) : « En considérant le code achevé, ces études ont tendance à négliger les opérations pratiques qui ont conduit à l’accomplissement du code » (n. 6, p. 314). Là encore, la considération des seuls effets (en l’espèce, le script comme produit fini), ne permet pas de faire sens des différentes facettes de l’activité de programmation. La compréhension classique, encastrée dans le paradigme cognitiviste, est donc trompeuse : les détours nécessaires à la constitution des inscriptions n’y apparaissent pas. Au contraire, l’enquête révèle que
Lorsque l’on s’intéresse aux actes essentiels de la programmation informatique, on constate qu’ils impliquent l’alignement des inscriptions, le contournement d’impasses et la définition de scénarios. Ces trois modes de pratiques sont intimement liés : le contournement des impasses implique la localisation d’un phénomène problématique qui nécessite lui-même un scénario (p. 194).
9La difficulté principale réside de fait dans la distinction entre d’une part le processus de programmation, et de l’autre son résultat.
10La troisième et dernière partie se penche sur le rôle de la « formulation » dans la constitution de l’algorithme. Il s’agit pour l’auteur d’élucider comment, quand et pourquoi les connaissances mathématiques tiennent une place si importante dans la genèse pratique des algorithmes. Le chapitre cinq propose alors de faire sens de la connaissance mathématique comme relevant d’une forme de rhétorique (p. 207). En montrant comment les formules, systèmes, théorèmes et autres conjectures sont autant d’objets qui ont, au cours de l’histoire de la discipline mathématique, sédimenté dans le formalisme : cela les a certes rendus manipulables comme instruments ; mais dans le même temps, ces objets sont devenus lisses et difficilement accessibles. C’est ici l’ontologie plate des mathématiques qui se trouve discutée, en ce qu’elle offre en fait un modèle aux entités qui essayent d’en acquérir la forme (p. 201), sans pour autant que soient restituées les « cascades de traductions nécessaires pour connecter des entités non-mathématisées avec des faits mathématiques avérés » (p. 232). Par « formulation », on peut ainsi entendre « le processus empirique de traduction d’une entité indéfinie jusqu’à ce qu’elle acquière la même forme qu’un objet mathématique déjà défini » (pp. 234-235).
11L’étude de cas, discutée au chapitre 6, montre comment ces pratiques largement ignorées, au cours desquelles sont mises en relation des entités ontologiquement distinctes a priori par l’entremise de traductions successives, façonnent peu à peu des entités plus aisément manipulables, malléables. Ces entités mathématisées sont alors à même d’être enrôlées dans des scénarii eux-mêmes transposables dans des séquences de programmation (p. 258) : c’est en ceci qu’il faut comprendre le concept de « formulation » : comme une mise en forme facilitant l’écriture des scripts activant l’algorithme. Reprenant le cours de son argumentation, Florian Jaton insiste enfin sur le fait que les trois moments identifiés (« ground-truthing », « programming » et « formulating »), bien qu’essentiels tels que révélés par son terrain, ne sont sans doute pas les seuls à contribuer à l’émergence des algorithmes : d’autres ethnographies seront nécessaires pour compléter cette première représentation, mais on peut d’ores et déjà percevoir, à travers les trois moments caractérisés, différentes strates enchevêtrées dans la constitution d’un modèle computationnel.
12Au moment de conclure sa réflexion, Florian Jaton qualifie d’« ogre » son objet d’étude (p. 283) : l’on comprend pourquoi, une fois l’ouvrage traversé. De fait, les dernières pages du manuscrit développent des propos sur le sous-texte politique poursuivi par l’auteur, un sous-texte sans doute trop peu présent dans la restitution ethnographique proposée. Certes, l’enquête aurait pu porter sur des algorithmes plus extraordinaires, plus controversés aussi. Elle aurait également pu mobiliser un discours plus critique sur les biais générés par les pratiques identifiées. Dans le même temps, les études faisant la part belle à la description des objets techniques se laissent souvent dévorer par leur objet, lequel tend à accaparer leur auteur dans un travail descriptif, qui est ici qualifié de « fastidieux » (p. 284). Les tenants de la sociologie des sciences et de l’acteur réseau ont souvent été critiqués pour leur supposée cécité aux enjeux politiques portés par les dispositifs qu’ils décrivent patiemment : si certains ont cherché à outrepasser cette critique (ainsi récemment de MacKenzie, 2021, p. 14 sq.), en essayant de tenir les deux bouts de l’analyse, force est de constater qu’il reste difficile de ne pas favoriser l’une ou l’autre perspective. En définitive, et comme beaucoup d’autres avant lui, Florian Jaton fait le choix de suggérer les enjeux politiques de son travail, préférant porter l’effort sur le travail à visée phénoménologique, quitte à générer une forme de frustration chez le lecteur. C’est aussi là le mérite principal de l’ouvrage, que d’offrir une vue désenchantée de la magie performative de l’algorithme, en en exhumant les facettes constitutives dans leur banalité atone.