Programmieren mit KI

Micha-

Captain
Registriert
Aug. 2023
Beiträge
3.565
ich habe in den letzten Wochen ein kleines Python Skript mit KI Hilfe erstellt.
Dabei viel gelernt, vor allem was mit KI geht und was nicht.
Btw, ich kann kein Python und sowas wie in diesem Projekt (automatisierter PDF Download) habe ich noch nie umgesetzt, daher habe ich auch keine Erfahrung, was best-practice ist.
Musste mich also viel auf die KI verlassen. Die andere Alternative wäre gewesen, es gar nicht umzusetzen.

Der erste Wurf war schnell erstellt. Ich habe hierzu Gemini genutzt.
Dann rannt Gemini aber beim Versuch das PDF runterzuladen gegen die Wand.
Jemand mit mehr Erfahrung in diesen Dingen hätte das vermutlich schnell umschifft.
Ich habe den Code dann an Claude übergeben. Der hatte dann ruckzuck eine Lösung.
Mir ist auch klar, das der ganze Code "wackelig" ist, weil mir die Erfahrung fehlt einen robusten Web-Scraper zu bauen.
Das die Empfehlungen der KIs da nicht hilfreich sind, habe ich auch schnell gemerkt. Die bauen dir da zig Alternativen ein ohne Rücksicht darauf ob das wirklich bei dieser Website funktionieren kann.

Was sich im späteren Verlauf, als ich weitere Optionen eingebaut habe, als unangenehm herausstellte:
Gemini schreibt den Code anscheinend jedesmal neu. Dadurch gibt es keine Konsistenz. Texte von Ausgaben ändern sich jedesmal.
Selbst wenn man jedesmal ausdrücklich sagt, das man nur die besprochenen Änderungen haben will, kann random irgendwas geändert werden.
Auf diese Weise sind auch mehrfach Funktionen unbemerkt raus gefallen, weil er die gerade für unwichtig hielt.

Claude dagegen scheint nur die Änderungen in den vorhandenen Code einzupflegen, wie es auch ein menschlicher Programmierer tun würde.
Wesentlich besser für iterative Weiterentwicklung.

Je größer das Projekt wurde (aktuell ca. 300 Zeilen) desto mehr kam dieses Vorgehen aber an seine Grenzen, da ich nie sicher sein konnte, ob die KI nicht funktionierenden Code "beschädigt" während sie neue Anforderungen umsetzt. Und jedesmal alle Eventualitäten durchzutesten war ich auch Leid.

Ich bin dann zu ChatGPT gewechselt und der hat von sich aus nur die Code-Schnipsel zurück gegeben, die anzupassen wären.
Das war für mich natürlich erstmal mehr Arbeit, vor allem muss man dafür ein bisschen Code Verständnis entwickeln.
Dadurch habe ich allerdings ein bisschen Python gelernt, was mit den beiden anderen KIs nicht passierte.

Ich bin dann dazu übergegangen, wie früher, wenn ich selber programmiert habe, mir nur die fehlerhafte Funktion anzusehen und diese im Zusammenspiel mit der KI zu optimieren.
Je mehr Code Verständnis ich erwarb, desto besser konnte ich auch die KI anleiten gleich den richtigen Code zu schreiben.

Ich habe dann immer wieder den kompletten Code einer (anderen) KI zum Review gegeben um Fehler zu identifizieren. Dabei stellt sich als kritisch heraus, das funktionierende Codeteile als fehlerhaft bemängelt werden, weil nicht nach Lehrbuch. Daher: nie einfach alle Vorschläge umsetzen lassen. Erst wenn ich die Vorschläge selber verstanden habe, ggf. auch von der nächsten KI geprüft, habe ich das umgesetzt.

tldr;
Erster Entwurf, kurze Skripte => kann man komplett von der KI erstellen lassen
weitere Optimierungen: eher mit Claude. Gemini kann man hier nicht trauen.
gezielte Optimierungen, längere Skripte: auf keinen Fall mehr den Code komplett von der KI erstellen lassen. Gezielt an den Fehler arbeiten. Selber in den Code einsteigen. Hier hat mir ChatGPT gut gefallen.

