#150 Gestern Coder heute Reviewer? Die Kehrseite des AI Codes - podcast episode cover

#150 Gestern Coder heute Reviewer? Die Kehrseite des AI Codes

Feb 05, 202657 min
--:--
--:--
Download Metacast podcast app
Listen to this episode in Metacast mobile app
Don't just listen to podcasts. Learn from them with transcripts, summaries, and chapters for every episode. Skim, search, and bookmark insights. Learn more

Episode description

Fluten an Codezeilen. Tausende Pull Requests. Durch AI werden Projekte nahezu überschwemmt mit Code.

In der neuen Folge sprechen wir über die veränderten Arbeitsweisen von Devs durch den Einfluss von AI. Sind wir eigentlich wirklich noch die Coder oder reviewen wir nur noch generierten Code?


🔗 Unser Tipp für deinen eigenen Server:

Wir nutzen selbst die vServer von STRATO – perfekt für bspw. deine eigene CI/CD-Pipeline.

Zum Angebot: ⁠⁠⁠⁠⁠⁠⁠⁠⁠⁠⁠⁠⁠⁠⁠⁠⁠⁠⁠https://acn.strato.de/aff_c?offer_id=1&aff_id=1307&url_id=15&source=vserver_podcast⁠⁠⁠⁠⁠⁠⁠⁠⁠⁠⁠⁠⁠⁠⁠⁠⁠⁠⁠


Dir hat die Folge gefallen?

Unterstütze uns gerne mit einer kleinen Spende:

⁠⁠⁠⁠⁠⁠⁠⁠⁠⁠⁠⁠⁠⁠⁠⁠⁠⁠⁠⁠⁠⁠⁠https://streamlabs.com/thecodingbuddies/tip⁠⁠⁠⁠⁠⁠⁠⁠⁠⁠⁠⁠⁠⁠⁠⁠⁠⁠⁠⁠⁠⁠⁠

Jeder Beitrag hilft, unseren Content weiter auszubauen – danke dir!


🧠 Du suchst eine IDE, die keine Wünsche offen lässt?

Hol dir jetzt deine Jahreslizenz für jede JetBrains IDE und spare 20% mit dem Code: "CODINGBUDDIESxJB".

⁠⁠⁠⁠⁠⁠⁠⁠⁠⁠⁠⁠⁠⁠⁠⁠⁠⁠https://www.jetbrains.com/de-de/products/⁠⁠⁠⁠⁠⁠⁠⁠⁠⁠⁠⁠⁠⁠⁠⁠⁠⁠


🌐 Alle Links auf einen Blick:

🔗 ⁠⁠⁠⁠⁠⁠⁠⁠⁠⁠⁠⁠⁠⁠⁠⁠⁠⁠⁠www.links.codingbuddies.de⁠⁠⁠⁠⁠⁠⁠⁠⁠⁠⁠⁠⁠⁠⁠⁠⁠⁠⁠


📬 Du hast Feedback?

Dann schreib uns gern an:

✉️ ⁠⁠⁠⁠⁠⁠⁠⁠⁠⁠⁠⁠⁠⁠⁠⁠⁠⁠⁠podcast@codingbuddies.de

Transcript

Man redet immer davon. AI produziert Code und Boostet die Entwickler. Ja alles sind jetzt ten x developer, aber wie boosten wir jetzt unsere Reviews, dass wir da drin nicht untergehen? Coding Buddies Dein Podcast rund um Softwareentwicklung und aktueller Tech News. Herzlich Willkommen. Halli Hallo und herzlich Willkommen zur neuen Folge des Coding Buddies Podcast. Schön, dass du wieder eingeschaltet hast.

Liebe Zora, Liebe Zora, deine Gastgeber für die aktuelle Folge Wer soll's anders sein meine Wenigkeit, der Tino und der absolut fantastische Fabi er guckt mich an, er gritzt mich an, er ist verwundert, weil ich ihn anders ankündige als sonst. Aber das war die Überraschung Fabi, was geht ab? Du schmeichelst mit Tino sehr gerne. Was geht, was geht? Ja, also ich sag mal so ja, also es fröstelt immer noch stark. Ja, so n bisschen bisschen noch, ja. Ich hör mich auf.

Irgendwie. Ich glaub wir sind ja jetzt. In so ne Eiszeit eingetreten. Mhm, es soll locker der kälteste Winter seit 30 Jahren ja. Auf jeden Fall also mindestens. Irgendwie gefällt mir das nicht. Im Winter wird es jetzt kälter, im Sommer wird es immer heißer, so weißt du, kann man nicht irgendwie. Ich habe immer von 25 Grad das

ganze Jahr über geträumt. Weißt du, und was kriegen wir, wirst du nicht kriegen, glaube ich, tut mir leid, es tut mir leid, wahrscheinlich so ab März oder April auf einmal direkt dann so weißt du 30. Grad ja, also so quasi mit einer 30 Grad Sonne sozusagen den Schnee noch schmelzen, ungefähr so. Ja so stelle ich es mir vor, so wird es kommen. Naja gut, was willst du machen?

Gott sei Dank sitzen wir ja in unserem warmen Kämmerlein und nehmen eine neue Podcast Folge auf, also zumindest ich weiß nicht ob es bei dir gerade kalt ist, aber du siehst eigentlich ganz entspannt aus. Ich denke mal du meinst eher so draußen okay wir haben ein ganz cooles Thema und ich glaube da werden wir ein bisschen Zeit verbrauchen, deswegen komme ich mal direkt auf den Punkt und zwar gab es ja mal von uns eine

Folge, das ist schon länger her. Zum Thema Code Reviews und die kam ja auch cool an und wir haben gutes Feedback bekommen. Aber auch die Nachfrage oder den Wunsch, dass wir das Thema noch ein bisschen vertiefen beziehungsweise nicht unbedingt Code Reviews an sich, sondern allgemein zum Thema Reviews in Projekten wie sollte man reviewen und da dachten wir uns. Lass uns das doch noch mal aufgreifen.

Den Wunsch, ja und gleichzeitig uns überlegen, in welche Richtung könnten wir das lenken und heutzutage ist es ja so, dass ja, ich sag es wieder und manche können es vielleicht nicht mehr hören, aber AI. Ja, schon so als Heilsbringer gebracht wird und im Sinne von ja, man wird super produktiv und der Code ist super und man muss gar nicht mehr coden und das hatten wir ja auch erst vor kurzem.

Braucht man überhaupt noch Junior devs und diese ganzen Diskussionen darum ne und immer so diese die helle Seite sag ich mal dahinter ne betrachtet wie toll das ja alles sein kann. Aber lass uns heute mal über ne weitere Schattenseite reden und zwar da jetzt auch der Bezug zu Code Reviews und zwar was bedeutet das eigentlich für Entwickler oder für Projektmitarbeiter? Wenn jetzt AI generierter Code im Umlauf ist? Für die Reviews Mhm.

Ja, also ich weiß nicht, ob du das kennst oder wer das sozusagen alles kennt, aber ich denke mittlerweile kommt man da kaum gar. Also man kommt kaum noch drum

herum. Wenn nicht gar nicht, dass man einfach nur noch dabei ist, Code zu reviewen ne und ich sag mal so, ich glaube auch, dass wir in Zukunft immer mehr Code reviewen müssen als Softwareentwickler oder softwareentwicklerinnen, aber die Frage ist jetzt, worauf sollte man achten, wenn man halt AI Code reviewt weil wie gesagt, ich glaube das ist eine Sache die. Durchaus an der Tagesordnung in Zukunft stehen wird, kommt man glaub ich gar nicht so

drumherum. Ja, verschiedene Art und weisen auch ne. Ja ne, weil man redet immer davon. AI produziert Code und Boostet die Entwickler ja alles sind jetzt ten x developer, aber wie boosten wir jetzt unsere Reviews, dass wir da drin nicht untergehen? Genau, weil im Endeffekt, das ist n guter Punkt ne ich meine klar man wird halt schneller

durch. Also ne es kommt immer drauf an wie man das Ganze verwendet, da kommen wir auch noch mal drauf zu zu sprechen aber im Großen und Ganzen kann ne EI nutzung natürlich schon irgendwie boosten also die Entwicklung ne das ist ja eigentlich sollte ist wahrscheinlich auch jedem klar aber und da kommt man ja auch gar nicht drumherum, dass man.

