Datenbankerstellung und SQL mit JupyterLite und SQLite-Kernel
Dieses Schuljahr habe ich zur Vermittlung von SQL und der Datenbankerstellung im Grundkurs Informatik Klasse 12 Jupyter Notebooks verwendet. Wir haben JupyterLite mit SQLite Kernel genutzt – super praktisch, direkt im Browser und ohne nervige Installationen.
Was cool war: Wir haben die Notebooks nicht nur für den Unterricht genutzt, sondern auch in Klausuren und Leistungskontrollen. Die SchülerInnen konnten ihre Notebooks hochladen, was nicht nur die Bewertung erleichtert hat, sondern auch digitale Skills förderte. Sie SchülerInnen kamen nach einer kurzen Einführung super damit klar.
Vorteile:
-
Strukturierte Notebooks: Alles war vorbereitet – Arbeitsaufträge, Demos, Erläuterungen. Das hat den Schülern das eigenständige Arbeiten erleichtert.
-
Jupyter kennenlernen: Neben SQL haben die SchülerInnen auch gelernt, wie man mit Jupyter umgeht. Markdown für Textformatierung inklusive.
-
Debugging leicht gemacht: Die Ausführungsreihenfolge in den Notebooks hat den Schülern geholfen, den Debugging-Prozess zu verstehen.
-
Browserbasiert: Praktisch, wenn die SchülerInnen von verschiedenen Geräten aus arbeiten wollen.
-
grafische Auswertung: Einfache Plots mit SQLite Kernel und XVega
Nachteile:
-
Eine Query je Zelle: Manchmal etwas unübersichtlich, wenn es komplexer wird.
-
Nicht alle SQL-Funktionen: Bspw. bestimmte Join-Arten wie right und full outer Join werden nicht abgedeckt.
Wir planen auch, Jupyter Notebooks im nächsten Lernbereich – Objekt-Orientierte Programmierung in Python – einzusetzen. Spannend ist auch die Option in Jupyter Python und SQL durch Python-Module zu verknüpfen. Könnte besonders cool werden, wenn wir komplexe Anwendungen entwickeln würden. Interessant wäre auch eine digitale Hefterführung in einem Notebook - nachhaltig, interaktiv, anwendungsnah….
Eine lokale Installation im Schulnetz habe ich nicht probiert. Hier würde sich sicher mehr das normale Jupyter Notebook anbieten mit SQL über Pythonmodule. Ich lasse JupyterLite auf GitHub Pages laufen und kann so auch ohne pädagogisches Netz Notebooks verteilen. Die SchülerInnen arbeiten dann direkt in dem Notebook. Alle Änderungen werden lokal gecached und am Ende kann das Notebook runtergeladen und abgegeben werden.
Hier ein Beispiel: SQL mit JupyterLite auf GitHub Pages