Coding Sommercamps der OCG

Die OCG bietet unterschiedliche Coding bzw. Programmier-Kurse für Schülerinnen und Schüler an.

Coding Fun Woche

Die Coding Fun Woche der OCG richtet sich an Anfänger*innen und Fortgeschrittene.

  • Die Teilnehmer*innen lernen programmieren in Scratch oder Python oder vertiefen bereits vorhandenes Wissen.
  • Die Teilnehmer*innen lernen Modelle für den 3D-Druck zu erstellen, das ausgedruckte Ergebnis kann mit nach Hause genommen werden.
  • Die Teilnehmer*innen lernen mit eigenen Programmen Roboterautos zu steuern.

Wenn es möglich ist, finden in der Woche ein bis zwei Exkursionen statt, z. B. zur Dauerausstellung Abenteuer Informatik an der TU Wien.

Kreatives Coding mit Python oder Scratch für Anfänger*innen und Fortgeschrittene

Anfänger*innen erstellen entweder ein Spiel in der grafischen Programmiersprache Scratch oder programmieren mit der Python Turtle.

Fortgeschrittene programmieren mit der modernen Programmiersprache Python und erstellen entweder computergenerierte Grafiken oder arbeiten an textbasierten Programmen.

Als Abschlussarbeit wird meist ein einfaches Spiel für einen oder zwei Spieler*innen programmiert.

Einführung in die Programmierung mit Scratch

Zielgruppe: Lehrer*innen oder Schüler*innen (ab Schulstufe 3)

Scratch ist eine Programmiersprache die am MIT (Massachusetts Institute of Technology) speziell für den Unterricht entwickelt wurde. Sie ist wegen ihrer niedrigen Einstiegshürde der ideale Einstieg in die Programmierung, besonders für sehr junge Lernende.

In diesem Kurs erhalten Teilnehmende eine Einführung in diese blockbasierte, visuelle Programmiersprache.

  • Besucher*innen des Kurses lernen den Umgang mit der Scratch Entwicklungsumgebung sowie aller grundlegenden Konzepte der Programmierung wie Anweisungen, Schleifen, Verzweigungen und Variablen.
  • Im Verlauf des Kurses schreiben Teilnehmer*innen zuerst einfache und dann immer anspruchsvollere Programme.

Beliebte Projekte sind die Erstellung eines Spiels für einen oder mehrere Spieler*innen. Aber auch eine Simulation oder Projekte mit physikalischem oder mathematischem Hintergrund sind willkommene Alternativen.

Das Erlernen von Scratch ist die ideale Vorbereitung auf den Einstieg in eine universelle, textorientierte Programmiersprache.

Einführung in die Programmierung mit Python für Anfänger*innen

Zielgruppe Lehrer*innen oder Schüler*innen (ab Schulstufe 5)

Python ist eine universelle textorientierte Programmiersprache, die sich sehr gut für den Unterricht eignet. Python erfreut sich steigender Beliebtheit vor allem auch an Universitäten und in der Industrie. In der künstlichen Intelligenz (KI) spielt Python eine wichtige Rolle, da viele Systeme mit Python gesteuert werden oder eine Python-Schnittstelle haben.

Besucher*innen des Kurses lernen zunächst die Grundlagen und über die Besonderheiten der Python-Programmiersprache. Es folgt eine Einführung in die Shell, den "interaktiver Modus" des Python-Interpreters. Dann folgen erste Schritte mit IDLE einer einfachen, aber sehr guten integrierten Entwicklungsumgebung.

Nach den grundlegenden (Ganzzahl, Fliesskommazahl, Zeichenkette, Boole‘scher Wert) und den höheren Datentypen (Listen und Tupel, Dictionaries, Sets) lernen Teilnehmer*innen, wie Variablen eingesetzt werden.

  • Zuweisungen, Ausdrücke, Operatoren und ihre Rangfolge legen die Basis zum Verstehen von Anweisungen.
  • if-Anweisungen und Schleifen vervollständigen die Grundbausteine einer universellen Programmiersprache.
  • Funktionen (mit Parameter, ohne Parameter, mit Rückgabewert, ohne Rückgabewert) liefern ein mächtiges Werkzeug Programme zu strukturieren.
  • Mit Hilfe der Turtle-Programmierung können auf sehr einfache Weise interessante Grafiken erzeugt werden.
  • Ereignisorientierte Programmierung und Rekursion liefern Einblicke in gehobene Techniken der Programmierung.