Disclaimer: auf die mit Sicherheit nun folgenden Kommentare der Hater werde ich nicht eingehen. Ich will nicht diskutieren wer besser programmieren kann oder was KI alles schlechtes tut.
Es geht darum zu beleuchten wo KI (besser LLM) heute dem Hobby-Programmierer sinnvoll zur Hand gehen kann und wo die Grenzen sind. Was sind eure Erfahrungen?
 
  • Gefällt mir
Reaktionen: Aslo, Fabii02, Samurai76 und 3 andere
Ich arbeite beruflich in der Programmierung und arbeite intensiv mit GitHub Copilot. Wenn du eine IDE einsetzt die auch eine KI unterstützen hat wird dir angezeigt was sie andert.ausserdem kannst du da immer vorher entscheiden was du übernehmen willst.

Abgesehen davon sind diese Agents ohne weiteres in der Lager weit mehr als nur 300 Zeilen Code zu handhaben und auch komplexe Aufgaben zu erledigen.
Allein die Anweisung unittest zu schreiben hat mal eben nur 300 Zelilen Code erzeugt der nur mit minimaler Manueller Anpassung sofort lauffähig war

Leider weiß ich nicht ob's das auch kostenlos gibt. Weit besser als die Unterstützung der kis die du nennst ist es aber sicherlich.

Und ganz wichtig ist zu lernen wie man die KI fragt bzw sagt was zu tun ist. Eine kleine Änderung der Sichtweise kann da grosse Wunder wirken.
 
  • Gefällt mir
Reaktionen: Kassenwart, Samurai76, nutrix und 3 andere
Nutz lieber agentic tools wie codex, opencode, oder claude-cli
Ich brauchte die Tage ein paar Daten visualisiert.

Nach etwas mehr als einer 1.5 stunden hatte codex ein 4500 Zeilen Python Script mit WebUI und Filtern zum setzen der Ranges. Dazu kamen auch Doku und beschreibung der zu analyzierenen Daten.
Plots hatten automatisch korrekt beschriftete Datenpunkte und Achsen.
habe dann noch 20 Anweisungen hinterher geschoben, wenn ich weitere Feautres brauchte
Codex hat die Daten automatisch angesehen, plots erstellt und sich diese angesehen und sich durch sicher 100 revisionen iteriert, bis das ergebnis gut war.
Das ganze hat 2 Millionen Token gekostet und mich etwa 5 Euro. Selbst hatte ich da eher 4-5 Tage gebraucht

In WebUI wie chatgpt kommt dabei in der regel nur simpler Kleinkram halbwegs brauchbar raus. Iterieren geht damit kaum bis gar nicht.
 
  • Gefällt mir
Reaktionen: pseudopseudonym, Samurai76, nutrix und 3 andere
Micha- schrieb:
und der hat von sich aus nur die Code-Schnipsel zurück gegeben, die anzupassen wären.
Das war für mich natürlich erstmal mehr Arbeit, vo

Bitte nimm doch a) eine kostenlose IDE wie PyCharm Community Edition und b) bindest dort das kostenlose GitHub Copilot ein. Dann dort weitermachen im Modus Edit oder Agent. Nicht Chat, der ist nur für Konzepte durchsprechen gedacht.

Wie @Firefly1981 und @madmax2010 schreiben, alles andere taugt nicht für Code schreiben.
 
  • Gefällt mir
Reaktionen: Samurai76 und nutrix
madmax2010 schrieb:
In WebUI wie chatgpt kommt dabei in der regel nur simpler Kleinkram halbwegs brauchbar raus. Iterieren geht damit kaum bis gar nicht.
Es geht schon. Ich habe ein kleines Python Projekt (ca. 2500 Zeilen, 6-8 Dateien) welches von ChatGPT 5.2 Thinking im Browser verarbeitet und erweitert werden kann. Wenn man es entsprechend angeht. Erst wenn der aktuelle Chat-Verlauf zu lang sein wird, wird's problematisch.
Micha- schrieb:
Erster Entwurf, kurze Skripte => kann man komplett von der KI erstellen lassen
weitere Optimierungen: eher mit Claude. Gemini kann man hier nicht trauen.
gezielte Optimierungen, längere Skripte: auf keinen Fall mehr den Code komplett von der KI erstellen lassen. Gezielt an den Fehler arbeiten. Selber in den Code einsteigen. Hier hat mir ChatGPT gut gefallen.
Heute ist es so und morgen anders.

