Einstieg ins Programmieren mit Python

Informatik-Unterricht hält langsam aber sicher Einzug in den Schulzimmern. Im neuen Lehrplan 21 wird Informatik schon auf Primar- und Sekundar-Stufe unterrichtet. Und auch an Sek II-Schulen wird aller Voraussicht nach ein obligatorischer Programmier-Unterricht für alle eingeführt. In welcher Programmiersprache soll das geschehen? Gibt es eine geeignete Entwicklungsumgebung? Dieser Post ist ein Plädoyer für Python sein. Als Lehrmittel wird tigerjython.ch vorgeschlagen. Will man Programmieren unterrichten, ist die wichtigste Frage: In welcher Programmiersprache? Der Entscheid für die Prorgammiersprache bestimmt teilweise über den Erfolg eines Kurses. Sind die Schülerinnen und Schüler schnell in der Lage, selbst Programme zu schreiben, die erstens laufen und die sie zweitens verstehen, bleiben sie konzentriert und motiviert, sich weiterhin mit der Materie zu beschäftigen. Ist umgekehrt der Initialaufwand zu gross, um ein lauffähiges Programm selbst zu schreiben, fühlen sich die Lernenden schnell überfordert, und die Motivation lässt nach. Bei einem obligatorischen Fach Informatik muss damit gerechnet werden, dass nicht alle Schülerinnen und Schüler intrinsisch motiviert sind, sich mit der Materie zu befassen. Es ist also von grösster Wichtigkeit, dass der Einstieg ins neue Fach so gestaltet ist, dass alle schnell zu einem Erfolgserlebnis kommen. Dafür ist Python hervorragend geeignet. Schneller Einstieg Ich setze im Ergänzungsfach Informatik zum ersten Mal auf Python. Der Entscheid hat sich bereits gelohnt. Denn so einfach wie mit Python war der Einsteig ins Programmieren noch nie. Obwohl es Ergänzungsfach heisst, ist die Situation in der Regel nämlich so, dass die allermeisten Schülerinnen und Schüler noch überhaupt keine Erfahrung im Programmieren haben. Mit Java – der Sprache, die ich bisher verwendet habe – gelang es den Schülern zwar auch nach kurzer Zeit, ein Programm zu schreiben. Aber viele Teile des Codes blieben für die Lernenden geheimnisvoll. Beispielsweise der Grund für die Typisierung der Variablen, die zwingend nötigen Funktionen (public static void main() zum Beispiel), die Grundstruktur der Klasse etc. war den Lernenden oft nicht klar. Bei Python ist das ganz anders. Jede Zeile Code ist auch für Anfängerinnen und Anfänger nachvollziehbar. Bereits nach zehn Minuten sind sie in der Lage, ein eigenes Programm zu schreiben, das sie auch verstehen. Das wirkt motivierend. Aktuell Python ist auch im industriellen Umfeld auf dem Vormarsch. Insbesondere im Bereich Data Science und Statistik ist Python derzeit sehr angesagt. Dadurch erhalten die Schülerinnen und Schüler nicht nur die Möglichkeit, eine für Anfänger einfache Sprache zu erlernen, sondern sie lernen auch eine relevante Programmiersprache. Anders als beispielsweise Logo, das eigentlich fast nur zu edukativen Zwecken eingesetzt wird, ist Python eine echte Programmiersprache, die nicht in erster Linie für Lernende konzipiert ist.  Dies belegt auch der stets aktualisierte Tiobe Index, der eine Übersicht über die beliebtesten Programmiersprachen zeigt (siehe Bild). In diesem Index sind die jahrelangen Leader Java und C auf dem absteigenden Ast. Dahinter etabliert sich langsam aber sicher Python.  Breit einsetzbar Ein grosser Vorzug von Python ist sein breites Einsatzgebiet. So lassen sich nicht nur elementare Algorithmen für Programmieranfänger mit Python umsetzen, sondern auch komplexe Datenanalysen, klassische Algorithmen, grafische Programmierung oder Datenbankanwendungen sind mit Python einfach umsetzbar. Entscheidend für den Unterricht ist meiner Ansicht nach aber auch, dass sowohl Legoroboter und der 50-Franken-Computer Raspberry Pi mit Python programmiert werden können. Anders gesagt: Die Schülerinnen und Schüler lernen eine einzige Programmiersprache und sind damit in der Lage so weit zu gehen, wie es ihrem Können und Vorwissen entspricht. Es gibt kein Ende und keine Einschränkung beim Einsatz von Python, auch wenn es vielleicht für spezifische Anwendungen, wie etwa Simulationen oder Arduino-Programmierung, geeignetere Programmiersprachen gibt. Einfacher Editor In meinem Ergänzungsfach setze ich tigerjython von Tobias Kohn zusammen mit dem entsprechenden Lehrmittel als Entwicklungsumgebung ein. Der Grund für diesen Entscheid ist die Integration aller Libraries, die im Lehrmittel tigerjython.ch verwendet werden. Zudem ist tigerjython in Java geschrieben und kommt als ausführbares jar-File daher. Damit ist es auf jedem Betriebssystem ausführbar, sofern eine Java-Runtime-Environment installiert ist. Tigerjython braucht auch nicht installiert zu werden, was den Gebrauch auf Schulrechnern sehr unkompliziert macht. Schade ist nur, dass der Editor auf Python 2.7. Die neuen Python 3-Features sind damit noch nicht nutzbar. Der Editor sieht sehr einfach aus, bietet aber dennoch viele Features, die man von einem Editor erwartet. Insbesondere macht er Code-Vorschläge, bietet die Möglichkeit, P

Quelle: Einstieg ins Programmieren mit Python