Projet Jupyter

Projet Jupyter#

../_images/logo_jupyter_project.png

Le projet Jupyter propose des logiciels libres à 100 %, des normes ouvertes et des services web pour l’informatique interactive avec toute sorte de langages de programmation. Il a été initié par F. Pérez et B. Granger qui ambitionnaient à obtenir un environnement d’informatique interactive pour le langage Python dans l’esprit des environnements IDL (1977), Maple (1982), Matlab (1884) et Mathematica (1988) [GP21].

Le projet Jupyter est créé en 2014 à partir du projet IPython, il en reprend les « IPython notebooks » et conserve le « IPykernel » comme l’un des noyaux d’exécution du code.

Logo IPython

Dans son article publié dans la revue « Nature », Jeffrey M. Perkel [Per21] cite « IPython notebook » comme l’un des dix codes informatiques à avoir transformé la science (tableau ci-après).

Année

Code informatique majeur

Description

1957

Fortran compiler

le langage pionnier

1965

FFT (Fast Fourier Transform)

le traitement du signal

1965

Atlas of protein sequence and structure

le catalogueur de molécules

1969

Modèle de circulation générale

le leadeur de la prévision météo

1979

BLAS (Basic Linear Algebra Subprograms)

pionnier du calcul matriciel

1987

NIH Image

les bases de l’imagerie médicale

1990

BLAST (Basic Local Alignment Search Tool)

le chercheur de séquence

1991

arXiv.org

le serveur de preprints

2011

IPython Notebook

l’explorateur de donnée, mais pas que…

2012

AlexNet

deep learning basé sur les réseaux de neurones

Une enquête auprès des lecteurs de la revue « Nature » place « IPython Notebook » en troisième place par ordre d’impact sur le travail des chercheurs.

https://media.nature.com/lw767/magazine-assets/d41586-021-00075-2/d41586-021-00075-2_18964266.jpg

Fig. 1 Résultat de l’enquête auprès des lecteurs de la revue « Nature » sur le code informatique qui a le plus d’impact sur leur travail (d’après [Per21])#

../_images/carnet_jupyter.png

Les documents de type notebook sont au centre du projet Jupyter. On peut les traduire par carnets, cahiers ou bloc-notes. Leur caractéristique principale est qu’ils alternent du texte en langage naturel avec du code en langage informatique avec les résultats produits par ce code (voir Carnet (Notebook)).

Le projet Jupyter propose :

  • un format ouvert de carnet (nbformat)

  • des logiciels de création open source de carnets pour les éditer et assurer leur rendu (Jupyter Notebook, Jupyter Lab)

  • des plateformes de visualisation open source des carnets (nbviewer)

  • des plateformes d”utilisation interactive open source des carnet (Binder)

  • des plateformes d”utilisation collaborative open source des carnet (Jupyter Hub)

  • des logiciels de conversion open source de notebooks vers

    • des documents statiques (nbconvert, RISE, Jupyter Book)

    • des applications web interactives (Voilà, Voici)