2025 war krass, was den Fortschritt bei der Code-Generierung angeht im Vergleich zu 2024.

Einfach weitermachen und üben.
 
  • Gefällt mir
Reaktionen: madmax2010
Ja, mit dem guten Prompt geht alles los😎

Kontext, Aufgabe, Ziel, Format beschreiben.

Da kommt dann schon was brauchbares dabei raus. Aber am Ende muss man es trotzdem selber zumindest rudimentär verstehen.

In Excel mit VB-Skript war mir der GPT schon eine große Hilfe.

Oder in Phyton oder PLCnext.

Wie du schon festgestellt hast: Manchmal verrennt er sich in eine Sackgasse.
Es ist halt ein Sprachmodell und klingt intelligent und überzeugend. Ist es aber nicht.😂
 
  • Gefällt mir
Reaktionen: madmax2010
Meine Erfahrung als Solo-Godot-Entwickler: Claude regelt, GLM und Gemini eher mau. Ich nutze auch keine IDE sondern direkt Claude Code in der Konsole (Linux)

Teilweise werden aber (gerade wenn man nur Debug Outputs postet) nur Symptome behoben, nicht das eigentliche Problem angegangen. Es werden auch gerne mal Fünfzeiler in eigene Funktionen verpackt, oder sowas wie folgendes "programmiert":
Code:
get_object_a_on_location_x()
get_object_b_on_location_x()
get_object_a_on_location_y()
get_object_b_on_location_y()

Da muss man dann extra mitgeben, dass eine einzelne Funktion

Code:
get_object_on_location(object_id, location_id)
doch die deutlich bessere Lösung wäre, worauf eine KI dann ganz gerne sagt "Du hast Recht!"

Generell sagt eine KI immer "Du hast Recht, das ist eine exzellente Frage" usw. Nur Claude sagt gerne auch mal "Nein, weil...."

So meine Erfahrungen nach ~4 Monaten "Vibe-Coding"
 
Zuletzt bearbeitet:
KI-Code braucht immer ein review. KI ist nicht perfekt. Unittest können die Methoden prüfen.
In meiner Firma wird auch github-copilot verwendet. Ja, es bringt Vorteile, aber es ist nur ein Tool - mehr nicht!
Erwarte dir nicht zu viel.
 
  • Gefällt mir
Reaktionen: rhewa und madmax2010
Was genau benutzt du? Die Free Version von Gemini? Bezahlst du irgendwo? Da liegen mittlerweile Welten zwischen und es gibt gerade für das Programmieren auch Plattformen.

Google Antigravity, Claude Code, OpenAI Codex und dann kommen Plattformen wie Cursor dazu, wo man alle Modelle auswählen kann. Da gibt es teilweise dann auch Funktionen wo man bestimmte Code-Teile einfrieren kann usw. Einfach nur in den Chatbots programmieren ist suboptimal.
 
  • Gefällt mir
Reaktionen: JumpingCat und Metalveteran
wahli schrieb:
Erwarte dir nicht zu viel.
Ich widerspreche.

Ich kann NULL Python (habe aber bei meinem Projekt schon was "gelernt") und wie ich in #5 geschrieben habe, habe ich mir ein ein Tool bauen lassen. Es war iterativer Prozess über viele Sitzungen. Mit meinem Wissen aus anderen Programmiersprachen, konnte ich mich auf auf die Sachen (Validierung, Sicherheit, usw.) fokussieren, auf die man achten sollte. Und alles wurde von der KI umgesetzt.

Habe dann vor 1-2 Monaten das Tool einem sehr guten Python Developer gegeben und wollte wissen, was er dazu sagt. Er war baff, wie gut die KI den Code generiert hat und sagte, dass er einige Sachen ganz anders machen würde und die KI Lösungen super fand.
 
Zuletzt bearbeitet:
  • Gefällt mir