Wie gesagt, sich das auch angucken muss, was da rauskommt und da steht dann auch wiederum die Frage, wie stark kann man das denn überhaupt boosten, wenn man es denn noch reviewen muss, weil ich glaube, wir sind uns einig, dass man es sich schon noch angucken sollte und nicht einfach so durchwinken.

Ja. Und ich habe mal so ein bisschen überlegt, ja. Dass man ja eigentlich, also man hat ja immer irgendwie Code reviewed, ne, also wenn wir jetzt noch mal so n bisschen zurückgehen und sagen, so, wie war das denn alles noch mal so vor unserem geliebten Cha chipitti ne, bevor das losging, also bis heute, weißt du, also weiß nicht, ob du dich noch dran erinnern kannst an die Uhrzeiten damals vor Jahren. Weißt du, es ist mittlerweile so lange her. Ne, in Coderjahren ist es doch

super lange her. Das stimmt ja. Ja, aber ich meine, so weißt du so früher. Weißt du, dieses du? Googelst ja du hast n Problem, du googelst danach ja, du wühlst dich durch irgendwelche Stack overflow Foren oder so und um den richtigen Beitrag zu finden. Ich find das ist ja schon gar nicht mehr, also es ist ja schon fast undenkbar, dass man das heute macht. Also ich meine also ich guck auf jeden Fall tatsächlich wirklich n ich weiß gar nicht, wenn ich das letzte Mal auf Stack

overflow irgendwas gesucht hab. Ja. Ja klar. Also in dem Moment, wo natürlich jetzt auch so LLMS quasi auch das Internet durchsuchen können, sag ich mal. Und auch auf diese Lösung treffen. Sozusagen ist es natürlich einfach die schnellere Suchmaschine am Ende, so würd ich es mal bezeichnen, also man sucht ja immer noch danach, nur über ne andere Ebene sag ich mal und effizient, das ist halt n

riesen, also es ist halt schon. Das ist schon wirklich n Mehrwert. Ja, also ich find es schon angenehmer ne direkt das Problem zu schildern in Satzform wie in einer Art Unterhaltung als wenn ich jemand direkt frage nur dass ich halt logischerweise schreibe in dem Moment dann. Das fühlt sich natürlich ja an und ich finde das Boostet auch keine Frage ne wenn ich jetzt so Probleme hab aber so Stack overflow. Was ich halt noch gerne mache, und das haben wir auch im Livestream gemacht.

Ist halt wenn ich irgendwas neues mir angucke, dass ich halt wirklich noch nach Tutorials suche oder nach ja so medienbeiträge die das erklären. Das Thema mit Codebeispielen und so, das finde ich halt immer noch mal angenehmer, weil ich irgendwie auch da das Bedürfnis hab ist selbst zu. Verifizieren ob das ne gültige Quelle ist.

Weißt du wie ich das mein? Also ich könnte das Gleiche natürlich Church GPT fragen und wahrscheinlich Krieg ich ähnliche Ergebnisse, aber es gibt halt ein großes Problem was wir ja schon sehr oft da besprochen haben bei AI Code, da werden wir 100 Pro später bei den Reviews auch dazu kommen ist, dass es halt immer völlig eskaliert. Ja und so n. Artikel oder n Tutorial was eine reale Person geschrieben hat, also zumindest so ältere ne.

Es gibt natürlich auch AI generierte Tutorials, logischerweise heutzutage ne bei den ganzen Texten, aber ich denk mir halt immer so, diese Person hat ja auch keinen Bock 1000 Seiten zu schreiben um ne Kleinigkeit zu erklären, das heißt es ist meistens gut auf den Punkt gebracht es ist nicht zu viel drumherum, es geht wirklich um dieses eine Thema und das ist irgendwie noch so. Menschliche Gedankengänge was n bisschen überspitzt gesagt, aber ich finde, diese Tutorials kann

man einfach gut durcharbeiten, weißt du? Ja, also ich weiß was du meinst. Ne, also du du du stellst ne Frage bei in irgendeiner LLM und am Ende kriegst du halt zig Eventualitäten, Vorschläge, Möglichkeiten und ich weiß noch also wenn man wenn es jetzt um Review geht ne weil. Früher ne um noch mal kurz den Bogen zurückzuschließen so

dieses du hast gegoogelt. Du hast dann bei in verschiedenen Foren oft bei Stack Overflow irgendwas gesucht und dein Problem versucht zu finden oder n annähernd ähnliches Problem jedenfalls mir ging es und ich denke mal bei dir war es ja auch so, am Ende hat man ja auch diesen Code reviewed irgendwo mehr oder weniger und dann für sich entschieden OK nehm ich den nehm ich n Teil davon hilft mir das

ne also. Dieses Reviewen von Code war ja irgendwie immer noch irgend, also war ja immer da, irgendwie ne. Es ist ja nicht so, dass das jetzt irgendwie auf einmal neu ist. Man musste vielleicht an der ein oder anderen Stelle noch mehr mitdenken oder hat vielleicht das Gefühl gehabt, mehr mitdenken zu müssen. Weil du ja. Gucken musstest. Passt das überhaupt zu dem Problem, was ich hab? Und irgendwann kam ja dann Chat GPT mit rein ne also das war ja so das erste, ich sag mal.

Große Ding in Sachen LLM, mit dem man so richtig kommerziell arbeiten konnte. Und da ging es dann halt auch schon so in die Richtung, dass man dann halt so klein, so n bisschen Code Snippets gerne sich hat generieren lassen.

Also bei mir war es auf jeden Fall so ne, ich hab jetzt nie gesagt, ey, ich mach jetzt richtig viel, sondern ich hab immer so kleine Prompts geschrieben zu kleinen Problemen, das waren dann eher so ich sag mal so mini Logik Dinge weißt du irgendwas wo man sich so denkt ey ich hab gerade gar keinen Bock nachzudenken. Ich möchte jetzt aber gerne, ich hab hier n Array aus Objekten und möchte die gefiltert haben.

Nach den nach den Namen und gleichzeitig dann noch absteigend sortiert nach keine Ahnung der ID oder so weißt du und sowas kannst du super konnte man ja auch super entspannt prompten irgendwie ne und man hat dann einfach diese Logik bekommen du brauchtest aber keinen Kontext zu deiner zu deinem Code weil es irgendwie alles noch irgendwie in einem Browser lief ne also du hast ja quasi du warst so entkoppelt ne und? Das hat sich ja also.

Aber das Reviewen von Code mehr oder weniger war ja immer noch da. So ne also war ja immer noch irgendwie gegeben und ich finde das gibt immer so momentan so n shift ne, dass du dann halt von ich sag mal googlen Stack overflow zu Kleinigkeiten, die du in den Browser eingegeben hast hinzu. Jetzt kam AI halt auch in die IDE rein, du kannst es ja immer schön mit so rumprompten und so weiter direkt auf der deiner Codebase natürlich auch ganz

cool. Um dann halt zu sagen, ey, du kannst noch mehr Kontext reingeben und dann aber auch größere größeren Code erstellen lassen. So oder Komponenten vielleicht sogar. Also ich persönlich mach das sogar auch wirklich ganz gerne mittlerweile. Also ich glaub bei hör dir mal n paar folgen früher an, hab ich gehasst.

Mittlerweile find ich es wirklich ganz hilfreich, aber wir kommen ja jetzt auch schon dahin, dass wirklich halt AI sag ich jetzt mal wirklich user Stories bearbeitet so agentisch ne. Und das ist so n bisschen die Entwicklung. Aber irgendwie gab es ja immer dieses Reviewen von Code. Ne, du hast irgendwas gesuchtes reviewed, du hast irgendwas bei irgend ne LLM im Browser reingegeben hast es reviewed in deiner ITE gibst du da prompts

rein und reviewed das oder reviewed halt ganze User Stories oder Bugfixes oder was auch immer das heißt, irgendwie ist es immer noch da. Und ich find das ist so ne krasse Entwicklung, wo man aber gefühlt trotzdem immer mehr Code Review muss, weißt du? Ja, logisch, ja. Also der der Shift ist halt da, gerade wenn die wie du ja meintest, die Agents finde. Ich habe mir jetzt noch mal den entscheidenden Impact gegeben für diesen Shift von ich Code

selbst. Hinzu ich review, das im besten Falle ne, also das hatten wir jetzt mehrfach gesagt, an der Stelle noch mal. Ja es muss gereviewt werden,

