23 Punkte von GN⁺ 2025-02-05 | 4 Kommentare | Auf WhatsApp teilen
  • 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

 
softer 2025-02-06

Es heißt auch, man versuche, bei der Unterstützung von LLMs Wissensgraphen einzubeziehen, und das sei wohl wirksam.

 
beoks 2025-02-05

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.

 
jhj0517 2025-02-05

Oh, das ist irgendwie eine interessante und nachvollziehbare Meinung 😊

 
GN⁺ 2025-02-05
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

    • Er betonte die Bedeutung von Code-Reviews und Feedback und erklärte, dass es nicht gut sei, Code einfach nur zu übernehmen
    • Er erwähnte die Bedeutung der Generierung von Unit-Tests und sagte, man solle nach dem Erfassen des Kerns des Codes um Smoke-Tests bitten
    • Er riet, eine neue Unterhaltung zu beginnen, da das Modell bei langem Kontext verwirrt werden könne
    • Er empfahl, Codebeispiele bereitzustellen und nicht nur auf Englisch zu prompten
  • 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

    • Er erwähnte, dass ein narrativer Ansatz nicht dafür geeignet sei, Dinge zu bauen
  • 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

    • Er erklärte, dass man Änderungen in Form einer Ausgabe, die im git-diff-Stil auf Dateien angewendet wird, genehmigen oder ablehnen könne
    • Er erwähnte, dass es den Kontext der Codebasis in gewissem Maß verstehe und am besten funktioniere, wenn man Dateien explizit taggt
    • Er erklärte, dass es sehr praktisch sei, Terminal-Logs oder Typfehler direkt in die Chat-Oberfläche einzufügen
  • Ein Nutzer behauptete, dass die „Verwendung von Chat als UX“ eine Sackgasse sei, und erläuterte dies am Beispiel von SQL

    • Er sagte voraus, dass LLM-basierte Chat-Oberflächen den Nutzern nicht direkt gezeigt würden
    • Er erwähnte, dass natürlichsprachliche Oberflächen bei der Interaktion mit Maschinen nur in Ausnahmefällen verwendet würden
  • 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 erklärt, dass LLMs Unklarheiten mit guten Standardwerten auffüllen und einen üblichen Login-Bildschirm liefern
  • 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 erläutert, dass Dokumente nicht statisch seien, sondern über KI iterativ überarbeitet werden könnten
  • Es wurde erwähnt, dass man strukturierte Sprachmodelle erwarte, die eine neue Sprache erfinden, um Computerprogramme zu beschreiben