Reaktionen: Metalveteran und madmax2010
oicfar schrieb:
Ich kann NULL Python (habe aber bei meinem Projekt schon was "gelernt") und wie ich in #5 geschrieben habe, habe ich mir ein ein Tool bauen lassen. Es war iterativer Prozess über viele Sitzungen. Mit meinem Wissen aus anderen Programmiersprachen, konnte ich mich auf auf die Sachen (Validierung, Sicherheit, usw.) fokussieren, auf die man achten sollte. Und alles wurde von der KI umgesetzt.
Eine freundin von mir hat angefangen sich eigene apps zu bauen. Sie nutzt sie um ihren job zu vereinfachen und ihr leben zu strukturieren. Inzwischen sind es 4 unterschiedliche Webanwendungen.. Ich hoste sie sehr gern auf meiner Infra, aber sie in ihrem Leben keine Zeile Code angefasst und ich habe nicht helfen müssen.

Bei vielen Dingen an denen ich selbst arbeite, bin ich zu Einwegsoftware übergegangen.
Tool Wird geschrieben, ca eine Woche zu dem zweck genutzt - > next

Ist Fastware schon ein genutzter Begriff
 
Zuletzt bearbeitet:
  • Gefällt mir
Reaktionen: JumpingCat, Metalveteran und oicfar
madmax2010 schrieb:
Ich hoste sie sehr gern auf meiner Infra, aber sie in ihrem Leben keine Zeile Code angefasst und ich habe nicht helfen mussen.
Daran sieht man, was ich oben über die Entwicklung in 2025 geschrieben habe.

Auf der anderen Seite bin ich gespannt, wenn Anwendungen usw. von solchen Personen im Internet verfügbar sein werden, was für Sicherheitslöcher da sein werden. An dieser Stelle kommt was Wissen ins Spiel.
madmax2010 schrieb:
Bei vielen dingen an denen ich arbeite, bin ich zu einweg Software übergegangen.
Tool Wird geschrieben, ca eine woche zu dem zweck genutzt - > next
Von der Seite habe ich es noch nicht betrachtet. ;)
 
  • Gefällt mir
Reaktionen: madmax2010
Wenn ich das so lese sind spezielle Programmier Umgebungen die bessere Wahl.

Aber dann muss ich mich ja da wieder einarbeiten 😂
Ich wollte ja niederschwellig schnell eine Lösung finden.

Aber ich werde das im Blick behalten.

Es ist durchaus sehr verlockend Geld für die Tools auszugeben. Aber welches LLM ist das "richtige"? Ich habe meist den kostenlosen Test Monat genutzt. Im Moment hoffe ich das der AG uns mal was gescheites zur Verfügung stellt.
 
Ich habe mal testweise versucht via ChatGPT Indesign/Java-Skripte erstellen zu lassen. Hat quasi null funktioniert. Das Beste war es immer die KI mit ihrem fehlerhaften script zu konfrontieren. Die sagte dann sofort, dass es ja gar nicht funktionieren kann, weil ...
Und die darauffolgende Lösung hat natürlich auch nicht funktioniert usw.

Zum Glück kann ich die Skripte selber programmieren und nutze die KI nur als Syntaxmaschine. In dem Fall sollte man das "i" von KI eher klein schreiben.
:D
 
Einfaches Zeug geht mit der KI, keine Frage - gibts wahrscheinlich auch hunderte Beispiele davon im Netz, woran sich die KI bedienen kann. Bei den komplexeren Sachen steigen die Modelle sehr gerne aus und liefern unzureichende oder teilweise gar nicht funktionierende Lösungen ab. Auch Anpassungen an längeren Jupyter-Notebooks brauchen oftmals mehrere Durchläufe, weil viele LLMs die Aufgaben einfach nur halbherzig abliefern.

Und trotzdem sollte man sich als Hobby-Entwickler eher mit den Grundzügen der jeweiligen Programmiersprachen befasst haben, bevor man sich blindlings auf die Sprachmodelle verlässt. Dass über LLMs Sicherheitslücken eingebaut werden oder gar Backdoors installiert - insbesondere gerne bei API-Calls - ist nichts neues. Ohne den Code verstehen zu können, sieht man das aber nicht direkt
 
