Le 23 mars dernier, le groupe de travail sur la plateforme Callisto s’est rassemblé pour une première rencontre. Les échanges se sont concentrés sur les pratiques et les usages des plateformes d’« écriture exécutable » de type JupyterLab.

Un premier constat relève de la diversité des contextes d’usage : que ce soit en contexte pédagogique avec l’utilisation de notebooks comme support d’enseignement, ou dans une phase d’analyse exploratoire d’un corpus par une équipe de recherche, ou encore dans une démarche de publication de résultats de recherche dans des formes alternatives de communication scientifique. Selon ces contextes, les pratiques peuvent être individuelles ou collectives, s’appuyer sur une instance collective ou sur des instances locales de la plateforme Jupyter.

Je liste ici quelques usages évoqués lors des échanges :

  • prototypage de traitements par les chercheur·e·s en amont d’une implémentation plus solide par un développeur. Dans ce cas, les chercheur·e·s initient la «réflexion algorithmique»
  • visualisation en temps réel des données utilisées pour la rédaction d’un ouvrage en cours d’écriture. Les carnets interviennent directement dans le processus d’écriture, apportant une certaine réflexivité de l’auteur sur son ouvrage.
  • conception de chaîne de traitement pour l’exploration et le requêtage d’une base de données. L’équipe de Modoap évoque l’intérêt de «narrativiser le code» et d’expliciter aux utilisateurs ce qui se passe.
  • en contexte pédagogique, les notebooks sont utilisés pour produire des documents de prise en main de librairies, des exercices d’analyses.
  • écriture d’«articles interactifs» (executable papers) en association avec la plateforme MyBinder pour rendre le contenu accessible et exécutable sans création de compte.
  • partage de visualisations interactives, notamment au format Voila déployé sur Heroku.

Collaborations et littératie

Plus particulièrement, les discussions ont fait ressortir un point qui nous semble essentiel et qui vient confirmer la pertinence d’une plateforme Jupyter dans le contexte des SHS. L’écriture exécutable vient en effet ouvrir un espace de collaboration d’un type nouveau où s’articulent écriture discursive et écriture programmative. Un tel espace collaboratif permet en fait à des personnes aux compétences complémentaires de véritablement travailler ensemble. Une fois couplés à des répertoires git, les notebooks s’inscrivent alors dans un véritable écosystème collaboratif, profitant à la fois d’un espace commun d’écriture (le notebook), d’un espace collaboratif de stockage et de versionning du notebook (git), et d’un espace reproductible d’exécution du notebook.

Cela ouvre à de toutes nouvelles relations entre les chercheur·e·s, les ingénieur·e·s et les développeur·e·s ou les data-scientists mobilisé·e·s sur les projets de recherche : itération, appropriation successive, paramétrage d’algorithme, débug. Toutes ces activités relèvent d’une écriture collective établissant de nouvelles bases de collaboration au sein des équipes. Outre une dynamique vertueuse de travail et de recherche, il y a aussi dans cette écriture collective l’opportunité pour les chercheur·e·s de SHS de monter en compétence1 dans des domaines trop souvent sous-traités à des informaticiens.

On comprend alors l’intérêt particulier pour la communauté SHS d’investir de telles méthodologies de travail.

Pour rejoindre le groupe de travail du HN Lab sur l’écriture exécutable, écrivez nous.

  1. On l’a vu notamment pour une équipe de recherche ayant missionné un développeur dont la première action a été de former les chercheur·e·s à l’usage du protocole git