bitte bitte Leute review das. Weil jetzt bist du an dem Punkt, dass du sagst, ich prompte das und ich lass mir so Lösungen generieren, dann hau ich den Code rein und dann ja geht gut, alles klar, Pull request und jetzt kann das jemand reviewen und so ne und dann hast du auf der anderen Seite mal überspitzt gesagt, ja arschkarte musst dir jetzt diesen AI generierten Code angucken und feststellen ob der gut ist, ob er macht was er

soll, ob er keine Probleme mit sich bringt und ob er auch noch sage ich mal nicht schon Instant Refector würdig ist.

Ja, und das ist halt n Riesenthema finde ich bei der ganzen Nummer, weil es ist n riesen review Aufwand wenn ich es ordentlich machen will und es ist in der Verantwortung eines jeden Coders oder Coderin genau das sicherzustellen, dass diese Punkte alle gegeben sind in der Codebasis, weil sonst ist das Ganze schon wieder zum Scheitern verurteilt, weil das wird nicht später gemacht, das muss gleich gemacht werden mit dem Pull

request. Wenn ich jetzt der Reviewer bin, ne, dann muss ich das auch ernst nehmen und nicht vorhin schon gar nicht so. Ja ist AI generiert, es funktioniert, er wird schon stimmen wenn er sagt, also er wird ja den Pull request oder sie wird ihn ja nur stellen wenn es auch geht. Ja genau das ist es nicht und ich find AI Code neigt dazu völlig aus dem ja aus dem Ruhr zu laufen so so richtig zu eskalieren weißt du es ist sehr viel für manchmal Dinge die man auch.

Leichter lösen kann. Ich will nicht unbedingt sagen wesentlich besser ne, also besser ist ja immer so ne definitionsfrage, es ist ja sag ich mal vom Stil oft nicht schlecht was da rauskommt, oft sind ja auch Best practices drin. Aber es ist manchmal einfach so.

Over the tops over Engineered weißt du, und das ist halt richtig gefährlich und dann hast du halt so viel lines of Code, sag ich mal so viel Code zu reviewen, dass sich die Leute wieder im Projekt denken, Oh, wie können wir denn jetzt mithalten? Ja, mit diesen erhöhten Zeilen auf Code, die produktiv gelten, sozusagen da, wir sind ja viel produktiver geworden, jetzt müssen wir auch noch produktiver in den Reviews werden, also fange ich wieder an AI

unterstützt. Reviews zu machen, da gibt es ja auch schon verschiedene Anbieter, die da Tools verkaufen, die wo du richtig Geld bezahlen musst. Ja weil sie sagen Leute mit unserem Tool nie wieder reviewen ja das Ding macht richtig erstklassige Reviews na ja gut klar wenn ich das genauso betrachte wie den AI Code den ich schon generiere und ins Projekt Haue, dann werde ich auch n Review dazu. Mir prompten oder generieren

lassen können. Was sagt ja natürlich super gemacht, aber wo ist jetzt die Komponente die das noch überwacht und sich denkt so ja warte mal, lass das mal kritisch betrachten und nicht immer hier Friede, Freude, Eierkuchen weil das ist AI am Ende da hab. Ich n Agent für die. Idee? Super Idee, was du da vor hast. Hier ist der perfekte Code dafür. Ja, ist nicht perfekt, richtig, er ist nicht perfekt, lass mal

noch mal. Jetzt hast du hier den perfekten Code und so stell dir jetzt mal Agents vor, der eine Codet und der andere Reviewt das da wird sich ziemlich viel Honig ums Maul geschmiert, aber ob das am Ende gut ist wage ich zu bezweifeln. Ne was ich mir nur. Vorstellen kann. Und ja, die Zeit wird es zeigen. Ich find es auch gut, dass du ehrlich sagst, vor einem halben Jahr oder so warst du noch wesentlich kritischer dem gegenübergestellt, weil das geht mir auch so.

Ich bin immer noch kritisch, habe aber N-Weg für mich zumindestens gefunden, ob das jetzt jeder so sieht oder nicht sei ja mal dahingestellt, das ist ja ne persönliche Sache, aber ich hab für mich N-Weg gefunden AI tools zu verwenden. Nach meinen Vorstellungen der Softwareentwicklung, auch in Sachen Qualität sag ich mal, wie sie mir helfen, effektiver zu werden, sozusagen aber nicht einfach alles blind sozusagen zu

vertrauen. Ne, und ich find gerade beim Reviewen ist das genau der gleiche Prozess, den man durchmachen muss. Man kann versuchen das unterstützt durchzuführen, dass du zum Beispiel was ich mir jetzt so vorstellen kann, ist. Coding Guidelines ja gut, da gibt es andere Tools, die es schon länger gibt. Ja die du da automatisiert laufen lassen kannst.

Ob du da jetzt AI brauchst oder nicht, aber alles so Guidelines Best Practices die in dem Team definiert sind ne was eingehalten werden muss, irgendwelche wirklich projektspezifischen Sachen, dass ja wenn du n Feature entwickelst musst du an der und der Stelle aber da noch vielleicht Doku schreiben oder weiß ich was irgendwas ne so ne Sache. Aber automatisiert Code Reviews machen zu lassen finde ich halt richtig schwierig das Thema. Ich finde immer ich.

Ich finde, wenn du das so sagst, dass du Code erstellen lässt von AI und Code reviewen lässt. Von AI kennst du dieses Meme wo Spiderman so voreinander steht, so und immer gegenseitig auf sich zeigt. Und naja, gleich mir das, das

ist das Ding dann aber. Aber ich finde es auf jeden Fall, weil du ja auch vorhin meintest, so, dass du noch gerne zum Beispiel so, also so Beiträge liest wie zum Beispiel von Medium oder was auch immer, können auch andere Plattformen sein, weil es einfach ein bisschen konkreter manchmal ist. Finde ich, verstehe ich auch. Ich finde auch zum Beispiel

sowas wie. Hier, so Dokus, weißt du auch, wenn wir jetzt zum Beispiel bei Godo, da haben wir uns ja auch so in ich, ich nenn, ich glaub es ist so das letzte Jahr auch so eingearbeitet auf Twitch, weil wir ja auch da mal unsere Programmierwettbewerbe momentan mit Godo die Spiele. Da doch im Spiel. Genau. Und ich find so ne Doku hilft halt manchmal. Komischerweise, ich sag jetzt irgendwie einfach mal komischerweise auch mehr als so n so n so n so ne Antwort von

irgendeiner LLM, weißt du? Dass du einfach mal an einem bestimmten Punkt wirklich siehst. OK, so und so ist es halt vom Framework selbst definiert und

so sollte es halt eben sein. Und wenn du das aber auch teilweise dann bei bei der LLM Reingibst irgendwo, dann kommt halt auch gerne mal sowas zurück wie ja du kannst es die so machen, das und das und das, dann ist es vielleicht sogar noch in der falschen Version, weil wir quasi gerade gar nicht über die Version sprechen, über die richtige und dann musst du

noch mal nachschärfen. Aber ich find das ist auch n guter Punkt, weil am Ende ist die Qualität von dem was rauskommt auch sehr entscheidend von dem was du halt reinpromptest. Aber ich find und das ist n wichtiger Punkt, weil wir reden ja darüber, man kann es boosten, man kann seine Entwicklung boosten durch eben. A. I würd ich sagen, ja kann man machen. Die Frage ist aber wieviel kommt hinterher also was für n Rattenschwanz zieht das hinter

sich her weil und. Das ist halt unglaublich wichtig, so, guck mal, früher hast du dir bestimmte Dinge rausgesucht, das hat ne Zeit gedauert und hast es umgesetzt, musst es selber sehr viel denken, es hat Zeit gedauert, jetzt promptest du irgendwas rein was du brauchst und musst dir angucken ob das passt. So je besser du promptest, desto schneller kommst du zum Ziel, aber. Meiner Erfahrung nach ist es, dass du trotzdem immer noch mal

nachschärfen musst. Ne und je mehr man nachschärfen muss, desto mehr Code wird generiert. Und wie wir, wie wir auch wissen, Code wird jetzt auch nicht immer sehr deterministisch produziert, sondern auch immer mal gerne so n bisschen anders ne und ich find das ist halt, es ist halt interessant zu gucken OK wo wie weit, also man braucht so n sweetspot finde ich zwischen wie gut kann man denn

prompton? Ohne dass man mega viel nachschärfen muss und immer wieder den Code reviewen muss, weißt du, weil ob du das jetzt zum Beispiel in deiner IDE machst und irgendwie sagst, ey, ich möchte das und das und das

