-
Chat ist ein schlechtes UI-Muster für Entwicklungstools
- Dass Code von Menschen Präzision verlangt, ist sinnvoll, weil Computer Präzision benötigen
- Das zwingt Menschen jedoch dazu, wie Maschinen zu denken
- Seit Jahrzehnten wird daran gearbeitet, Programmierung menschenfreundlicher zu machen. Höhere Programmiersprachen und visuelle Interfaces sind Beispiele dafür
- Von AI wurde erwartet, dieses Problem zu lösen. Die Hoffnung war, dass man in Englisch programmieren kann
-
Die erste Welle von AI-Coding-Tools
- Die ersten AI-Coding-Tools haben ihre Chance vertan. Sie liefern spektakuläre Demos, produzieren aber unbrauchbare Software
- Oft werden sie nur als „für Prototypen geeignet“ bezeichnet, doch für den realen Einsatz fehlt ihnen die nötige Genauigkeit
- Viele geben den AI-Modellen die Schuld und fordern, dass sie intelligenter werden müssen
- Doch beim Bau wichtiger Software braucht man kein Raten, sondern ein klares Verständnis
-
Software zu schreiben ist kein Gespräch
- Software zu schreiben ist wie das Verfassen von Gesetzen. Man verwendet Englisch, definiert aber Begriffe, legt Regeln fest und steuert komplexe Wechselwirkungen
- Man kann kein Steuergesetzbuch in Chat-Nachrichten schreiben. Dafür braucht es Dokumente
- Dokumente helfen dabei, Komplexität zu organisieren, auf bestimmte Stellen zu verweisen und Änderungen systematisch nachzuverfolgen
-
Die Bedeutung dokumentenbasierter Programmierung
- Wenn die Absicht im Dokument festgehalten ist, wird Englisch zu einer echten Programmiersprache
- Man kann das gesamte System auf einen Blick erfassen
- Die Absicht lässt sich klarer formulieren und verbessern
- Änderungen lassen sich angemessen nachverfolgen
- Teams können gemeinsam am System arbeiten
- Anforderungen werden zu einer eigenen Qualitätsprüfung
- Änderungen beginnen mit einer klaren Spezifikation
-
Der Kern der nächsten Stufe von AI-Entwicklungstools
- Entscheidend wird, Absichten der Nutzer dokumentenbasiert auszudrücken und zu verwalten
- Es braucht Tools, die nicht nur interaktive Prototypen ermöglichen, sondern die für echte Softwareentwicklung nötige Präzision liefern
- Unternehmen, die diese Perspektive richtig umsetzen, werden die Zukunft der AI-Entwicklungstools anführen
4 Kommentare
Es heißt auch, man versuche, bei der Unterstützung von LLMs Wissensgraphen einzubeziehen, und das sei wohl wirksam.
Zwar heißt es im Titel, dass die Chat-UI ungeeignet sei, im Inhalt wird jedoch erklärt, dass das Kernproblem eher unklare Anforderungen sind.
Wenn man die AI im Chat-Format darum bittet, Unklarheiten in den Anfragen der Nutzer direkt zu präzisieren, scheint sich das Problem doch lösen zu lassen.
Ich verstehe nicht, warum man unbedingt die Chat-UI kritisieren muss.
Oh, das ist irgendwie eine interessante und nachvollziehbare Meinung 😊
Hacker-News-Kommentare
Ein Nutzer nutzte o3-mini und o3-mini-high für ein Codegenerierungsprojekt und erwähnte, dass ein „Pair-Programming“-Ansatz wichtig sei
Ein anderer Nutzer argumentierte, dass Chat als UI-Muster ungeeignet sei, und erklärte, dass es als Protokoll gut sei, aber schlecht, um Arbeit zu erledigen
Ein weiterer Nutzer zeigte sich überrascht, dass Cursor nicht erwähnt wurde, und erklärte, dass Cursor die Geschwindigkeit beim Schreiben von Code deutlich erhöht habe
Ein Nutzer behauptete, dass die „Verwendung von Chat als UX“ eine Sackgasse sei, und erläuterte dies am Beispiel von SQL
Es wurde erklärt, dass natürliche Sprache nicht für Präzision gemacht sei und dass für die Kommunikation mit KI eine Teilmenge einer Programmiersprache nötig sei
Zu Daniels Meinung wurde erläutert, dass damit nicht gemeint sei, Chat sei generell eine unbequeme UI, sondern dass viele Details nötig seien, um ein Computerprogramm vollständig zu spezifizieren
Es wurde erwähnt, dass man eine per Sprache umgesetzte Erfahrung wie bei Cursor erwarte, mit der sich Codeänderungen besprechen lassen
Es wurde ein Ansatz beschrieben, KI-gestützte Softwareentwicklung auf Basis von Anforderungsdokumenten voranzutreiben, und ein Beispiel gegeben, Anforderungen in eine Checkliste umzuwandeln und als zusätzliche Anweisungen zu verwenden
Es wurde erklärt, dass die erste Welle nicht Chat, sondern Vervollständigung gewesen sei und dass Chat intuitiver wirke und weniger Aufwand erfordere
Es wurde erwähnt, dass man strukturierte Sprachmodelle erwarte, die eine neue Sprache erfinden, um Computerprogramme zu beschreiben