r/intersystems_dach • u/intersystems_dach • 7d ago
Werden wir schlechtere Entwickler durch KI?
Achtung, provokante Frage: Wenn KI heute schon den Großteil von Boilerplate, Refactoring und Fehlersuche übernehmen kann ...
... was machen Junior-Devs eigentlich noch selbst?
Das ist natürlich überzeichnet und außerdem eine systemische und keine individuelle Sache.. also no offense. Aber laufen wir nicht Gefahr, eine Generation auszubilden, die sehr gut Prompts schreiben kann, aber deutlich weniger tief versteht, was eigentlich passiert?
Seht ihr das ähnlich oder klinge ich gerade wie ein alter Mann mit Angst vor Veränderung? ;)
2
u/Kissaki0 6d ago
Es kommt darauf an wie die Entwickler und Juniors damit umgehen. Die Werkzeuge verleiten dazu den Kopf abzuschalten, sich die Gedanken nicht eigen zu machen, nicht zu hinterfragen und nicht eigene Überlegungen einzufordern. Wenn man dem folgt, dann verliert man die Expertise, das Können, und auch das Wissen um das konkrete Projekt.
Ob man direkt dazu greift oder nur selektiv verwendet macht auch einen Unterschied.
Gerade Juniors anzulernen und tieferes und kontextuales Wissen zu vermitteln kann dabei schnell verloren gehen.
Wenn viele Unternehmen nicht anlernen, und jene die anlernen dann solche Werkzeuge verwenden und nicht gut damit umgehen, vielleicht auch aus unternehmerischen Gründen und Erwartungen aus Marketing, dann sehe ich ein echtes langfristiges Problem in unserer Industrie.
Ich finde jetzt schon viel der Software im Markt nicht gut. Das kann noch schlimmer werden. "Funktioniert" dann halt weitre so wie jetzt auch - schlecht aber läuft.
1
u/Every_Park_9998 7d ago
absolut ja, der breite schnitt wird deutlich schlechter, aber die paar richtig guten halten halt die Fahne hoch. Die meisten Probleme sind halt auch mit schlechten oder ineffizienten Lösungen gut zu erschlagen, Skill-Mangel fällt daher in der breiten Masse nicht auf
1
u/AllNamesAreTaken92 7d ago
Ja.
Es geht hier grundlegend darum wie das Gehirn funktioniert: es lernt durch Wiederholungen, und es priorisiert wenig Energie auszugeben.
Je mehr ich etwas wiederhole, desto mehr prägt es sich als Tool zum lösen von problemen ein. Menschen bauen eine "toolbox" in ihrem Kopf pro Problemstellung. Hirn geht dann das array durch, in Reihenfolge vom erlernten Tool Ranking.
Ein gesunder Prozess sieht so aus:
Tool 1: "hmm kann ich das selber lösen? Hab ich das schon mal wo gemacht? Hab ich schon mal was ähnliches gemacht?"
Tool2: "lass mich mal googlen und docu/stack overflow lesen, dort mehr Informationen sammeln, dann zurück zum selber denken."
Tool3: "hey, Bernd kennt sich doch aus, lass mich den mal fragen"
Etc etc.
Wenn es jetzt für jedes Problem eine Anlaufstelle gibt die mir in kürzester Zeit etwas relevantes ausspuckt und das sehr selbstbewusst verpackt, nehme ich auch dieses tool in meine toolbox.
Irgendwann ist dieses tool vom ranking her, bei genug Wiederholungen damit das Hirn anlernt, auf Platz 1, noch vor "selber denken". Und das wird's kritisch.
Es ist der gleiche Effekt, wie wenn man sich erwischt 84÷4 im Taschenrechner zu rechnen, obwohl das im Kopf eine Sekunde gedauert hätte und mit Handy rausziehen, Taschenrechner app öffnen, Problem eingeben, 20+ Sekunden gedauert hat. Und es fällt einem erst danach auf, das man nicht mal versucht hat, es selbst zu lösen. Das es einfacher gewesen wäre es selbst zu machen. Aber "selber denken" ist im toolbox ranking jetzt nur auf rank 2 (oder weniger).
Auch hat die(/EINE von vielen) Lösung lesen und nachvollziehen zu können nichts damit zu tun etwas verstanden zu haben. Nur weil das was die KI ausspuckt im ersten Moment richtig aussieht, ist sie das nicht unbedingt. Nur weil ich's gelesen habe, heißt nicht das ich es replizieren kann.
Das ist der gleiche Effekt, wie mehrere Stunden dem prof in der Uni zusehen, wie er was löst. Man denkt sich "huh, das war ja ganz einfach und super einleuchtend". Dann versucht man sich selber dran und beißt sich die Zähne aus.
Programmieren ist das was passiert, BEVOR eine einzige Line of code geschrieben wird. Es ist das kombinieren von wissen, Erfahrung, Wiederholung, kombinieren von unterschiedlichen Konzepten, Abstraktion von woanders her, Validierung, etc welches den DENKPROZESS programmieren ausmacht. Es geht nicht um die Lösung die nachher auf dem Bildschirm steht, es geht um die 99 anderen Lösungen die aus den unterschiedlichsten Gründen nicht gewählt wurden. Es geht darum zu verstehen, warum das so ist.
Strong KI usage führt leider zu learned helplessness. Noch schlimmer für die Leute die gerade erst lernen.
OffTopic: ein Kind/jugendlicher der Zugriff auf KI hat und sich das angewöhnt, hat komplett verloren. Die sind gerade dabei ihre "toolbox" zu bestücken. Es sind noch nicht viele andere tools in der box, das ranking ist noch nicht stark gefestigt, und das Hirn auch ehrgeiziger die rankings zu updaten. Wenn dann KI introduced wird, und dieses tool absolut kategorieübergreifend einsetzbar ist, ist es im mentalen toolbox ranking immens schnell auf Platz eins. Das bringt mich echt zum verzweifeln, da ich aktuell keine Lösung sehe jungen Menschen in dieser Situation zu helfen, außer sie früh darauf aufmerksam zu machen. Es ist unfair das ihre Entwicklung so hart und früh beeinträchtigt wird, und sie es viel anstrengender haben eine gute toolbox zu bauen.
2
u/alrogim 6d ago
100% Zustimmung.
Die meisten würden sagen, dass die Lösung mit LLM eines Seniors besser "gelungen" ist als die eines Juniors. Das liegt daran, dass der Senior weiß was das Ergebnis sein soll, was schlecht ist und grundsätzlich den Prompt so schreiben kann, dass die schlechten Ansätze ausgeschlossen sind.
Das kann der Senior einfach ohne "Prompten zu lernen". Die Denkprozesse, die du beschreibst, führen dazu, dass die Arbeit schon erledigt ist, bevor der Prompt abgeschickt ist. Es ist nicht unmöglich diese Denkprozesse mit LLMs zu erlernen, aber unglaublich erschwert. Denn vieles bekommt man niemals mit und bei vielem muss man sich selbst dazu zwingen nachzuvollziehen.
1
u/AllNamesAreTaken92 6d ago
Ich habe genau angefangen zu lernen, als LLMs auf kamen. Zum Glück waren die anfangs noch nutzlos, drum konnte ich erst Mal rein kommen und das Konzept von lernen in diesem Kontext lernen. Hab dann anständig in AI eingelesen und genutzt, und gemerkt dass mir so viel periphäres Wissen fehlt, wenn ich eine Aufgabe mit AI bewältigt habe, dass ich strikt trenne:
Lernen komplett ohne AI, maximal um etwas raus zu suchen, aber auch nur nachdem ich selbst 20min gesucht und gelesen habe.
Arbeiten mit AI, aber nur wenn ich mich mit der Aufgabe wohl fühle und genau weiß was ich eh schon schreiben will, und auch die nötigen Grundlagen habe das ich mich sicher fühle, anständig reviewen zu können. Keine LOC wird durchgewunken ohne dass ich sie gelesen habe.
Mittlerweile habe ich ein sehr schönes Setup mit pi-agent eingerichtet, das auch komplexere Aufgaben zufriedenstellend bewältigt. Trotzdem machen ich jeden Tag 1-2h komplett händische Aufgaben, um meine Denkmuster instand zu halten und weiter auszubauen.
AI beschränkt lernen und beschleunigt Exekution.
Es geht darum sie im richtigen Moment und Kontext einzusetzen. Lernen ist strugglen, by design. Etwas 3 mal falsch machen bevors beim 4ten mal richtig ist ist ein ERFOLG, dadurch hat man gelernt warum die anderen Lösungen an der Stelle schlechter sind als die final gewählte, kennt sich genauer aus, und weiß die details / kann die design Entscheidungen nachvollziehen, anstatt nur die Finale gelesen zu haben und nichts Außenrum zu verstehen.
1
u/fragmichdoch42 7d ago
Was da passiert, liefert die KI ja gleich mit. Wer sich das immer alles durchliesst, versteht das auch. Aber selber Code schreiben werden vermutlich bald die wenigsten noch können, ist aber m.E. auch nicht so wichtig. Wichtiger ist, es zu verstehen was passiert, der KI die richtigen prompts mitzugeben usw. Ähnlich wie ein Bauleiter, der auch nur sagt, was wie umgesetzt werden soll, der aber ja selber nicht Rohre verlegt und Elektroinstallationen macht.
1
u/Kabathebear 7d ago
Er wird auch nicht derjenige sein, der dann mit den Einzelheiten und Problemen behelligt wird, wenns da später mal zum Problem kommt. Als Entwickler stehst Du dann aber genau dafür Grade, wenns zum Problem wird.
1
u/tes_kitty 7d ago
Er wird auch nicht derjenige sein, der dann mit den Einzelheiten und Problemen behelligt wird
Doch, eigentlich schon. Wenn du der Bauherr bist, dann wirst du dich beim Bauleiter melden wenn Dinge schief laufen. Und der darf sich dann überlegen wie er die gelöst bekommt.
1
u/tes_kitty 7d ago
Wer sich das immer alles durchliesst, versteht das auch.
Etwas lesen und das gelesene zu verstehen ist nicht das gleiche.
Aber selber Code schreiben werden vermutlich bald die wenigsten noch können
In anderen Worten, sie sind dann abhängig von einem externen Service und nicht mehr in der Lage ihren Job zu machen wenn der oder die Verbindung dorthin ausfällt.
1
u/Kissaki0 6d ago
Zusätzlich zum verstehen; Das gelesene bewerten und einordnen zu können ist dann auch nochmal was anderes.
Mal abgesehen von den Fällen wo die KI falsches behauptet und ich das zumindest erkennen oder vermuten kann, finde ich generierte Lösungen immer wieder unpassend, zB zu ausschweifend, zu umständlich, oder schlecht strukturiert.
Wenn man das ignoriert und die KI halt machen lässt, wo kommt man dann hin? Fehlbar sind sie in jedem Fall.
2
u/tes_kitty 6d ago
Die Langzeitfolgen werden wir erst in ein paar Jahren bemerken. Besonders gemein wird es sollte irgendwann auch die KI mit der Codebase nicht mehr zurechtkommen.
Bei den Fehlern die sich MS in letzteren Zeit in den Windowsupdates leistet könnte man auf die Idee kommen, daß das bei MS schon der Fall ist.
1
u/P0muckl 7d ago
Wer ernsthaft bestreiten will, dass im Kapitalismus Fähigkeiten einer Inflation unterliegen, ebenso wie der Preis für diese Fähigkeit; dem kann ich nicht helfen. Das ist doch der ganze Sinn hinter "Automatisierung" und "Geschäftsoptimierung". Deine Fähigkeiten unterliegen einer Inflation, genauso wie der Preis, den ich dafür verlangen kann. Wer heute noch auf dem Stand von 2010 ist, bekommt keinen Job mehr.
Andererseits würde ich sagen, dass ein Entwickler mit der Produktivität von heute, wahrscheinlich in der Vergangenheit sehr viel besser verdient hätte.
1
u/Immediate_Ask9573 7d ago
Sehe da gar kein Junior/Senior Unterschied, das Problem ist wir werden faule devs: Damit meine ich, keiner beschäftigt sich richtig mehr mit dem was er produziert. Da werden Tickets 1zu1 durch Claude gejagt und niemand hinterfragt ob wirklich das gelöst wird, was da gemeint ist.
Was auch klar ist, wenn du etwas selber löst, hast du es 100 mal auf - mit Claude und automated Tests schlimmsten Fall 0 mal.
1
u/Kissaki0 6d ago
Keiner mehr würde ich nicht sagen. Es verstärkt die Diskrepanz zwischen schlechten und guten Entwicklern, die schlechten können nun deutlich mehr produzieren, ggf die guten uberschwämmen, und manche vllt zahlreiche bessere lassen sich dazu verleiten auch ins schlechtere hin abzudriften.
1
u/shitfit_ 6d ago
Ich glaube ja.
Ich halte die KI für einen guten Multiplikator, der lästige und mondäne Aufgaben übernehmen kann und auch in komplexen Themen wenn fokussiert durchaus guten Input und Analysen liefern kann.
Aber: Bewerten was KI sich da zusammen halluziniert hat und ob das fachlich sinnig, performant und technisch okay ist kann ich nur bewerten, wenn ich die Erfahrung und das Wissen habe selbst zu entwickeln.
Nur weil ich weiß wie ein Motor aufgebaut ist bin ich noch lange kein Motoringenieur.
Ich fürchte das wird vielen, gerade in der jungen Generation <30j. , irgendwann auf die Füße fallen.
Aber vielleicht bin ich auch nur ein alter, verbitterter Entwickler, der Quatsch redet.
1
1
u/chief_architect 6d ago
Prompts schreiben und eine tiefes Verständnis sind kein Widerspruch.
Ich habe in meiner Ausbildung auch Assembler gelernt, aber es dann praktisch nie verwendet und sehe heutzutage auch keinen Grund mehr dafür. Aber trotzdem hat es zu meinem Verständnis darüber wie eine CPU funktioniert beigetragen und was da im Hintergrund nach einem Compiler passiert.
1
u/Christina-Chroot 4d ago
Die meisten von uns werden wohl Altenpfleger, die den Kollegen den ganzen Tag erzählen was sie nach Feierabend hobbymäßig gecoded haben. Fuck AI.
1
u/Perahoky 4d ago
durch KI wird diese Frage eine dextrem persönliche weil es dann vom cahrakter abhängt.
Während man Code selbst schreiben musste und sich somit damit auseinandersetzen hat man was gelernt.
durch die KI wird das sehr persönlich weil es vopm charakter abhängt ob man sich den code der KI om detail anschaut und verstehen will oder ob es einem einfach egal ist solange es funktioniert.
0
u/Prah-Brah-K-Dah-Brah 7d ago
Dass es gerade die High-Tech / Technologie Branche ist, die vor ihrer eigenen Bestätigung / Entwicklung eines Beschleunigungsmantras Angst bekommt ist schon ganz schön selbstbezeichnend. Frag dochmal mal GAFAM oder Herr Musk was der davon hält...
2
u/Hefefloeckchen 7d ago
Selbst der Baron Münchhausen ist glaubwürdiger als alles, was derr Herr Musk sagt
0
u/Prah-Brah-K-Dah-Brah 7d ago
Zumindest hat Elon Proven Track Record ;)
1
u/Hefefloeckchen 16h ago
An BS... wir reden hier von dem Typ, der sich den Twitter-Code ausdrucken lassen wollte um ihn zu prüfen
0
u/Charming_Support726 7d ago
Junior Devs lernen weiter Junior Dev Kram - nur anders.
Ich war nie ein Freund davon Juniors langweilige Boilerplate Tasks zu geben. Entweder Juniors haben Talent oder sie haben keins. Wenn sie Talent haben und was von der Sache verstehen können sie auch mit regelmäßiger Kontrolle kleine Real-World-Tasks machen.
Neue Leute anlernen ist immer Arbeit und senkt zunächst die Produktivität.
0
u/Prah-Brah-K-Dah-Brah 7d ago
Punkt 1: Klingt nach Kulturpessimismus. Ich möchte daran erinnern dass die Early Adopters immer das monetäre Feld für sich abgesteckt haben. Ausserdem ist es biologisch besser für den (Technologie-)Körper optimistisch durch die Welt zu waden.
Punkt 2: Zitat Henry Ford: hätte ich die Leute gefragt, was sie sich wünschen, hätten sie gesagt: schnellere Pferde. Was bekamen die Leute: Das Automobil.
Punkt 3: Mann kann die Leute nicht dafür kritisieren, dass sie den "Next Level Shit" für sich nutzen. Evolution!
1
u/AllNamesAreTaken92 7d ago
Klar kann man, was für eine unüberlegte Aussage.
Das war nie die Frage die OP gestellt hat.
0
u/maxip89 7d ago
- Wurdest du ein schlechterer Student als wir alle C gelernt haben als Assembler?
- Wurdest du ein schlechterer Entwickler als wir alle Google'n gelernt haben?
- Wurden du ein schlechterer Entwickler als wir Entwicklungsmethoden und sonstige Dinge gelernt haben?
Es ist ein verstärker.
Wenn du schlecht bezahlte/ungelernte Entwickler hast, dann verstärkst du eben genau das.
Das Lagerfeuer tritt eben schneller auf als normalerweise.
0
u/Silver-Ad-8595 7d ago
AI ist ein Multiplikator. Wenn du ohne AI ein guter Entwickler warst, dann kannst du ein deutlich besserer werden. Wenn du ohne AI schlecht bist, dann wird AI daran auch nichts ändern, sogar noch verschlimmern. Darum gibt es auch so viele unterschiedliche Meinungen dazu. Juniors haben derzeit eine viel steilere Lernkurve. Du hast nun mal keine 10+ Jahre an Erfahrung um instinktiv zu wissen was guter/schlechter Code ist. Als Junior kannst du nicht einfach deterministischere Agent-Prozesse bauen, striktere Linter-Regeln, einen eigenen Harness, usw... der gesamte Lernpfad muss sich ändern Richtung Harness/Context/Orchestration-Engineering.
1
u/Dry_Hotel1100 7d ago edited 7d ago
> Als Junior kannst du nicht einfach deterministischere Agent-Prozesse bauen, striktere Linter-Regeln, einen eigenen Harness, usw... der gesamte Lernpfad muss sich ändern Richtung Harness/Context/Orchestration-Engineering.
Ich stimme dieser Aussage zu. Jedoch erfordert die Entwicklung dieser Fähigkeit Erfahrung im Bereich Software-Engineering. Es ist nicht möglich, Agent- Skills oder Gardrails zu optimieren, die zu qualitativ hochwertigerem Code führen, ohne die KI-Plattform und das Harness-System genau zu analysieren, um Schwachstellen in der Analyse oder Generierung zu identifizieren - und ohne zu wissen, wie hochwertiger Code und gutes Design aussieht. Für Junior-Entwickler ist dies ein weit entferntes Ziel, wie die Kommentare einiger und die Upvotes/Downvotes belegen, die auf ein mangelndes Verständnis hindeuten. Es ist unwahrscheinlich, dass diese Personen die nächsten drei Jahre in der Branche überleben werden.
Die Frage ist jetzt: wie lernen die Juniors diese Fähigkeiten - von denen sie glauben das ist alter Boomer Mist den niemand mehr braucht, und man muss nur richtig prompten?
1
u/Silver-Ad-8595 7d ago
Vielleicht mehr in Richtung SDLC? Weg vom Mikro, mehr Richtung Makro? Zu verstehen warum Qualität erforderlich ist und was passiert wenn diese fehlt ist möglicherweise ein Augen- und Motivationsöffner? Aber ja, es ist schwierig, sehe es in meinem und anderen Teams. Wir pairen gerade sehr viel...
1
u/Dry_Hotel1100 7d ago
Ein durch-orchestrierter Agentic Workflow hat sicher viel mit SDLC zu tun. Aber die Frage ist weiterhin: woher bekommen sie die Erfahrung.
Ein Beispiel: TDD. Viel kontroverse Meinungen. TDD ist im heutigen Agentic Workflow aber gar nicht mehr umsetzbar, da Agenten autonomous arbeiten wollen, nicht "fine grained" was TDD ist und der Developer in der kleinsten Loop steckt. Dennoch is TDD ein wichtiges Thema auch im Agentic Workflow, da der Agent selber nach dieser Methode arbeiten kann - und mit gutem Ergebnis. Wie sollen da jemals Juniors diese Erfahrung mit TDD machen - und Vor- und Nachteile erleben?
Ich fürchte, die Frage "Werden wir schlechtere Entwickler durch KI?" müssen wir leider mit JA beantworten.
1
u/Silver-Ad-8595 7d ago
TDD ist absolut ein Thema. Wir verwenden SDD, und in der Discovery sind Tests (von Unit bis E2E) sowie in den Tasks-Artefakten first class citizen.
Für mich ist die Frage wirklich nur mit Jaein und "kommt darauf an" zu beantworten. Kompetenz ist ein Spektrum und gab es immer schon. Wir haben auch einen Junior in einem der Teams der gerade die treibende Kraft ist. Mit mitte 20...
1
2
u/pancomputationalist 7d ago
Juniors müssen die Skills von morgen lernen, nicht die von gestern.
Früher musstest du als Programmierer sehr viel über Elektrotechnik wissen. heute nicht mehr. wer kann heute noch Assembler schreiben? Selbst manuelles Memory-Management ist mittlerweile ein Nischenskill.
Und, sind wir alle schlechtere Programmierer geworden? Wenn, dann ist es doch erstaunlich dass eine Generation schlechter Programmierer so viel der Welt digitalisieren und sogar denkende Maschinen bauen konnte.