an meiner Anwendung verändern. So ne, wie können wir das machen, so nach dem Motto Ne dann kommt irgendwas raus aha ich hab was vergessen, es soll ja gar nicht so sein, also machst du wieder irgendwas es prompt es wieder irgendwas nach und du guckst ja wieder dir diesen Code an und du probierst ihn vielleicht aus, also diese ganze Zeit die du dafür brauchst. Muss man auch mal challengen find ich. Wie also wie Boostet das?

Also Boostet das wirklich oder nicht weißt du und ich find das ist wirklich n super interessanter Punkt und da ist es wichtig gut zu pompen find ich und halt auch irgendwie n ne gut n gutes Review hinzulegen von dem Code der produziert wird ne. Ich find halt auch das Problem ist, wenn du wenn du halt die ganze Zeit damit arbeitest. Du kannst, du kannst es ja in eine Richtung lenken und wenn es unbewusst ist, durch nicht konkrete Prompts.

Ne, das ist halt relativ schnell wegdriftet von deinem eigentlichen Problem oder von deinem eigentlichen Wunsch.

Ja, also hinzu. Sagen wir mal du willst n kleines Feature implementieren und hast im Kopf so in eine Funktion irgendwie noch an ne Klasse hängen, so n paar Zeilen Code ne und das noch integrieren in den Rest wo die Klasse verwendet wird einfach jetzt mal so als Metabeispiel ja und dann gibst du das rein und er sagt ja klar hier da und da und das und das und hier und da und dann sind da so Zeilen drin und dann reviewst du schon und denkst dir warum machst du das?

An der Stelle ist das wirklich notwendig. Könnte man nicht so und so weißt du, und dann kommst du ja so in diesen Review Prozess und ich meine Erfahrung ist, dass es dann relativ schnell völlig eskaliert und er sagt ja gut, dann müssen wir hier und dann müssen wir da und dann müssen wir da und da überall noch was umbauen, weißt du, und dann hast du es schon und wenn du dem ganzen blind vertraust, dann ist das richtig, verdammt ne, weil ich finde zum Beispiel auch weiß. Nicht.

Wie es bei dir ist, aber n Code Review ist ja nicht nur. Ne wie ne Klassenarbeit korrigieren. Ja, dass du sagst, also beziehungsweise das solltest, das solltest halt auf gar keinen Fall sein, dass du irgendwas bekommst von einem Kollegen oder einer Kollegin. Du reviewst das und sagst 6 Sätzen ja, so weißt du, das ist ja kein Review, das hat doch damit gar nichts zu tun.

Klar, deine Aufgabe ist es potenzielle Fehler oder Schwachstellen zu finden, die man ankreiden kann, aber wovon ein Code Review am Ende lebt, ist die Interaktion zwischen den Projekt. Wie sagt man, wenn man ja die also zwischen dem, der es entwickelt hat, und der Person, die es quasi durchschaut und dann möchte ich doch in der Lage sein, dieser Person, die es entwickelt hat, Rückfragen

stellen zu können? Okay pass auf, ich habe es mir angeguckt an der und der Stelle, ich habe es nicht entwickelt, aber mein Gefühl ist da und da hätte man das anders machen müssen oder ich frage mich, warum hast du es so gemacht, dann gehe ich doch in die Interaktion, das ist doch mit das Wichtigste an dem Review zu finden.

Fragen, Wieso ist das so? Und dann kriege ich entweder in der Diskussion ne Antwort die die mir zeigt verdammt OK, ja er hat recht, er hat sich es ja viel mehr angeguckt und wir müssen das und das eigentlich beachten und deswegen ist das so oder man trifft n Konsens und sagt Hey ja wir überarbeiten das noch mal. Es geht doch leichter oder aber diese Interaktion sehe ich halt mit mit Chat GPT überhaupt nicht, weil wenn ich das mache und sage warum hast du da diese

Zeile reingemacht kommt. Ja, stimmt, die brauchen wir ja gar nicht. Weg damit. Chau Kakao, so weißt du und kriegst ne neue Lösung, was wieder ganz andere Zeilen sind. So und wo ist jetzt der Punkt, ich sag mal überspitzt das Rückgrat des Entwicklers, der auch mal für die Lösung einsteht, die er gemacht hat, weil er sich ja was dabei gedacht hat, die gibt es ja nicht, sondern es wird ja nach deinem Mund geredet.

Also ich muss ganz ehrlich sagen, und das ist auch wieder n bisschen prompt Qualität nenn ich das jetzt mal ne, du kannst natürlich mit Reinprompen und sagen ey. Ich hab hier das und das gemacht.

Challenge mir mal bitte ob das gut ist oder nicht so nach dem Motto Na ja, also das kannst du ja machen und dann kriegst du wahrscheinlich auch oder zumindest meiner Erfahrung nach kriegst du auch mehr ich nenn es mal ehrliches Feedback von der AI zum Beispiel ne aber und das ist jetzt das große aber.

Ich hab letztens, wir sind ja so n bisschen dabei, gerade unsere Website zu überarbeiten von Coding buddies ne und ich hab letztens da auch ein bisschen entwickelt beziehungsweise mit Unterstützung von AI eben ne und ich hab das zum Beispiel am Rechner gemacht und ich hab das auch am Laptop gemacht so ne

also unterschiedlich. Also ne an unterschiedlichen Orten so bedeutet also auch unterschiedliche IDIS und unterschiedliche, also das gleiche Modell aber n unterschiedlichen Kontext oder ne. Also du hast ja machst dann n anderen Chat auf ne.

Ja, und dann hab ich zum Beispiel gesagt, ja, guck dir das mal bitte an, das und das hab ich schon so und da bräuchte ich noch mal n bisschen Feedback und so und witzigerweise hat dann das, was vorher mir das gleiche Modell ja vorgeschlagen hat, hat das andere Modell dann gesagt, also das gleiche Modell, aber der andere Chat hat dann gesagt.

Ja, da, das ist schon ganz gut, aber da würde ich vielleicht noch das und das n bisschen machen, weil da wird es zum Beispiel noch mal n bisschen offensichtlicher, ne klarere Abtrennung bla bla bla bla bla ne und du denkst dir so Mhm, also ich hab es jetzt überarbeitet, damit du mir sagst, dass das noch besser zu machen ist. Ja, aber das ist ja genau der Punkt.

Du kannst einfach genau den gleichen prompt noch mal in den gleichen Chat hauen, ja. Also wenn du nicht reinschreibst so, ich habe es nach genau deinen Vorstellungen überarbeitet. Sag mir mal was es noch zu überarbeiten gibt, wenn du sowas promptest, dann kommt sowas wie ja nee alles super so ist gut, weil du ihm ja gesagt hast, das ist schon überarbeitet nach dem was er dir genannt hat.

Wenn du aber einfach wieder prompt es guckt, also du gibst den neuen Code rein und sagst überarbeite mir den mal. Ja. Dann wirst du wieder irgendwas kriegen und ich hatte das. Bei irgendeinem Text, den ich mal geschrieben hab, wo ich mir wirklich dachte, gar keine Lust, den jetzt noch mal Korrektur zu lesen. Das war auch nichts Wichtiges. Ja, also nichts relevantes, super, Entscheidendes ja. Und trotzdem, du gibst den rein.

Ja, die und den Satz würde ich anders formulieren, dann habe ich das 1 zu 1 mal so übernommen, hab den Text wieder reingegeben lies den mal bitte Korrektur und sag mir was man überarbeiten könnte und dann kam noch mal was und irgendwann war ich an dem Buch, ich hab es einfach mal ne Weile gemacht, dass er mir immer wieder ABAB vorgeschlagen hat und das aber immer im nächsten Mal wieder kritisiert hat und genau das meine ich mit nach dem Mund reden wenn du ihm sagst

überarbeite es. Dann ist sein Task sozusagen, ich muss es überarbeiten. So wirkt es für mich.

Ja, das ist jetzt sehr subjektiv, jetzt kann jemand sagen, ja, du musst das und das Prompton, also wenn ihr da geile, liebe Zuhörer, liebe Zuhörer, wenn ihr für die ganze Folge gilt, wenn ihr geile Erkenntnisse habt beim Prompton oder so, teilt es gerne mit uns und der Community, weil das ich bin mir sehr sicher, dass es sehr viele Leute betrifft, die diese Erfahrung auch machen, die wir gemacht haben oder machen. Und sich auch Fragen, wie kann ich das denn verbessern?