VSCode ist eine kostenlose IDE mit Copilot integration. Finde die auch ganz übersichtlich und relativ einfach. Kann auch komplex werden wenn man will.

Und den anderen kann ich nur zustimmen. Cloude im Agenten modus ist echt gut wenn man gute Prompts macht und ihn einschränkt.
 
  • Gefällt mir
Reaktionen: Micha-
Demon_666 schrieb:
Ich habe mal testweise versucht via ChatGPT Indesign/Java-Skripte erstellen zu lassen. Hat quasi null funktioniert. Das Beste war es immer die KI mit ihrem fehlerhaften script zu konfrontieren. Die sagte dann sofort, dass es ja gar nicht funktionieren kann, weil ...
Java oder JavaScript? Java-Script kenne ich nicht. ;) Sorry, aber das ist halt ein Unterschied.

Wenn ich so was lese und auf meine Erfahrung mit der KI zurückgreife, dann liegt es oft an der falschen Nutzung der KI. Und sicherlich mit den Free-Konten. Oder?

Du müsstest schon genauer Beschreiben und wie du was machst.
 
  • Gefällt mir
Reaktionen: TomH22 und madmax2010
Javascript. Natürlich ist mein Fall ein Spezialfall, da ID extended script benutzt und nicht alle Javascript-Möglichkeiten unterstützt. Und da wären noch die ID-spezifischen Gegebeneheiten.

Probiert habe ich erst einmal free-Konto. Wenn mich das "free"-Ergebnis nicht überzeugt, gebe ich kein Geld dafür aus.
Wieso sollte ich den Entwicklern "vorab" Geld für ein unsicheres Ergebnis geben? Für mich ist free bei dem Fall gleichbedeutend mit ner Demoversion eines games. Passt das Ergebnis, gebe ich gern Geld aus. ;)

Die Ansätze waren ja ok, aber wenn ich selbst keine Erfahrung gehabt hätte, wäre ich hier gescheitert.

Ich weiß, dass es bessere Programmier-KIs gibt, aber ich wollte das mal testen.
Zumindest für meinen usecase ist ChatGPT durchgefallen.
 
  • Gefällt mir
Reaktionen: madmax2010
Demon_666 schrieb:
Wieso sollte ich den Entwicklern "vorab" Geld für ein unsicheres Ergebnis geben? Für mich ist free bei dem Fall gleichbedeutend mit ner Demoversion eines games. Passt das Ergebnis, gebe ich gern Geld aus. ;)
Die meisten LLM's die im Free-Pass angeboten werden sind völlig andere als die im Pay-Pass laufen. Wenn man Glück hat laufen ein paar Prompts über ein Premium LLM und dann wieder über die Light-Free LLM's.

Free und Pay sind meistens völlig andere Welten.
 
  • Gefällt mir
Reaktionen: pseudopseudonym, oicfar, wahli und eine weitere Person
Demon_666 schrieb:
Probiert habe ich erst einmal free-Konto. Wenn mich das "free"-Ergebnis nicht überzeugt, gebe ich kein Geld dafür aus.
Wieso sollte ich den Entwicklern "vorab" Geld für ein unsicheres Ergebnis geben? Für mich ist free bei dem Fall gleichbedeutend mit ner Demoversion eines games. Passt das Ergebnis, gebe ich gern Geld aus. ;)
Leider ist das ein schlechter Vergleich. Und das ist halt das Problem. Die meisten, die ich kenne, die von der KI sagen, dass da nix gutes bei rauskommt, nutzen die Free Versionen.

Du kriegst auch gute Ergebnisse mit den passenden Modellen on-prem. Aber auch hier scheitern viele an den falschen Prompts und auch der falschen Nutzung.

Man muss schon Zeit und auch Geld investieren damit die KI, die ich als ein Werkzeug betrachte, einem helfen kann.
Demon_666 schrieb:
Zumindest für meinen usecase ist ChatGPT durchgefallen.
Mit ChatGPT 5.2 Tkinking kannst du schon super Ergebnisse erzielen. Einfach mal für einen Monat die 23€ ausgeben und sich vom Gegenteil überzeugen.
 
  • Gefällt mir
Reaktionen: TomH22
Zurück
Oben