---------

\\ Learning\ Codekit\ Didactics

-Learning

Choose Interface

-

2004/10/14

CodeKit - Ausbildung in der Praxis (Only available in german)

CodeKit: ein Javakurs für Künstler
KHM Javakurs: Arbeiten in kleinen Gruppen
Laptops für eine mobile Lernumgebung
Vorauszuschicken ist, dass die im Rahmen von CodeKit bereitgestellten Programmbeispiele - wie das gesamte Material - ursprünglich nicht als Selbstlernkurs konzipiert wurden. Der Inhalt von CodeKit wird an der Kunsthochschule für Medien Köln im Rahmen einer zweiwöchigen Blockveranstaltung mit dem Titel "Einführung in die Java-Programmierung" vermittelt. Die Präsenz und Hilfestellung der Lehrenden halten wir generell für sehr wichtig, um einen effektiven und reflektierten Umgang mit neuen Medien zu gewährleisten. Im Zusammenhang mit der Programmierung gilt dies aufgrund der Komplexität des Stoffes in besonderem Maße.

Motivation

Wir haben eigene Lernmaterialien entwickelt, insbesondere eine Einführung in die Java-Programmierung, weil wir erfahren haben, dass Softwareentwicklung in künstlerischen Arbeitszusammenhängen von anderen Erwartungen und Zielsetzungen getragen wird, als die professionelle Softwaretechnik der Informatik. Softwaretechnik (engl. "software engineering") ist, im Gegensatz zur künstlerischen Programmierung, ein stark standardisierter Prozess und im Wesentlichen an kommerziellen Kriterien orientiert. Sie befasst sich mit der Ingenieursmäßigen Konstruktion und der professionellen Entwicklung großer Softwaresysteme, d.h. es stehen komplexe, qualitativ hochwertige Produkte und deren zuverlässiges Funktionieren im Vordergrund. Als Qualitätsmerkmale gelten neben niedrigem Preis und leichter Handhabung Präzision, Effizienz, Zuverlässigkeit und Anpassungsfähigkeit des Systems.

Programmieren als künstlerische Praxis

Ganz anders ist die Situation der Programmierung als künstlerische Praxis. Der Computer wird hier als Werkzeug der Imagination eingesetzt. Es geht in erster Linie darum, Ideen zu testen und zu verwerfen oder aber weiterzuentwickeln. In der Kunst geht es im Unterschied zur Technik damit nicht vorrangig um die Lösung spezifischer Probleme, sondern um die Annäherung an Problemstellungen. Programmierung ist hier weniger ein Werkzeug, um ein klar definiertes Problem abzuarbeiten, sondern ein Werkzeug, um Probleme zu erarbeiten und Fragen aufzuwerfen. Es existiert keine Lösung, die nach allgemein akzeptierten Kriterien zu bewerten wäre. Es gibt keinen festzulegenden Punkt, an dem das Projekt "fertig" wäre. Vielmehr wird die Entwicklung nach Erreichen eines zufriedenstellenden Status gestoppt. Die direkte Auseinandersetzung mit dem Code als Material und die Widerstände, die sich erst beim Programmieren zeigen und überwunden werden müssen, sind hierbei wichtig. Der Prozess der Softwareerstellung ist damit in künstlerischen Zusammenhängen sehr viel individuelller als die Methoden, die durch die Softwaretechnik der Informatik bereitgestellt werden. Des Weiteren sind künstlerische Arbeiten stark an Interface-Fragen und audio-visuellen Anwendungen orientiert. Einführende Programmbeispiele, die sich nach Bild, Ton und Interaktion richten, sind deshalb von sehr viel größerer Bedeutung als etwa die Eleganz und Effizienz (im Hinblick auf Speicherplatz und Zeitkomplexität) von Algorithmen, wie sie für die Informatik wichtig sind.

grundlagen

Diesen unterschiedlichen Ausgangspositionen von Informatik und Kunst muss eine Einführung in die Programmierung Rechnung tragen, die in künstlerischen Arbeitszusammenhängen erfolgreich sein will. Die Inhalte des Kurses lassen sich in die drei Bereiche Sound, Bild und Interaktion unterteilen. Die einzelnen Beispiele aus diesen drei Bereichen greifen Grundprobleme der medialen Praxis auf. Die Lösungsbeispiele sind damit gewissermaßen Musterlösungen, die im Laufe des Kurses immer wieder neue Verbindungen miteinander eingehen und damit neue und oft überraschende Anwendungen ermöglichen. Es wird nicht erwartet, die Erwartung an die KursteilnehmerInnen zu versierten ProgrammiererInnen auszubilden, sondern sie an das Feld der Programmierung heranzuführen und dessen Potential erfahrbar zu machen. Die StudentInnen bekommen einfache Programmversionen an die Hand, in die sie ihre eigenen Ideen und Versuche einschrieben können. Damit soll vor allem erreicht werden, dass sich rasch kleine Erfolge einstellen und die Lernenden kreativ mit den Codes umgehen und so von der ersten Stunde an eigene kleine Experimente entwickeln. Um effektives und individuelles Arbeiten und Experimentieren zu ermöglichen, achten wir auf Kursstärken zwischen 10 und 15 TeilnehmerInnen bei zwei bis drei Lehrenden. Tatsächlich kann aber erst eine längerfristige Programmierpraxis im Anschluss an den Kurs dazu führen, dass StudentInnen die Fähigkeit erlangen, eigene Programmierprojekte autonom zu entwickeln. Entscheidend für diesen besonderen Lernerfolg ist die individuelle Betreuung dieser Studenten in der Zeit nach dem Kurs.

Werkzeugkasten

Die Entwicklung des CodeKit verfolgt einen weiteren Nutzen, der über seine Verwendung im Programmierkurs hinausgeht. Es hat sich gezeigt, dass zwar nur wenige KursteilnehmerInnen den Sprung bis zur Entwicklung eigener kleiner Programmierprojekte schaffen, viele StudentInnen aber dennoch in der Folge künstlerische Arbeiten entwickeln, die Programmieranteile enthalten. CodeKit ist geeignet, die Realisierung solcher Projekte zu unterstützen. Wie in einem Werkzeugkasten lassen sich die Grundbausteine in ihrer Funktionalität kombinieren und in neuen Kontexten wiederkehrende technische Probleme pragmatisch und effizient lösen. Die hier beschriebenen Projekte sind Beispiele für beide Verwendungsarten des CodeKit, einmal als Ausbildungskonzept und Rahmen für die eigenständige Entwicklung studentischer Projekte, zum zweiten als Werkzeugkasten, der es versierten ProgrammiererInnen erlaubt, die im Rahmen medienkünstlerischer Projekte anfallenden Programmieraufgaben effizient und zielorientiert zu erledigen.
Top of Page