Und das gilt Ja für uns genauso. Ja, aber das ist halt das, was ich immer wieder feststelle, dass man sich einfach in einem Kreis dreht, ja. Durchaus. Also es kann schnell vorkommen, also gerade wenn du jetzt bei bei Tipps bist oder so. Also ich find eigentlich was, was ja vielleicht ganz interessant ist, dass man, dass wir vielleicht auch noch mal drüber reden, wie wir damit so arbeiten und dann auch mit, ich sag mal, diesem Review umgehen.

Genau also. Weil im Endeffekt ich find ich find das, das gehört halt mittlerweile zusammen, das Code Review plus die Zusammenarbeit mit sag ich mal der AI absolut, weil also zum Beispiel was ich ich kann einfach mal anfangen und mal kurz schildern wie ich eigentlich ganz gut mit damit

arbeiten kann. Also was ich jetzt zum Beispiel für Erfahrungen gemacht hab, wie es gut ganz gut funktioniert und zwar ich meinte ja schon ich find es auf jeden Fall schon mal sehr sehr gut die AI mittlerweile in die IDE. Zu integrieren oder drin zu haben, dass man halt einfach mit der Codebase sozusagen chatten kann, was ich super cool finde ist, wenn du auf einem Git stand, auf einem sozusagen clean

Git stand arbeitest. Du hast keine Changes, alles ist committed und gepusht, wie auch immer, aber du siehst halt changes sofort ne und wenn ich dann zum Beispiel sage also irgendwas machen möchte, dann hab ich auf jeden Fall schlechte Erfahrungen gemacht, wenn man. N sehr großen Scope gibt ne,

also zumindest zu sagen. Ja ich will jetzt zum Beispiel die Anwendung, das was ich habe möchte ich gerne nach den und den Vorstellungen umbauen, wenn diese Vorstellung oder dieses, dieser, dieser Gedanke der dir kommt eigentlich die ganze Anwendung umfasst, dann kannst du es eigentlich direkt sein lassen, weil dann. Hast du halt genau diesen Punkt.

Entweder es wird sehr sehr generisch es du kriegst sehr sehr viele Infos, du musst dir sehr viel durchlesen und du musst auch wahrscheinlich im Worst Case auch noch zusätzlich sehr viel Code reviewen, der dir aber am Ende gar nichts bringt, weil du es, weil du es gar nicht so spezifisch beschreiben kannst, was du haben möchtest ne und?

Das heißt, meine ich, ich mach es gerne, dass ich dann so ne kleine Komponente nehme, also irgendwie zum Beispiel n file oder wenn du jetzt im Frontend bist so ne Komponente im Sinne von HTMLCSS, type Script oder sowas in die Richtung ne und dann wirklich sagst OK ich möchte folgendes machen ne ich sag immer ganz gerne sowas wie er soll ehrliches Feedback geben was gerade da ist und ich sage wo ich gerne hin will ne und dass man das dann so n bisschen abgleicht, dass man sagt OK da

will ich hin. Was haben wir schon? Sag mir, was ich verbessern kann und was ich halt gerne haben möchte, auch ne und sozusagen dann von da nach dazu kommt ne von das ist gerade da Feedback dazu, da würde ich gerne hin. Passt das denn mit meiner Verbesserung oder hast du noch andere Ideen zu einer Verbesserung? Weißt du wie ich meine weil es kann ja auch sein, dass man das mach ich auch ganz gerne so n bisschen brainstorm ne mit der AI so. Zu sagen, ja, sowas geht gut.

Ja, genau, dass man irgendwie sagt EY ich, ich hab die und die Idee, da würd ich gerne hin und meinst du das macht Sinn und dann muss man natürlich aber auch wieder evaluieren ne das ist find ich immer genau der.es ist nie so, dass ich mir denke OK das was du mir jetzt gibst das das nehm ich 1 zu 1 sondern man muss es natürlich irgendwie noch mal lesen und sagen Ah OK versteh ich zum Beispiel manche Sachen bringen halt nichts ne wo du denkst OK er schlägt jetzt etwas vor.

Ne wie zum Beispiel. Und dann könnten wir diese Informationen da drauf packen. Du denkst dir so, aber diese Informationen stimmen sogar nicht, eigentlich ist es n bisschen anders, dann muss man noch mal nachschärfen. Das was ich meine ne aber da kommst du manchmal gar nicht drum herum. Das Gute ist, wenn du dann einigermaßen in die richtige Richtung läufst, ne wo du hin willst, dann nehm ich den Code erstmal komplett und kopier mir

den rein. Ne zum Beispiel HTMLCSS und Type Script einfach mal in diesem Beispiel ne. Und guck erst mal, wie das aussieht, wie sich das verhält.

Und dann mach ich halt weiter, dann kann ich halt überhaupt erst mal evaluieren, passt es, geht es überhaupt in die richtige Richtung, wo ich hin will oder nicht und dann kann man das immer so weitermachen, ne, weil was ich auch gemerkt hab, super anstrengend ist du promptest zum Beispiel ne halbe Stunde, weil du irgendwas noch nachschärfst und hast dann irgendwann so n Mischmasch aus 50 antworten ich weiß jetzt nicht ob die Zahlen hinkommen, aber.

Du hast so n Mischmasch in deinem Code, weil du sagst, OK das passt für mich, da muss ich noch n bisschen umstylen, da möchte ich aber im HTML noch n bisschen was anderes haben. Timescript hab ich noch n bisschen berefecterd und am Ende weißt du gar nicht mehr, also wenn du doch irgendwo wieder hin zurück willst, wo du hergekommen bist, weißt du gar nicht mehr so

richtig. OK, was hab ich denn jetzt eigentlich für gut empfunden, weil sehr viel passiert ist, kann man sich nicht merken und deswegen ist es gut finde ich immer n bestimmten Scope abzustecken das zu prompten. Das in den Code zu Gießen anzupassen.

Dabei musst du natürlich wieder reviewen, was da so los ist, um dann zu sagen, OK, das ist jetzt erstmal n stand den ich hab den Committee ich wieder so weißt du und dann kannst du weiter darauf arbeiten, das ist so für mich n bewährter Workflow der eigentlich ganz gut ist. Ja, gerade bei HTMLHTML und CSS finde ich hat man, gerade wenn man von AI also Code bekommt, immer ziemliche Auswirkungen. Also CSS find ich halt teilweise

richtig schlimm. Du willst erst mal irgendwelche Kleinigkeiten und er haut dir da halt alle 1000 Attribute rein, die er irgendwie setzen und denkst dir halt so Junge, das guckt sich CSS ist eh schon so ne Sache, wer guckt gerne in CSS Files von anderen rein? Ja ich glaub mal die witzige Bezeichnung, dass dazu gehört, dass man es einmal schreibt und danach ist es sozusagen ja so. Na read only mäßig, so weißt du also das. Das das das da will keiner mehr

dran arbeiten. Wenn einer so n riesen Pfeil da

erzeugt hat sozusagen. Und was abändern ja und wenn man überhaupt reinguckt gefühlt und da finde ich gerade wenn du jetzt von GPT oder sowas kriegst das auch immer richtige Ausrufung aber genau darum geht es ja wenn ich jetzt zum Beispiel. Wir haben ja gesagt, wir wollen über das Review sprechen dahinter, also ich prompte das und so wie du das machst, mache ich es auch sehr gerne einfach um es klein zu halten, um quasi dem der LM nicht die Chance zu

geben völlig zu eskalieren. Wenn ich jetzt aber den Code kriege, ja du meintest ja, dann musst du den Durchgucken anpassen in die Codebasis rein und dann machst du quasi ein Commit dazu, weil du sagst ich habe jetzt einen kleinen Teil davon umgesetzt. Das macht ja auch Sinn so n kleinen Häppchen sozusagen zu arbeiten, sag ich mal.

Aber die Frage ist ja jetzt, wenn ich sage, ich muss das Reviewen gibt es so Punkte, die man auf jeden Fall wieso ne Art Checkliste vielleicht mal durchgucken könnte? Ja, weil so für alle Zuhörerinnen und Zuhörer, die so gerne Fakten hören wollen, ja denk ich mir, so was sind so Punkte die man immer durcharbeitet dabei und der Erste der mir dabei zum Beispiel einfällt, ja. Den ich wirklich mache, weil da hab ich auch schlechte Erfahrung

