Déployer le livre
Introduction #
Déployer le livre. Voilà une invitation adressée à toute personne désireuse de comprendre comment un texte devient une publication via l’usage de processus issus du développement informatique. Nous nous proposons d’explorer la question de la fabrication du livre dans ses multiples expressions.
Les formes du livre n’ont probablement jamais été aussi multiples, un même texte pouvant désormais avoir plusieurs artéfacts différents, homothétiques ou non. L’édition dans le vaste champ littéraire connaît aujourd’hui une forme d’hybridation (Citation: Ludovico & Cramer, 2016) Ludovico, A. & Cramer, F. (2016). Post-digital print: la mutation de l’édition depuis 1894. Éditions B42. . Le livre a désormais des formes plurielles, parallèles ou complémentaires, imprimées ou numériques, auxquelles nous nous sommes plus ou moins habitué·e·s (Citation: Epron & Vitali-Rosati, 2018) Epron, B. & Vitali-Rosati, M. (2018). L’édition à l’ère numérique. La Découverte. Retrieved from https://www.cairn.info/l-edition-a-l-ere-numerique--9782707199355.htm : qu’il s’agisse d’un livre imprimé en offset, issu d’un processus d’impression à la demande, diffusé au format EPUB, disponible sous la forme d’un livre web ou d’un jeu de données. Il est désormais techniquement possible de générer presque automatiquement les fichiers nécessaires à ces différentes productions, grâce à des programmes informatiques. Depuis une même source, le livre se déploie. Ces pratiques d’édition numérique sont multiples, ces mises en œuvre méritent que nous nous y attardions, que nous les analysions.
Le terme déployer est utilisé dans le domaine du développement informatique pour signifier qu’un programme est mis en application. Il peut s’agir autant d’un site web que d’un logiciel. Les lignes de code s’activent selon des règles établies et dictées. Ces nouvelles méthodes de fabrication (Citation: Flusser, 2002, p. 57) Flusser, V. (2002). Petite philosophie du design. Circé. du livre doivent être étudiées afin de comprendre quelles influences elles peuvent avoir sur les processus d’écriture et de conception des textes (Citation: Audet, 2015) Audet, R. (2015). Écrire numérique : du texte littéraire entendu comme processus. Itinéraires. Littérature, textes, cultures(2014-1). https://doi.org/10.4000/itineraires.2267 . Il ne s’agit pas de la question de l’automatisation en soit, mais plutôt de celle de l’agencement des différentes étapes de ces déploiements et de la façon de les exprimer. Notre intérêt se porte sur les conditions d’existence des artéfacts, reflet d’une certaine vision du monde.
Plusieurs questions en lien avec l’édition numérique tout autant que les pratiques littéraires peuvent être posées. Les scripts utilisés pour déployer les livres sont-ils les nouveaux gestes éditoriaux ? Viennent-ils remplacer les mains qui relient les pages, les muscles qui serrent la presse typographique, les doigts sur le clavier qui activent les fonctions d’un logiciel, les algorithmes secrets des logiciels propriétaires ? À travers une analyse des questions littéraires, techniques et éditoriales, et avec l’aide de présentations d’initiatives éditoriales autant que programmatiques, nous nous proposons d’étudier ces modalités de production et de diffusion des livres, à la croisée des études du livre et des critical code studies (Citation: Marino, 2020) Marino, M. (2020). Critical Code Studies. MIT Press. .
Cette communication s’inscrit dans le colloque Études du livre au XXIe siècle qui se déroule progressivement pendant les mois de mars à mai 2021. Cette entreprise s’établit selon une recherche performative, les lignes que vous lisez sont elles aussi déployées, au fur et à mesure, à raison d’un nouvel épisode tous les jours ou tous les deux jours, entre le 10 et le 24 mars. Pour suivre les mises en ligne successives des fragments rendez-vous sur deployer.quaternum.net.
De quoi déployer est-il le nom ? #
Déployer n’est pas un terme courant dans le domaine de l’édition, même numérique, il est donc nécessaire de comprendre le lien qui peut exister entre ce verbe transitif et le livre.
Les différentes définitions du terme déployer s’accordent sur plusieurs caractéristiques communes : étendre, disperser, dérouler ou développer. Qu’il s’agisse d’une action physique ou figurative, il y a dépliement de quelque chose qui était là, mais partiellement ou totalement invisible. Les ailes d’un oiseau, les parties d’une feuille pliée, les détails d’une idée, les éléments d’un plan : déployer est un verbe transitif, il concerne quelque chose. Une recherche conjointe des termes « livre » et « déploiement » nous entraîne dans un vaste océan de rapports bureaucratiques et autres documents administratifs éloignés d’un geste éditorial qui concernerait un livre. Pourquoi alors parler de déploiement pour le livre ?
Faisons un détour par un domaine où ce terme est largement exploité : l’informatique. Celles et ceux qui sont habitué·e·s à côtoyer des programmes ou des lignes de code ont peut-être déjà aperçu la notion de déploiement et plus spécifiquement celle de déploiement continu. Un programme informatique est une suite d’instructions exécutées par un ordinateur, le déploiement continu consiste à définir des règles pour cette exécution, cette mise en action. L’objectif ici est d’automatiser le déclenchement d’un ou de plusieurs programmes, avec des paramètres, par exemple en spécifiant des conditions — si le programme A a fini de s’exécuter le programme B peut démarrer. Le déploiement continu, ou intégration continue, a fait son apparition dans le développement informatique au début des années 2010 pour faciliter la production de programmes (Citation: Shahin & Ali Babar & & al., 2017) Shahin, M., Ali Babar, M. & Zhu, L. (2017). Continuous Integration, Delivery and Deployment: A Systematic Review on Approaches, Tools, Challenges and Practices. IEEE Access, 5. 3909–3943. https://doi.org/10.1109/ACCESS.2017.2685629 . Il y a évidemment un objectif mercantile derrière cette pratique — rapidité, reproductibilité, rentabilité —, mais c’est aussi un moyen de rendre plus confortable l’environnement de travail des développeurs et des développeuses, aussi appelé developer experience (Citation: Coyier, 2020) Coyier, C. (2020). What is Developer Experience (DX)?. Retrieved from https://css-tricks.com/what-is-developer-experience-dx/ . En poussant les modifications d’un programme informatique, une personne lance automatiquement un déploiement sur l’ordinateur qu’elle utilise ou sur un serveur à l’autre bout de la planète, que ce soit des tests, de la production de fichiers, une diffusion, etc. Des plateformes accessibles au grand public permettent de mettre en pratique relativement facilement du déploiement continu, comme GitLab CI/CD (https://docs.gitlab.com/ee/ci/introduction/index.html) — quelques exemples seront présentés par la suite. D’un certain point de vue le déploiement continu est une façon de déporter les scripts d’automatisation utilisés depuis longtemps dans le domaine informatique — de la même façon que l’informatique dans les nuages n’est que le fait de faire fonctionner certains services sur l’ordinateur d’un·e autre.
Le lien avec le livre se dessine peu à peu, il est aisé de deviner ce que peut apporter le déploiement continu à l’édition : activer des programmes capables de produire différents artefacts comme un fichier PDF destiné à l’impression, un fichier EPUB pour de la diffusion numérique, des documents XML pour des plateformes, etc. Même en faisant abstraction des ressorts informatiques, décrire l’acte d’édition comme un déploiement est assez cohérent. Activer la presse, déplier les feuilles d’impression, disperser les exemplaires d’un livre, les exemples ne manquent pas pour prouver que le livre se déploie depuis ses origines. Nous parlons bien de conception, de fabrication, de production et de diffusion, dans l’objectif de rendre disponible un texte. Cette idée du déclenchement d’actions en fonction des nécessités de production éditoriale raisonne avec la définition de l’édition et plus spécifiquement en tant que processus (Citation: Epron & Vitali-Rosati, 2018, p. 6) Epron, B. & Vitali-Rosati, M. (2018). L’édition à l’ère numérique. La Découverte. Retrieved from https://www.cairn.info/l-edition-a-l-ere-numerique--9782707199355.htm . Deux des trois étapes ou fonctions de ce processus peuvent être régies par un système basé sur le déploiement continu : les fonctions de production et de diffusion comme évoqué précédemment. Le prototypage des artéfacts, la fabrication du livre, la production des exemplaires, mais aussi la diffusion de ces objets — physiques ou numériques — via différents canaux, ainsi que celle de leurs métadonnées : il est possible de se dégager de manipulations répétitives via l’utilisation de protocoles éditoriaux traduits en commandes informatiques. Les conditions d’existence d’une publication, ces « dynamiques » (Citation: Vitali Rosati, 2016) Vitali Rosati, M. (2016). Qu’est-ce que l’éditorialisation ?. Sens Public(2016). Retrieved from http://www.sens-public.org/article1184.html , peuvent être énumérées dans un système basé sur le déploiement continu, et ainsi traduire autrement le geste éditorial (Citation: Ouvry-Vial, 2007) Ouvry-Vial, B. (2007). L’acte éditorial : vers une théorie du geste. Communication & langages(154). 59–74. https://doi.org/10.3406/colan.2007.4691 . En parallèle du processus d’édition considéré de façon générique, la question de l’hybridation développée par Alessandro Ludovico (Citation: Ludovico & Cramer, 2016) Ludovico, A. & Cramer, F. (2016). Post-digital print: la mutation de l’édition depuis 1894. Éditions B42. nourrit également le lien entre le déploiement continu et le livre. Comment co-existent ou s’articulent plusieurs expressions ou matérialisations d’un même livre ? Que ce soit une lettre d’information, un livre web, un fichier PDF en basse résolution, un livre imprimée à la demande ou encore une édition de luxe, il faut pouvoir produire différentes versions, peut-être à partir d’une même source. En définissant des règles et des conditions, reposant sur des modèles distincts, la fabrication de ces artéfacts peut être facilitée — nous reviendrons sur cette question de facilitation qui ne peut être réduite à une recherche de rentabilité. La condition de réalisation de l’hybridation pourrait être le déploiement continu.
Ces aspects de définition permettent d’envisager de façon théorique le déploiement continu dans le cas du livre. Il faut observer comment se constituent ces différent rouages techniques, et notamment l’agencement des étapes du processus d’édition dans une perspective multimodale ou d’hybridation. Nous listerons les contraintes de telles pratiques pour ensuite découvrir les cas pratiques de plusieurs expérimentations éditoriales, l’occasion d’étudier les frictions avec le livre.
Dessine moi un déploiement continu #
Pour comprendre le fonctionnement du déploiement continu, décrivons et schématisons les étapes qui le constituent.
Le fonctionnement sommaire et générique est fait de plusieurs étapes liées les unes aux autres, des espaces de travail qui permettent de guider un processus vers son accomplissement. Ainsi le déploiement continu est souvent décrit en trois étapes successives comme indiqué dans la figure 1, le déclenchement de l’étape suivante dépendant du succès de la précédente :
- une phase de test pour vérifier que la source (le code) répond aux attentes initiales et qu’il ne comporte pas d’erreurs ;
- une phase de production qui consiste à transformer les fichiers sources en un produit utilisable, typiquement un logiciel exécutable ou un site web ;
- une phase de déploiement pour rendre disponible cette version de l’application — logiciel, site web ou application définissant le produit final.
Cette description relativement abstraite peut être complétée par un cas pratique avec la figure 2 et l’exemple du déploiement d’un site web :
- une phase de test : vérification du balisage des pages HTML et de la présence d’informations diverses comme des métadonnées ;
- une phase de production : assemblage des différents fichiers HTML avec les dépendances comme les feuilles de styles et les scripts pour les éléments interactifs ;
- une phase de déploiement : l’envoi des fichiers sur un serveur web qui servira le site web aux personnes qui en demanderont l’accès.
Afin d’illustrer brièvement cette relation entre informatique et édition, nous pourrions prolonger cet exemple avec le cas d’une édition critique en TEI : la phase de test consisterait en la vérification des fichiers XML en rapport avec un schéma précis ; la phase de production concernerait la conversion des fichiers XML vers des formats HTML via des feuilles de transformation en XSLT ; la phase de déploiement enfin serait l’envoi des fichiers transformés sur un serveur web via un protocole de transfert comme SSH.
Avant d’explorer des expérimentations littéraires et éditoriales, des précisions sont nécessaires pour ne pas rester sur une apparente linéarité dans ce processus. Tout d’abord ces étapes peuvent être plus nombreuses et les dépendances entre elles peuvent être plus complexes, les règles et les conditions peuvent s’entremêler et constituer ainsi un mécanisme aux conditions multiples. Ensuite il faut ajouter une dimension supplémentaire. Plusieurs environnements de déploiement, qui ont une même source, peuvent cohabiter et ainsi permettre d’envisager l’enchevêtrement de phases de travail. Nous verrons dans une prochaine partie sur les conditions du déploiement continu que ces environnements se matérialisent sous la forme de branches. Enfin il apparaît déjà ici une dimension bien plus large que celle de l’édition. La formulation des règles d’exécution est une écriture (Citation: Vitali-Rosati, 2020) Vitali-Rosati, M. (2020). Qu’est-ce que l’écriture numérique ?. Corela. Cognition, représentation, langage(HS-33). https://doi.org/10.4000/corela.11759 , au même titre que le texte qui pourrait être concerné par un tel processus de déploiement continu.
À la suite de cette tentative de schématisation du déploiement continu, nous allons explorer des initiatives éditoriales et littéraires, afin de constater comment se concrétise ce fonctionnement issu du domaine informatique.
Des livres déployés #
Comment le déploiement continu peut être utilisé pour fabriquer des livres ?
Comme nous l’avons vu, le déplacement de l’usage du déploiement continu depuis l’informatique vers l’édition est un mouvement cohérent d’un point de vue théorique, et plus précisément pour la matérialisation des fonctions du processus éditorial, ou pour les conditions de réalisation de l’hybridation et les besoins de production d’artefacts. Des implémentations pratiques peuvent également être observées, les premières initiatives viennent des domaines de la documentation technique et des manuels, la porosité entre intérêt technique et démarche éditoriale étant plus forte. L’objectif est à la fois de donner un cadre de travail à des auteurs, autrices, éditeurs et éditrices qui ont une culture technique qui coïncide avec une reconfiguration des processus d’édition, mais également de chercher à automatiser facilement certaines tâches répétitives. Les raisons pour lesquelles la majorité des structures d’édition n’adoptent pas ces pratiques peuvent être de deux types : les compétences techniques évoquées précédemment, et plus précisément celles nécessaires à la mise en œuvre de chaînes éditoriales basées sur le déploiement continu — ce point sera traité dans la partie suivante ; les outils habituellement utilisés, comme les traitements de texte et les logiciels de publication assisté par ordinateur, qui imposent un fonctionnement spécifique et notamment l’imperméabilité des étapes d’édition entre elles.
La démarche de Thomas Parisot, pour la publication de son livre Node.js : apprendre par la pratique (https://oncletom.io/node.js/), est une illustration du rapprochement entre informatique et édition (Citation: Parisot & Fauchié, 2018) Parisot, T. & Fauchié, A. (2018). Repenser les chaînes de publication par l’intégration des pratiques du développement logiciel. Sciences du Design, n° 8(2). 45–56. Retrieved from http://www.cairn.info/revue-sciences-du-design-2018-2-page-45.htm , et du principe du déploiement continu. À chaque modification d’un fichier source, le livre est généré en un format web disponible en ligne, ainsi qu’en des formats que peut utiliser l’éditeur pour fabriquer l’ouvrage avec des outils plus classiques — en l’occurrence un traitement de texte et un logiciel de publication assisté par ordinateur. Chaque enregistrement déclenche une action, par l’intermédiaire de programmes — comme les quelques lignes le présentent ci-dessous.
script:
- ./bin/cli.js --help
- npm test
- make build-html
- make build-odt
- xmllint --noout dist/book.fodt 2>&1
Fragment du script permettant de générer plusieurs formats à partir d’une même source.
Pourquoi adopter une telle pratique ? L’auteur n’a qu’à paramétrer une fois la production des versions intermédiaires de son livre, versions qui facilitent ensuite les relectures. L’éditeur peut obtenir plus facilement des formats adéquats utiles pour sa propre chaîne d’édition, sans que l’auteur n’ait à réaliser des opérations fastidieuses pour produire ou transmettre ces formats — parfois exigeants. Ne nous y trompons pas, le domaine concerné se prête bien à ce type d’expérimentation, et les connaissances de Thomas Parisot lui ont permis d’envisager un tel fonctionnement.
Les éditions Abrüpt orientent certains de leurs projets littéraires vers le même type de pratique éditoriale. Maison d’édition suisse consacrée à des auteurs et autrices contemporaines, ou à des rééditions de textes du vingtième siècle, Abrüpt propose des livres radicaux dans leurs propos et dans leurs formes. Ces formes sont diverses, les antilivres statiques côtoient ainsi les antilivres dynamiques (Citation: Fauchié, 2021) Fauchié, A. (2021). L’antilivre dynamique des éditions Abrüpt : la littérature insaisissable. In Littérature et design. Visualités et visualisations du texte en régime numérique.. Presses du réel (À paraître). , ces derniers pouvant être présentés comme des objets numériques non homothétiques. Pour produire ces différentes formes des scénarios sont pensés et décrits, puis traduits par des scripts, des instructions écrites par des humains que des programmes vont appliquer. Cela signifie que des règles sont établies pour transformer des fichiers, pour les assembler, afin de fabriquer des objets comme un site web, un fichier PDF pour l’impression ou encore un livre numérique au format EPUB.
Et il y a de la littérature jusque dans les lignes de code qui automatisent certaines manipulations, notamment les messages confirmant la conversion réussie de certains fichiers, par exemple « Vous contemplez le vide. Et le vide vous contemple. » (source). Si le déploiement continu tel que décrit jusqu’ici n’est pas totalement à l’œuvre pour les ouvrages d’Abrüpt, tous les composants sont présents. Car le déploiement continu nécessite des conditions spécifiques, ce que nous devons détailler dans la prochaine partie.
Avant de décrire les conditions du déploiement continu, il faut mentionner ici deux points essentiels. Le premier concerne les différents niveaux que porte l’expression « déployer le livre » : il peut s’agir d’actions simples comme le fait de mettre à disposition des fichiers, typiquement une diffusion numérique est déclenchée à chaque enregistrement, le dépôt de fichiers n’est donc plus fait manuellement sur des serveurs ; des actions plus complexes comme la génération de fichiers via l’appel de programmes et l’application de modèles peuvent permettre la création de fichiers. Le deuxième point est un avertissement : ces processus ne sont pas des pratiques secondaires par rapport aux tâches plus classiques d’édition. Pourquoi cet avertissement ? Considérer ces questions sous l’angle de la seule technique en tant que moyen serait une erreur. De la même façon que le réglage des outils d’écriture des auteurs et autrices n’est pas un détail (Citation: Bon, 2011) Bon, F. (2011). Après le livre. Éditions du Seuil. , les rouages de ces déploiements est partie intégrante d’une performance littéraire (Citation: Audet, 2015) Audet, R. (2015). Écrire numérique : du texte littéraire entendu comme processus. Itinéraires. Littérature, textes, cultures(2014-1). https://doi.org/10.4000/itineraires.2267 , d’une démarche d’écriture, d’édition, de fabrication (Citation: Flusser, 2002) Flusser, V. (2002). Petite philosophie du design. Circé. .
Les conditions du déploiement #
Choisir le déploiement continu pour fabriquer des livres implique des conditions précises.
Le déploiement continu est une chaîne de traitements automatisée ou semi-automatisée. Appliquée à l’édition, le déploiement continu permet de concevoir et de produire des livres. L’adoption de ce processus est pertinent dès qu’il y a plus d’une forme ou expression pour un même objet éditorial. En d’autres termes le déploiement continu se prête bien à l’édition multimodale. À plusieurs reprises les formes du livre ont cohabité, et cela depuis l’apparition du codex (Citation: Manguel & Le Bœuf, 1998, p. 157) Manguel, A. & Le Bœuf, C. (1998). Une histoire de la lecture. Actes Sud. : le codex aux côtés du volumen, les grands comme les petits formats, les qualités de papier ou d’impression, etc. Le numérique permet désormais d’envisager un déploiement des artefacts d’un même livre, et cela dès que nous considérons l’édition numérique comme autre chose qu’une reproduction des pratiques analogiques. Il faut s’éloigner d’une édition homothétique qui tente de reproduire, avec un ordinateur, et avec un certain échec, la beauté du geste des machines mécaniques. Reconsidérer les pratiques d’édition — avec le numérique — requiert une reconfiguration profonde de nos pratiques mais également de notre rapport aux outils, aux logiciels et aux programmes que nous utilisons.
Il est certain que la fabrique de l’avenir sera beaucoup plus souple que celle d’aujourd’hui, et tout aussi certain qu’elle donnera du rapport entre l’homme et l’outil une formulation entièrement renouvelée.
(Citation: Flusser, 2002, p. 60) Flusser, V. (2002). Petite philosophie du design. Circé.
Un processus dit de déploiement continu est conditionné par plusieurs contraintes. La première condition est la façon d’écrire les fichiers source, les fragments qui composeront le livre. D’habitude concentré dans des fichiers issus de traitements de texte (que ce soit des logiciels ou des services en ligne) ou de logiciels de publication assistée par ordinateur, le texte doit être décomposé. Cela signifie que les fichiers puissent être lus et analysés facilement par des programmes, il faut qu’ils soient à plat, comme des fichiers dits plein texte. Travailler avec des fichiers texte est une habitude dans certains domaines éditoriaux techniques, c’est une pratique encore rare dans la plupart des autres sphéres du livre. Le rapport au texte et à sa matérialisation est renversé : plutôt que d’attribuer des caractéristiques graphiques au texte, il faut lui donner une sémantique, le structurer. Le balisage est une façon d’attribuer du sens au texte tout en conservant une lisibilité à la fois du texte lui-même et de cette couche sémantique. Qu’il soit léger, complexe ou normalisé, le balisage est une approche compréhensible (voir lisible pour le balisage léger) pour les humains, et pour les machines. C’est à partir de ce balisage que les différentes formes du livre peuvent être produites, via des convertisseurs ou des générateurs qui se chargent de transformer les fichiers sources en formats PDF, EPUB, HTML, etc.
La deuxième condition est la gestion des fichiers, l’utilisation d’un système de gestion de versions ouvre des perspectives puissantes. La gestion de versions consiste au suivi des fichiers qui composent un projet — un livre dans notre cas —, suivi qui se fait par plusieurs personnes de façons synchrone et asynchrone. Git est un logiciel de gestion de versions dont des plateformes de partage de code comme GitLab ou GitHub ont permis une certaine popularité. Git est basé sur plusieurs principes pour gérer du texte (et plus spécifiquement du code) et le publier, nous pouvons en citer quelques-uns : chaque série de modifications est identifiée et décrite dans un commit qui contient une capture de l’ensemble des fichiers d’un projet, il est ainsi possible de naviguer dans l’historique du projet et de retrouver ses différentes composantes à n’importe quel moment ; les commits constituent un graphe de contributions qui peut être organisé en branche, offrant la possibilité de travailler à n’importe quel moment sur une version spécifique du projet. Des plateformes comme GitLab ou GitHub, ou des services tiers branchés sur celles-ci, permettent de réaliser des actions qui sont déclenchées à chaque modification, à chaque commit. Ainsi des opérations sont réalisées de façon automatique, avec comme déclic une intervention sur un fichier, et qui plus est en prenant en compte une branche spécifique. Plusieurs personnes interviennent ainsi sur plusieurs fichiers et plusieurs branches, générant différents artefacts.
D’autres modèles sont possibles, mais celui-ci offre suffisamment de souplesse (Citation: Flusser, 2002) Flusser, V. (2002). Petite philosophie du design. Circé. , que ce soit du point de vue de la lisibilité, de l’interopérabilité, de la perméabilité, de l’évolutivité ou de la reproductibilité. Sans détailler ces différents points, nous pouvons tout de même prendre un exemple, un projet de livre qui se base sur le déploiement continu implique plusieurs choses : l’utilisation de fichiers texte balisés, fichiers qui seront encore lisibles dans dix ou vingt ans ; ces fichiers peuvent être utilisés quelque soit l’environnement de travail des personnes qui interviennent dessus ; de nouvelles formes peuvent être produites sans se soucier du format des sources ; un projet peut être dupliqué pour le détourner et utiliser tout ce qui est autour du texte (modèle de structuration, mise en forme). Par ailleurs ce modèle inspiré des pratiques de l’informatique offre la possibilité de profiter d’une communauté active et ouverte, habituée notamment à travailler en agilité ou avec une approche d’amélioration progressive.
Ces conditions, qui sont aussi des contraintes, apportent d’autres avantages en dehors même du déploiement continu : elles donnent un cadre de travail et structurent les étapes d’édition ; elles repositionnent notre rapport aux programmes et aux machines en formulant explicitement les instructions ; elles sont aussi une description réflexive des intentions éditoriales, une « programmation lettrée » (Citation: Knuth, 1984) Knuth, D. (1984). Literate Programming. The Computer Journal, 27(2). 97–111. https://doi.org/10.1093/comjnl/27.2.97 dans laquelle plusieurs niveaux de texte co-existent — le contenu, le balisage du contenu, les règles d’exécution pour la production. Éditer est une démarche profondément technique, abstraction faite de considération numérique, il s’agit d’un déploiement de la pensée. Le déplacement des usages des logiciels classiques vers un ensemble de fichiers balisés et d’instructions sous forme de code est une autre expression de l’écriture comme technologie (Citation: Bolter, 2001) Bolter, J. (2001). Writing space : computers, hypertext, and the remediation of print (2nd ed.). Lawrence Erlbaum Associates. . Plus encore, il s’agit d’une écriture complète et réflexive, le texte est autant décrit et structuré que la fabrique elle-même qui le porte. Le texte, la fabrique et les artefacts sont donc trois phénomènes d’une même intention éditoriale.
Les étapes du déploiement #
Observons les étapes du déploiement dans le cas d’un livre numérique.
Si nous avons jusqu’ici donné quelques exemples du déploiement continu, revenons en détail sur les différentes étapes d’un processus pour fabriquer et produire un livre numérique. Appliquées à un projet éditorial, les conditions présentées précédemment s’agencent et donnent forme à une chaîne d’édition. Nous prenons le cas d’un livre numérique au format livre web (Citation: Fauchié, 2017) Fauchié, A. (2017). Le livre web comme objet d’édition ?. In Design et innovation dans la chaîne du livre. (pp. 141–158). PUF. , ce format ou cette forme regroupant un certain nombre de caractéristiques pertinentes pour le mode de déploiement continu.
Dans la figure 4 ci-dessus nous pouvons noter plusieurs points importants :
- le dépôt du projet contient tous les fichiers, organisés et versionnés, ces fichiers sont à plat, lisibles par des humains et des programmes informatiques ;
- plusieurs versions d’un ensemble de fichiers peuvent cohabiter, pour plus de lisibilité ces versions sont nommées branches — ici branche de développement et branche de production —, la branche est un concept emprunté au logiciel de gestion de versions Git ;
- à chaque branche correspond un environnement de déploiement : un ensemble d’instructions comprenant l’activation de programmes et le déplacement des fichiers produits — ces fichiers formant les artefacts ;
- la différence entre ces deux environnements de déploiement est ici le serveur qui donne accès au résultat final : un serveur de développement comme espace d’édition intermédiaire ou temporaire, et un serveur de production comme espace de publication ou d’accès public finalisé ;
- les instructions de déploiement peuvent diverger d’une branche à une autre, ouvrant des possibles pour produire des artefacts très différents avec une base néanmoins commune.
Nous ne pouvons pas préciser chaque brique technique issue des technologies de l’édition numérique (Citation: Blanc & Haute, 2018) Blanc, J. & Haute, L. (2018). Technologies de l’édition numérique. Sciences du design, 8(2). 11–17. Retrieved from https://www.cairn.info/revue-sciences-du-design-2018-2-page-11.htm , mais celles qui sont convoquées ici peuvent être qualifiées d’ouvertes, de non conventionnelles ou encore de modulaires. Un ensemble de solutions techniques qui sont orchestrées par ce processus qu’est le déploiement continu.
Vers une modélisation #
Et si le déploiement continu n’était qu’une modélisation technique de l’édition en tant que processus ?
Matérialiser un dispositif intellectuel prend diverses formes, l’édition en est une, d’abord via des procédés manuels, puis mécaniques et désormais numériques. Manipuler un texte, faire circuler un document en cours d’écriture, concevoir un objet de publication, fabriquer puis produire un livre : les solutions techniques pour éditer existent depuis plusieurs siècles, l’informatique est le prolongement de ces recherches.
Le déploiement continu, utilisé dans le domaine du livre, constitue une forme de détournement, de hack. Pensé d’abord pour produire des programmes, des logiciels, des applications ou des sites web, il n’a pas été conçu pour fabriquer des livres. Pratique déjà ancienne dans le domaine informatique, des logiciels comme Jenkins (www.jenkins.io) ou des plateformes comme GitLab (www.gitlab.com) ont facilité son appropriation. Nous l’avons vu, des initiatives éditoriales s’emparent de ces outils pour publier des livres. Un processus comme le déploiement continu n’est pas accessible sans une certaine maîtrise du numérique, pourquoi alors se diriger vers ce qui semble d’une grande complexité ? Avant d’éditer, pensez d’abord à ce qui vous permet d’éditer — pour reprendre et détourner les mots de Servanne Monjour (Citation: Monjour, 2021) Monjour, S. (2021). Abrüpt : vers une Gittérature ?. Retrieved from https://smonjour.gitpages.huma-num.fr/litterature-git/ : en hackant le déploiement continu, des éditeurs et des éditrices questionnent leur façon de faire.
Les technologies de l’édition numérique ont une histoire (Citation: Blanc & Haute, 2018) Blanc, J. & Haute, L. (2018). Technologies de l’édition numérique. Sciences du design, 8(2). 11–17. Retrieved from https://www.cairn.info/revue-sciences-du-design-2018-2-page-11.htm , dans laquelle le déploiement continu s’inscrit aujourd’hui, en se basant notamment sur le balisage sémantique, des convertisseurs de documents ou de formats, ou encore la gestion de versions. Il ne s’agit pas d’une rupture mais d’une évolution elle aussi continue — logique ? —, le prolongement de recherches en matière de fabrication du livre. Écrire l’algorithme du déploiement continu consiste en la description des instructions pour les programmes : cet algorithme n’est rien d’autre que la formulation de ce qui n’était peut-être pas totalement formulé. Le processus d’édition est déplié, certaines pratiques informelles sont rendues explicites.
S’agit-il ici d’une recherche absolue de l’automatisation, comme si le livre ne méritait plus que quelques lignes de code pour pouvoir devenir artefact ? Il est indéniable qu’il s’agit de l’un des objectifs de cette méthode informatique, mais appliquée à l’édition il y a matière à expérimentation plus qu’à industrialisation. Si une certaine forme d’automatisation peut être mise en place, c’est à la condition d’une modélisation, le geste éditorial est alors déplacé dans une démarche de structuration, de compréhension et de description. Les technologies ne sont pas neutres, nous devons noter que les différents services de déploiement continu utilisent des programmes libres et des infrastructures ouvertes et documentées, ce qui a une forte influence sur la façon de diffuser cette pratique, et de penser des modèles. Le manque d’initiatives questionne l’adoption de ce mode de production, les quelques exemples présentés ici devraient être complétés par une recherche plus importante, et des analyses adéquates.
Plutôt qu’une reconfiguration de la littérature, le déploiement est une trace supplémentaire du sillage mêlé du numérique et du littéraire (Citation: Audet, 2015) Audet, R. (2015). Écrire numérique : du texte littéraire entendu comme processus. Itinéraires. Littérature, textes, cultures(2014-1). https://doi.org/10.4000/itineraires.2267 . Les règles et instructions des scripts du déploiement continu font partie du geste éditorial. L’écriture numérique n’est pas une dématérialisation de l’inscription, la modélisation du déploiement continu est une formulation en directives du processus éditorial via des langages informatiques, mais aussi une éditorialisation (Citation: Vitali Rosati, 2016) Vitali Rosati, M. (2016). Qu’est-ce que l’éditorialisation ?. Sens Public(2016). Retrieved from http://www.sens-public.org/article1184.html , une énonciation dans l’énonciation (Citation: Souchier, 2007) Souchier, E. (2007). Formes et pouvoirs de l’énonciation éditoriale. Communication & Langages, 154(1). 23–38. https://doi.org/10.3406/colan.2007.4688 .
Références #
- Audet (2015)
- Audet, R. (2015). Écrire numérique : du texte littéraire entendu comme processus. Itinéraires. Littérature, textes, cultures(2014-1). https://doi.org/10.4000/itineraires.2267
- Blanc & Haute (2018)
- Blanc, J. & Haute, L. (2018). Technologies de l’édition numérique. Sciences du design, 8(2). 11–17. Retrieved from https://www.cairn.info/revue-sciences-du-design-2018-2-page-11.htm
- Bolter (2001)
- Bolter, J. (2001). Writing space : computers, hypertext, and the remediation of print (2nd ed.). Lawrence Erlbaum Associates.
- Bon (2011)
- Bon, F. (2011). Après le livre. Éditions du Seuil.
- Bonnet (2017)
- Bonnet, G. (2017). Pour une poétique numérique: littérature et internet. Hermann.
- Chacon & Straub (2018)
- Chacon, S. & Straub, B. (2018). Pro Git Book. Retrieved from https://git-scm.com/book/fr/v2/
- Coyier (2020)
- Coyier, C. (2020). What is Developer Experience (DX)?. Retrieved from https://css-tricks.com/what-is-developer-experience-dx/
- Eghbal (2017)
- Eghbal, N. (2017). Sur quoi reposent nos infrastructures numériques ? : Le travail invisible des faiseurs du web. OpenEdition Press. Retrieved from http://books.openedition.org/oep/1797
- Epron & Vitali-Rosati (2018)
- Epron, B. & Vitali-Rosati, M. (2018). L’édition à l’ère numérique. La Découverte. Retrieved from https://www.cairn.info/l-edition-a-l-ere-numerique--9782707199355.htm
- Fauchié (2021)
- Fauchié, A. (2021). L’antilivre dynamique des éditions Abrüpt : la littérature insaisissable. In Littérature et design. Visualités et visualisations du texte en régime numérique.. Presses du réel (À paraître).
- Fauchié (2017)
- Fauchié, A. (2017). Le livre web comme objet d’édition ?. In Design et innovation dans la chaîne du livre. (pp. 141–158). PUF.
- Flusser (2002)
- Flusser, V. (2002). Petite philosophie du design. Circé.
- Knuth (1984)
- Knuth, D. (1984). Literate Programming. The Computer Journal, 27(2). 97–111. https://doi.org/10.1093/comjnl/27.2.97
- Legendre (2019)
- Legendre, B. (2019). Ce que le numérique fait aux livres. Presses universitaires de Grenoble. https://doi.org/10.3917/pug.legen.2019.01
- Ludovico & Cramer (2016)
- Ludovico, A. & Cramer, F. (2016). Post-digital print: la mutation de l’édition depuis 1894. Éditions B42.
- Manguel & Le Bœuf (1998)
- Manguel, A. & Le Bœuf, C. (1998). Une histoire de la lecture. Actes Sud.
- Marino (2020)
- Marino, M. (2020). Critical Code Studies. MIT Press.
- Monjour (2021)
- Monjour, S. (2021). Abrüpt : vers une Gittérature ?. Retrieved from https://smonjour.gitpages.huma-num.fr/litterature-git/
- Ouvry-Vial (2007)
- Ouvry-Vial, B. (2007). L’acte éditorial : vers une théorie du geste. Communication & langages(154). 59–74. https://doi.org/10.3406/colan.2007.4691
- Parisot & Fauchié (2018)
- Parisot, T. & Fauchié, A. (2018). Repenser les chaînes de publication par l’intégration des pratiques du développement logiciel. Sciences du Design, n° 8(2). 45–56. Retrieved from http://www.cairn.info/revue-sciences-du-design-2018-2-page-45.htm
- Shahin, Ali Babar & Zhu (2017)
- Shahin, M., Ali Babar, M. & Zhu, L. (2017). Continuous Integration, Delivery and Deployment: A Systematic Review on Approaches, Tools, Challenges and Practices. IEEE Access, 5. 3909–3943. https://doi.org/10.1109/ACCESS.2017.2685629
- Souchier (2007)
- Souchier, E. (2007). Formes et pouvoirs de l’énonciation éditoriale. Communication & Langages, 154(1). 23–38. https://doi.org/10.3406/colan.2007.4688
- Vitali Rosati (2016)
- Vitali Rosati, M. (2016). Qu’est-ce que l’éditorialisation ?. Sens Public(2016). Retrieved from http://www.sens-public.org/article1184.html
- Vitali-Rosati (2020)
- Vitali-Rosati, M. (2020). Qu’est-ce que l’écriture numérique ?. Corela. Cognition, représentation, langage(HS-33). https://doi.org/10.4000/corela.11759