TigerJython
FAQ
Hier finden Sie Antworten zu den wichtigsten Fragen rund um den aktuellen Stand und die Weiterentwicklung von TigerJython und WebTigerPython.
TigerJython
Hier finden Sie Antworten zu den wichtigsten Fragen rund um den aktuellen Stand und die Weiterentwicklung von TigerJython und WebTigerPython.
Die Programmierumgebung und das Projekt entstanden ursprünglich unter dem Namen TigerJython. Das ist darauf zurückzuführen, dass wir Jython verwendet haben, um Python-Programme mit der Java Virtual Machine auszuführen. Inzwischen liegt unser Fokus aber auf der browserbasierten Web-Version mit Pyodide, so dass die Referenz auf Jython veraltet ist. Zudem war nicht immer klar, dass Jython ebenfalls Python ist. Entsprechend haben wir den Namen auf (Web)TigerPython angepasst.
Unser Projekt umfasst eine Reihe verschiedener Produkte. Die Web-Version WebTigerPython steht unter der open source Mozilla Public License MPL 2.0, ebenso wie die javabasierte Version TigerJython 3. Leider konnten wir die ältere Version TigerJython 2 nicht als Gesamtes open source zur Verfügung stellen. Allerdings ist mit dem TigerPython-Parser ein wichtiges Kernstück ebenfalls unter der MPL 2.0 verfügbar.
Ja, TigerJython und WebTigerPython werden aktiv weiterentwickelt, ersteres seit über zehn Jahren.
Zurzeit Wir arbeiten wir intensiv an WebTigerPython und implementieren stetig
neue Features. Weil uns eine einfache Oberfläche und Bedienung am Herzen
liegen, sind diese neuen Features aber oft nicht direkt sichtbar. So
unterstützt WebTigerPython inzwischen zum Beispiel PyGame, ohne dass dies
direkt sichtbar wäre.
Daneben erfährt auch der WebTigerPython-Parser, mit dem wir verbesserte Fehlermeldungen erzeugen, regelmässig Bugfixes und Verbesserungen.
TigerJython 3 wird zusammen mit den Online-Tutorials «Programmierkonzepte.ch» und «TigerJython4Kids.ch» immer noch in vielen Schulen eingesetzt. Auch diese Programmierumgebung wird weiter unterstützt und im Bereich Robotik weiterentwickelt. TigerJython 2 stützt sich allerdings stark auf Jython, das in Bezug auf die Python-Version leider veraltet ist. Eine Modernisierung der jythonbasierten Versionen wäre mit erheblichem Aufwand verbunden. Da vor allem das Bedürfnis nach einer webbasierten Lösung an uns herangetragen wurde, haben wir daher beschlossen, uns auf die Web-Version zu konzentrieren.
TigerJython wurde ursprünglich von Tobias Kohn, Aegidius Plüss (†) und Jarka Arnold kreiert und entwickelt. Nicole Trachsler hat dann später eine erste Web-Version geschrieben, die auf Skulpt basierte. Inzwischen ist das Team stark angewachsen und WebTigerPython ist in erster Linie eine Umsetzung von Clemens Bachmann unter der Leitung von Dennis Komm und Tobias Kohn, während Jarka Arnold die Tutorien und den Support verantwortet.
Die Verantwortung für das Projekt obliegt dem gemeinnützigen Verein TJ Group, in enger Kooperation mit der Professur für Algorithmen und Didaktik bzw. dem Ausbildungs- und Beratungszentrum für Informatikunterricht der ETH Zürich und der Professur für Informatik und ihre Didaktik des KIT.
Weitere Informationen finden Sie in einem Blog-Artikel «Programmierunterricht made in Switzerland» von 2024.
gturtle und nicht turtle?Jython stellt keine eigene Turtle-Bibliothek zur Verfügung. Entsprechend
mussten wir für TigerJython eine javabasierte Alternative finden, die wir
einbinden konnten. Das war die Java-Turtle-Bibliothek von
Aegidius Plüss. Aufgrund verschiedener
Unterschiede in der Namensgebung und Implementierung haben wir diese Bibliothek
als gturtle eingebunden (wobei das g für graphics steht).
Zum damaligen Zeitpunkt gab es neben dem ursprünglichen turtle-Modul von
Python 2 auch eine erweiterte Turtle xturtle, die in Python 3 zur
Standard-Turtle wurde. Die Idee eines alternativen Turtle-Moduls war also
nicht neu.
Aufgrund der vielen Unterrichtsmaterialien und Lehrbücher, die inzwischen
entstanden sind haben wir die gturtle als Modul beibehalten, stellen aber
auch ein Interface zur Verfügung, das mit dem Standard-Modul turtle
weitgehend kompatibel ist. Auch das gturtle-Modul unterliegt dabei natürlich
Weiterentwicklungen, die teilweise didaktisch und teilweise technisch bedingt
sind. Zum Beispiel ist das makeTurtle() in WebTigerPython weggefallen, weil
es im Unterschied zur Java-Version kein Fenster mehr gibt, das erstellt werden
müsste.
APLU-Bibliotheken?APLU bezieht sich auf Aegidius Plüss (einen der Gründungsväter von
TigerJython), der eine umfangreiche Sammlung an Java-Bibliotheken geschrieben
hat, unter anderem Turtle, GPanel und JGameGrid. Diese
Java-Bibliotheken wurden dann in TigerJython integriert. In der Dokumentation
oder in diversen Repositorys werden diese Bibliotheken manchmal unter dem
Begriff APLU zusammengefasst.