mitgemacht ist. Ich schau mir an, wie wird mein Projekt durch Third Party erweitert, beispielsweise weil wenn ich 1 gelernt hab ist das AI sehr gerne sagt ja ist ja gar kein Problem, hier ist der Code und dann denkst du dir so OK das sind aber ne Menge Imports da oben was was zieh ich mir, was hol ich mir denn jetzt alles ins Boot in meinem Projekt nur um dieses kleine Feature gerade zu implementieren mit deinem Codebeispiel. Und das ist finde ich ein riesen

Punkt. Einfach mal zu gucken, was ziehe ich alles an, nur um jetzt diese Lösung zu verwenden. Jetzt gibt es natürlich Leute die sagen, gerade wenn es eine Idee ist Import ja was npm install ja klar los rein damit ja und das finde ich es halt auch sehr gefährlich, dass man auch mal wirklich überprüft, was ist Teil dieser Lösung und das geht halt so bei bei. Dependency ist einfach schon los. Das ist so für mich mit das

erste, was ich checke. Find ich auf jeden Fall richtig gut, da auf jeden Fall nachzugucken, weil wir hatten das glaub ich auch schon, dass wir also irgendwo auf Twitch oder so, dass wir ne ne. Ne Library genutzt haben, obwohl wir eigentlich nicht unbedingt ne Library hätte nutzen müssen.

Ne haben das dann auch wieder ausgebaut, weil wir dann einfach gemerkt haben so OK es geht ja auch einfacher ne das ist aber auch wirklich wichtig, dass man das halt dann auch wirklich challenged, weil du dir halt einfach unglaublich viel reinziehen kannst. Ne so dependency Blade mäßig ne.

Da muss man natürlich sagen, das war klassisches googeln und wir haben halt n Treffer gefunden mit einer Lip die das Macht was wir brauchen, ja. Und dann war natürlich die Versuchung sehr groß zu sagen, Ach komm, dann gehen wir die jetzt mit rein, so ne aber auch wichtig was du sagst das zu challengen und genau das ist ja der Punkt dann auch im Review, ne. Ja, finde ich halt, weil du auch von diesem, also von CSS über Wucherung geredet hast.

Ne, ich muss sagen ich bin kein großer CSS Magier, so ne Man hat SS Magier, Man hat halt so seine Tricks und Kniffe. Und lernt ja auch immer mal n bisschen was dazu. Aber wenn du dir wirklich mal so n Styling von einer LLM machen lässt, a Jesus es eskaliert so hart, dass du dir denkst, wieviel Code kann man in CSS ballern? Und dann hatte ich zum Beispiel auch sowas wie ja OK, aber ich möchte gerne, weil es dann zum Beispiel um Kacheln ging.

Ich sehe gerade, dass die Kacheln gar nicht gleich groß sind, unter bestimmten Umständen. Je nachdem wie der Screen ist. Ne. Also ob du jetzt einen Desktop hast oder mobile oder was auch immer und dann so ja ach so ja gar kein Problem, da kannst du das und das und das machen ne so.

Wieder irgendwelche CSS Dinger hingeballert ne und da merk ich dann manchmal auch, dass es einfach durchaus sinnvoll ist erstmal seine eigenen Gedanken zu äußern anstatt einfach nur zu sagen, ich möchte das so haben, weil wenn du sagst ich möchte das so haben interpretiert die LLM ich kann machen was ich will um dir das zu bringen was du willst und wenn du das willst.

Wir haben schon sehr viel Code und ich kann dir noch sehr sehr viel mehr Code mit reinpacken ohne Probleme und das witzige war, dass ich eigentlich dann. Weil ich mir dachte, so was passiert denn hier gerade, was knallt der da jetzt rein, weil der kommentiert ja dann auch immer die CSS Zeilen, ne die man sich das ist auch n wichtiger Punkt generell beim Code Review von RI Code. Lest euch mal wirklich die ganzen Kommentare durch und. Prüft mal, ob das genau das ist.

Was ist eigentlich was, was man sich so vorstellt? Weil dann bin ich zumindest relativ schnell zu dem Entschluss gekommen zu sagen okay, du kriegst jetzt mal meine Idee und zwar ist es nicht einfach sinnvoller zu sagen, Du hast eine Maximalbreite für diese Kachel und sonst skaliert es halt auf eine gewisse Prozentzahl. So ist jetzt ein bisschen aus dem Kontext gerissen, aber am Ende war es halt wirklich eine Sache, ein Attribut im CSS für eine Klasse, die das ganze gefixt hat, anstatt.

Keine Ahnung. Gefühlt noch 3 Klassen und 5 HTML tags, die dann ineinander geschachtelt waren und dann irgendwie mit Grid hier und Styling dort und so weiter ne, also es hilft wirklich sich zu überlegen und anzugucken und das gilt jetzt nicht für CSS Code sondern für allen Code. Was passiert da und im Vorfeld bevor man promptet oder während des prompt zu sagen das ist meine Idee.

Das finde ich immer sehr, sehr wichtig, weil dann hast du am Ende quasi, wenn du das auch reviewst und dir dann auch diesen ganzen, diese ganzen Kommentare durchliest, meistens weniger zu tun, als wenn du erst sagst, ich will irgendwas haben, mach mir mal irgendwas und dann kommt irgendwas raus und du dir denkst, so OK, ich hab jetzt 10 Minuten den ganzen Code reviewed, das möchte ich nicht. Und dann ist natürlich auch oft

die Sache, wenn also was? Ich auch schon erlebt hab ist wenn jetzt so AI generierter Code kommt und der wird soll zum Beispiel in die Codebasis fließen ne und du reviewst das ist es ja auch oft so, dass Entwicklerinnen und Entwicklern da dann auch verleitet sind keine Tests dazu zu haben. Das klingt jetzt richtig schlimm, weil es ist richtig schlimm das. Klingt jetzt richtig.

Und da denk ich mir auch so. Ja gut, wenn ich n Review bekomme und ich seh nicht mal, dass Tests angepasst wurden, bedeutet das ja in unserer Welt ja, das ist vielleicht jetzt subjektiv, aber in unserer Welt bedeutet das, dass sich also nichts geändert hat, würd ich halt schon sagen, so, ja nö, noch mal oder anpassen. Weil ich finde, wenn ich ein Feature entwickel, dann muss es neue Tests geben. Wenn ich etwas fixe, muss es neue Tests geben, das hatten wir

ja auch erst wieder. Ja, ein Bug ist drin, der muss gefixt werden, ja gut richtig, aber lass mal erstmal einen Test schreiben, der zeigt, dass ein Bug drin ist und dass der auch grün ist. Wenn wir es gefixt haben, sonst stehen wir wieder in 5 Monaten an dieser Stelle, wenn da sich was ändert und das sind ja Sachen die da irgendwie unter den Tisch fallen finde ich und das finde ich ganz schlimm also

du kannst nicht. Auf. Also du kannst ja nicht so viel Vertrauen da reingehen, weil ich hab es geprompted ich hab generierten Code, der sieht gut aus und der Macht doch was er soll. Was soll ich denn da jetzt testen, wenn dieses Mindset da ist hast du eh verloren ne und genauso schlimm finde ich es auch zu sagen ja gut kriegst deine Tests ich prompte kurz, schreib mir mal hier 4 Tests krieg 5 Tests hau die da rein und da hier kannst du Review und da sind deine Tests.

Ja, so. Das ist auch keine Lösung. Ja, wenn ich denn anfange alles AI driven zu machen, ja, dass ich den Code generiere, die Tests schreibe und noch NAI

review hab. Wo soll das hinführen am Ende ne also stand heute weil Tests die ich gesehen hab die generiert sind sind nicht per se schlecht aber sie sind sehr sehr oft absolut angepasst auf die generierte Lösung ne also du kriegst generierten Code. Der Feature A umsetzt und zu diesem genau diesen Code kriegst du jetzt noch 5 Tests mit so happy Past Tests und n bisschen paar Edge Cases vielleicht noch so eingabechecks oder sowas genau für diese Implementierung.

Wenn da einer was ändert sind die alle rot in der Regel sehr oft. So, und das ist halt genau das Problem und also was halt möglich wäre ist Tests zu schreiben und zu sagen, das ist halt auch mal n ganz cooles Experiment. Ich schreib die Tests und Versuch so gute Tests zu schreiben, dass es schon wieder ne Anforderung abbildet und dann sag ich ihnen jetzt bitte erstell mir die Funktion die das und das machen soll und die