Einführung in die Programmierung mit Python für Fortgeschrittene:

Dieser Kurs wendet sich an Personen mit Vorwissen in der Programmierung mit Python oder einer anderen Programmiersprache.

Nach einer kurzen Einführung in die Python-Programmierung wendet sich der Kurs gehobeneren Programmierthemen zu:

  • Abstrakte Datentypen, Objektorientierte Programmierung, Datenbankanbindung, Textverarbeitung, Dateioperationen, Schreiben/Lesen von Daten (csv oder Json), Try/Except.
  • Suchen und Beheben von Fehlern, Debugging, Fehlerarten.
  • Auch in diesem Kurs wird die Turtle-Programmierung zur Visualisierung fortschrittlicher Techniken verwendet.

Auf Wunsch können in diesem Kurs auch andere vertiefende Python-Themen durchgenommen werden:

  • zum Beispiel die Erstellung einer grafischen Benutzerschnittstelle (GUI) mit Tkinter oder auch mit anderen Frameworks.

Python Spezial-Workshops

Individuell vereinbartes Kapitel aus der Python-Programmierung

Anschauliche Einführung in die Python-Programmiersprache mit Hilfe der Python-Turtle.

Die Turtle-Programmierung wurde bereits in den Sechzigerjahren des 20. Jahrhunderts speziell für den Programmiersprachenunterricht erfunden. Aus diesem Grund verfügen praktisch alle Programmiersprachen, die in der Lehre eingesetzt werden über ein Turtle-Modul, was auch für Python zutrifft.

Bei der Ausführung von Turtle-Programmen kann man Programmen gleichsam bei der Arbeit zusehen, was sonst nur mit aufwändigen Visualisierungs-Werkzeugen möglich ist. Mit Hilfe von Turtle-Programmen können komplexe und sehr attraktive Grafiken produziert werden aber auch Animationen oder Simulationen sind so möglich.

Auf diese Weise kann auf spielerische Art der gesamte Sprachumfang von Python gelehrt werden. Dadurch bietet sich eine sehr kurzweilige Art eine Programmiersprache zu erlernen. Besonders kreative oder visuell orientierte Personen schätzen diesen Zugang zur Programmierung.

Robotik Workshop

Educational Robotics ist für viele Eltern und Schüler der bevorzugte Weg zum Einstieg in die Welt der Technik und der Programmierung.

Hier kann auf spielerisch Weise mit einer blockorientierten oder auch mit einer textorientierten Programmiersprache das Programmieren erlernt werden. Wir verwenden in diesem Kurs klassische Programmiersprachen und keine exotischen Technologien. Deshalb ist das in diesem Kurs verwendete Wissen universell auch in vielen anderen IT-Problemstellungen einsetzbar und bietet den Teilnehmern eine gute Grundlage für eine Entscheidung, ob sie eine technische Ausbildung einschlagen wollen.

Neben der Programmierung lernen die Teilnehmer*innen im Kurs auch alles notwendige über die wichtigsten Bausteine der Robotik:

  • Sensoren (Licht-, Entfernungs-, Gyro-, Tast-, Winkel-Sensoren)
  • Aktoren (Motoren, Ausgabedisplays, Lautsprecher, Leuchten, ...)

Im Kurs erfahren wir außerdem, was Steuerungen und Regelkreise sind und lernen, mit ihnen zu arbeiten.

Wir beginnen mit einfachen Programmen und steigern uns zu komplexeren (wie zum Beispiel der Steuerung autonomer, kleiner Fahrzeuge).

Weitere Workshops auf Anfrage:

  • Javascript
  • p5.js (Processing)
  • leaflet.js (Kartenframework)
  • OpenScad (3D)
  • 3D-Druck...