Kolophon
Wie diese Seite entstanden ist
Die Seite, die Sie gerade lesen, ist selbst eine Arbeitsprobe – die umfangreichste auf dieser Website und die einzige, die Sie in diesem Moment benutzen.
Ausgangslage
Vor diesem Projekt konnte ich keine Websites bauen: kein HTML, kein CSS, kein JavaScript. Was ich hatte, war eine Anforderung – eine Bewerbungsseite, die Arbeitsergebnisse zeigt, statt sie zu behaupten, und die zu jeder Zahl die Herleitung mitliefert.
Keine Agentur, kein Baukasten, kein Template. Weder der Entwurf noch die Umsetzung noch die Texte stammen von einer anderen Person.
Vorgehen
Zuerst der Inhalt, dann die Struktur, dann die Umsetzung, dann die Tests – in dieser Reihenfolge, weil sich die umgekehrte rächt.
- Inhalt und Belege. Zuerst wurde zusammengetragen, was tatsächlich belegbar ist: Zeugnisse, Projektabgaben, Noten, Aufwandsaufzeichnungen. Was sich nicht belegen ließ, ist nicht auf die Seite gekommen oder steht dort ausdrücklich als eigene Angabe.
- Struktur. Erst danach die Frage, wer diese Seite liest und in welcher Reihenfolge er lesen will. Daraus sind die Seitengliederung und die rollenbezogenen Einstiege entstanden.
- Umsetzung. Statisches HTML und CSS, Seite für Seite. Die Demos kamen zuletzt, weil sie am meisten voraussetzen.
- Prüfung. Testfälle, die im Browser gegen dieselbe Logik laufen wie die Auswertung selbst – nicht gegen eine Kopie. Ohne sie wäre „das Werkzeug tut, was hier steht“ nicht nachprüfbar.
Maßstab jeder Entscheidung: Kann ein Leser nachvollziehen, wie eine Angabe zustande gekommen ist? Wenn nein, gehörte sie nicht auf die Seite.
Entscheidungen und ihre Begründung
| Entscheidung | Warum |
|---|---|
| Statisches HTML und CSS, kein Framework | Haltbarkeit: Die Seite muss in zwei Jahren noch laufen, ohne dass jemand Abhängigkeiten nachzieht. Dazu Ladezeit. |
| Kein Build-Schritt | Was im Verzeichnis liegt, ist genau das, was ausgeliefert wird. Kein erzeugter Code, den ich nicht selbst ansehen kann. |
| Kein Tracking, keine Cookies | Sie lesen eine Bewerbung, kein Produkt. Kein Grund, Ihr Leseverhalten aufzuzeichnen – und keine Cookie-Abfrage. |
| Keine externen Schriften und Skripte | Nichts wird von fremden Servern nachgeladen; die Schriftkette greift auf vorhandene Systemschriften zurück. |
| Alle Demos ohne Server und ohne Schlüssel | Was Sie eingeben, bleibt in Ihrem Browser. Eine statische Seite kann keinen API-Schlüssel geheim halten; die KI-Stufen sind deshalb einmal echt gelaufene Aufzeichnungen, die im Browser gegen die Daten im Feld nachgerechnet werden. |
| Hosting über Cloudflare Pages | Statische Auslieferung, kein Server, keine Datenbank. |
| Nicht in Suchmaschinen | Diese Seite ist eine Bewerbungsunterlage, keine Publikation, und wird gezielt weitergegeben. Ein Header nimmt sie deshalb von der Indexierung aus. Der Preis ist bekannt und in Kauf genommen: Wer meinen Namen sucht, findet diese Seite nicht. Sitemap, Canonicals und das Personenschema bleiben trotzdem gepflegt, damit die Entscheidung umkehrbar ist. |
Links mit .html, Canonicals ohne |
Interne Links tragen die Dateiendung, damit das Verzeichnis auch ohne Server im Browser läuft – ein Ordner, den man öffnen kann, ist Teil der Prüfbarkeit. Die kanonische Adresse ist die Form ohne Endung, weil Cloudflare Pages so ausliefert. Beides nebeneinander ist Absicht. |
| Lücken bleiben sichtbar | Wo Material oder Zahlen fehlen, steht das als Lücke da. Auch auf dieser Seite – siehe unten. |
Werkzeug
Gebaut habe ich die Seite mit Claude Code, einem Sprachmodell-Werkzeug für die Softwareentwicklung. Das gehört offen hierher: Eine Seite, deren gesamtes Argument lautet, dass nachvollziehbar bleiben muss, wie ein Ergebnis zustande gekommen ist, kann ihr eigenes Zustandekommen nicht verschweigen.
Die Arbeitsteilung war eindeutig. Das Sprachmodell hat den Code geschrieben. Ich habe die Anforderungen und die Struktur festgelegt, Entwürfe verworfen und angenommen, die Inhalte geschrieben beziehungsweise verantwortet, entschieden, was hineinkommt und was nicht, das Ergebnis geprüft und es veröffentlicht. Für jeden Satz und jede Zahl auf dieser Website stehe ich gerade.
Was hier steht und was nicht
Dieser Abschnitt beschreibt ein Vorgehen, keine Person – kein Versprechen, keine Selbstbewertung. Was daraus folgt, entscheiden Sie.
Zahlen aus dem Verzeichnis
- HTML-Seiten 29
- Zeilen CSS 1080
- Zeilen JavaScript 2500
- JavaScript-Dateien 19
- Testfälle 161
- Bilder und Grafiken 32
- Externe Abhängigkeiten 0
- Build-Schritte 0
Stand 31.08.2026, ausgezählt im Projektverzeichnis – nicht von Hand gepflegt, sondern vor jeder Veröffentlichung neu erhoben. „Externe Abhängigkeiten“ heißt: Beim Aufruf dieser Seite wird nichts von einem fremden Server nachgeladen – keine Schrift, kein Skript, kein Stylesheet, kein Zählpixel. Die 161 Testfälle sind dieselben, die in den Demos im Browser laufen; das Ergebnis des letzten Laufs außerhalb des Browsers steht in testlauf-2026-08-31.txt.
Was ich nicht belegen kann
Über welchen Zeitraum ich an dieser Seite gearbeitet habe, lässt sich nicht belegen. Das Projekt hatte bis zum 31. August 2026 keine Versionsgeschichte, aus der sich das auslesen ließe – und rückwirkend entsteht sie nicht mehr. Ich trage die Angabe nach, sobald sie belastbar ist, statt sie zu schätzen.
Seit dem 31. August 2026 gibt es eine: Der Quellcode dieser Seite liegt seither in einem Repository, jede weitere Änderung ist nachvollziehbar. Was davor liegt, bleibt eine Lücke – der erste Eintrag ist der Stand von heute, nicht der Anfang.
Was daran schwierig war und was ich anders machen würde
Was am Ergebnis ablesbar ist, steht hier. Was nur ich beantworten kann – wie lange ich gebraucht habe, wie oft ich neu angefangen habe, was mich am meisten Zeit gekostet hat und welche Entscheidung ich rückblickend anders träfe –, ergänze ich hier in eigenen Worten. Bis dahin bleibt dieser Absatz absichtlich unvollständig; ein erfundener Schwierigkeitsbericht wäre schlimmer als ein leerer.
Ablesbar ist das hier: Bis zum 31. August 2026 gab es keine Versionsgeschichte des Projekts – rückblickend ein Fehler, weil sich damit weder der Verlauf noch ein einzelner Schritt rekonstruieren lässt und weil eine Zwischenfassung nicht wiederherstellbar ist. Seither gibt es eine; den entgangenen Verlauf holt sie nicht mehr ein.
Ebenfalls ablesbar: Der Anspruch, jede Zahl mit ihrer Herleitung zu zeigen, macht die Arbeit deutlich langsamer. Mehrere Angaben stehen heute nicht auf der Seite, weil sich das Material nicht eindeutig zuordnen ließ – bei den Studienprojekten zum Beispiel die Zeichnungen, deren Urheberschaft im Abbildungsverzeichnis anderen zugeordnet ist. Das ist eine Entscheidung gegen Vollständigkeit und für Belegbarkeit, und sie kostet sichtbar Inhalt.
Und die naheliegende Frage: Kann ich den Code inzwischen selbst lesen und ändern? Diese Frage beantworte ich im Gespräch, nicht in einem Werbetext – und ich beantworte sie ehrlich.
Warum das hier steht
Ohne diesen Abschnitt wäre die Seite Werbung. Auf jeder Fallbeschreibung steht, was das Werkzeug nicht kann – für die Website gilt derselbe Maßstab.
Verwandt: der Abschnitt „Was Sie bekommen und was nicht“.