Tests erfüllt. Vielleicht so rum den Weg gehen, aber aber sag ich mal alles durchgenerieren oder erst Code haben und dann die Tests dazu und dann soll das Gereviewt werden. Da hab ich halt gar kein Vertrauen drin so ne weil ich finde wenn ich sowas review dann sind ganz oft. Fälle nicht abgedeckt, die man beachten muss. Und dann sagst du das einmal und dann eskaliert es auch schon wieder direkt. Weißt du, dann kriegst du wieder 5 andere Funktionen dazu.

Also diese ganzen Edge Cases und so weiter das ist ich find das ist witzig, weil wenn du sagst ich möchte das und das haben, ist meine Erfahrung, dass Edge Cases seltener betrachtet werden im allgemeinen, sondern wirklich so der Happy Path, ne. So, aber es hilft durchaus zu sagen, weil du ja meintest. Schreib mal erstmal selber die Tests, ne Tests selber schreiben nicht von AI und man kann ja die AI nutzen zu sagen Pass auf.

Ich hab folgenden Fall was könnte denn alles passieren, das ist auf jeden Fall ne Sache, da hilft es wieder Brainstorming gute Sache ne aber wenn du einfach nur sagst implementier mir das ist meine Erfahrung, dass Edge Cases gerne mal unter den Tisch gekehrt werden, außer du adressierst es wieder explizit. Aber, und ich find da ist auch wieder so. Ich sag mal der das allgemeine der allgemeine Entwicklungsprozess nicht verkehrt zu sagen ich überleg erst mal selber was es für Edge

Cases gibt. Brainstormer mit AI gieße das dann in Tests und lass vielleicht dann die Tests wie du meintest Halt implementieren. Das ist ne coole Sache, aber selbst wenn es ums reine Review geht und es gibt Tests die von

der AI implementiert wurden. Dann finde ich, sollte man da auf jeden Fall beim Review ein besonderes Augenmerk noch mal drauflegen, weil gerade die Tests sind ja schon ein wichtiger wichtiger Gesundheitszustand für deine Software und demzufolge ist es halt einfach wichtig, dass das Halt auch passt. So also Review auf jeden Fall da noch mal genauer hingucken. Angenommen, es gibt halt generierte Tests. Ja, das ist halt.

Das ist n Teufelskreis halt. Wenn ich dann anfange so Tests generieren zu lassen, ja weil ich beispielsweise was ist so n Gedanke dahinter, der oft auftritt ist sowas wie wir müssen unsere Code coverage erhöhen, ja weil halt keine Ahnung die und der Prozess sagen wir brauchen die und die Code coverage. Ja gut, dann generier Tests damit das Abgetestet ist. Oh jetzt haben wir ne Code coverage von 98% mit irgendwelchen generierten Tests.

Am besten sage ich im prompt noch hey hier, das ist mein Code, ich will ne hohe Code coverage, schreib mir tests dazu oder so weißt du dann krieg ich halt Murks raus beziehungsweise nicht zu 100% ich möchte das ja gar nicht voll und ganz verteufeln. Ja wie gesagt so einfache Tests, Input Checks oder sowas oder Check mal bitte ob da überhaupt n wert da ist. Wenn nicht mach so n Early. Return oder weiß ich was? Irgend?

Denk dir was aus. Ja, aber diese simplen Checks, die jeder so auf den ersten Blick sieht und sagt, das muss getestet werden, das kannst du gut generieren lassen, keine Frage. Ja das ist ja, das ist auch irgendwo dann schon nah an der Implementierung, ja, aber du musst ja natürlich verhalten Abtesten am Ende und da finde ich gibt es halt echt starke Limitierung und ich hatte es auch schon mal so weit, dass meine Rückfrage kam. Ich weiß nicht warum das drin ist, ja.

Das war jetzt nichts, sag ich mal. Die AI oder was? Wichtiges ne, also nicht so nicht so n Projekt wo du denkst Alter kannst du nicht machen. Ja das war jetzt nicht so super wichtig, aber trotzdem fand ich das schon beängstigend, aber nur mal ganz kurz also die du hast du hast es nicht, du hast. Einen. Du hast einen Menschen gefragt, warum es da drin ist und der Code kam wahrscheinlich von AI und der Mensch konnte nicht sagen warum so. Genau.

Ich sollte die backen und mithelfen und das kam dann. Das wäre geil gewesen, wenn du die LI fragst. Das ist da drin. Keine Ahnung, mich sind gleich gefragt und dann, so fragt die Person, die ist die das gepfromte Tag genau ja, und das ist. Genau das Problem und oft neigt wie du ja auch meintest, dieser AI generierte Code neigt sehr schnell zum Over Engineering.

Ja und da hatte ich zum Beispiel n Fall, das war aber so n privates Projekt wo ich auch mir dachte Ach komm hier, das wird sich schnell umsetzen, machen wir also machen wir zusammen im Sinne von ich und ne LM ne in der IDI und das funktioniert auch gut und deswegen hat sich meine Meinung dahingehend zumindestens geändert, dass man. Tool unterstützt und das sagen wir ja eigentlich auf allen Plattformen ständig. Das ist für uns ein Tool und keine Ersetzung.

Ja, hat das gut funktioniert, aber man muss höllisch aufpassen. Also eigentlich war ich nur damit beschäftigt, quasi die. LLM wieder einzufangen, überspitzt gesagt zu sagen Halt, tritt doch mal auf die Bremse, das war nicht das, was ich von dir wollte, weil dann ja hier klar feature a kein Problem. Ja gut, jetzt hast du aber irgendwie noch 23 andere Features drin, wo ich nicht mal weiß ob ich das überhaupt brauche in dem Projekt.

Wenn du dann noch so was promptest wie du meintest, sei ehrlich, sei streng, sei achte auf das und das, dann kriegst du vielleicht einmal zurück, so, na ja, aber das braucht man schon, wenn man das und das machen will und dann denkst du dir so, ja, aber das will ich doch gar nicht machen jetzt gerade, ich weiß nicht mal, ob ich das in Zukunft überhaupt machen will, da werden nur wieder irgendwelche Sachen angezogen, weißt du aus irgendwelchen Quellen, dass es ja vielleicht sinnvoll wäre, das

irgendwann mal zu tun? Also bist du nur am Einfangen und am Code wegschmeißen und am neu prompton zu sagen, Mach das bitte nicht, mach nur das nur Kleinigkeiten und da hilft natürlich extrem und das finde ich auch gut, dass du es angesprochen hast zu sagen, ich versuche die Aufgabenpakete so klein wie möglich zu machen, einfach nur in der Hoffnung,

dass keine. Kein over Engineering stattfindet, dass quasi gar kein keine kleine Tür offen ist, um da durchzugehen, um over Engineering zu betreiben. Das ist ja eigentlich dein Ziel am Ende dahinter, wenn man mal ehrlich ist. Aber ich finde, es gibt auch noch die andere Seite der Medaille, und zwar so.

Ich nenn es mal under engineering ne also ich hab schon erlebt, dass keine Ahnung du irgendwas promptest oder in dem Fall ich irgendwas prompte und mir dann sage OK warte mal hier werden irgendwelche unnötigen Pattern verwendet. Das eine Beispiel over Engineering, kleines Beispiel ne oder aber auch zum Beispiel sowas wie wieso würde es nicht viel mehr Sinn machen an der Stelle zum Beispiel das und das

Pattern zu verwenden. Ja ja auf jeden Fall, das wäre super, können wir ja machen und du denkst dir so ja OK du brauchst also wieder das wissen ne in deinem Review um zu gucken und das ist halt auch finde ich n wichtiger Punkt weil du over

Engineering angesprochen hast. Zu checken, OK, was wird denn verwendet, also ob jetzt irgendwelche Pattern oder irgendwelche Architekturentscheidungen getroffen werden von der AI genau mal hingucken ist es gerade notwendig macht es Sinn oder fehlt da vielleicht etwas?

Ne Wir haben ja auch ganz viele Pattern, zum Beispiel auch die Pattern Reihe haben wir auch im Podcast hier es hilft zu wissen was es gibt und wie man damit zum Beispiel arbeitet um genau sowas vielleicht auch dann am Ende zu erkennen, ne? Ja, genau. Genauso wie irgendwelche Abstraktionen, die dann teilweise gemacht werden, obwohl es vielleicht entweder nicht notwendig ist oder notwendig wäre oder gut wäre an der Stelle.

