Jupyter Notebook

Uit Inf20
Naar navigatie springen Naar zoeken springen

Jupyter Notebook

Volgende stap: van IPython Notebook naar Jupyter

Omdat IPython Notebooks steeds meer gebruikt worden voor het gebruik van andere talen dan alleen Python, is de volgende stap Jupyter: hierin wordt de Notebook-infrastructuur gescheiden van de taal. Je kunt dan notebooks gebruiken met andere talen, of met een mix van talen.

Historie en achtergrond

een paar links over IPython Notebook:

O'Reilly

De ICT-uitgever O'Reilly gaat iPython/Jupyter Notebooks gebruiken als één van de formaten waarin hun boeken en cursusmateriaal gepubliceerd wordt.

Enkele voorbeelden hiervan:

Vergeet vooral niet om de code uit te voeren, via de Run knop in elk code-blok.

Meer voorbeelden zijn te vinden op de O'Reilly Radar site, in de beta-versie van de nieuwe opzet, onder het "Learning" deel: https://beta.oreilly.com/learning.

GitHub

GitHub maakt het mogelijk om iPython Notebooks via hun website te publiceren.

Binder

Je kunt een GithHub-repository met één of meerdere notebooks eenvoudig omzetten in een uitvoerbare "binder" met notebooks. In deze binder vind je alle bestanden uit de GitHub-repository: die kun je bijvoorbeeld als data gebruiken voor de notebooks.

Voor deze binder wordt een virtuale machine (container) gemaakt die op aanvraag gestart wordt. Elke gebruiker heeft dan zijn eigen tijdelijke versie van deze binder. Als deze een uur of langer niet meer actief is, wordt de container met de bijbehorende data weer opgeruimd. Als je je aangepaste notebook(s) of lokale data wilt bewaren, dan moet je deze naar je eigen computer kopiëren (download notebook).

Een voorbeeld van een dergelijke binder van notebooks (gemaakt vanuit GitHub: https://github.com/eelcodijkstra/binder)

Overige

Zelf aan de slag

Jupyter Notebook is een client-server systeem: de user-interface van het notebook draait in de browser, de uitvoering van de Python-code gebeurt in de server. Dit betekent dat je een server nodig hebt om Jupyter Notebook te gebruiken. De eenvoudigste oplossing hiervoor is om je eigen computer te gebruiken.

Installeren van Jupyter op je eigen computer

Zie de handleiding: http://jupyter.readthedocs.org/en/latest/install.html

  • installeer eerst Anaconda: zie https://www.continuum.io/downloads
  • via de Anaconda Launcher kun je altijd de nieuwste versie van notebook installeren
  • via de Anaconda Launcher kun je de notebook server starten; deze opent dan een venster in je browser

Installeren van Jupyter op Cloud9

(nog incompleet)

  • installeer conda, via pip install conda
  • ...

Gebruik van Binder

  • maak een GitHub repository als binder voor een aantal notebooks;
  • je kunt een notebook aanmaken via https://try.jupyter.org;
  • dat kun je downloaden naar je eigen computer,
  • en weer uploaden naar GitHub.

Maak vervolgens een binder aan (zie hierboven) van deze repository.

Je moet wel elke keer als je een notebook in de binder verandert, deze stappen herhalen.

Dit is een omslachtige methode voor het aanmaken van een notebook, maar je kunt deze binders goed gebruiken voor het publiceren van je notebooks op een manier dat je gebruikers (leerlingen) deze kunnen uitvoeren.