JupyterHub

Cette application en ligne est une plate-forme scientifique, version serveur multi-langage et multi-utilisateurs  du Ipython Notebook, et de son successeur Jupyter, devenu incontournable avec la croissance fulgurante de la science des données (data science) et de l'apprentissage automatique (machine learning)

Elle est composée de deux fonctionnalités principales :

  • interface d'exécution de code, avec des programmes indépendants, les kernels, chacun "abritant" et émulant un langage. L'interaction avec le code transforme le navigateur en environnement de développement doté d'un terminal interactif. Progressivement, s'élabore un cahier interactif ou notebook, alternant cellules de programmation et leur résultat avec des commentaires ; le notebook peut être sauvegardé sur le serveur, partagé, distribué ;
  • outil d'édition qui permet de créer des documents multimédia pour documenter le code en direct avec du texte enrichi (markdown, html, css, Latex) intégrant formules, graphiques, images, vidéo.


Les documents élaborés avec Jupyter sont des carnets ou notebooks, reconnaissables à leur extension  .ipynb

La communauté constituée autour du projet est dynamique et en constante croissance ; de nombreux projets en émanent, dont toute la dernière interface, JupyterLab.

Principe

schéma de fonctionnement

Dimension pédagogique

  • outil idéal pour l 'enseignement, la recherche
  • affranchit l'enseignant de la phase fastidieuse et chronophage d'installation, de paramétrage, avec ses récurrences, sur les machines des étudiants, de l'environnement cible
  • l'enseignant dispose d'un point d'entrée unique en ligne, universel uniforme identique, avec l'encapsulation de R python Octave
  • accessible partout, tout le temps, depuis tous les appareils connectés/devices
  • de modules (package) spécifiques à ses enseignements
  • avantage des carnets numériques : intégration de code exécutable dynamiquement, multi-contenu, (document/support de cours-TP unique) : possibilité de créer, éditer un poly de cours ou des slides
  • projet universitaire à l'origine, il est largement utilisé dans le monde professionnel (media, banque, assurance, météo …)

Implémentation au CNAM

  • trois enseignants sont à l'origine du projet
  • je les ai épaulé en installant, paramétrant, et configurant l'application sur une machine de la DSI ;
    en tant qu'ingénieur je les accompagné et conseillé, et j'ai mené une veille active sur les différents aspects
  • initialisation formelle en octobre 2017 pour la mise en œuvre d'un prototype
  • après une période de tests et validation du prototype en décembre 2017, nous avons décidé d'initier un pilote avec des apprenants inscrits à des enseignements du second semestre
  • l'équipe projet s'est progressivement élargie

Un projet transversal et transdisplinaire

  • Bâtiment et énergie
  • Ingénierie mécanique et matériaux
  • Informatique
  • Mathématique et statistique
  • Industries, chimie, pharma et agroalimentaires
  • Intechmer


J'ai spécifié, installé, testé, paramétré les différents éléments et élaboré des dispositifs d'ingénierie pédagogique nécessaires au bon déroulement des enseignements
Suite à la validation de ce protype, nous avons décidé de lancer un pilote avec des apprenants inscrits à des enseignements du second semestre.

Soixante étudiants se sont répartis sur les cours suivants :

Intitulé du cours Langage(s) mis en oeuvre
Apprentissage des logiciels de calcul R et python3
Analyse de Fourier et analyse géométrique R
Ressources halieutiques R
Simulation numérique mécanique fluides python3
Traitement des données R

Les apprenants ont plébiscité l'outil, et les enseignants ont atteint, voire dépassé leurs objectifs pédagogiques respectifs.

L'implémentation se poursuit.

Un atelier JupyterHub a eu lieu lors de la journée du Numérique au Cnam, le 1er juin 2018 : un résumé du projet ainsi que exemples de travaux pratiques virtuels ont été présentés par l'équipe du projet.
 

JhubJnum
© Thierry Koscelniak 01/06/2018