In #001 stand hier eine Webseite. In #002 eine einzelne App. Heute ist daraus eine kleine Werkstatt geworden, und der grösste Teil dieser Arbeit war von aussen nicht zu sehen, weil das Wichtigste unter der Oberfläche liegt.
Building in Public heisst für mich, auch das zu zeigen, was mühsam war, unsichtbar blieb oder schiefging. Dazu gehört ein Versprechen aus dem letzten Eintrag, das ich nicht eingelöst habe.
Was du mitnimmst
- Live heisst nicht sichtbar: Drei Werkzeuge waren online, zwei davon fertig, und nicht einmal meine eigene Startseite zeigte sie.
- Der grösste Fortschritt war unsichtbar: Die Schlüssel bleiben auf dem Server, die Schriften sind selbst gehostet, die Tests laufen deterministisch. Erst das macht ein Datenschutz-Versprechen überprüfbar.
- Ich habe ein öffentliches Versprechen gebrochen: Der Slack-Loop aus #002 ist nicht gebaut, und genau das steht hier.
Wo diese Serie stehen geblieben ist
Kurz für alle, die neu dazukommen: In #001 ging es um meine erste eigene Webseite, wie sie in überschaubarer Zeit mit KI entstand und was mich dabei aufhielt. In #002 baute ich Tessera, Stein für Stein: eine App, die zeigt, was du geschafft hast, statt was fehlt. Am Ende jenes Eintrags stand ein Versprechen, ein Loop über Slack.
Aus der Visitenkarte ist eine Werkstatt geworden: Acht Werkzeuge liegen inzwischen im Dashboard, sieben davon sind fertig; der Bewerbungshelfer Setzling läuft im Soft-Launch. Dazu gehören Tessera, ein Farbwähler, ein Cookie-Clicker und ein interaktives Prompting-Tutorial; ausserdem das Politogramm «Du bist kein Punkt», der A-Eye Vorleser und das Agenda-Setting-Tool aus meiner Bachelorarbeit. Jedes Stück ist der Versuch, eine konkrete Frage zu beantworten.
Die unsichtbaren Wochen
Die Arbeit darunter sah nach nichts aus: Sie taucht in keinem Bildschirmfoto auf – und trotzdem bin ich auf sie am meisten stolz. Drei Dinge sind unter der Oberfläche passiert.
Alle KI-Aufrufe laufen jetzt über einen eigenen Zwischenserver, einen sogenannten Worker. Kein API-Schlüssel verlässt je den Server. Vorher wäre so ein Schlüssel im schlimmsten Fall im Browser gelandet; jetzt bleibt er dort, wo er hingehört. Wer die Werkzeuge nutzt, merkt davon nichts, und mehr soll eine Sicherheitsänderung auch nicht tun.
Alle Schriften und Skripte werden selbst gehostet. Nichts davon kommt mehr von Google oder von fremden Servern. Nebeneffekt, mit dem ich nicht gerechnet hatte: Die Datenschutzerklärung wurde dadurch kürzer, weil es weniger Dritte gibt, über die ich aufklären muss.
Die Seite hat «Augen» bekommen. Deterministische Bildschirmfotos prüfen jede Änderung Pixel für Pixel gegen eine Referenz. Verrutscht etwas, das nicht verrutschen sollte, sehe ich es sofort – nicht erst, wenn es jemand anders auf seinem Bildschirm sieht.
Ein Datenschutz-Versprechen, das man nicht überprüfen kann, ist Dekoration.
Deshalb halte ich diese Wochen für gut investiert: Infrastruktur ist Kommunikation. Auf einer Webseite lässt sich behaupten, was gerade passt: «Ihre Daten sind sicher», «wir nutzen keine Tracker». Erst die Bauweise dahinter macht die Behauptung überprüfbar. Dieselbe Disziplin gilt in der Kommunikation: sagen, was ich tue, und es so bauen, dass es stimmt.
Live heisst nicht sichtbar
Der A-Eye Vorleser und das Agenda-Setting-Tool waren fertig und live, Setzling lief im Soft-Launch. Nur: nirgends verlinkt. Mein eigener Werkzeugkasten auf der Startseite zeigte fünf von acht Werkzeugen, und für die anderen drei tat meine eigene Seite so, als gäbe es sie nicht.
Die Lektion gilt weit über meine Bastelseite hinaus, gerade für KMU: Der Engpass ist selten die Technik, sondern die Erzählung. «Bauen» und «zeigen» sind zwei getrennte Arbeitsgänge – und der zweite passiert nicht von allein. Ein fertiges Produkt, von dem niemand weiss, ist für die Aussenwelt kein Produkt. Ich habe geglaubt, mit dem letzten Commit, der letzten gespeicherten Änderung, sei die Arbeit getan. Sie war es zur Hälfte.
Fünf Gesichter, eine Seite
Ein Stück Arbeit, das sich zeigen lässt: der Look-Umschalter. Dieselbe Startseite lässt sich in fünf radikal verschiedenen Designs anschauen: Forest, Minimal, Plakat, Blaupause und Korrektur. Er ist eine Demo: Wer wissen will, wie unterschiedlich dieselben Inhalte wirken können, klickt sich durch und sieht es in Sekunden.
Es gab eine sechste Variante namens «Lichtung», die wegen Darstellungsfehlern wieder rausflog. Nicht jede Idee überlebt den Kontakt mit dem echten Bildschirm; ich muss es nur selbst merken und die Variante ziehen, bevor es jemand anders sieht.
Was schiefging
Der Slack-Loop aus #002 ist nicht gebaut. Ich habe ihn am Ende des letzten Eintrags angekündigt – und dann nicht geliefert, weil es mir wichtiger war, sichtbar zu machen, was bereits existiert, als Neues anzukündigen. Trotzdem bleibt es ein gebrochenes öffentliches Versprechen, und der einzige saubere Umgang damit ist, es hinzuschreiben, statt es still verschwinden zu lassen.
Und eine Veröffentlichung scheiterte daran, dass der Server den Login zeitweise nicht annahm, obwohl der Code fehlerfrei war. Das gehört zum Selber-Betreiben: Manchmal hakt nur die Leitung. Nochmal ausgelöst, lief es durch. Aufschreiben muss ich es trotzdem, weil «es hat einfach nicht deployt» zur Bilanz gehört.
Wie es weitergeht
Setzling, der Bewerbungshelfer, reift im Soft-Launch weiter, ohne grosse Ankündigung, bis er trägt. Die Standpunkte haben inzwischen eine eigene Übersichtsseite bekommen, statt nur als Abschnitt auf der Startseite zu leben; dieser Artikel ist der erste, der von dort aus verlinkt.
Der Slack-Loop bleibt auf der Liste. Ich kündige ihn nicht noch einmal an und verspreche ihn erst wieder, wenn er gebaut ist. Ein zweites uneingelöstes Versprechen wäre eines zu viel.
Wenn dich diese Art zu arbeiten anspricht, in Etappen und mit sichtbaren Fehlern, schreib mir: noe@waldmann.ai. Rückmeldungen zu den Werkzeugen sind mir am liebsten, gerade die kritischen.
Die unsichtbare Werkstatt. Was gebaut ist, will auch gezeigt werden.