Das finde ich, ist auch eine Sache, da sollte man unbedingt noch mal beim Reviewen von genaues Auge drauf werfen. Und ich finde, das ist eigentlich auch schon, dass der perfekte Stichpunkt, um das Ganze auch noch mal ein bisschen zusammenzufassen, Verständnis, Erfahrung und wissen, was man tut, einfach. Und das gerade, weil ja diese Angst halt wirklich allgegenwärtig ist. Ne, Wir hatten ja auch auf Instagram ne Umfrage gemacht. Gehen dir die Gedanken durch den Kopf, ob AI dich ersetzen

könnte? Ja, gerade bei Junior Deaths und Middeaths ist das ja schon vertreten, weil das Ergebnis war ja auch eindeutig, dass viele Leute jetzt nicht panische Angst davor haben, aber die Frage einen beschäftigt ja und wir haben ja auch folgen dazu gemacht und.

Das zeigt jetzt wieder und ich finde, darunter kann auch diese ganze Folge stehen in Sachen Code Reviews vernünftige Code Reviews, egal wie AI driven das Ganze ist, erfordert einfach Verständnis und Erfahrung und das ist halt n wichtiger Punkt dabei. Ja man braucht die Erfahrung zu wissen was möchte ich eigentlich, was sind meine Randbedingungen, was möchte ich nicht.

Ja wir haben jetzt auch ganz viel darüber gesprochen, was möchte ich nicht und das muss ich ja im Review auch durchsetzen ja ja. Also dieses fireinforget ich brauch ne neue Seite mit einem Login Screen. So bitte haste danke weiter geht es funktioniert vielleicht bei einer Page, vielleicht noch bei der zweiten und dann kommst du irgendwann wenn wir jetzt wieder beim Frontend sind in die HTMLCSS Hölle und das war es ciao und das darf es halt auf keinen Fall sein. Wichtig ist seine Erfahrung

dabei zu machen. Sowohl beim Wir haben auch über das Code generieren gesprochen, sich dabei helfen zu lassen und auch beim Review, das ist halt super wichtig, Erfahrung zu sammeln und Best Practices für sich selbst heraus zu kristallisieren, das muss beim anderen nicht funktionieren, wir können hier nur an der Stelle gibt es kein richtig oder falsch, wir können halt nur unsere Erfahrung mitgeben und ich fand es auch wieder richtig cool, was du so gesagt hast,

weil das gibt mir auch wieder Input ja wie ich es nächste Mal vielleicht auch besser hinbekommen kann. Also vielen Dank dafür mal. Und es zeigt sich auch hier, es steht und fällt alles mit der prompt Qualität.

Da hatten wir auch auf Twitch schon viele Diskussionen zu und ich find es krass wie viele Leute oder sagen wir mal andersrum wie einige Leute wieviel Zeit sie in Prompts reinstecken wo ich mir denke dann kannst du es in der Zeit doch eigentlich selbst Conen aber ganz so ist es nicht fairerweise. Aber, so Guidelines, Richtwerte, Bedingungen einfach so statisch mitzugeben. Du hast ja die Möglichkeit Anweisungen mitzugeben, die dann

für jeden prompt gelten. Ja, du kannst ja auch bei sagen wir mal, nehmen wir mal als Beispiel noch mal Chat GPT, du kannst ja auch n Projekt machen ihm Files geben, Guidelines geben und dann wird er die berücksichtigen und das funktioniert wirklich ganz gut und da halt massiv Zeit reinzustecken um das was wir alles gerade besprochen haben. Zu optimieren ist dann halt auch n guter Weg.

Ne, das vielleicht auch noch mal so als Tipp, den wir auf Twitch mal so mitbekommen haben von einem anderen Streamer fand ich halt auch richtig cool, dieser Input ne deswegen hier noch mal die Anmerkung, aber das sind halt alles Sachen die am Ende unter dem gleichen Banner fallen, wissen und wissen was man tut ja definitiv Stichwort noch mal ersetzen AI nee.

Ich fand es auch ganz cool. Da gab es letztens auch bei uns auf dem Discord eine wirklich coole Beschreibung für einen wirklich wichtigen Skill, den es heutzutage vielleicht, so kann man das vielleicht zusammenfassen, das möchte ich gerne auch noch mal teilen. Die Aussage war, dass man in der Lage sein muss, möglichst schnell Software in einer möglichst hohen Qualität zu liefern und ich finde, wenn du das als Leitsatz nimmst. So als für deinen Skill.

Ne, wie schnell kann ich also ne, wie kann ich möglichst schnell ne möglichst hohe Qualität liefern? Ich finde das ist unglaublich wichtig, weil damit ist es quasi egal ob du Junior bist mit Level senior oder was auch immer, egal was du nutzt, ja. Wähl dein Toolset selber, wenn du in der Lage bist, super schnell hohe Qualität zu gewährleisten. Wenn du deinen Code mit einem Stift auf Blatt Papier schreibst. Völlig in Ordnung, wenn du da super schnell drin bist, ist das

geil. Wenn du dafür aber eine lm nutzt Agentisch arbeitest, was auch immer auch in Ordnung, aber wichtig ist und das ist hier wieder der Punkt, die Codequalität muss hoch sein, ne nicht schnell Code liefern, sondern mit einer hohen Qualität und da ist es dann wiederum wichtig. Die richtigen prompt zu schreiben, das richtige Review zu machen und das richtige Verständnis zu haben, weil sonst kannst du das nicht sonst.

Kriegst du es nicht hin? Ne, und ich glaube das ist wirklich NN sehr sehr wichtiger Punkt und der Rest ist eigentlich sag ich jetzt mal egal beziehungsweise nicht egal, sondern das das sollte ganz oben stehen und das Stand schon immer ganz oben. Ne dieser dieser Anspruch, dieser Skill ja ja. So weit, so gut. Ich weiß gar nicht mehr, was ich dazu noch sagen soll. Ja, das ist das ist es eigentlich am Ende ja.

Aber was ich auf jeden Fall super interessant finde und wie du schon meintest, es gibt ja jeder, hat ja so seine eigenen Ideen und Workflows, wie gearbeitet wird, wie man heutzutage mit der AI arbeitet und ich glaube da kann jeder noch von den anderen sozusagen lernen, das ist auch glaube ich super interessant. Also ich finde es mega spannend

und deswegen. Liebe zürer, lieber zürer, wenn du irgendwie einen geilen Workflow hast oder Tipps hast, wie du zum Beispiel sagst, so arbeitet man richtig gut mit AI, oder? Das sind meine Tipps für AI Code Reviews, dann hau das immer mal raus, gerne auf einen Discord kommen beispielsweise und das da auch einfach raushauen die die Tipps und Ideen und Workflows. Dann kann man halt direkt darüber sprechen und diskutieren. Das ist halt immer das geilste, ne genau und.

Link zum Discord, aber auch zu allen anderen Plattformen sind auf jeden Fall in den Shownotes verlinkt und uns würde auf jeden Fall auch Mega interessieren, ob du das, was wir gerade geschildert haben, auch kennst und ob das vielleicht auch manchmal nervt, so AI Code zu reviewen, weil manchmal hat man schon ein bisschen das Gefühl, dass man weniger vom Ich sag mal Produzenten zum Konsumenten geworden ist. Also dass man jetzt mehr reviewen muss als früher.

Mir geht es jedenfalls so. Und das wird uns natürlich mega interessieren, ob das bei dir auch so ist oder nicht.

Ansonsten wenn du sagst, Ey Cooler Podcast hat mir wieder gefallen, die Folge aber eine Bewertung habe ich noch nicht da gelassen, dann mach das auf jeden Fall gerne, das wird uns auf jeden Fall mega helfen und empfiehlt gerne auch den Podcast 2 Freunden oder Freundinnen weiter und wenn du völlig überzeugt bist und sagst richtig coole Sache, dann findest du noch einen kleinen Spenden Link in den Shownotes das wird uns

natürlich auch mega helfen. Nutzen wir natürlich immer die Spenden, um halt unseren Content zu verbessern. Ist doch klar. Ansonsten lasst einfach mal Liebe da. Wir schicken auch ein bisschen Liebe raus und in dem Sinne hören wir uns auf jeden Fall in der nächsten Folge wieder deine Kollegen, weil es gemeinsam. Besser ja, aber ich hätte das letztens bisschen geplant und da waren da halt auch einfach gefühlt 5 Leibig sein und dann eine klein drücken und dann eine klein.

Transcript source: Provided by creator in RSS feed: download file
For the best experience, listen in Metacast app for iOS or Android