Lade Inhalt...

Agentic Coding

Tatsächlich habe ich schon recht bald, nachdem LLMs in der Breite verfügbar wurden, auch Programmcode damit erstellt. Unter anderem bin ich dabei auch auf Github Copilot gekommen, um mir bei meiner Arbeit bei der Erstellung oder Verbesserungen von Programmen helfen zu lassen.
Es war zu ahnen, dass hiermit die Produktivität von Programmierern enorm gesteigert werden kann. Erste Pressemitteilungen großer Techkonzerne, in Zukunft weniger Entwickler zu beschäftigen, schienen das zu bestätigen.

In der Wahrnehmung gab es dazu noch ein paar Experten, die prophezeiten, dass sich zukünftig Programme durch KI, und damit Programme durch Programme, selbst schreiben. Sicher, das kennen wir alle seit Kindertagen aus der Science-Fiction: aber das wird sicherlich noch Jahre dauern.

Tatsächlich scheinen aber die althergebrachten Regeln des Zeitbedarfs zur Entwicklung und Weiterentwicklung von Innovationen im Bereich KI derzeit außer Kraft. In atemberaubendem Tempo werden hier Schlag auf Schlag Neuerungen in die allgemeine Verfügbarkeit überführt.
So kam ich dann, nach nur etwas mehr als 2,5 Jahren nach Erstveröffentlichung von ChatGPT, mit Agentic Coding in Berührung und muss sagen, ich bin überwältigt und von den Möglichkeiten überrascht worden. Mit einfachen Prompts kann man nun komplexe Programme schreiben (lassen).
Statt Sprachmodelle (LLMs) lediglich auf einzelne Anweisungen in einer Chat-Umgebung reagieren zu lassen, um beispielsweise Vorschläge für ein Codingproblem zu erzeugen, lässt man sie nun als autonomer Agent arbeiten, der übergeordnete Ziele versteht, diese in Teilziele zerlegt, mit der Umgebung interagiert und seine Arbeit anhand von Feedback iterativ verbessert, inklusive Debugging und Test.

Das musste ich mir anschauen!

Ich hatte mir erst in einem klassischen Ansatz eine alte PHP-Webseite von mir vorgenommen, die schon lange aus der Wartung gelaufen war. (Lief nur mit einer sehr alten PHP-Version etc.) In kurzer Zeit habe ich das Projekt modernisiert und an die modernen Releases angepasst. Wovor ich mich jahrelang gescheut hatte, weil der Aufwand, das zu tun, drohte große Teile meiner Freizeit aufzufressen, war nun in Stunden erledigt. Am meisten Zeit hat dabei mein Ansatz beansprucht, nun „es so zu lassen, wie es ist“. Nachdem ich und die KI damit fertig waren und ich mit Zufriedenheit sah, dass alles, was ich vorher hatte, reibungslos funktionierte und jetzt aber wieder auf Höhe der Zeit war: war ich‘s zufrieden.
Dann aber, habe ich, nur so aus Spaß, das Experiment erweitert und gesagt: “Jetzt weißt Du ja, wie ich das grundsätzlich aufgebaut wissen will. Wie hättest Du das denn gemacht, wenn Du frei entscheiden hättest können?“
Danach ging ein Feuerwerk los, ich habe den Drachen quasi entfesselt, und innerhalb von nicht mal 10min war aus dem Nichts, nur auf Basis der Daten, eine total neue, extrem viel besser Version meiner PHP-Webseite entstanden als vorher.

Ja, es hat dann noch ein paar weitere Stunden gekostet und dann doch irgendwie im Modus „Pair Programming“, damit neue Funktionen und verschiedenste Details zu Responsive Sichten zu meiner endgültigen Zufriedenheit umgesetzt waren.

Bedenkt man aber, dass bereits die erste Version vollkommen lauffähig war und die zu behebenden Fehler Marginalien, ist mit Agentic Coding die Geschwindigkeit von Programmentwicklung um ganze Größenordnungen beschleunigt. Das wird Hundertschaften von Entwicklern, vor allem solche, die erst anfangen sich mit der Materie zu beschäftigen, überflüssig machen.

Das Projekt, über das ich hier spreche, ist die Seite, die Du gerade anschaust. Am Ende habe ich hier nicht eine Zeile Code selbst geschrieben, höchstens mal im Detail angepasst. Die Vorgängerversion hierzu, die man noch auf dem Server hier findet und aufrufen kann, ja die hatte noch Passagen aus meiner alten Codebasis, die ich mit dem Agenten „nur“ überarbeitet hatte.

Diese Version hier, die ist nicht von mir.