31 Punkte von GN⁺ 2025-12-19 | Noch keine Kommentare. | Auf WhatsApp teilen
  • In KI-gestützten Entwicklungsumgebungen häufen sich Fälle, in denen unerfahrene Engineers ungeprüfte, sehr große PRs einreichen
  • Die Kernaufgabe von Entwickler:innen besteht nicht einfach im Schreiben von Code, sondern darin, Code zu liefern, dessen Funktion nachgewiesen ist
  • Dafür müssen zwingend zwei Schritte durchgeführt werden: manuelle Tests und automatisierte Tests
  • Auch Coding Agents sollten so konfiguriert werden, dass sie die von ihnen vorgenommenen Änderungen selbst verifizieren
  • Letztlich liegt die Verantwortung beim menschlichen Entwickler, und nur Code mit Nachweisen der Verifikation hat echten Wert

Das Problem beim Einreichen ungeprüften Codes

  • Es wird auf Fälle verwiesen, in denen Junior Engineers mit LLM-Tools riesige, ungeprüfte PRs einreichen und sich auf das Code Review verlassen
    • Das wird als unhöflich und ineffizient bezeichnet und als Vernachlässigung der Verantwortung eines Entwicklers kritisiert
  • Die Rolle von Software Engineers besteht nicht in der bloßen Produktion von Code, sondern darin, Code zu liefern, dessen Funktion nachgewiesen ist
    • Ungeprüfter Code wird als Abwälzen der Last auf die Reviewer betrachtet

Zwei Schritte, um nachzuweisen, dass der Code funktioniert

  • Der erste Schritt ist der manuelle Test: Man muss selbst überprüfen, dass der Code korrekt funktioniert
    • Dazu gehört, das System in einen Ausgangszustand zu versetzen, die Änderung anzuwenden und anschließend das Ergebnis zu verifizieren
    • Terminal-Befehle und Ausgaben können als Kommentar im Code Review beigefügt oder durch eine Bildschirmaufnahme nachgewiesen werden
    • Nach der Bestätigung des Normalfalls sollten durch Tests von Edge Cases mögliche Probleme gesucht werden
  • Der zweite Schritt ist der automatisierte Test, der dank der Fortschritte bei LLM-Tools als unverzichtbarer Prozess hervorgehoben wird
    • Zusammen mit der Änderung sollten automatisierte Tests enthalten sein, und wenn man die Implementierung zurücknimmt, müssen diese Tests fehlschlagen
    • Das Schreiben von Tests folgt demselben Verfahren wie der manuelle Test, und die Fähigkeit zur Integration in eine Test Harness ist dabei wichtig
    • Es wird darauf hingewiesen, dass es ein falscher Ansatz ist, manuelle Tests wegzulassen, nur weil automatisierte Tests allein für ausreichend gehalten werden

Rolle und Verifikation von Coding Agents

  • Ein wichtiger Trend im LLM-Bereich im Jahr 2025 ist das rasante Wachstum von Coding Agents; repräsentative Beispiele sind Claude Code und Codex CLI
    • Sie können Code ausführen und Probleme selbstständig beheben
  • Auch Coding Agents müssen ihre eigenen Änderungen nachweisen und sowohl manuelle als auch automatisierte Tests durchführen
    • Bei CLI-Tools kann man den Agenten darauf trainieren, diese selbst auszuführen, oder dies mit Systemen wie Clicks CLIRunner automatisieren
    • Bei CSS-Änderungen kann man sie so einrichten, dass sie das Ergebnis per Screenshot-Erfassung prüfen
  • Wenn in einem Projekt bereits Tests vorhanden sind, kann der Agent diese erweitern oder bestehende Muster wiederverwenden
    • Struktur und Qualität des Testcodes beeinflussen direkt die Qualität der vom Agenten erzeugten Tests
    • Ein ästhetisches Gespür für Testcode wird als zentrale Fähigkeit genannt, die Senior Engineers auszeichnet

Die Verantwortung des Menschen und der Wert von Code

  • Computer können keine Verantwortung übernehmen; diese Rolle muss der Mensch übernehmen
    • Dass LLMs große Patches erzeugen, ist inzwischen nichts mehr, das an sich Wert stiftet
  • Der eigentliche Wert liegt darin, Code zu liefern, dessen Funktionsfähigkeit nachgewiesen ist
    • Beim Einreichen eines PRs sollte man unbedingt Belege dafür beifügen, dass der Code korrekt funktioniert

Noch keine Kommentare.

Noch keine Kommentare.