Navigation überspringen

Jupyter Notebooks

Willkommen zum Skript "Jupyter Notebooks für die Mathe-Lehre".

Dieses Skript soll Lehrenden in den WiMINT-Fächern den Einstieg in die Arbeit mit Jupyter Notebooks erleichtern, so dass sie deren Potenzial in der eigenen Lehre erproben können. Neben grundlegenden Informationen und Beispielen zu Jupyter Notebooks werden Systeme, die die Arbeit mit Jupyter Notebooks erleichtern, im praktischen Einsatz vorgestellt.

FAQ

Klicken Sie auf die Fragen.

Was sind Jupyter Notebooks?

Jupyter Notebooks sind Webseiten, die, neben der Darstellung von Inhalten, in ihrem Kern Programme des Autors/Benutzers/Lesers ausführen können. Damit können sie z.B. mathematische Probleme lösen oder Daten verarbeiten

Wie können Jupyter Notebooks die mathematische Lehre bereichern?

Das gilt es, herauszufinden. Ein Jupyter-Notebook kann z.B. den vermittelten Stoff lebendig machen, so dass die Studierenden damit experimentieren können. Auch komplizierte Verfahren können so mit realistischen Werten durchgerechnet werden, wobei die Studierenden sowohl die Werte als auch die Verfahren variieren können. Unvollständige Verfahren können von Studierenden auf Grund ihres mathematischen Wissens ergänzt werden, um damit vorgegebene Probleme zu lösen. Jupyter Notebooks können als Vorlesungsmaterial oder Übungsaufgabe verteilt werden und in bearbeiteter Form zur Korrektur eingereicht werden.

Für welche Gebiete der Mathematik sind Jupyter Notebooks geeignet?

Jupyter Notebooks sind besonders für alle Bereiche der Mathematik geeignet, in denen symbolisch oder numerisch mit Formeln gearbeitet wird. Neben den Ingenieurwissenschaften, Analysis und linearer Algebra ist dies insbesondere die Stochastik, aber auch bei Algebraische Strukturen und Graphentheorie können Jupyter Notebooks die Lehre unterstützen. In der Informatik können Jupyter Notebooks Programmieraufgaben - insbesondere in der Programmiersprache Python - unterstützen.

Für welche Gebiete der Mathematik sind Jupyter Notebooks ungeeignet?

Jupyter Notebooks sind nicht geeignet für das Lehren von Rechenfertigkeiten und von Beweisen.

Muss ich als Autor/Benutzer/Leser von Jupyter Notebooks programmieren können?

Das kommt darauf an. Als Autor müssen Sie - neben den Inhalten in Markdown, HTML oder LaTeX - die Programme bereitstellen, die Ihr Notebook verarbeiten soll. Dazu wird die Kenntnis der Programmiersprache des eingesetzten Notebook-Kerns (s.u.) in dem für die jeweiligen Algorithmen erforderlichen Umfang benötigt. Dies wird dadurch erheblich erleichtert, dass der Kern selbst bereits viele mathematische Algorithmen zur Manipulation und Auswertung von Formeln bereitstellt. Dient das Notebook nur zur Illustration des Textes, so benötigt der Leser keine Programmierkenntnisse. Für die Anwendung mit eigenen Daten genügt es, die Belegung bestimmter Variablen im Notebook an die eigenen Daten anzupassen - ohne Programmierkenntnisse. Nur die Modifikation der Programme durch den Leser erfordert die Kenntnis grundlegender Befehle des Kerns.

Welche Algorithmen kann ein Jupyter-Notebook darstellen?

Dies hängt vom eingesetzten Kern ab. Für die Mathe-Lehre ist der Kern des Compteralgebrasystems SageMath universell einsetzbar. Geht es speziell um Lehre mit einem hohen Statistik-Anteil, so ist der R-Kern die erste Wahl. Für die Lehre mit starkem numerischem Anteil ist der Octave-Kern ausgelegt. Daneben gibt es u.a. Kerne für die Programmiersprachen Python, C++, Julia, Haskell, Prolog und die Unix-Bash-Shell. Achtung: Nicht jedes System zur Darstellung von Jupyter Notebooks unterstützt jeden Kern!

Was kostet das?

Es gibt eine Reihe kostenloser Open Source-System für die Erstellung und Bereitstellung von Jupyter Notebooks. Deren Installation erfordert jedoch oft eine IT-Kompetenz, die bei den meisten Studierenden nicht vorausgesetzt werden kann. Praktischer ist die Nutzung von Online-Systemen, die solche Dienste bereitstellen. Auch hier gibt es kostenlose Angebote. Dazu sei hier insbesondere auf CoCalc für die Erstellung und Binder für die Bereitstellung von Jupyter Notebooks verwiesen, auf die in den folgenden Abschnitten noch näher eingegangen wird.

Wo werden Jupyter Notebooks eingesetzt?

Das Haupteinsatzgebiet für Jupyter Notebooks sind die Datenwissenschaften (Data Science). In diesem Gebiet sind Jupyter Notebooks de facto die Standardform, um Daten, Daten-Auswertung und Daten-Interpretation in einem Paket so auszutauschen, dass die Leser die Schlussfolgerungen der  Autoren nachvollziehen und überprüfen können. Im Netz finden sich auch einige mathematische Jupyter Notebooks in englischer Sprache. Im Folgenden finden Sie auch einige deutsche Beispiele, die Sie gerne nutzen und anpassen können. Den Jupyter Notebooks ähnliche Dokumente können mit den kommerziellen Systemen Mathematica und Matlab erstellt und bereitgestellt werden.

Welche Erfahrungen gibt es mit Jupyter Notebooks in der Lehre?

Zu den Erfahrungen in der Lehre gibt es das Online-Buch Teaching and Learning with Jupyter, das den Stand vom Mai 2019 zusammenfasst. Erfahrungen aus Deutschland sind bisher nicht bekannt. Sammeln Sie Ihre eigenen Erfahrungen!

  Koblenz im September 2019

Dr. Ingo Dahn