Since I’ve been employed at the University of Applied Sciences Potsdam (Germany) as lab supervisor (and later on as artistic and scientific assistant) I started teaching programming and electrical engineering with the focus on Creative Coding and Physical Computing. In the winter semester of 2014 I also started to teach a class in the design fundamentals called “Eingabe/Ausgabe”. My aim has always been to teach with a hands on methodology using the concept of cognitive apprenticeship that should develop into self directed problem solving. As soon as possible my students had to build their first, second, third prototypes, read and write code, break it, understand why it is broken and rewrite it. I always try to encourage them to share their projects with an open source license so others can build on their projects, like they do. See lehrveranstaltungen.md for a list of all my courses.
Table Of Contents
- Table Of Contents
- Gestalten in Code
- Lost in Navigation
- Input/Output - Fundamentals of Process-Oriented Design
- Knowledge Exchange Group
- “Doing Papercraft/Projection Mapping”
- “Johnny Five Is Alive”
- “DIY (Multi) Touch (less) Human Computer Interaction”
- Interface Lab Seminar
- Typography and Automation
- Adobe After Effects Tutorials für ae.tuts+
Gestalten in Code
Where is the “Gestalt” in code? Can the Laws of Gestalt be programmed? And what are these laws? In this seminar we will explore the origin, present and possible future of computer art. Based on the Laws of Gestalt we are going to categorize several art works and use these rules to create our own generative design. This seminar will be split into three sprint projects each building on top of its predecessor. The site for the seminar can be found here.
Lost in Navigation
Lost in Navigation is an upcoming course by Prof. Myriel Milicevic and me. Can we navigate by emotion? And how might a emotional map look like? Can a machine guide us and express those emotions? In this seminar we are going to build our own navigation systems with an focus on an emotional expression of machines.
Input/Output - Fundamentals of Process-Oriented Design
“Eingabe/Ausgabe - Grundlagen der Prozessorientierten Gestaltung” was my seminar in the design fundamentals module for three semesters from winter 2014 to spring 2016. You can see the whole documentation of the seminar here.
The aim of the seminar was to give the students a first peak into the fields of Creative Coding, Physical Computing and Data Visualization paired with the technical knowledge to develop own projects. The course was split into three sprint projects each around 4 to 5 weeks long. The students also had to give a report on an artist/designer from the field of interest and we had some quests during the interm and final presentation who gave feedback on the students projects as well. Through the seminar the instructions the students get are reduced so that they will be able to solve their problems at the end. Se my totally scientific chart which illustrates the progress.
The first project, always called “Algorithm”, engaged the students with the basic concept of programming. The task was to define an drawing algorithm for humans, execute it, create amended versions until the result is to their liking. These results then got abstracted further using Processing or P5.js.
The second task was always a bit more experimental. In each case they had to generate a visualization of data. In the first seminar by defining a question, creating a survey, collecting the data and creating visual representation. The second seminar was all about slime molds and their behavior. The students had to define an experiment designed to take advantage of the slime molds properties. Create a setup to nurture and record their movement and afterwards create an analysis of that recorded data. In the third semester it was all about the International Space Station using. The range here went from posters about the relativity of time to web applications that track the ISS in real time and use their position as “filter” to gather data from other APIs.
The third task was always about Physical Computing. From creating a computerized representation of binary states in the real world, to motorized posters/objects that react on the passive presence of a spectator to connected objects that talk to one another. Below you will find some highlights of the projects the students created.
Knowledge Exchange Group
“Doing Papercraft/Projection Mapping”
In April 2016 I gave two single day crash course about creating simple 3D objects in Blender, unfolding them and preparing them for laser cutting. In the second part these objects where used to do a projection mapping on them. As part of the workshops I created extensive documentations. “Doing Papercraft” and “Doing Projection Mapping”. These workshops where part of a series of three warm up workshops for seminar “Datenobjekte” by Prof. Boris Müller.
“Johnny Five Is Alive”
This was also a project weeks workshop in October 2015 about prototyping connected devices using the Node.js and the Johnny Five framework, Particle Photon boards, IFTTT and the corresponding mobile applications like “Do Button” or “Do Note”. After a crash course in creating a simple server and page with Express.js that controls a Arduino Board over USB or Wi-Fi the students had to come up with a quick project using some or all of the learned technologies.
M2M Translator by Rahel Flechtner
In a world that gets more and more connected, we are surrounded by machines talking to each other. Mostly, for us it is not possible to know what they are actually communicating. That this fact could get really disturbing or even terrifying is shown by the little scenario of Paula and her smart home(…)
Take a look at the whole project over here.
The Nibble Do List by Lucas Vogel
The nibble-do list is a website connected with a candy dispenser. The candy dispenser can be placed on a desk next to a user computer. On the website, the user can define tasks on a to-do list. When a task is completed, the candy dispenser is automatically made aware of this completion and rewards the user with some candies.
See the whole project description over here.
TreatSpin by Christoper Klement
Since my cats are quite lazy, I had the vision to build a gadget that would make them move more: The idea of a treat spin was born. Simultaneously, I wanted to be able to lean back and use it as easy as possible – from the sofa or while being out and about.
A Particle Photon powered and IFTTT controlled cat animator. See the full documentation over here.
“DIY (Multi) Touch (less) Human Computer Interaction”
In the project weeks in October 2014 I gave this seminar about touch and touch less human computer interaction. In the first week the students got a quick introduction into building their own touch interfaces using just a cheap USB camera and Computer Vision in Processing, how to hack USB cameras to make them just see infrared light and how to map this data with OSC to sounds. In the second week they had to think a quick group project to use the introduced techniques.
Homo Effectus by Flavio Gortana, Fabian Dinklage and Caspar Kirsch
A musical interface controlled by color and hand gestures.
Hot Sphere by Alexander Käßner, Alvaro Garcia and Kevin Schiffer
A game controller based on Computer Vision.
Interface Lab Seminar
Starting with my work as lab supervisor in 2013 I also started to give a six days block seminar about Creative Coding in Processing and P5.js and Physical Computing using Arduino or Particle Photon boards. Each semester around 15 students get a three day crash course. After that they had to think of a small project with one of these techniques and accomplish it in three days.
Playlist Quartet by Jonathan Kloß
Generate quartets cards based on your Spotify playlist.
Interactive Plant by Carla Schewe
An Origami folded plant that reacts on presence.
Play with me XXO by Andrea Biedermann
An Arduino powered XXO game.
Typography and Automation
Adobe After Effects Tutorials für ae.tuts+
In October 2012 I got approached by ae.tuts+ if I were interested into creating some tutorial that shows the techniques I used in my entry to the “Contest n°8” on mattrunks.com