@343max Na ja, es ist aber halt andersrum: dieses „Beispiel" funktioniert bei exakt KEINEM der aktuellen Flagship-Modelle. Getestet: Mistral (lokal!), Gemini 3 Pro, ChatGPT 5.2, Claude Sonnet 4.5.
Keines fällt darauf rein, die Antwort von Gemini mal als hübsches Beispiel.
Und so läuft das seit 2 Jahren:
10 „haha, schaut was die GPTs alles nicht können"
20 ich setze mich 1 Minute dran und exakt das funktioniert in allen neuen Modellen
30 goto 10
🤷🏻♂️
@rstockm Aber ich habe dir doch eben einen Screenshot geschickt wie das aktuelle ChatGPT genau darauf reinfällt.
Für mich ist es exakt andersrum wie du beschreibst. Seit Jahren:
10 du und andere AI believer: “ja, noch vor ein paar Wochen war das Modell noch strunzdumm, aber heute können sie exakt dieses eine Beispiel lösen, darum sind sie perfekt”
20 jemand findet ein neues Beispiel wie ein "Flagship-Model" haarstäubend dumme weise auf die Fresse fällt… (1/2)
30 die AI Firmen bringen neue Modelle raus die auf exakt diesen Fall nicht mehr reinfallen
40 goto 10
le sigh
Wir haben exakt die selbe Diskussion schon diverse Male geführt. Was bringt dich auf die Idee das ChatGPT 5.2.4 Code Red Edition dieses mal aber wirklich all die Versprechen einlöst, die all die anderen Versionen nicht einlösen konnten? (2/2)
@343max Das Schöne ist ja, dass es Forschung gibt und die ist bisher ziemlich eindeutig. Man fühlt sich als Softwareentwickler mit LLM-"Unterstützung " deutlich produktiver als man tatsächlich ist.
@rstockm @343max Bisher hat mich noch kein LLM für die Softwareentwicklung überzeugt. Ja, die kotzen schnell einen Prototypen raus, aber sobald die echte Welt damit in Verbindung kommt, explodiert alles.
Für kleine Nischenprobleme kann es vielleicht was taugen, aber da sind spezielle Lösungen sicher besser als LLMs.
@lbenedix @343max Alles hier aus den letzten 2 Jahren dazu zwei nicht öffentliche die noch komplexer sind:
https://github.com/rstockm?tab=repositories
Es kommt halt auch darauf an ob man die LLMs beim Coden als Gegner sieht den man aufs Kreuz legen möchte oder als endlos geduldig motivierten Junior DEV den man ins eigene Projekt einarbeitet.
@343max @rstockm Bei der Beurteilung, ob ein LLM gute Arbeit macht, spielen viele psychologische Verzerrungen mit. Es fängt schon damit an, dass man selbst etwas tut, also einen Prompt formuliert und dann passiert etwas. Das ist natürlich toll.
Aber ja, es gibt glaub ich kein erfolgreiches Open Source Projekt, bei dem der überwiegende Anteil der Contributions von LLMs kommt. Oder?
@maxheadroom @343max @lbenedix Ich habe mal etwas gekramt in der Historie des „Testabend" Projektes, das hier wäre ein Beispiel:
„Ok ich möchte einen neuen Featurebereich starten, und zwar einen integrierten LLM Chatbot. Erstelle dazu zunächst im Header einen neuen Eintrag "Testteam" und eine Seite, auf der eine gängige Chat-GUI zu sehen ist. Im nächsten Schritt binden wir meine OpenRouter Instanz an.“
1/2
@maxheadroom @343max @lbenedix Das ist der Code:
https://github.com/rstockm/testabend/blob/main/public/js/chat.js
Da habe ich dann später das RAG Modell des Projektes angebunden sowie einen umfangreichen Meta-Prompt, destilliert aus der KI-Analyse eines 1h Audio Interviews mit einem Prof.
@maxheadroom @rstockm @lbenedix Ja, so nutze ich coding Assistants. So wie ich diese Tools nutze haue ich einen Prompt rein, schaue mir ein paar Sekunden oder Minuten später das Ergebnis an, werfe es weg, fixe es oder akzeptiere es.
Aber in diesem Strang ging es ja genau darum wie Ralf verlässlich Probleme von einer AI lösen lässt, also sie Code schreibt, Tests schreibt, Bugs fixt etc ohne das man ihr dabei ständig die Hand halten und neue Anweisungen geben muss.
@343max @rstockm @lbenedix Ich denke das würde gehen, wenn Du Spezifikationen im vornherein genau weißt und dem LLM sehr präzise Anweisungen gibst und es dann machen lässt. Ggf. braucht es Agenten die sich gegenseitig überwachen.
Aber genau das gleiche Problem hast du ja mit menschlichen Entwicklern auch. Am Anfang steht erstmal eine Produktidee und die musst entwickeln. Die wirfst du ja dem Entwickler auch nicht einfach hin und nach ein paar Stunden oder Tagen kommt es genau so raus wie du es dir vorgestellt hast.
@maxheadroom @rstockm @lbenedix Nach meiner Erfahrung geht das nicht wirklich, weil die LLM sich dann meistens irgendwann auf die Fresse packt oder der Kontext vollläuft und sie anfängt Amok zu laufen.
Außerdem klingt das für mich extrem nach Wasserfall.
Mit den menschlichen Entwicklern könnte man schnell iterieren, vielleicht sogar den eigenen Stolz überwinden und selbst ein wenig programmieren lernen auch wenn das natürlich eigentlich unter dem Niveau eines Managers ist.
@343max @maxheadroom @rstockm spec driven development heißt das heute und klingt sehr danach, dass man "agile" ohne Menschen macht. 🫣
Mindestens für größere Projekte sehe ich das nicht so bald kommen.
@343max @rstockm @lbenedix ja, das ist "Wasserfall". Aber egal wie du es nennst, die Dinger sind dabei einfach zig mal schneller beim Schreiben von Code, beim lesen langer Fehlermeldungen, beim recherchieren in Dokumentation etc. Und das ist ein sehr großer Vorteil.
Es entsteht einfach viel Software die es so nicht geben würde weil jemand mit zu wenig skills oder Geduld/Zeit sich nicht an seine Idee rangetraut hat. Mit einem Coding Assistant kann so jemand solche Ideen komplett umsetzen.
Was glaube ich auch nicht zu verachten ist, ist die "Attitude" des LLM. Das ist immer nett und will dir helfen. Egal wie dumm du dich anstellst. Stellst Du menschlichen Enticklern eine Frage die dich als Anfänger outed bekommst du mit hoher Wahrscheinlichkeit eine anfällige oder sehr oberlehrerhafte Antwort. Das motiviert nicht immer dran zu bleiben.
@343max @lbenedix Das hier nehme ich häufig, wenn ich Leute verstören will:
„Programmiere eine Werbanwendung, wo ich auf einem Canvas farbige Zettel posten kann. Die Zettel sollen sich verschieben lassen, einen Titel haben und Text - alles soll editierbar sein. Über einen Selektor kann man die Farbe des Zettels wechseln, die Schrift soll sich in der Helligkeit dem Hintergrund anpassen für genug Kontrast.
1/2
@343max @lbenedix „Den Canvas möchte ich mit der Maus auch selbst verschieben können. Öffne die App im Browser-Tab deiner IDE, suche nach Fehlern auf der Konsole. Melde dich erst wieder, wenn du fertig bist.“
Das funktioniert immer, Ergebnis ist eine JS Webapp (das ist bei mir das vorgegebene Meta-Framework) die alle gewünschten Features drin hat und auf einem lokalen Python Server läuft.
2/2
@rstockm Geht mir genauso. Ich brauchte zB Backup-Apps für ein phpBB Forum und meine Friendica-Instanz. Ersteres hab ich vor Jahren schon mal selbst gemacht. War ein Mega-Gefummel und ich hab nichts sinnvolles dabei gelernt.
Mit Claude ging das nicht nur schneller, sondern ich habe auch reichlich gelernt, wie Dinge mit Python gehen können, ohne mich erst durch hunderte Packages zu wühlen, oder in CSS, wo ich so überhaupt keine Ahnung habe. (Die Backup-Apps können static web sites mit den Inhalten erzeugen)
Ich habe aber reichlich Erfahrung in Specs schreiben, Leute anleiten und deren Zeugs testen und debuggen. Job-mässig bin ich eher in C/C++ für Produktionssteuerungen unterwegs. Von embedded bis SAP-Anschluss.
Ich mag die Geschwindigkeit, wenn ich mit Coding LLMs werkel. Es lassen sich Dinge ausprobieren, wo ich Stunden für's (um)schreiben gebraucht hätte. Ich kann viel schneller Packages und Libs finden und anwenden (lassen) in Bereichen, wo ich mich bisher nicht auskenne. Beim Friendica-Backup zB die Authentification, die vier web-APIs, usw. Ich die meiste Zeit auf der funktionalen Ebene, nicht mit einzelnen Fizzeligkeiten beschäftigt. Claude kann inzwischen auch ziemlich gute Doku und Kommentare schreiben, so dass ich mich auch in Code unbekannter Sprachen schnell zurecht finden kann, wenn ich mal genauer schauen möchte.
Libraries/Frameworks, Schönes Beispiel, ja …
Ich fang in Cursor damit an das mit ein llm erstmal eine spec und Architektur und requirements schreibt, aus einem offenen Brainstorming mit dem Agenten. Da gehört auch dazu, die Frage zu klären welche libraries/Frameworks man für bestimmte Aspekte nutzen kann und welch pro und con es gibt. Wenn ich dann angebe dass ich kein Enterprise ready riesenframework brauche sondern genau einen Aspekt betrachtet und gelöst haben will, dann kann mir das llm verschiedene Optionen vorschlagen, inkl
Selbstschreiben, und ich kann dann als Architekt das Vorgehen bestimmen.
Am Ende giest der Agent das Brainstorming in die beiden Files Requirements.md und Techspec.md und das sind die ersten Files im Git Repo.
Meine Cursor-Rules sagen, dass diese beiden Files immer wieder Teil des Context sind und zu beachten sind.
natürlich können die sich in den nachfolgenden Sessions auch noch angepasst werden … neue offene Fragen werden dort erörtert und beantwortet.
Ein anderer Agent erstellt dann aus diesen Files einen Plan zum abarbeiten und erst die dritte Agent-Session erzeugt überhaupt Code und trackt den Fortschritt im Plan.
Ja, das ist kein OneShot… das ist den Juniordev an die Hand nehmen und ihm logische Planung abnehmen.
Man kann den Junior DEV benutzen und mit ihm produktiv sein. Man kann sich so verhalten, dass man dem juniodev die ganze Zeit Rätsel gibt, die die graue Emminenz kennt und dem Junior dann vor dem Kopf knallen, wie doof er ist. Ich bin gespannt wie lange das im reallife gut geht.
Ralph hat oben mwn nicht behauptet dass die llms alle auf architektenlevel arbeiten. das ist es aber was viele aufgrund des Hypes da rein interpretieren.
Nein! das sind erstmal dumme Juniors die nur bis zur nächsten Frage denken können und wenn man ihnen nicht genug Context gibt, bzw nicht weiß wie man das macht, der ist enttäuscht…
Sorry for the longread, my 2ct
Ganz genau. Ich habe meist auch eine Regel, die noch ein permanentes Learnings.md file füttert und welches dann abundzu in whisking.md zusammenaggregiert wird.
Dabei hilft das LLM am Ende eben auch mit, möglichst viel Kontext mit möglichst wenig tokens verfügbar zu haben. Und ja, eine der Regeln ist auch, dass das llm mich nach einen signoff fragt, bevor es des aktuellen task als erledigt markiert und weitermacht.
Irgendwann im laufe des Projektes kommen dann halt auch Regeln dazu wie das locale building und testen zu funktionieren hat. Die neueren Versionen sind besser geworden aber alte Versionen haben sich gerade Client/Server Architekturen gern mal in den Fuß geschossen, wenn sie den Server gestartet haben und den Output nach dem exit analysieren wollten…
Ja, es sind halt kleine Dummerchen LLMs die man an die Hand nehmen muss um von dem WAS sie können zu profitieren.
Die können halt nicht logisch denken/vorhersehen. Die können nur mit dem gegebenen Context von einer oder mehreren Quellsprachen den Text in einen anderen Zustand transformieren. (Je nach Heat nichtmal deterministisch) aber wir Menschen können aus diesem Mechanismus eine turingvollständige Maschine bauen. Das ist der Job des promptes.