Masterprojekt "Educational Software Development"

Lernsoftware ("Educational software") spielt im modernen Informatikunterricht eine große Rolle: Netzwerktopologien werden mit Filius visualisiert, Programmierung mit Scratch eingeführt, Softwareprojekte mit BlueJ entwickelt. In diesem Projekt stehen die Entwicklung und Evaluation von Lernsoftware im Mittelpunkt, um Lernhürden im Informatikunterricht abzubauen.
Der Editor der blockbasierten Programmiersprache Blockly übersetzt den Blockly-Code simultan in verschiedene Programmiersprachen – hier JavaScript

Es hat sich bewährt, Unterrichtseinheiten zur Programmierung mit blockbasierten Entwicklungsumgebungen wie Scratch, Snap! oder Blockly zu beginnen und später im Verlauf auf textbasierte Programmierung, z.B. in Python oder Java umzusteigen.

Dieser Umstieg bereitet Schüler*innen erfahrungsgemäß Schwierigkeiten, weil bei der textbasierten Programmierung nicht mehr nur die Semantik, sondern auch die Syntax eines Programms eine potenzielle Ursache für Lernhürden darstellt.

Eine Möglichkeit, diese Schwierigkeiten abzumildern, könnte darin bestehen, zuerst simultan block- und textbasiert zu programmieren, um den Schüler*innen die Möglichkeit zu geben, zu beobachten, wie sich Veränderungen an den Blöcken im Programm-Quelltext niederschlagen und umgekehrt, wie sich die Blöcke durch Manipulationen am Quelltext verändern. Ersteres ist in Blockly bereits implementiert, die Rückrichtung noch nicht.

Mögliche Abschlussprojekte in diesem Bereich wären:

  • Implementierung einer Blockly-Erweiterung, die Änderungen am Quelltext simultan auch an den Blöcken durchführt
  • Konzeption und Evaluation einer Unterrichtseinheit zum Thema Programmierung unter Verwendung dieses Frameworks