AI Coding VERBIETEN? | Github Copilot: UNSICHER & Teuer

preview_player
Показать описание
So funktioniert das Arbeiten mit KI-Assistenten am besten!

01100111 01100101 01110100 00100000 01101001 01101110 00100000 01001001 01010100
📢 Das Virtual Live-Event von get in IT:
Am 26. Oktober 2023 dreht sich bei der job I/O alles um IT-Consulting!
Du möchtest spannende IT-Arbeitgeber kennenlernen und Dich über die neuesten Trends in der IT-Beratung informieren? Dann komm zur job I/O! Denn auf diesem virtuellen Event bringt Dich get in IT mit Unternehmen aus dem IT-Consulting zusammen. Chatte bequem von zu Hause aus mit IT-Arbeitgebern, die jetzt nach IT-Talenten wie Dir suchen. Erhalte persönliche Einblicke in die Arbeitsweisen der Fachabteilungen und blicke hinter die Kulissen ➔ Und das Beste: Die job I/O ist für Dich absolut kostenlos und anonym!
20+ Unternehmen, über 500 IT-Jobs, 16 Livestreams und Chats - jetzt neu: Mit Video-Call Möglichkeit - erwarten Dich am 26. Oktober 2023 auf der job I/O. Um 14:00 Uhr geht‘s los!
Melde Dich jetzt kostenlos an und sichere Dir Deinen Platz!
0110101001101111011000100010000001001001001011110100111100001010

*Quellen:*

*Kapitel:*
00:00 Einleitung
01:38 Job finden
02:42 Sicherheitslücken
05:17 Kosten
07:56 Bleibt AI Coding?
09:48 AI Code Qualität
13:41 Schlusswort und Tipps

* *Meine Website mit allen anderen Kanälen und Newsletter* *:

_Discord:_

_Unterstützt mich - Danke!:_
Рекомендации по теме
Комментарии
Автор

Uhh... Ich finde das "aggressive" Werben für die Academy indem für jeden Themenbereich auf das passende Training hingewiesen wird, echt super!

Gerne so weiter führen, denn das macht es echt schmackhaft darein zu gucken :D

Skorpi.
Автор

Copilot nimmt echt viel Tipparbeit ab und den einen oder anderen Testcase hat er auch vorgeschlagen, der sonst wohl untergegangen wäre.
Man sollte aber schon wissen, was man tut um den richtig benutzen zu können.

Oh, und meine Lieblingsausgabe für das Ding: Doku schreiben. Kunde wollte erst Clean Code ohne Kommentare, dann doch für jede Methode und Klasse; eine Aufgabe von eigentlich einer Woche war an einem Tag erledigt.

TL;DR: Ich liebe das Teil!

karoshi
Автор

Ich benutze Copilot jeden Tag, aber ich überprüfe immer was Copilot schreibt, ich denke wir können das ding noch nicht 100% vertrauen. Deswegen ist es wichtig dass man auch versteht was man macht. Manche Entwickler mit wenige Kenntnisse könnten vielleicht falsche Implementierungen übernehmen nur weil sie OK aussehen.

LuifaGodoy
Автор

Ich würde hier mal den Umkehrschluss wagen und sagen, das reflektiert die Trainingsdaten und damit in diesem Feld ziehmlich gut wie schlimm es auch ohne ai und ko um die softwarequalität aussieht.

mircoblitz
Автор

Die Studie mit den Sicherheitslücken ist eigentlich nur aussagekräftig im Vergleich zu code der ohne AI Tool geschrieben wurde. Wenn der nämlich z.b. 60% CVEs enthält, wäre 30% ja eine Verbesserung.

nabilabdel-hafeez
Автор

Da fällt mir ein Spruch ein, den ein Berliner Professor kurz nach der Veröffentlichung von GPT3 (sinngemäß) getrötet hat: "Wenn deine Augaben in deinem Job durch eine KI erfüllt werden können, dann ist dein Beruf, BS zu produzieren." Ich hab ihm damals noch widersprochen, aber inzwischen stimme ich ihm zu. Wenn du als Programmierer 90% deiner Zeit damit zubringst, Code zu fabrizieren, den auch eine "KI" schreiben kann, dann machst du etwas Grundlegendes verkehrt.

LupinoArts
Автор

