PullMD Teil 2: Vom Spec zum laufenden Container – Einfach erklärt
Im ersten Teil hatte ich aufgeschrieben, was das Tool eigentlich können soll. Bauplan fertig. Am Abend desselben 2. März habe ich das alles an meinen Programmier-Assistenten übergeben — eine Software namens Claude Code, mit der man unterhalten kann und die einem dann Programmcode schreibt.
Meine Erwartung: das Werkzeug fängt an, die eigentliche Arbeit zu programmieren — also den Teil, der Reddit aufruft, die Texte rausholt und in Markdown verwandelt.
Was stattdessen passierte: Es schrieb zuerst vier Test-Dateien. Keine einzige Zeile vom eigentlichen Programm. Nur Tests.
Tests sind kleine Hilfs-Programme, die das Hauptprogramm danach prüfen — wie wenn man bei einem Möbelstück erst die Wasserwaage auspackt, bevor man die Schrauben reindreht.
Vier Tests in 33 Minuten
Die Test-Dateien tragen Zeitstempel, wann sie entstanden sind — und die erzählen eine klare Geschichte:
- 21:53 Uhr — Test für die Adress-Aufbereitung
- 22:02 Uhr — Test fürs Reddit-Daten-Abholen
- 22:16 Uhr — Test für den Notfall-Plan, falls der erste Weg blockiert ist
- 22:26 Uhr — Test, der einmal alles zusammen prüft
In 33 Minuten standen vier Tests auf meinem Server, bevor auch nur eine Zeile vom Hauptprogramm existierte.
Was die Tests verraten haben
Der erste Test kümmert sich um Adressen — also um die Web-Links, die jemand reinkopiert. Reddit hat mehrere Adress-Varianten für ein und denselben Beitrag. Außerdem klebt da oft so ein langer Anhang voller Tracking-Krimskrams, den niemand braucht.
Das ist der unglamouröse Teil, über den kaum jemand redet — aber ohne dieses Aufräumen geht später vieles schief. Dass mein Assistent ausgerechnet diesen Teil zuerst abgesichert hat, war kein Zufall.
Der zweite Test prüft das Reddit-Abholen — aber mit ausgedachten Beispiel-Daten, ohne wirklich bei Reddit anzuklopfen. Schneller, zuverlässiger.
Der dritte Test prüft den Notfall-Plan: falls Reddit die schnelle Daten-Schnittstelle blockiert, muss das Tool auf die altmodische Webseite ausweichen und dort die Texte rausfischen.
Der vierte Test ist anders. Der ruft tatsächlich bei Reddit an — aber nur, wenn man ihn ausdrücklich darum bittet. So bleibt die normale Test-Runde schnell.
Was die Tests zusammen sagen
Was diese vier Dateien zusammen beschreiben, ist nicht „ein Tool, das irgendwie Reddit holt“. Es ist ein Tool mit drei Notfall-Stufen, das vorher die Adressen sauber putzt und das zwischen schnellen und langsamen Prüfungen unterscheidet.
Die Tests haben die Architektur festgelegt — bevor das Hauptprogramm überhaupt existierte. Das ist eine ungewöhnliche Reihenfolge, aber sie hatte einen schönen Nebeneffekt: Jede spätere Änderung musste an diesen Tests vorbei.
Zwei Tage später: der Container
Am 4. März wandert das Tool in einen Container. Ein Container ist im Software-Sprech ein abgeschlossenes Päckchen, in dem das Programm zusammen mit allem läuft, was es braucht — wie ein Bento-Box mit allen Zutaten drin, einsetzbar in jede Küche.
Solche Container kann man auf jeden beliebigen Server stellen und sie laufen sofort, ohne dass dort vorher irgendetwas eingerichtet werden müsste. Genau das wollte ich.
Der Container für mein Tool ist klein und schlicht. Keine zusätzlichen Schnörkel — er muss ja nur Webseiten abrufen, Text rausholen, Markdown ausgeben. Mehr nicht.
Dazu kommt eine zweite Datei, die meinem Server sagt: „Wenn dieser Container hochfährt, mach ihn unter dieser Adresse erreichbar, und kümmere dich um das Sicherheits-Zertifikat.“ Das ist mein Standard-Aufbau für alle Tools, die ich für mich selbst betreibe.
Eine Woche später: das Handy-Bonbon
Sechs Tage später kommt der Teil dazu, für den ich das Tool eigentlich gebaut hatte: die Handy-Variante.
Am 8. März, gegen späten Nachmittag, lege ich die Icons an — die kleinen Bildchen, die später als App-Symbol auf dem Handy erscheinen. Die Icons hatten damals ein kräftiges Orange, ziemlich genau das Reddit-Orange. Rückblickend ein verräterischer Hinweis darauf, dass das Tool zu dem Zeitpunkt wirklich noch ein reines Reddit-Werkzeug war.
Der entscheidende Trick bei der Handy-Variante: Man kann das Tool wie eine echte App auf dem Startbildschirm ablegen. Und sobald es dort liegt, taucht es im Teilen-Menü von Android auf — also dort, wo sonst WhatsApp, Signal und solche Sachen stehen.
Wie das im Alltag aussieht
Reddit-App öffnen. Einen interessanten Beitrag aufrufen. Auf „Teilen“ tippen. Im Menü erscheint mein Werkzeug als Ziel. Antippen.
Der Browser öffnet sich, das Tool bekommt den Reddit-Link automatisch übergeben, holt den Inhalt, und nach einem kurzen Moment steht sauberer Text auf dem Bildschirm. Mit einem Knopf zum Kopieren.
Der erste richtige Aha-Moment
Ich erinnere mich genau an den Moment, als das zum ersten Mal klappte. Reddit-App offen, ein langer Diskussions-Faden über ein Problem, mit dem ich gerade arbeitete. Teilen, mein Werkzeug, kurz warten — und dann: sauberer Text. Kein Cookie-Banner, keine Seitenleiste, keine Werbung. Nur der Beitrag und die Kommentare, eingerückt nach Antwort-Tiefe.
Der Gedanke war nicht „cool, es funktioniert“. Er war eher: das ist so viel schneller, als ich gedacht hatte.
Vorher: Adresse kopieren, in einen anderen Tab wechseln, einfügen, warten. Jetzt: ein einziger Tap im Teilen-Menü, und der Text ist da.
Klingt nach einer Kleinigkeit. In der Praxis ist es der Unterschied zwischen einem Tool, das man wirklich nutzt — und einem, das man immer wieder vergisst.
Warum „Tests zuerst“ so gut funktioniert hat
Mein Bauplan war detailliert genug. Es gab klare Vorgaben, welches Ergebnis das Tool liefern soll, und einen Notfall-Plan für den Fall, dass etwas hakt.
Der Programmier-Assistent musste also nicht raten, was zu testen ist. Er hat den Bauplan gelesen und daraus eine Test-Liste abgeleitet, die genau diese Architektur in Code übersetzt.
Die Tests haben sich später ausgezahlt. Jedes Mal, wenn ich etwas geändert habe — an der Adress-Aufbereitung, am Kommentar-Format, am Notfall-Plan — sind zuerst die Tests rot geworden. So sah ich, was kaputtgegangen wäre, bevor es überhaupt auf dem Server landete.
Wer mit so einem Programmier-Assistenten frisch anfängt: einen guten Bauplan mitbringen und ausdrücklich „Tests zuerst“ sagen. Das wirkt deutlich besser, als man erwarten würde.
Was dann kam
Drei Wochen lief das Tool still vor sich hin — nur für Reddit, nur auf meinem Handy, nur für mich. Dann, am Vormittag des 20. März, schrieb ich einen einzigen Satz in ein neues Gespräch mit meinem Assistenten — und der hat das Projekt aus seinem Käfig befreit. → Teil 3: Mehr als Reddit, mehr als Readability
Teil 2 von 9 der PullMD Serie.
← PullMD Teil 1: Strg+A und der Junk-Kontext | PullMD Teil 3: Mehr als Reddit, mehr als Readability →