---
jupytext:
  notebook_metadata_filter: rise
  text_representation:
    extension: .md
    format_name: myst
    format_version: 0.13
    jupytext_version: 1.11.5
kernelspec:
  display_name: Python 3 (ipykernel)
  language: python
  name: python3
rise:
  auto_select: first
  autolaunch: true
  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%
---

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

# Candyce : CArnets Numériques DYnamiques, Interactifs et collaboratifs pour l'Enseignement 

Nicolas M. Thiéry

LRI/LISN: Laboratoire Interdisciplinaire des Sciences du Numériques

Université Paris-Saclay

[![Binder](https://mybinder.org/badge_logo.svg)](https://mybinder.org/v2/git/https%3A%2F%2Fgitlab.in2p3.fr%2Fjupyterhub-paris-saclay%2Fprojet-conge-innovation-pedagogique.git/HEAD?filepath=2021-04-19-PresentationCandyceDIP%2Findex.md)

+++

- Prélude: Jupyter?
- Candyce?  
  volet «Infrastructure numérique» (5-10M€)  
  du projet PEPR «Enseignement et Numérique»  
  porté par Inria, CNRS, AMU, ...
- Rôle de Paris-Saclay ?

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

## Jupyter?

- «Un écosystème de **logiciels libres**, de **standards ouverts** et
  de **services** pour le **calcul interactif**»
- **Multi-système**: Python, Julia, C++, R, et des dizaines d'autres

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

Mais z'encore?

+++ {"slideshow": {"slide_type": "subslide"}}

### Un exemple concret: le **carnet Jupyter** (notebook)

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

un petit **calcul** mathématique:

```{code-cell} ipython3
---
slideshow:
  slide_type: fragment
---
from sympy import *
x = symbols('x')
```

```{code-cell} ipython3
---
slideshow:
  slide_type: fragment
---
integrate(x/(x**2+2*x+1), x)
```

+++ {"slideshow": {"slide_type": "subslide"}}

un peu d'**exploration de données** cartographiques:

```{code-cell} ipython3
---
slideshow:
  slide_type: fragment
---
from ipyleaflet import Map, Marker
center = (48.70180933810075, 362.16683685639214)
m = Map(center=center, zoom=15)
marker = Marker(location=center, draggable=True)
m.add_layer(marker);
m
```

+++ {"slideshow": {"slide_type": "subslide"}}

### Exemple de document interactif

<a href="exemple-cours-graphe.md">
<table>
<tr>
<td>

<img src="exemple-cours-graphe1.png" height=660>

</td><td>

<img src="exemple-cours-graphe2.png" height=660>

</td>
</tr>
</table></a>

+++ {"slideshow": {"slide_type": "subslide"}}

## Adoption massive
- Des millions de scientifiques, dans l'académie et l'industrie ...
- Documenter des analyses de données «Litterate Computing»
- Tous les acteurs du cloud (Google Cloud, AWS, Azure, ...) ont leur service Jupyter
- Prix de l'ACM 2017, avec UNIX, TCP/IP, Le World Wide Web ...

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

## Intérêt pour l'enseignement

- Rédaction de documents narratifs avec trame linéaire simple combinant:
  - cours et explications
  - exemples interactifs: calculs, mini-applications
  - exercices avec rétroaction immédiate
  - exercices avec correction assistée
  - synthèse

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

- Favorise l'**implication**, l'**appropriation**, l'**autonomie** des étudiants

+++ {"slideshow": {"slide_type": "subslide"}}

## L'écosystème Jupyter: un outil multi-fonction

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

<table>
<tr>
<td>
<img src="exemple-cours-graphe1.png"></td><td><img src="exemple-cours-graphe2.png">
</td>
</tr>
</table>

+++ {"slideshow": {"slide_type": "notes"}}

Ce document combine quatre types d'activités:
- La narration
- La programmation
- L'interaction
- Le calcul

+++ {"slideshow": {"slide_type": "notes"}}

Usuellement soutenues par quatre types d'applications différentes
- Document
- Environnement de développement
- Mini application
- Calculette interactive

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

Une **unique application** pour permettre un continuum entre ces activités

+++ {"slideshow": {"slide_type": "subslide"}}

### L'hydravion: un mauvais bateau et un mauvais avion?

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

- Jupyter n'a pas vocation à remplacer les applications dédiées à l'une de ces activités  
  mais à permettre de combiner ces activités

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

- Jupyter n'est pas une ~~application~~  
  mais un écosystème d'outils interopérables:
  - Entre eux
  - Avec une myriade de logiciels (scientifiques) libres

+++ {"slideshow": {"slide_type": "subslide"}}

## Rendre ces technologies accessibles à tous?

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

### Accessibité technique: les enseignants ne sont pas des développeurs!

  Certainement! Mais:
  - Jupyter rend floue la frontière entre utilisateur et développeur
  - À l'échelle d'une communauté  
    avec des valeurs et des outils de **collaboration** et de **partage**:
    - un continuum de compétences 
    - coproduction de resources 
    - montée globale en compétence

+++ {"slideshow": {"slide_type": "subslide"}}

### Accessibilité pratique
Comment mettre l'outil à la disposition de tous?
- Technologies web
- Logiciel libre
- Mais: tout le monde n'a pas les logiciels sous la main

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

### Accessibilité

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

## Candyce

### Objectifs
- Déployer une infrastructure nationale souveraine offrant un service Jupyter:
  - pour l'éducation au et par le numérique
  - pour les scolaires et l'enseignement supérieur
  - dans tous domaines pertinents
- Contribuer à l'écosystème sous jacent: **frugalité**, **accessibilité**, **collaboration**, **partage**
- Faciliter l'adoption: **formations**, **création de ressources**, ...

+++ {"slideshow": {"slide_type": "subslide"}}

### État de l'art
- Service Cocalc
- Services Jupyter offerts par tous les acteurs du cloud
- nbhosting (plateforme derière MOOC Python, ...)
- Service Capytale
  académies de Paris, ...
- Service JupyterHub dans de nombreuses universités  
  dont JupyterHub@Paris-Saclay (pilotage: bibi)
- Plateforme de TP en ligne de Centrale Supélec (pilotage: Renaud Monnet)

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

### Moyens
5-10M€ sur 3-10 ans

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

### Consortium
- INRIA
- CNRS
- AMU
- Capytale et académies associées
- QuantStack: PME spécialisée dans Jupyter et le logiciel scientifique libre
- OVH (?)
- Paris-Saclay!

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

## Implication de Paris-Saclay dans Candyce?

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

### Rôle
- «Caution académique» et expertise  
  Notamment suite à H2020 OpenDreamKit, CIP, ...
- Participation au pilotage
- Utilisateurs précoces de la plateforme
- Exploration de l'écosystème et expérimentation pédagogiques
- Contributions logicielles
- Production de matériel pédagogique?
- Diffusion: formation de formateurs, accueil d'enseignants en résidence?

+++ {"slideshow": {"slide_type": "subslide"}}

### Ressources et personnes ressources:
- EC en Physique, Informatique, Mathématiques, Géosciences, STAPS? Bio?
- Faculté d'Orsay, Centrale-Supélec, et certainement ailleurs
- Learning Center?

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

### Recrutements financés sur projet????
- Un ingénieur pédagogique: dév logiciel proche utilisateurs finaux ???
- Un/deux formateurs et animateurs de communauté  
  Dont coordination / gestion de projet
- Un professeur invité: exploration, copilotage, ... ???
- ATER / enseignants pour permettre des congés pédagogiques
