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?
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?