---
jupytext:
  notebook_metadata_filter: rise
  text_representation:
    extension: .md
    format_name: myst
    format_version: 0.13
    jupytext_version: 1.18.1
kernelspec:
  display_name: Python 3 (ipykernel)
  language: python
  name: python3
rise:
  auto_select: first
  autolaunch: false
  centered: false
  enable_chalkboard: true
  height: 100%
  margin: 0
  maxScale: 1
  minScale: 1
  scroll: true
  slideNumber: true
  start_slideshow_at: selected
  transition: none
  width: 90%
---

+++ {"editable": true, "slideshow": {"slide_type": ""}}

# MyDocker / Planets: environnements virtuels pour l'enseignement (et au delà)

:::{image} media/planets.svg
:width: 70%
:align: right
:style: opacity:0.8;filter:alpha(opacity=100);
:::

<!--Diapos et tutoriel interactif en ligne:  
https://tutoriels-jupyter.pages.in2p3.fr/ -->

[Nicolas M. Thiéry](https://Nicolas.Thiery.name/)\
Professeur, Chargé de mission plateformes pédagogiques\
Laboratoire Interdisciplinaire des Sciences du Numérique ([LISN](https://lisn.upsaclay.fr/))\
Université Paris-Saclay

27 novembre 2025, Bootcamp VP Numériques, Lille

+++ {"slideshow": {"slide_type": "skip"}}

## Résumé

+++ {"slideshow": {"slide_type": "slide"}, "editable": true}

## Au menu

1. Mettre le numérique scientifique au bout des doigts de tous\
   Environnements virtuels, carnets numériques, Jupyter
2. Une vague de fond: potentiel million(s) d'apprenants en France\
   Enjeux, besoins d'accompagnement
3. Que peut on y faire?\
   Zoom sur MyDocker / Planets

+++ {"slideshow": {"slide_type": "slide"}}

## Mettre le numérique scientifique au bout des doigts de tous

:::{admonition} Cas d'usage typique
- Je suis enseignant,
- d'un cours de programmation, calcul, traitement de données, IA, ...
- mes étudiants ont besoin d'accéder facilement à des outils numériques
:::

+++ {"slideshow": {"slide_type": "fragment"}}

:::{admonition} Accès simple et ubiquitaire
- Sans installation
- En tout lieu, tout temps
- Depuis un simple navigateur, sur tout dispositif
:::

+++ {"slideshow": {"slide_type": "fragment"}}

:::{admonition} À un ***environnement virtuel***
:class: hint

- une interface: 
  - environnement intégré de développement: VSCode, ...
  - environnement intégré de calcul interactif: JupyterLab, RStudio, ...
  - bureau graphique: X, ...
  - terminal
- des logiciels: Python, C++, R, scikit-learn, ...
- un dossier personnel
- des ressources pédagogiques
- des ressources physiques (CPU, GPU, ...)
- des données
- des modèles d'IA
:::

+++ {"slideshow": {"slide_type": "slide"}}

### Exemple d'environnement virtuel pour l'initiation au C++

% :::{figure} media/course-web-page.png
% :::
%  
% +++ {"slideshow": {"slide_type": "slide"}}
%  
% :::{figure} media/mydocker.png
% :::

:::{figure} media/jupyter-travo-laby-jupylates.png
:::

+++ {"slideshow": {"slide_type": "slide"}}

### Exemple: carnets numériques (notebook)

:::{admonition} Définition: carnet numérique
Document riche interactif entrelaçant **Narration**, **Calcul**, **Visualisation**, **Interaction**, **Programmation**, voire **Inférence**.
:::

:::{figure} media/mydocker-jupyter-ai.png
:::

+++ {"slideshow": {"slide_type": "slide"}}

### Exemple: Jupyter

<https://jupyter.org>

:::{figure} media/jupyter-community.jpg
:width: 50%
:style: opacity:0.8;filter:alpha(opacity=100);
:::

+++ {"slideshow": {"slide_type": "fragment"}}

:::{admonition} Jupyter?
:class: hint
**Une communauté internationale transverse**: académie, industrie, société civile

qui développe des **standards ouverts**, des **logiciels libres** et des **services web**

pour **le calcul avec l'humain dans la boucle**
:::

+++ {"slideshow": {"slide_type": "slide"}}

#### Innovations

:::{admonition} Technologies web modernes
:class: hint
  $\Longrightarrow$ En **tout lieu**, **tout temps**, sur **tout dispositif**
:::

+++ {"slideshow": {"slide_type": "fragment"}}

:::{admonition} Libre, ouvert, interopérable  
:class: hint
Julia, Python, R, C++ et des dizaines d'autres langages et systèmes  
$\Longrightarrow$ **Une porte ouverte sur l'univers du calcul scientifique libre**
:::

+++ {"slideshow": {"slide_type": "fragment"}}

:::{admonition} Très modulaire
:class: hint
$\Longrightarrow$ **Flexibilité pour une large gamme de cas d'usages** (mais aussi complexité)
:::

+++ {"slideshow": {"slide_type": "slide"}}

### Pouvoir transformant sur l'enseignement

+++ {"slideshow": {"slide_type": "fragment"}}

:::{admonition} **Autonomie** et **personnalisation**  
:class: hint
  grâce à la structure narrative, à la micro-scénarisation, aux retours immédiats  
  $\Longrightarrow$ **massification**, gestion **hétérogénéité**  
  enseignement adaptatif?
:::

+++ {"slideshow": {"slide_type": "fragment"}}

:::{admonition} **Engagement**  
:class: hint
  grâce à l'interaction et la liberté d'exploration
:::

+++ {"slideshow": {"slide_type": "fragment"}}

:::{admonition} Flexibilité
:class: hint
  En tout lieu, tout temps, sur tout dispositif  
  $\Longrightarrow$ **hybridation**, publics empêchés
:::

+++ {"slideshow": {"slide_type": "slide"}}

## Potentiel, enjeux, besoins d'accompagnement

+++ {"slideshow": {"slide_type": "slide"}}

### Adoption des carnets numériques et de Jupyter (pour l'enseignement)

- millions d'utilisateurs et de ressources
- enseignement, recherche (sciences dures -> SHS), ingénierie, science des données
- [Amazon SageMaker](https://aws.amazon.com/fr/sagemaker/), [Google Colaboratory](https://colab.research.google.com/), Microsoft Azure Notebooks, Bloomberg BQuant, Intel Trusted Analytics Platform, IBM Watson Studio, [Saturn Cloud](https://saturncloud.io/), noteable.io

+++ {"slideshow": {"slide_type": "fragment"}}

- [Data 8](https://data8.org/): science des données pour **tous** les étudiants à UC Berkeley
- **700k élèves des lycées** utilisent [Capytale](https://capytale2.ac-paris.fr/)
- GT Notebook d'HumaNum
%- Livre [teaching and learning with Jupyter](https://jupyter4edu.github.io/jupyter-edu-book/), Barba et al.

+++ {"slideshow": {"slide_type": "fragment"}}

:::{admonition} À Paris-Saclay (un exemple parmi plein d'autres)
:class: hint

- En Licence, Master, Doctorat, recherche, ...  
    - 600/1000 étudiants de L1 de la Faculté des Sciences d'Orsay
    - 5000 utilisateurs
- En Physique, Math, Info, Géophysique, Agronomie, Chimie, Médecine, STAPS, Droit, ...
- Pour:
    - L'introduction à la programmation  
	  Exemple: [Introduction à la Programmation Impérative (en
      C++)](https://nicolas.thiery.name/Enseignement/Info111/) L1 Math-Info
    - Le calcul  
      Exemple: [Méthodes Numériques](https://methnum.gitlab.dsi.universite-paris-saclay.fr/)
      en L1-L3 de physique
    - La science des données, l'IA  
	  Exemple: [Initiation à la Science des Données](https://nicolas.thiery.name/Enseignement/IntroScienceDonnees/)
      L1 Math-Info
    - ParcourSup!
- Avec **Python**, C++, SageMath, R, shell, ...
- Depuis: salle TP, services myDocker (Centrale-Supélec), CoCalc
:::

+++ {"slideshow": {"slide_type": "slide"}}

### Potentiel: million(s) d'apprenants en France

+++ {"slideshow": {"slide_type": "fragment"}}

:::{admonition} Comment pleinement réaliser ce potentiel?
:class: hint
%
:::

+++ {"slideshow": {"slide_type": "fragment"}, "editable": true}

### Besoins

:::{admonition} Outillage métier
- Édition de documents scientifiques riches
- Gestion des devoirs, correction assistée, ...
- Enseignement adaptatif et tableaux de bords (traces d'apprentissage)
- Agents conversationnels dédiés
- Facilité d'utilisation, accessibilité
:::

+++ {"slideshow": {"slide_type": "fragment"}}

:::{admonition} Facilité d'accès
:class: attention
- **Environnements virtuels en ligne**
- À tout moment, en tout lieu, depuis tout dispositif
:::

+++ {"slideshow": {"slide_type": "fragment"}, "editable": true}

:::{admonition} Ressources pédagogiques FAIR (Facile à trouver, Accessible, Interopérable, Réutilisable)
- Produire des ressources pédagogiques réutilisables
- Faciliter la publication, le partage, la réutilisation
:::

+++ {"editable": true, "slideshow": {"slide_type": ""}}

:::{admonition} Accompagnement
%
:::

+++ {"slideshow": {"slide_type": "slide"}}

### Enjeux forts

:::{admonition} Adéquation à des besoins multiples et évolutifs
- **Agilité**
- **Autonomie** des acteurs (institutions, admins sys, enseignants, étudiants)
- **Composabilité :** urbanisation (SI, ENT, LMS, ...), modularité, interopérabilité
:::

+++ {"slideshow": {"slide_type": "fragment"}}

:::{admonition} Maîtrise des solutions
- Souveraineté
- Gouvernance
- Coût
- Pérennité
- Impact environnemental
:::

+++ {"slideshow": {"slide_type": "fragment"}}

:::{admonition} Maîtrise et usage raisonné des traces d'apprentissage
- Pour l'enseignement adaptatif
- Pour évaluer les innovations pédagogiques
- Pour la recherche
:::

+++ {"slideshow": {"slide_type": "slide"}}

### Sans accompagnement

+++ {"slideshow": {"slide_type": "fragment"}}

:::{admonition} Services déployés par les «GAFAM»
- 👍 Savoir faire et puissance de feu
- 🛑 <del>Maîtrise de la solution</del>, <del>Composabilité</del>
- 🤔 Besoins métiers?
- 🛑 Captation de la valeur et verrouillage (vendor lock)
:::

+++ {"slideshow": {"slide_type": "fragment"}}

:::{admonition} Services déployés par des «PME»
- 👏 Produits intégrés, innovants
- 👎 <del>Puissance de feu</del>, <del>Composabilité</del>
- 🤔 Maîtrise de la solution?
- 🤔 Besoins métiers?
- 🤔 Captation de la valeur et verrouillage (vendor lock)?
:::

+++ {"slideshow": {"slide_type": "slide"}}

## Qu'est-ce qu'on fait maintenant?

+++ {"slideshow": {"slide_type": "fragment"}}

### Un coup dans l'eau: Candyce 2021-2024

Candyce : promouvoir Jupyter et les carnets dans l'enseignement

<https://candyce.org/>

Suite aux États Généraux du Numérique pour l'Éducation

2021: Proposition de soutien institutionnel national ambitieux à un mouvement de fond

INRIA, Paris-Saclay, QuantStack, FUN, ...

+++ {"slideshow": {"slide_type": "slide"}, "editable": true}

### Candyce I : WP 1 du <del>PEPR d'accélération «Enseignement et Numérique»</del>, 12M€, <del>2023-2027</del>

:::{figure} media/Lots.svg
:width: 70%
:::

+++ {"slideshow": {"slide_type": "slide"}}

## Candyce II: stratégie d'accélération

:::{admonition} Analyse post-hoc
:class: hint

- **Collection modulaire d'actions indépendantes et complémentaires**  
  pour accélérer un mouvement de fond.

- **Tout financement partiel sera utile**  
  Nous pourrons, selon le volume et les finalités, mettre en cohérence
  un sous-ensemble d'actions et mobiliser les partenaires adéquats.

- **Contrainte principale:** pouvoir, au moins pour certaines actions,
  financer des partenaires privés.

:::

+++

:::{admonition} Retour au terrain
:class: hint
- Actions locales
- Financements locaux (CMA, ...)
:::

+++ {"slideshow": {"slide_type": "slide"}}

### Action à Paris-Saclay/CentraleSupélec: MyDocker/Planets

:::{admonition} Historique
- 2017-2023: **Déploiement** et montée en gamme d'un service
  JupyterHub@Paris-Sud
- 2019-: Développement d'un service MyDocker@CentraleSupélec\
  besoins spécifiques: scalabilité, dont GPU
- 2024-2025: Mutualisation $\Longrightarrow$ MyDocker@Paris-Saclay
- 2025-2027: Mutualisation en cours avec PlasmaBio@Paris-Cité
:::

+++ {"slideshow": {"slide_type": "fragment"}}

:::{admonition} Zoom sur MyDocker / Planets
:class: hint

https://mydocker.universite-paris-saclay.fr

- Authentification Fédération Renater
- Intégration Moodle/LMS (LTI)
- Utilisateurs: ~9k inscrits (1.8k hors Paris-Saclay); ~3k actifs; ~100 quotidiens
- Scalabilité: 1k utilisateurs simultanés
- Autonomie des enseignants: choix des logiciels, interfaces,
  ressources physiques (dont GPU)
- Intégration d'un agent conversationnel (Aristote/Ilaas)
- Robustesse: best efforts
- Hébergement: Mésocentre Paris-Saclay, OVH
- Technos: docker, dockerswarm, ...
- 100 % libre
:::

+++ {"slideshow": {"slide_type": "fragment"}}

:::{admonition} Support institutionnel
- Ressources cloud et ingénieurs [Mésocentre Paris-Saclay](https://mesocentre.universite-paris-saclay.fr/)
- Copilotage et ingénieurs DISI CentraleSupelec
- Financement [**CMA SaclAI-School**](https://www.dataia.eu/saclai-school) ~100k€
- Financement Paris-Cité (~100k€)
:::

+++ {"slideshow": {"slide_type": "fragment"}}

:::{admonition} Chantiers en cours ou à venir
- Gestion de volumes, pour traitement de grosses données
- Collaboration temps réel
- Facilité de déploiement d'autres instances
- Déploiements multi-hébergeurs (exemple: cloud privé ET public)
- Accessibilité (avec QuantStack)
:::

+++ {"slideshow": {"slide_type": "slide"}, "editable": true}

## Alternatives

| Nom               | Dev                          | SAS | Souveraine | Déployable | Persistence | Scalabilité  | Environnements             | Configurabilité | Collaboration | GPU | multi-conteneur |
| ---               | ---                          | --- | ---        | ---        | ---         | ---          | ---                        | ---             | ---           | --- | ---             |
| Collab & co       | Google, Amazon, ...          | ✅  |            |            | ✅          |              | Jupyter                    |                 | ✅            | ✅  |                 |
| Nuvolos           | Nuvolos                      | ✅  |            |            | ✅          |              | ?                          |                 |               |     |                 |
| CoCalc            | CoCalc Inc                   | ✅  | 🟧         | 💪         | ✅          |              | Jupyter                    | 🟧              | ✅            | ?   |                 |
|                   |                              |     |            |            |             |              |                            |                 |               |     |                 |
| Capytale          | Académie Paris/Orléans       | ✅  | ✅         |            | ✅          | 👍👍👍 700k+ | JupyterLite, geogebra, ... |                 |               |     |                 |
| JupyterLite       | Communauté Jupyter           |     |            | ✅         | ✅          | 👍👍         | JupyterLite                | ✅              | ✅            |     |                 |
| notebook.link     | QuantStack                   | ✅  | 🟩         |            | ✅          | 👍👍👍       | JupyterLite                | ✅              | ✅            |     |                 |
|                   |                              |     |            |            |             |              |                            |                 |               |     |                 |
| JupyterHub        | Communauté Jupyter           |     |            | 💪-💪💪    |             |              | Tout                       |                 | 🟨            |     |                 |
| MyDocker          | CentraleSupélec/Paris-Saclay | ✅  | ✅         | 🚧         | ✅          |              | Tout                       | ✅              | 🟨            | 🟩  |                 |
| Marionum          | Île de France                | ✅  | ✅         |            | ✅          |              | Tout                       | ✅              | ?             |     |                 |
|                   |                              |     |            |            |             |              |                            |                 |               |     |                 |
| Onyxia / SSPCloud | INSEE                        | ✅  | ✅         | 💪💪       | ✅          |              | Tout                       | 💪              | ✅            | ✅  | ✅              |

+++ {"slideshow": {"slide_type": "slide"}, "editable": true}

:::{admonition} Zoom sur notebook.link (PME QuantStack)
- Basé sur JupyterLite (presque tout dans le navigateu)
- Très forte scalabilité
- Pour usage légers massifs 
- Environnements configurables
- Raisonnablement souverain
- Offre SAS uniquement à ce stade
- Majorité des composants libres
:::

+++ {"slideshow": {"slide_type": "slide"}}

## CorrectExam (Rennes): correction dématérialisée de copies papiers

:::{figure} media/CorrectExam.png
:style: opacity:0.8;filter:alpha(opacity=100);
:::

+++ {"slideshow": {"slide_type": "slide"}}

## Résumé

:::{admonition} Potentiel d'usage: 1M dans l'ESR
:class: hint
- environnements virtuels
- pour la programmation, le calcul, les données, l'IA
- dont: Jupyter, carnets numériques
:::

:::{admonition} Enjeux forts
:class: attention
- Adaptation à des besoins multiples évolutifs: agilité, autonomie, composabilité
- Maîtrise des solutions (souveraineté, ...)
- Maîtrise des traces d'apprentissage
:::

:::{admonition} Des opportunités
:class: hint
- Terreau fertile: pile technologique libre: Jupyter, logiciels scientifiques libres, docker, ...
- Terreau fertile en France: Capytale, QuantStack, ...
- Solution myDocker/Planets: mydocker.universite-paris-saclay.fr
- Solution notebook.link
::::

+++ {"slideshow": {"slide_type": "fragment"}}

:::{admonition} Agissons ensemble
:class: tip
- Quelles sont vos actions?
- Quels sont vos besoins?
- Expérimentations à mener?
- Opportunités de mutualisation?
- Opportunités d'usage de MyDocker/Planets dans votre université?
- Opportunités de financement?
:::
