Ein Streifzug durch die Programmiersprachenlandschaft in der Schule Gerald Futschek TU Wien Informatiktag 2013 Urwald der Programmiersprachen Visual Basic COBOL Modula-2 SQL Pascal APL C Perl CNC Programmierung Fortran JavaSkript BASIC LISP Logo Prolog Assembler ASP Delphi C# PL/I Ada MATLAB C++ Unterscheidungen Ada, APL, ASP, App Inventor, Assembler, BASIC, BYOB, C, CNCProgrammierung, COBOL, C++, C#, Delphi, Fortran, Haskell, HTML, Java, JavaSkript, Kara, Lisp, Logo, MATLAB, Modula-2, Oberon, Pascal, Perl, PHP, PL/I, Prolog, Python, R, Ruby, SAS, Scratch, Smalltalk, Snap!, SQL, Visual Basic, … Applikations, Applets, Webapplikationen, Serverprogramme, Mobile Apps, Geräte, Roboter Paradigma: Objektorientiert, Prozedural, Funktional, Logikorientiert Ausführung: Compiliert, Interpretiert typisiert – nicht typisiert veraltet - modern für Anfänger geeignet - für den Beruf geeignet – für die Schule geeignet TIOBE Programming Community Index for September 2013 Anforderungen der Schule an Programmiersprachen • • • • • • • • • Für Anfänger geeignet Für Fortgeschrittene geeignet Leicht und schnell zu lernen Konzepte stehen im Vordergrund Auch fortgeschrittene Konzepte Wenig Frust, viele Erfolgserlebnisse Viel lernen, wenig Lernaufwand Regelmäßige Wartung Kostenlos Web-Programmierung Webseiten: • HTML, HTML5 • JavaScript Server: Dynamische Webseiten • PHP (PHP Hypertext Preprocessor) • ASP (Microsoft, Active Server Pages) University of California, Berkeley Einstieg in Professionelle Sprachen Python PythonTurtle Python Kara Java BlueJ Java Kara Greenfoot while not kara.treeFront(): if kara.onLeaf(): kara.removeLeaf() kara.move() Programmieren für Kinder • Programmieren ab 3 Jahren Mit Robotern (physical computing) – Bee Bot – Lego We Do – Makey Makey Ressourcen • Life Long Kindergarten (MIT Media Lab) • http://llk.media.mit.edu – – – – Scratch MaKey Makey App Inventor usw. • www.swisseduc.ch/informatik – – – – Kara Webprogrammierung Graphenalgorithmen usw. Makey Makey App Programmierung • App Programmierung – App Inventor (Google, MIT) http://appinventor.mit.edu/explore/ interpretierte Skriptsprache Einrückungen ersetzen Blöcke funktional, objektorientiert als Anfängersprache gut geeignet Implementierungen für praktisch alle Betriebssysteme frei verfügbar • Implementierungen in speziellen Systemen für Kinder: • • • • • Raspberry Pi 100 dollar laptop OLPC Python Kara Programmierung und Kreativität • Kreativität (de.wikipedia): … ist die zeitnahe Lösung für ein Problem mit ungewöhnlichen, vorher nicht gedachten Mitteln und mehreren Möglichkeiten der Problemlösung. • John Maeda, Autor des Buches Creative Code und Professor für Design- und Informatik: "Um schöpferisch, z.B. im Bereich Grafik, tätig zu sein, muss man programmieren können" John Maeda (* 1966 in Seattle) Präsident der Rhode Island School of Design (RISD). Programmieren am Handy für Kinder • Internationales Projekt zur Entwicklung einer Scratch-artigen Entwicklungsumgebung für Handys • Unter der Leitung von Wolfgang Slany • open source • für Android • iOS, MS in Arbeit • Innovationspreis 2013 • Film zur Programmierung Scratch 2.0 Mitchel Resnick • Vollständige Neu-Implementierung in Flash • Läuft im Browser, keine Installation notwendig • Offline editor (beta) seit August 2013 Programmieren mit der Scratch Modifikation Snap!/BYOB4.0 auf dem iPad 2 funktioniert ohne Java und Flash. Neue Features in Scratch 2.0 • Prozeduren • Rekursion Neue Features in Scratch 2.0 Cloning von Sprites Sound Editor, Video Sensing, additional Vector Graphics, user name block, etc. Zusammenfassung • Programmieren ist für die Schule unverzichtbar – Kreativität durch Programmierung – Verständnis der Funktionsweise der Informatiksysteme – Gestaltung der Informationsgesellschaft • Neue Programmiersysteme – ermöglichen leichten Einstieg für alle – für Apps, Web, Server oder Lernen von Konzepten – auch fortgeschrittene Konzepte Constructionism and Creativity Internationale Konferenz über Lernen durch Konstruieren von Artefakten Wien, 19. - 23. August 2014 für Erziehungswissenschafter, Fachdidaktiker, Lehrer, Studenten wir erwarten als Sprecher und Workshopleiter: John Maeda Mitchel Resnick Brian Harvey Wolfgang Slany u.A.