In seiner Funktionalität auf die Lehre in gestalterischen Studiengängen zugeschnitten... Schnittstelle für die moderne Lehre
In seiner Funktionalität auf die Lehre in gestalterischen Studiengängen zugeschnitten... Schnittstelle für die moderne Lehre
In dem Interface-Werkstatt-Kurs von Fabian Morón Zirfas haben wir in vier verschiedenen Aufgaben und einem Abschlussprojekt experimentell die gestalterischen Möglichkeiten von Soft- und Hardware erforscht.
Ziel des Kurses war es, einen Einblick in die Arbeit eines „Creative Technologist“ zu bekommen, eine Person, die die Schnittstelle zwischen Technologie und Gestaltung bedient und mit prozeduralen, prozessorientierten oder generativen Prozessen arbeitet. Dabei sammelten wir erste Erfahrungen mit der Programmierung von Software mit Javascript (P5.js, Johnny-Five, Node.js) und lernten den Umgang mit der Kollaborationsplattform GitHub kennen.
In der ersten Aufgabe sollten wir uns ein frei gewähltes Kunstwerk aussuchen und dieses analysieren. Anschließend entwickelten wir einen Algorithmus, der verschiedene Versionen des Werkes generieren kann. Dabei sollten wir darauf achten, keine festen Werte zu benutzen, sondern stattdessen Regeln finden, die zum Beispiel dafür sorgen, dass das Werk frei skalierbar bleibt.
Für die Umsetzung sollten wir Javascript nutzen, was für mich eine kleine Herausforderung darstellte, da ich zuvor noch nie programmiert hatte. Um es mir nicht zu schwer zu machen, habe ich mir ein relativ einfaches Werk des Künstlers Simon C. Page ausgesucht.
Meine kurze Analyse ergab, dass es sich bei dem gesamten Werk sehr offensichtlich um mehrere Kreise bzw. Kreisausschnitte handelt.
Ich kam relativ schnell auf die Idee, das Kunstwerk mit alternativen Farbpaletten zu programmieren, die sich dann „interaktiv“ auswählen lassen.
Für mich als Anfänger war es die größte Herausforderung, die Lederhaut des Auges zu programmieren, da diese aus der Schnittmenge von zwei gleich großen Kreisen besteht. Wie das Ganze mit Javascript machbar ist, findet man auf dieser Seite: http://walter.bislins.ch/blog/index.asp?page=Schnittfl%E4che+zweier+Kreise+berechnen
In der zweiten Aufgabe ging es darum, aus Computer-Schrott etwas neues zu erschaffen, in diesem Fall aus dem PCB-Board einer alten USB-Tastatur. Unserer Kreativität wurde dabei keine Grenze gesetzt und es war uns freigestellt, ob wir beispielsweise einen Tea-Timer mit einem Makro Programm bauen oder einen Controller für ein mit Javascript programmiertes Spiel.
Ich entschied mich dazu, einen relativ simplen Controller für das Musikprogramm Ableton Live zu entwerfen, weil ich schon immer einen eigenen Controller bauen wollte, aber nie die Zeit dazu hatte. Der schwierigste Part war dabei tatsächlich geeignete Tasten-Kombinationen zu finden, da ich möglichst keine bereits belegten Tasten nutzen wollte.
Leider ist es mir nach vielen Versuchen nicht gelungen, Tasten in Verbindung mit STRG/CTRL und SHIFT zu verlöten, da es nach dem Ausbau aus dem ursprünglichen Tastaturgehäuse gar nicht so leicht war, diese Tasten auf dem PCB-Board ausfindig zu machen. Letztendlich habe ich dann Tasten wie §, $, % und & benutzt, da man diese relativ selten braucht.
Trotz einiger Probleme finde ich das Ergebnis recht zufriedenstellend und man kann die Box tatsächlich problemlos benutzen, um beispielsweise Szenen in Ableton zu starten, natürlich wären auch andere Anwendungen denkbar. Mein Learning bei diesem Projekt ist auf jeden Fall, sich vorher die Leiterbahnen genau anzuschauen, bevor man alles auseinander rupft.
In der dritten Aufgabe sollten wir in relativ kurzer Zeit einen funktionierenden Mal-Roboter bauen, dazu sollten wir Johnny-Five in Kombination mit einem Arduino Board benutzen. Da meine Programmierkenntnisse meiner Meinung nach nicht ausgereicht hätten, habe ich mich bei dieser Aufgabe mit Carl Linz zusammengetan.
Carl und ich einigten uns darauf, einen Mal-Roboter zu bauen, der auf Musik reagiert und sich in der Intensität regulieren lässt. Dafür bauten wir einen ersten Prototypen aus Lego, der mit Hilfe einer drehenden Scheibe ähnliche Muster wie ein Spirograph zeichnete.
Hier eine Grafik, die Carl erstellt hat, um die Funktionsweise zu verdeutlichen:
Das Web-Interface, das Carl zur Steuerung des Eingangssignals und des Roboters programmiert hat:
Die letzte und wohl schwierigste Aufgabe war es, eine Datenvisualisierung mithilfe eines Plotters zu erstellen. Dafür sollten wir einen Datensatz aus Berlin finden und diesen mithilfe eines selbst ausgedachten Algorithmus visualisieren.
Die erste Hürde war es, einen geeigneten Datensatz zu finden, anfangs wollten wir etwas mit Statistiken über Berliner Studenten oder Litfaßsäulen machen, von diesem Plan sind wir letztendlich abgewichen und haben uns für die Stolpersteine des Künstlers Gunter Demnig entschieden. Bei der weiteren Recherche ist uns bewusst geworden, wie viele Opfer allein in Berlin in der Zeit zwischen 1933 und 1945 durch Nationalsozialisten verfolgt wurden.
Als Quelle für unsere Datenvisualisierung diente uns die folgende Internetseite: https://www.stolpersteine-berlin.de/de/stolpersteine-finden
Um die Daten für unser Projekt verwenden zu können, war es notwendig, die ehemaligen Wohnanschriften der Opfer in Koordinaten umzuwandeln, was angesichts der über 8000 Einträge eine sehr mühselige Handarbeit bedeutet hätte. Nach längerer Suche konnten wir zum Glück jedoch das folgende Tool finden, um diesen Prozess zu automatisieren: https://www.gpsvisualizer.com/geocoder/
Natürlich mussten eine Vielzahl von Adressen trotzdem noch von Hand korrigiert werden!
Anhand der Geburtsjahre der Opfer und der erstellten Koordinaten hat Carl sich einen schlauen Algorithmus ausgedacht, der in der folgenden Grafik erklärt wird:
Mit p5.js hat Carl dann diesen Algorithmus programmiert und anschließend eine SVG Datei erstellt. Diese musste dann zu GCode umgewandelt und optimiert werden, damit der XYZ-Plotter die Daten verstehen kann. Geplottet wurde dann übrigens im CityLab Berlin, was Fabian freundlicherweise organisiert hatte!
Mir hat der Kurs grundsätzlich sehr gut gefallen, leider empfand ich das Tempo des Kurses als Programmiereinsteiger etwas zu schnell und ich konnte viele Dinge nicht so umsetzen, wie ich sie mir vorgestellt hatte, da mir einfach die Javascript Kenntnisse gefehlt haben. Andererseits war es auch eine gute Möglichkeit zu lernen, wie man alternative Lösungsansätze findet, um ein ähnliches Ergebnis zu erzielen. Erfrischend fand ich den Mix aus Konzeptionieren, Basteln und Programmieren, besonders Spaß hat mir dabei der handwerkliche Teile gemacht.