sehr schön, tdd gegen ende erwähnt🤟mir als QA engineer hat es den sonntag versüßt. Mindestens 2, am besten dann aber noch ein 3. dev fürs review.

irgendwasmitfelix
Автор

Wieder ein schöner Beitrag. Vielen Dank dafür. Zur Studie. Ich kann mir vorstellen, dass Programmierer erst dann den Code als Copilot - generiert markieren, wenn sie das Gefühl haben, dass da etwas nicht stimmt. TDD ist meiner Meinung nach das große Ziel in der KI-Programmierung. Die Test sind gleichzeitig auch die Dokumentation und stehen ganz am Anfang einer Entwicklung. Diese könnten in Low-Code geschrieben werden und mit Kunden etc. abgesprochen werden. Stehen die Test, muss die KI in einem Trainingsverfahren die beste Lösung nach Vorgabe entwickeln.

leeretubeg
Автор

Bei TDD ist darauf zu achten, dass die Tests zuerst fehlschlagen müssen. Ich glaube nicht, dass es so schlecht ist, wenn man die Test selbst schreibt, solange man die Funktion nicht so schreibt, dass sie zwar für die Testfälle das richtige Ergebnis liefert, aber nicht für die anderen Fälle.

Hofer
Автор

Also ich hab viel mit Copilot probiert. Ich habe es wieder deaktiviert. Es ist bei einigen Sachen hilfreich, aber ich hatte das Gefühl ich bin insgesamt nicht wirklich schneller oder teilweise sogar langsamer.
Folgende Gründe waren für mich ausschlaggebend:
1. Ich lasse mir Code generieren und muss ihn erstmal kontrollieren und von vorne bis hinten durchgehen um zu verstehen was da passiert. Da hätte ich es direkt selbst schreiben können und nur die Stellen, wo ich nicht weiter weiß googlen können.
2. Es wird mir Code vorgeschlagen der komplett nicht zu dem passt, was ich haben möchte, oder nur ungefähr das ist. Teilweise sieht man das auch erst auf den 2. oder 3. Blick. Also insgesamt hat es mich einfach schon einiges an Zeit gekostet mit den Vorschlägen.
3. In VSCode ist es einigermaßen schnell gewesen, in VS aber hat es teilweise ewig gedauert oder es ist auch mal einfach gar nichts mehr passiert. Das war bei meinen Kollegen auch so, und wir haben nicht die schlechtesten Laptops.
4. Der letzte Punkt ist etwas ganz Anderes und da bin ich mir auch nicht 100% sicher ob das wirklich so ist. Es wurde irgendwo bei MS als Feature requestet und angeblich soll es möglich sein und eingebaut bzw. auch erweitert werden. Überwachung. Die Lizenzen werden zentral verwaltet und (da bin ich mir unsicher) vermutlich lässt sich ganz genau nachvollziehen von unserer IT wie oft ich CoPilot nutze, wie viel ich insgesamt am Coden bin usw. Allein das Gefühl, dass mir jemand die ganze Zeit über die Schulter guckt und kontrolliert, ob ich auch wirklich gerade was Sinnvolles mache, war für mich der Grund CoPilot dann komplett zu deaktivieren.

Eine Googlesuche mit Stackoverflow ist da in der Regel zielführender und schneller gewesen. Wo mir Copilot gefallen hat war teilweise bei automatischen Übersetzungen von Resourcendateien oder bei Vervollständigung von längeren monotonen Arbeiten. Insgesamt hab ich aber ohne die "Hilfen" von Copilot ein deutlich produktiveres Gefühl. Ich vermute da gibt es in der Realität kaum Unterschiede. Ich werde es regelmäßig wieder aktivieren und gucken wie sich der Arbeitsablauf insgesamt anfühlt. Sollte es besser werden, dann kann ich es wieder aktivieren. Die Lizenzen sind da...

Und davon abgesehen, ich programmiere gerne. Also ich bin nicht Programmierer geworden, um mir Codeschnipsel generieren zu lassen oder nur noch Copy&Paste zu betreiben. Dann kann ich direkt zum Low Code oder NoCode Entwickler werden und mit PowerApps Erfolg haben. Ist bei vielen großen Firmen nämlich nicht ganz ungefragt diese Richtung. Wer nur programmiert um damit schnell Geld verdienen will, oder weil er fix ein Programm braucht, der kann mit KI sicherlich das ein oder andere erreichen. Für den sind meine genannten Gründe sicherlich auch nicht relevant ;)

