Die Diskussion um generative künstliche Intelligenz (KI) im Bereich der Softwareentwicklung gewinnt immer mehr an Bedeutung. Viele sprechen von den revolutionären Möglichkeiten, die diese Technologien bieten, während andere skeptisch bleiben und auf die Herausforderungen aufmerksam machen, die mit ihrem Einsatz einhergehen. Im Folgenden möchte ich aus meiner persönlichen und technischen Perspektive schildern, warum generative KI-Codierwerkzeuge und Agenten für mich nicht funktionieren und welche Gründe mich davon abhalten, sie in meinem Arbeitsalltag einzusetzen. Eine der wichtigsten Fragen, die ich immer wieder höre, ist, ob generative KI mich schneller machen kann. Die Antwort darauf ist für mich eindeutig: Nein.
Die Geschwindigkeit, mit der ich Code schreibe und Projekte umsetze, hat sich durch den Einsatz dieser Tools nicht erhöht. Das klingt vielleicht kontraintuitiv, denn auf den ersten Blick scheint es ideal, Code von einer KI generieren zu lassen oder gar einen Agenten behalten zu können, der parallel an meinem Projekt arbeitet. Doch in der Praxis sieht das ganz anders aus. Der wesentliche Faktor ist die Verantwortung für den Code. Wenn ich Code in ein Projekt integriere, trage ich die volle Verantwortung dafür.
Ich kann nicht blind darauf vertrauen, dass generativer KI-Code fehlerfrei und nachhaltig funktioniert. Jeder Code, der ohne sorgfältige Prüfung übernommen wird, birgt das Risiko späterer Fehler, die ich beheben muss. Das erfordert eine intensive Analyse und Nachvollziehbarkeit des Codes, um sicherzustellen, dass ich diesen nicht nur verstehe, sondern langfristig weiterentwickeln oder anpassen kann. Ohne dieses tiefgehende Verständnis ist es für mich und meine Arbeit nicht möglich, den generierten Code zu übernehmen. Interessanterweise erfordert das Prüfen von fremdem Code oft ähnlich viel Zeit wie das selbstständige Schreiben.
Das liegt daran, dass Lesbarkeit und Nachvollziehbarkeit eine ganz eigene Herausforderung darstellen. Schon seit vielen Jahren prägt der bekannte Satz „Es ist schwerer Code zu lesen als ihn zu schreiben“ die Softwarebranche. Wenn der Code von einem KI-System stammt, verhält er sich wie eine Blackbox. Er ist in seiner Entstehung nicht transparent, was das Vertrauen in seine Qualität drastisch erschwert. Die Vorstellung, dass man sich auf den Code verlassen kann, nur weil er funktioniert, empfinde ich als sehr riskant.
Wenn eine Applikation Fehler hat, haftet niemand außer mir als Entwickler dafür. Im professionellen Umfeld, gerade wenn Verträge, finanzielle Verpflichtungen oder rechtliche Anforderungen bestehen, ist es undenkbar, minderwertigen oder ungeprüften Code einzusetzen. Die Qualität meiner Arbeit darf durch den Einsatz von KI nicht beeinträchtigt werden. Für mich ist es daher keine Option, Produktivität durch Qualitätseinbußen zu gewinnen. Häufig wird argumentiert, dass generative KI eine produktivitätssteigernde Multiplikatorfunktion erfülle.
Anwender berichten, sie könnten mit KI schneller arbeiten und komplexere Probleme lösen. Diese Aussagen basieren meist auf subjektiven Eindrücken, die selten durch harte Daten untermauert werden. Ein möglicher Grund dafür ist, dass diese Nutzer wenig Zeit in die umfassende Prüfung des KI-generierten Codes investieren, was wiederum deren vermeintliche Zeitersparnis erklärt. Für mich liegt hier die Crux: Ohne akribische Kontrolle besteht immer das Risiko, dass sich Fehler einschleichen, die langfristig mehr Zeit und Mühe erfordern als es das reine Programmieren jemals getan hätte. Ein weiteres Argument, das häufig vorgebracht wird, ist, dass KI beim Erlernen neuer Programmiersprachen oder Technologien unterstützend sein kann.
Für mich persönlich ist das jedoch kein relevanter Aspekt. Der Reiz an meiner Arbeit liegt nicht nur darin, Software zu entwickeln, sondern auch darin, ständig Neues zu lernen und mich weiterzuentwickeln. Diese Lernkurve bedeutet für mich keine Last, sondern Bereicherung. Ich habe in den letzten Jahren mehrere neue Sprachen und Frameworks wie Rust, Go, TypeScript, WASM, Java und C# erlernt. Diese Fähigkeiten durch eigene Arbeit zu erlangen empfinde ich als wesentlich befriedigender und nachhaltiger als den Lernprozess an eine KI zu delegieren.
Ein oft gestellter Vergleich ist der zwischen einem menschlichen Praktikanten und einem KI-Agenten. „Behandle deine KI wie einen Praktikanten, der lernbegierig ist“, wird empfohlen. Dieser Vergleich greift meiner Erfahrung nach jedoch zu kurz und trifft nicht den Kern. Praktikanten benötigen anfangs viel Betreuung und deren Code muss intensiv geprüft und korrigiert werden, was zeitintensiv ist. Doch über die Zeit lernen sie dazu, verbessern sich und benötigen weniger Supervision.
Ihre Lernkurve und persönliche Weiterentwicklung machen sie zu wertvollen langfristigen Mitarbeitenden eines Teams. KI-Agenten hingegen leiden unter dem Problem der sogenannten anterograden Amnesie. Das bedeutet, sie verfügen nicht über dauerhaftes Gedächtnis oder ein Verständnis, das über einzelne Eingaben hinausgeht. Jeder Auftrag wird unabhängig vom vorherigen behandelt, und die KI speichert keine eigenen Lernerfahrungen, wie es ein Praktikant tun würde. Aus meiner Sicht macht das den KI-Agenten untauglich als echtes Teammitglied oder gar als Produktivitätshelfer über längere Zeit hinweg.
Eine weitere wichtige Unterscheidung ist die zwischen generativem KI-Code und Beiträgen aus der Gemeinschaft. Im Open-Source-Bereich freue ich mich über Beiträge von Menschen, die sich für meine Projekte interessieren und aktiv mitarbeiten. Auch diese Beiträge müssen sorgfältig geprüft werden, und sie sparen mir nicht zwangsläufig Zeit. Was den Wert menschlicher Beiträge ausmacht, sind die damit verbundenen Interaktionen, Diskussionen und das gegenseitige Lernen. Das ist mit generiertem KI-Code nicht vergleichbar, weil diese sozialen und intellektuellen Verbindungen fehlen.
Auf einigen Plattformen beobachte ich außerdem, dass KI genutzt wird, um sogenannte Low-Effort-Pull-Requests zu erzeugen. Diese wirken oft unausgereift und erzeugen eine Art unheimliches Tal, das mich als Entwickler irritiert. Wenn ich solche Beiträge prüfe, fordere ich Klarstellungen und Verbesserungen vom Autor ein – Antworten, die oft ausbleiben. Das unreflektierte Einreichen von KI-generiertem Code kann also Projekte belasten und letztlich mehr Arbeit verursachen, als es Nutzen bringt. Ein Argument, das ich gerne von Befürwortern höre, ist, dass KI doch ähnlich wie Intellisense oder Autovervollständigung in Editoren funktioniert.
Diese Werkzeuge sind deterministisch und erzeugen keine Halluzinationen oder unlogischen Ergebnisse. KI-Systeme hingegen produzieren manchmal trügerische oder inkorrekte Vorschläge, die den Programmierprozess stören können. Zudem lassen sich menschliche Gedankenprozesse und Intuition durch KI nicht einfach ersetzen, vor allem nicht bei komplexen, kreativen und gut durchdachten Programmieraufgaben. Zusammenfassend bleibt für mich festzuhalten, dass es bislang kein freies Mittagessen im Bereich der KI-gestützten Programmierung gibt. Produktivitätssteigerung durch KI geht meist nur auf Kosten von Qualität, Verantwortung und Nachvollziehbarkeit.
Die Gefahr, sich ein unüberschaubares, schwer wartbares System an Abhängigkeiten und Fehlern einzufangen, ist real und sollte nicht unterschätzt werden. Natürlich spüre ich die Aufregung und den Optimismus vieler Kollegen, die mit KI experimentieren und davon profitieren. Dennoch fürchte ich, dass manche der anfänglichen Produktivitätgewinne auf einer Absenkung der Qualitätsanforderungen basieren und somit langfristig der Softwareentwicklung insgesamt schaden. Die Zukunft wird zeigen, ob und wie sich diese Technologien verbessern und in die Arbeitsweise von Entwicklern sinnvoll integrieren lassen. Solange kehre ich lieber zum bewährten, eigenen Schreiben und sorgfältigen Prüfen des Codes zurück und überlasse den KI-Experimentatoren das Feld der schnellen Versuche und der spielerischen Entdeckungen.
Jeder Entwickler hat seine eigene Herangehensweise, und für mich sind generative KI-Codierwerkzeuge und Agenten einfach (noch) keine wirkliche Hilfe.