Einführung in die Programmierung und Praxis

In dieser Phase geht es darum, den Studierenden einen Einblick in das Arbeiten mit Daten aus der Sicht eines Programmierers zu vermitteln. Durch das fehlende Vorwissen der Teilnehmer und den knappen Zeitrahmen ist diese Phase besonders herausfordernd.

Als Programmiersprache wurde Pyret gewählt. Auch wenn diese Sprache weniger bekannt ist als andere vergleichbare Sprachen, hat sie einige Vorteile, die diesem Workshop zugutekamen. Pyret bietet die Möglichkeit, direkt in einem Online-Editor zu arbeiten und für diese Arbeiten „Datenbanken“ in Form von „Google Sheets“ zu verwenden. Ein vorbereiteter Code lässt sich veröffentlichen und über einen Link für die Teilnehmer zu Verfügung stellen. Dies bietet nicht nur den Vorteil, die Vorbereitung für die Teilnehmer auf ein Minimum zu reduzieren, sondern bietet den Teilnehmer zudem die Möglichkeit auch zu Hause, unabhängig von Entwicklungssystemen, Erlerntes zu wiederholen und zu testen.

Die einzelnen Konzepte und Schlüsselwörter werden direkt innerhalb des Codes vermittelt. Die Teilnehmer sollen dies parallel am eigenen Rechner nachvollziehen und dabei Fragen stellen. Auf ein komplettes, sogenanntes „code-along“ wurde aus Zeitgründen bewusst verzichtet. Zudem fungieren die kommentierten Schlüsselwörter als Dokumentation, welche die Teilnehmer direkt auch für folgende Aufgaben nutzen können.

Live Code und ausgegebene Tabelle mit Daten

Der Fokus dieser Praxisphase liegt auf dem Arbeiten mit Daten und dem Erkennen der Möglichkeiten der digitalen Datenanalyse. Eine klassische Einführung in das Programmieren, in denen Basiskonzepte wie Schleifen und If-Anweisungen erläutert werden, würde hier zu weit führen. Daher werden lediglich verschiedene wenige Konzepte aus Pyret (Filtern, Rechenoperationen …) vorgestellt, die bereits einen Einblick in grundlegende Möglichkeiten der Datenanalyse bieten.

Im Anschluss an die Vermittlungsphase sollen die Teilnehmer selbständig Aufgaben zur Datenanalyse in unterschiedlichen Schwierigkeiten durchführen. Die Aufgabenstellungen sind direkt innerhalb des Codes als Kommentar vermerkt und können auch direkt im Code programmiert werden. Die Aufgaben sind so konzipiert, dass sie durch Kombinationen der vorgestellten Konzepte gelöst werden können. (Lösungsvorschlag zu den Aufgaben)