Normalerweise entwickeln wir Web-Apps. Umso schöner, wenn ab und zu etwas Anderes hereinkommt: Für das Historische Museum Baden haben wir zusammen mit dem Grafikbüro Girod Gründisch zwei interaktive Installationen gebaut – für eine Ausstellung über die Römerfunde aus dem Bäderquartier vis-a-vis von unserem Büro. Die Ausstellung lief 2025 und ist inzwischen wieder zu Ende – hier bleibt der Rückblick.
Ein Foto wird zum Mosaik
Die erste Installation war eine Fotostation. Wer davor stand, löste ein Bild aus. Eine im Korpus verbaute Kamera nahm das Foto auf, und wenige Augenblicke später erschien auf dem Display kein Foto mehr, sondern ein Mosaik – im Stil der römischen Fundstücke aus der Ausstellung nebenan.
Das ist der Kern der Idee: Die Besuchenden schauten sich nicht nur ein antikes Mosaik an, sie sahen sich selbst darin.
Der Algorithmus dahinter ist in Python geschrieben. Er zerlegt das Kamerabild und setzt es aus einzelnen Steinen wieder zusammen, so, dass die Farbwirkung stimmt und das Gesicht auch dann noch erkennbar bleibt, wenn es aus wenigen groben Flächen besteht.
Entscheidend dabei: Es liegt kein Filter über dem Foto. Jeder Stein wird mathematisch berechnet – mit eigener Lage, Form und Farbe –, so dass sich das Mosaik Stein für Stein auch tatsächlich verlegen liesse. Was auf dem Display erscheint, ist also nicht bloss ein Effekt, sondern ein echter Verlegeplan.
Wünsche an der Wand
Die zweite Installation griff eine alte Geste auf. Wer damals in den Bädern einen Wunsch hatte, hinterliess ihn – als Inschrift, als Weihung, als Zeichen. Bei uns tippten die Besuchenden ihren Wunsch auf einem iPad ein, und er erschien als Projektion an der Ausstellungswand, neben den Wünschen der anderen.
«FRIEDE LIEBE HOFFNUNG FUER ALLE» stand dort, als wir zuletzt vorbeischauten. Zweitausend Jahre später wünschen sich die Leute offenbar ziemlich genau dasselbe.
Vertrauter Stack, ungewohnte Verpackung
Technisch ist das Setup weniger exotisch, als es aussieht: Ein Raspberry Pi übernimmt den Betrieb, das Frontend ist mit Vue gebaut, das Backend mit Laravel – also grösstenteils derselbe Stack, mit dem wir auch Web-Apps bauen. Dazu die Kamera, das Display, der Auslöser, und das Ganze verschwindet in einem einzigen Korpus.
Genau das ist der Punkt, an dem sich so ein Projekt vom Normalfall unterscheidet. Bei einer Web-App endet unsere Verantwortung an der Schnittstelle zum Browser. Hier endet sie erst hinter der Rückwand. Passt die Kamera in die Aussparung? Kommt man an den Stecker, wenn etwas hängt? Was passiert, wenn morgens jemand den Strom einschaltet – fährt alles von selbst wieder hoch, in den richtigen Zustand, ohne dass jemand eine Tastatur suchen muss?
Fazit
Es war spannend, Software wieder einmal mit Hardware zu verbinden. Kamera, Display, Auslöser – Code, der nicht nur ein Interface steuert, sondern Bauteile, die im Raum stehen und auf die Leute reagieren.
Gleichzeitig ist uns dabei bewusst geworden, wie verwöhnt wir in der Webapp-Welt sind. Dort korrigieren wir einen Fehler jederzeit mit einem Deployment – ein paar Minuten später ist die Sache erledigt, für alle.
Das verändert die Arbeitsweise. Man denkt früher an den Betrieb: Was passiert nach einem Stromausfall? Und man merkt sofort, wenn eine Interaktion zu kompliziert ist, weil die Leute davor stehen und zögern.
Mehr zum Projekt gibt es auf der Projektseite.