DarKOscillator
Автор

04:24 Eigentlich nützt die Angabe von KI verschuldeten CWE nichts ohne die Gegenüberstellung von menschlich verschuldeten CWE. Glaube aber, der lag iwo bei unter 10%.

Sonntagssoziologe
Автор

Aha ^^ danke dir - das ist die Hilfe, dich ich benötigt habe

howertnice
Автор

Kann man der KI nicht sagen, dass sie Code ohne Sicherheitslücken programmieren soll? Oder eine weitere KI prüft den Code vorher auf bekannte Sicherheitslücken. Wir sind ja immer noch am Anfang. Da geht bestimmt noch was...

matsahm
Автор

Richtig witzig wird es wenn GPT5/6/7 etc. dann doch Mid-Level, Senior-Level code schreibt und zugleich die Intention hinter ein User Input lückenlos im voraus verstehen möchte, um gegebene Fehler zu vermeiden.

RedOneM
Автор

Und was waren das für GitHub Projekte die analysiert wurden? Denn in meinen Privaten Programmen ist mir "sicheres" Coden ehrlich scheiss egal^^ und die CWEs die im Video zu sehen waren, da waren viele dabei, die ich 1:1 so auch "breche".

sulracing
Автор

Ich habe mich kurz nach der Veröffentlichung von GPT damit beschäftigt, wie man BDD (Behaviour Driven Development) mit GPT automatisieren kann.
Ich muss dazu als Business Analyst mit meinen Nutzern die Business Szenarien durchgehen und formal korrekt spezifizieren. Das reicht komplett freisprachlich.
Dann nutze ich die KI, mir für ein Szenario den Testcode zu erstellen. Diesen Testcode befüttere ich dann im Sinne eines mechanical Turk mit "Logik" und verifiziere so, dass der Test auch richtig testet.
Habe ich das überprüft, dann kann ich basierend auf diesem Testcode Programmcode erstellen und die als korrekt verifizierten Tests anwenden.

Allerdings darf man bei all dem nicht den Code Review vergessen: Als Mensch gehe ich bei diesem Verfahren in die Rolle des Reviewers, und da (wie schon im Video erwähnt) der Code oft unsauber ist, muss ich den erstmal glattziehen. Und das gilt sowohl für den Testcode, wie auch für die Lösung.
Es hilft also nach wie vor, Code und Entwicklungsprinzipien zu verstehen.
Ich habe keine Ahnung, wie oft ich der KI explizit sagen musste, dass sie grundlegende Dinge wie z.B. Guard Clauses, Reduktion von Variablen, etc. beachten muss.

Dabei dürfen wir aber eines nie vergessen:
Im Moment trainieren wir die KI's darin, zu programmieren. Wenn wir ihr gute Instruktionen geben, macht sie das auch gar nicht schlecht.

A....aaaaber:
Wenn wir 10000 "Design by Stackoverflow" Entwickler pro sinnvoll reviewendem Entwickler haben, brauchen wir entweder einen ziemlich guten Filter, der erkennt, welche Entwickler tatsächlich guten Code fördern und welche jeden Schund in Produktion schicken würden - ansonsten lernt allein aufgrund der Quantität die KI, wie man immer schlimmeren Murks baut.

Die Chance ist riesig. Die Gefahr ist aber noch größer.

thought-provoker
Автор

Für KI-Programmierung gilt das Gleiche, wie für alles Andere: gut in Maßen, schlecht in Massen.

Lampe
Автор

manche Leute tuhen halt dumme dinge jedoch dake für deinen Content
👍

Автор

WTF / Minute LOL! Den nehme ich morgen mit auf die Arbeit!!!

orko
Автор

Aber als Entwickler sollte man doch ohnehin kritisch auf den generierten Code schauen. Ich habe es nie so benutzt, dass ich den generierten Code unhinterfragt 1 zu 1 übernehme. Fast immer passe ich den Code etwas an. Die tools erleichtern halt das arbeiten. z.B. kann ich dann einfach sagen, dass er mir eine Tabelle in react erstellen soll. Das liefert mir ein Grundgerüst und ich spare mir das initiale Nachdenken. DIeses Gerüst kann ich dann aber entsprechend anpassen.

omegapirat