Von den Dinosauriern zu den Sternen
Ich habe mal wieder den Motor meiner Homepage getauscht: Aus dem Dinosaurier Docusaurus wurden die Sterne von Astro. Die Migration wurde komplett von Claude Code durchgeführt, ich habe keine einzige Zeile Code schreiben müssen.
Warum überhaupt ein Wechsel?
Zunächst: Viele bauen ihre Websites heute mit PHP – die Abkürzung stand ursprünglich für „Personal Home Page“ (Nomen est omen). PHP ist gerade in aller Munde (PHP2Shell). Das hat mich darin bestätigt, dass PHP kein geeignetes Werkzeug für mich ist und dass der Wechsel zu Docusaurus grundsätzlich in die richtige Richtung ging.
Im Moment passiert im IT-Bereich meiner Meinung nach sehr viel Spannendes, vieles geht aber auch in eine merkwürdige Richtung, und die Debatte wird von viel Meinung, aber wenig Ahnung bestimmt.
Das Docusaurus war gut, um schnell einen einfachen Post zu schreiben, aber ich hätte gerne etwas mehr Flexibilität bei der Gestaltung meiner Seiten gehabt. Die gewünschte Flexibilität hätte ich auch in Docusaurus bekommen können, es erschien mir aber zu umständlich, ich war häufiger mit Workarounds als mit Inhalt beschäftigt. Dazu fehlt mir die Zeit, vor allem aber auch die Geduld.
Und – ich gebe es zu – ich wollte sehen, wie gut die Unterstützung durch Agenten bei so einer nicht ganz trivialen Aufgabe ist. Claude hat meine Erwartungen deutlich übererfüllt.
Ich fand AI schon bei der Migration zu Docusaurus hilfreich. Aber vor allem deshalb, weil sie mir das Nachschlagen im Handbuch oder die Suche auf Stackoverflow abgenommen hat und den einen oder anderen Codeschnippsel kopiergerecht serviert hat. Dennoch hat die Docusaurus-Migration über 10 Stunden Arbeitszeit gebraucht.
Der Aufwand
In der ersten Version dieses Artikels hatte ich fünf Minuten geschätzt. Da ich den Artikel aber nicht direkt selbst, sondern über Claude Code geschrieben habe, kam dann gleich der Hinweis, dass das so nicht ganz richtig sei, es wären 15 bis 20 Minuten gewesen. Auch nicht schlecht, so muss sich Picard gefühlt haben, wenn er mit Data sprach 😉
Da ich mich aber den ganzen Tag mit Prozessanalysen und Process Mining beschäftigt hatte, kam fast reflexhaft die Frage, ob Claude auch Millisekunden liefern könne. Er konnte und musste prompt zurückrudern: Tatsächlich war mein Bauchgefühl gar nicht so schlecht: etwa 8 Minuten hat die eigentliche Migration gedauert.
Wie viel Aufwand war es tatsächlich?
| Ereignis | Uhrzeit (MEZ) | Zeit seit Prompt (mm.ms) |
|---|---|---|
| Prompt abgeschickt | 16:52.491 | 00.000 |
| Branch angelegt | 16:53.073 | 01.582 |
| Erster Build erfolgreich | 16:58.442 | 05.951 |
| Production-Image gebaut | 16:59.934 | 06.443 |
| nginx-Test (200 und 404) | 16:59.412 | 07.921 |
| Entwicklungsserver erreichbar (Test-Bereitschaft) | 17:00.291 | 08.800 |
| Migration committet | 17:03.367 | 10.876 |
Was fehlt, ist der Aufwand für Recherche, welches Tool geeignet ist, und die Planungszeit. Wir reden aber auch hier von Minuten, nicht Stunden.
Der größte Zeitfresser war ein kleiner Fehler, den ich dann am Ende gemacht hatte: Weil alles so gut lief, ließ ich Claude nochmal den Inhalt checken. Die lange Liste mit kleineren und größeren „Bugs“ abzuarbeiten, wird noch etwas Zeit kosten.
Fazit
Vor wenigen Jahren lieferten Sprachmodelle Textbausteine, die ich selbst einsortieren musste. Heute plant ein Agent die Umstellung einer kompletten Website, baut sie, testet sie, korrigiert seine eigenen Fehler und ist nach acht Minuten fertig. Diese Entwicklung beeindruckt mich noch immer.
Gerade weil ich weiß, was dahintersteckt: Ein LLM begreift nichts. Es sind stochastische Mustersucher, die zu jedem Token das wahrscheinlichste nächste ausgeben. Dass daraus lauffähiger Code, eine passende Konfiguration und ein funktionierender Docker-Build entstehen, finde ich nach wie vor erstaunlich. Am spannendsten fand ich die Überarbeitung der Artikel. Ich hatte mit dem üblichen Ergebnis gerechnet: Hier ein Typo, da ein kaputter Link. Zurück kam: „Die Behauptung kannst du so aber nicht stehen lassen“, oder „hier verwechselst du WinUtil mit winget“. Und natürlich die Diskussion über Zeiten.
Dabei darf man nicht vergessen, dass die Aufgaben die Paradedisziplinen eines LLM nutzen. Trotzdem bleibt es faszinierend.