© StonePictures/Shutterstock.com
Jupyter Notebooks für Lehre und Entwicklung - alles im Blick

Notizbuch für Entwickler


Mit dem Jupyter-Projekt steht seit längerer Zeit ein Lehr- und Entwicklungssystem zur Verfügung, das die Veranschaulichung und schnelle Evaluation von Algorithmen ermöglicht und längst nicht mehr auf Python beschränkt ist. Dieser Artikel zeigt in einer kurzen Schritt-für-Schritt-Einführung, was sich hinter dem System verbirgt.

Denkt man an Themen, die sich mangels Laborausstattung nur schwer oder gar nicht veranschaulichen lassen, kommen einem vielleicht Elektronik und ähnliche Themen in den Sinn. Dass allerdings auch ein eben mal schnell erstellter Algorithmus angesichts des Fehlens von Compiler und Co. Probleme verursachen kann, stellt man oft erst bei schärferem Nachdenken fest.

Grundlage aller Jupyter-bezogenen Projekte ist ein als IPython bezeichneter Kernel, der im Prinzip eine um Komfortfunktionen erweiterte Variante der interaktiven Ansicht in REPL (Read-Eval-Print Loop) darstellt. Hintergedanke des meist nur als Komponente anzutreffenden Diensts war es, Entwicklern ein bequem ansprechbares Interface zu REPL zu geben, über das sich neuartige Interaktionsszenarien einfach realisieren lassen.

Mittlerweile wurde dieses Interface wie in Abbildung 1 gezeigt um nicht-pythonische Programmiersprachen ergänzt.

hanna_jupyter_1.tif_fmt1.jpgAbb. 1: Das Jupyter-Projekt beschränkt sich nicht auf Python [1]

Was ist das Notebook?

Lange Python-Programme wirken insbesondere auf Quereinsteiger, aber auch auf Entwickler, die mit Python wenig vertraut sind, nicht wirklich einladend. Ein klassisches Antipattern wäre beispielsweise die Hello-World-Applikation der YDLIDAR-Laserscanner.

Jupyter Notebooks dürfte das wahrscheinlich bekannteste Anwendungsszenario von IPython sein. Im Prinzip handelt es sich dabei um einen Server, der das Ansprechen der Logik aus einem beliebigen Webbrowser heraus erlaubt (Abb. 2).

hanna_jupyter_2.tif_fmt1.jpgAbb. 2: Notebooks machen den Terminal-Emulator arbeitslos

Jupyter Notebooks beschränken sich nicht auf das Einblenden einer an Azure erinnernden Web-Console. Erzeuger des Jupyter Notebooks, die auf der Festplatte übrigens unter der Endung .ipynb gespeichert werden, dürfen auch Erklärungsnotizen anlegen. Lohn der Mühen ist eine an interaktive Lehrbücher erinnernde Webseite, in denen Entwickler bzw. Lernende mit den Arbeits- und Lehrinhalten direkt interagieren können.

Vorbereitung mit Windows 10

Wegen der mittlerweile sehr hohen Verbreitung von Jupyter steht eine Vielzahl von Installationsangeboten zur Verfügung. Wir wollen in den folgenden Schritten mit der nativen Arbeitsumgebung interagieren – der einfachste Weg zur Bereitstellung ist das Herunterladen der Anaconda-Distribution, die neben einem Python-Interpreter auch Komfortfunktionen wie Paketverwaltung und Co. bereitstellt. Besuchen Sie im ersten Schritt die Seite von Anaconda [2] und scrollen Sie bis zum Abschnitt Anaconda Installers. Der Autor entschied sich in den folgenden Schritten für die Version Python 3.7; da ein 64-Bit-Betriebssystem zum Einsatz kommt, müssen Sie die 466 MB große 64-Bit-Version des Programms auf Ihren Rechner herunterladen.

Im Rahmen der Installation fragt das Set-up-Programm, ob Anaconda zur Path-Variable hinzugefügt werden soll: Wir wollen das in den folgenden Schritten ablehnen, weil sich das Produkt auch aus dem Startmenü heraus anwerfen lässt.

Nach der erfolgreichen Installation der Anaconda-Version für Python 3.7 finden Sie im Startmenü den Eintrag Jupyter Notebooks, der den direkten Einstieg in die Arbeitsumgebung ermöglicht. Nach seiner Eingabe erscheint am Bildschirm Ihrer Workstation das in Abbildung 3 gezeigte Terminalfenster, das zum Aufrufen eines bestimmten URL auffordert.

hanna_jupyter_3.tif_fmt1.jpgAbb. 3: Die Installation von Jupyter verlief erfolgreich

Wer den URL – am Rechner des Autors lautete er http://localhost:8888/?token=701007f8ab81716cede6c1989fc338b6cc1f6c05ac8fe3fd – in einen Browser seiner Wahl eingibt, findet sich im ersten Schritt in einer Art Dateimanager wieder. Der Autor entschied sich in den folgenden Schritten für die Verwendung von Google Chrome. Andere Browser dürften im Allgemeinen ebenfalls funktionieren; in User-Gruppen findet man allerdings immer wieder Berichte von massiven Problemen bei der Verwendung des klassischen Internet Explorer. Angemerkt sei noch, dass das hier verwendete lokale Ausführen von sowohl Server als auch Client nur ein Weg zum Ziel ist. Es ist erlaubt, Client und Server auf verschiedenen Maschinen auszuführen oder auf die unter [3] zur Verfügung stehenden Webdienste zu setzen.

Bei einem direkten Anwerfen des Servers aus dem Startmenü ist das Files-Tab von Haus aus auf den Inhalt des Verzeichnisses des Laufwerks C: eingestellt. Sie können einzelne Ordner oder Dateien anklicken, um mit ihnen zu interagieren.

Im Running-Tab finden Sie dann eine Liste aller Jupyter-bezogenen Aufgaben, die von Ihrer Workstation zum jetzigen Zeitpunkt ausgeführt werden. Haben Sie das Produkt eben erst frisch installiert, ist dieses Tab logischerweise noch leer.

Wer erste Experimente durchführen möchte, klickt im nächsten Schritt auf den auf der Oberseite der Liste befindlichen Button New. Jupyter reagiert darauf mit der Einblendung eines Kontextmenüs, in dem sie sich für die Option Notebook | Python3 entscheiden. Nach dem erfolgreichen Start des Kernels präsentiert sich das Fenster wie in Abbildung 4 gezeigt.

hanna_jupyter_4.tif_fmt1.jpgAbb. 4: Das Jupyter Notebook ist für erste Versuche bereit

Zelluläre Struktur

Jupyter Notebooks unterscheiden sich von klassischen Quellcodeda...

Neugierig geworden? Wir haben diese Angebote für dich:

Angebote für Teams

Für Firmen haben wir individuelle Teamlizenzen. Wir erstellen Ihnen gerne ein passendes Angebot.

Das Library-Modell:
IP-Zugang

Das Company-Modell:
Domain-Zugang