Latest / esacom KI & IT Podcast / Folge 08 - Coding-Tool Praxisbericht aus der Programmierung
Transcript
- Anna: Herzlich willkommen zu unserem heutigen Podcast, zu unserer heutigen Folge. Ich sitze heute mit Dennis hier und wir haben ein interessantes Thema dabei. Hi erstmal, Dennis. Dennis: Ja, hi Anna. Anna: Und zwar wollen wir, wie angekündigt in der letzten Folge heute ganz konkret auch mal in ein KI-Tool reingehen und zwar nicht nur konkret benennen, was es sich handelt und welche Features es gibt und welche Mehrwerte oder vielleicht auch welche Risiken damit verbunden sind. sondern einfach euch auch mal mitnehmen, wie wir das nutzen und wirklich entwickelt eingesetzt haben, wo wir auch an die Grenzen gestoßen sind, was wir, sag ich mal, mit diesem Tool machen, wirklich konkrete Beispiele auch mitbringen und da freue ich mich schon sehr drauf. Und dieses Tool ist jetzt alle ein bisschen auf die Vollteil gespannt, der GitHub Co-Pilot. Und diese Folge wird vor allen Dingen technischer geprägt sein, denke ich mal, Dennis, einfach weil wir im Vorfeld schon bisschen überlegt haben, wie können wir hier die meisten Ideen, Insights reingeben und das wird einfach dadurch sein, dass du uns mitnimmst und wirklich erklärst aus der Anwendungssicht, was macht man damit, wie geht man damit wie setzt du gewisse Themen auf und das wirklich einfach ganz ganz praxisnah Dennis: Ja, genau. Ich versuche es trotzdem ein bisschen so zu erklären, dass auch jeder bisschen was damit anfangen kann, der jetzt nicht in der Softwareentwicklung drin steckt, weil genau darum geht es beim GitHub Co-Pilot. Es handelt sich hierbei ein Coding Tool, sprich es unterstützt mich bei der Arbeit, beim Programmieren, bei der Softwareentwicklung. Und ja, das ist jetzt ein Produkt, Anbieter von sehr, sehr vielen, den es draußen auf dem Markt gibt. Aber genau, für den Github Pro Pilot haben wir uns entschieden und nutzen ihn bei uns im täglichen Einsatz. Anna: Guck direkt schon meine Anschlussfrage. Warum der? Warum wurde es der? Dennis: Warum wurde es der? Das hat einen recht praktischen Grund für mich, einfach nur zum Hintergrund. Wir entwickeln sehr viel im .NET-Unfeld, sprich mit der Programmiersprache C-Sharp. Ist von Microsoft entwickelt worden und der GitHub Co-Pilot bzw. GitHub selber, wenn ich jetzt nicht komplett daneben liege, wurde auch von Microsoft aufgekauft und deswegen gibt es für Die Integration in den, ich sag mal, einfach gesagt in den Texteditor, in dem ich programmiere, gibt es einfach eine direkte Integration zum GitHub Copilot. Quasi, ich habe dann in meinem Texteditor, wo ich mein Programmcode schreibe, also quasi mein Wort fürs Programmieren, da habe ich dann quasi mein direktes Chatfenster mit dem GitHub Copilot, wo ich dann quasi, also unter anderem ein Chatfenster, wo ich dann mit der KI in unserem Projekt zusammenarbeiten kann. Das ist so der Hintergrund. Ich hätte jetzt auch ein anderes Tool nehmen können, hätte auch funktioniert, dann hätte ich vielleicht einen anderen Editor benutzen müssen oder hätte einfach quasi andere Schnittstellen benutzen müssen, mit unserer Codebasis zusammenzuarbeiten. Aber das war so der, ich sag mal, der schönste Weg für mich. Es ist halt aus einem Guss, so würde ich es beschreiben. Anna: Und kann ich mir das so vorstellen, dass du auch rein sprichst, also dann wirklich der KI sagst, was sie programmieren soll, weil ich sag mal so in dem im Day-to-Day-Umfeld, ist ja einfach hauptsächlich oder es wird ja immer mehr, dass man einfach wirklich mit der KI ausspricht, also sagt, was zu tun ist, weniger die ganzen Sachen abtippt, also wirklich Speech to Text mehr und mehr, also von der Sprache in Dennis: Hm? Anna: das, nachher in die Ausgabe, in das Geschriebene von einer KI, sei es ein Chat-GPT, ein Perplexity, ein Clot auch kommt oder halt auch bei einem, einem Microsoft-Copilot. Wie kann ich mir das so beim Programmieren vorstellen? Sprichst du dann Dennis: Hm. Anna: die ganze Zeit, also läufst, sag ich mal, durch die Wohnung, durchs Haus und sagst, und jetzt wird das programmiert und hier brauchen wir noch dieses und noch jenes oder läuft das dann doch noch ein bisschen anders ab. Dennis: Ja, wäre vielleicht schön, dann könnte man nebenbei noch andere Sachen machen. Aber ich zumindest nicht. glaube beim GitHub Copilot zumindest in der Integration, wie ich sie nutze, in Visual Studio, ist nämlich besagter Texteditor, es kurz zu fassen, oder Programmiereditor. Da geht das, ich, noch gar nicht. Es gibt natürlich Coding-Tools, die so was machen, wo das quasi auch zum ich sag mal, zur Kernidee gehört, sprachbasiert zu programmieren, ist jetzt bei uns auf jeden Fall nicht so, hat auch mehrere Hintergründe. Und zwar würde ich das von unserem Einsatz her auch nicht so als typisches Vibe-Coding beschreiben. Das ist ja auch eine neue Entwicklung, die es jetzt im KI-gestützter Programmierung gibt, nämlich quasi möglichst viel durch die KI programmieren zu lassen eigentlich, dass sich mehr oder weniger lose einfach nur reingebe, was für eine Idee ich habe und die KI macht alles für mich. Für mich ist es eher so wirklich so ein Hilfstool, vielleicht auch mal was zu fragen, vielleicht auch mal Dinge vorprogrammieren zu lassen, die sich entweder wiederholen, die ich sag mal generisch sind. Typischer Boilerplate Code, das kann eine KI sehr gut machen. Oder vielleicht auch einfach mal, dass ich mich in Sphären wage, in denen ich mich noch nicht so gut auskenne. quasi so genau das Gegenteil. Und warum spreche ich nicht rein oder warum würde ich auch nicht reinsprechen, ist der Grund, dass ich durch die durch den Text eigentlich präziser arbeiten kann. Ich kann nämlich beispielsweise in meinem Prompt, ich dann eingebe, also in meiner Anforderung an die KI, kann ich ganz konkret entweder Code bereiche. mitgeben. ich kann richtig sagen, okay, in dieser Datei von Zeile 10 bis 20 habe ich ein Problem, markiere mir das, kann das dann quasi mit, ich sag mal, Tools, die da integriert sind, mit in den Chat reingeben und der KI genau sagen, was es geht. Und wenn ich es nicht ganz so präzise mache, dann sage ich halt, okay, ich habe hier ein Thema, das betrifft jetzt diese fünf Dateien oder in der Datei passiert das, in der Datei passiert das. Da kann ich ihr schon ganz genau sagen, wo was ist und wo was passieren soll und kann dann halt eine konkrete Anforderung stellen. Das wäre sprachbasiert zwar möglich, stelle ich mir aber auch vielleicht bisschen mühselig vor, das so möglich zu machen. Hey, guckt mal in Datei XY, Endzeile 10 bis 20. Ist vielleicht Gewöhnungssache. Meins wäre es vielleicht nicht so unbedingt, Anna: Hm. Dennis: genau, ist stand jetzt auch, glaube ich, auch gar nicht möglich. Anna: Okay, und bei unserer Arbeit, also wo wir gerade auch die Plattform entwickelt haben, die Agents, wo wir auch schon drüber gesprochen haben, hattest du da von vornherein immer den GitHub-Copilot am Start, ist der erst so nach und nach dazugekommen, wie, sag ich mal, hat sich auch so dieses Handling bei dir entwickelt? Dennis: Also unabhängig von der Plattform oder sagen wir mal so unsere KI-Plattform, die wir selber entwickeln, war vielleicht so das Projekt, wo der Copilot immer mehr zum Einsatz kam. Angefangen hat das, ich sag mal, klassisch mit so einem Chat-Interface, das ist jetzt Claude oder Chat-GPT, wo man einfach Fragen stellt, vielleicht mal so einen Algorithmus programmieren lässt oder einen Fehler sucht in seinem Programmcode. Da muss man halt sagen, wenn man jetzt so ein externes Tool benutzt, wo man klassischerweise einfach nur chattet mit der KI, ist das stark geprägt von Copy and Paste. Also ich habe jetzt so ein Code Schnipsel, den ich da vielleicht reinpacke, vielleicht auch mal eine Datei oder beschreibe, was ich machen möchte. Und das war's. Der Vorteil beim Co-Pilot ist, dass ich quasi in meinem Projekt selber arbeite und dort alle Sachen referenzieren kann. Und das ist etwas, was ich auch lernen musste. genau, das hat sich dann so stückchenweise entwickelt. Also der ist eigentlich mittlerweile, ich sag mal, Bereichen der Entwicklung mein unterstützender Partner. Sei es jetzt darum, ich versuche, der Architektur zu entwickeln. Also welche Layer brauche ich jetzt, welche... Kleineren Projekte brauche ich, welche Klassenbibliotheken möchte ich einsetzen, welche Klassen brauche ich, welche Entitäten nachher in der Datenbank. Das bereite ich alles vor, aber quasi immer in Rücksprache mit der KI. Anna: Also ist das so bisschen so dein Sparing, man das so sehen, so der immer mal wieder Ideen reinbringt oder dich halt auch hinterfragt, hey Dennis willst du das wirklich so und so machen? Dennis: Genau, richtig. Also ich glaube, es ist schon wichtig, dass man Sachen selber vorgibt, damit man auch die Kontrolle behält. Also es ist halt vielleicht so der Gegensatz zum Vibe-Coding, wo theoretisch jemand, der überhaupt keine Programmierkenntnisse hat, einfach irgendwas erstellt oder erstellen kann. Also mir ist es schon wichtig, dass ich erstens mir selber Gedanken mache, was möchte ich überhaupt machen? Auch grob über die Software-Architektur, dass dann natürlich durchdiskutiere, weil ich Sachen übersehen kann, vielleicht falsch gedacht habe. So eine KI natürlich auch viel gesehen hat im Training, es mal so zu sagen. Es muss auch nicht immer gut sein, aber man kann es ja mal durchdiskutieren. Wie gesagt, genau so ein Sparing-Partner. Es war natürlich dann kein Mensch und kein erfahrener Entwickler auf der anderen Seite, aber dennoch eine Maschine, die Sachen sehr gut verstehen kann und auch sehr gut Empfehlungen aussprechen kann und durchgeben kann. Anna: Ich habe noch eine Frage beim ein bisschen zurück nochmal gesprungen. Du hast eben gesagt, das musstest du auch neu lernen, wenn es das ganze Referenzieren geht. Was meinst du genau damit, wenn du sagtest, hey, gerade du baust ein Projekt auf, du arbeitest eben, du entwickelst und du musst dann referenzieren? Was ist das genau? Dennis: Genau, also ich wusste es nicht, aber das ist so der große Vorteil an so einem Coding Tool, das ist quasi das, was ich beschrieben habe. Ich kann halt ganz in der ganzen Code Basis genau die Stellen der KI zeigen, die es geht. Also beispielsweise, Anna: Mhm. Dennis: ich schon, das kann auch ein Fehler sein, den ich gerade analysiere und ich weiß, okay, das hat irgendwas mit dieser Klasse zu tun. So, dann kann ich ihr sagen, okay. Ich habe hier diese und diesen Prozess. Dieser Fehler taucht immer auf. Ich vermute, ist halt irgendwo in dieser Klasse, ist was faul. So, und dann kann ich ihr diese Datei einfach nicht nur hochladen, sondern sie arbeitet quasi mit mir, die KI, im Projekt selber mit. Aber ich kann ihr sagen, guckt da mal rein. Anna: Mhm. Dennis: Aber gleichzeitig kann ich ihr auch die Befugnis geben, links und rechts zu gucken. Also sie könnte jetzt, wenn ich das erlaube, auch das ganze Projekt durchgucken, falls sie der Meinung ist, hey, Dennis, Schön und gut, das hat mit der Klasse überhaupt gar nichts zu tun. Ich gucke mal weiter, wo ich den Fehler finde. Das könnte sie dann nämlich auch machen. Das geht halt nicht so gut in so einem klassischen Chat-Tool wie ChatGPT beispielsweise, weil ich jetzt unmöglich das ganze Projekt da reinladen könnte. Könnte ich schon, aber dann hätte ich den Kontext gesprengt. Das wird eigentlich nichts bringen. Und auf der anderen Seite ist es halt dann auch ein quasi KI Agent, der da arbeitet und der dann in der Schleife das Projekt durchgeht, sich Datei für Datei durchschaut oder nach Filter natürlich auch Dateien sucht, die irgendwelche Begriffe beinhalten könnten und arbeitet sich so dadurch, bis er dann seine Aufgabe erledigt hat. Anna: Und dann einfach auch nochmal, vielleicht kannst du uns da nochmal mitnehmen, wie sag ich mal auch die Entscheidungskriterien gewesen sind, weil natürlich hört man auch viel von anderen Anbietern jetzt nicht nur von dem GitHub Copilot, sondern eben auch ChetchiBT mit Co-Work glaube ich, ne Codex, es rausgebracht haben, auch gerade im Bereich Programmierung, ne, Dennis: Mhm. Ja, genau. Mhm. Anna: Claude auch ganz, ganz stark in dem Sinne mit seinem Co-Work dann mit dabei. nur mal ein paar Beispiele zu nennen, es gibt Dennis: Hm? Anna: sicherlich auch wie gesagt noch viele andere Anbieter, die gesagt haben, hey im Bereich Programmierung wollen wir einen starken Fokus setzen, da wollen wir eben die Entwickler unterstützen. Was war sag ich mal auch für dich einfach entscheidend wirklich nochmal zu sagen, hey ich möchte jetzt mit dem GitHub Co-Pilot wirklich auch vorangehen und auch so die nächsten Projekte umsetzen. Dennis: Ja, also das war einmal die Möglichkeit, die wir haben. Also es gibt es bei anderen Anbietern auch. Es ist jetzt nicht, dass das das Nonplus Ultra ist, aber es ist jetzt das Zusammenspiel aus den Features, die der Co-Pilot mit sich bringt in den Sachen, die wir schon einsetzen und die Ergebnisse, die abgeliefert wurden quasi vom Tool. Einmal nochmal zurück. Wir benutzen eine bestimmte IDE, ein bestimmter Editor, das ist Visual Studio. Und da gibt es die Integration zum GitHub Copilot quasi aus einem Guss, weil dahinter halt Microsoft steckt. Und das war schon mal das erste große Kriterium, weil ich als Entwickler in meiner gewohnten Umgebung bleiben kann. Also ich muss mich jetzt nicht in so ein neues Interface einarbeiten von Codex oder Cloud Code oder was es halt alles gibt. Gibt es ja noch ganz ganz viele andere. Das heißt, ich kann eigentlich in meiner Arbeitswelt bleiben. Ich kann auch genauso weiter arbeiten wie zuvor. Nur dass, wenn ich möchte, ich mein GitHub QPilot da zusätzlich einsetzen kann. So das ist Anna: Hm? Dennis: so das Ding. Der zweite Punkt, der mich überzeugt hat, war, dass ich zwischen eigentlich allen Enterprise Modellen auswählen kann und auch innerhalb des Chats mittlerweile abwechseln kann. Das heißt, ich kann jetzt quasi in einer Session sagen, okay, das ist jetzt eine Aufgabe, die übernimmt GPT 5.3 Codecs und in der nächsten Aufgabe, vielleicht sogar im selben Chat, könnte jetzt so ein Opus 4.8 das übernehmen. Anna: Mhm, okay. Dennis: So, da habe ich dann die Variation. Und wie gesagt, der dritte, letzte Punkt ist, dass ich von der Qualität überzeugt war. Das ist dann natürlich einmal der Output vom Code, der dann erzeugt wird, aber auch die Qualität, wie das Tool an sich funktioniert, eben dieses Referenzieren von Dateien, dass ich da Skills mittlerweile einbinden kann, dass ich MCP-Server verbinden kann. Anna: Stopp, musst kurz sagen, Skills und MCP. Erzähl mal ein bisschen, was ist nochmal damit jetzt gemeint? Was sind Skills da in dem Kontext? Dennis: Genau. Ja, also Skills, das ist mittlerweile, ich würde sagen, ein Standard, den man seinen Agenten mitgeben kann. Kann man sich auch im Internet quasi schon vorgefertigte Skills runterladen. Und zwar sind das mehr oder weniger Markdown-Dateien, die eine bestimmte Fähigkeit beschreiben oder innehalten, die man dem Agenten mitgeben kann. Beispielsweise... gibt es auch von Microsoft vorgefertigt, habe ich auch quasi, je nachdem aktiviert, gibt es dort ein Skill, der den KI-Agenten quasi befähigt, richtig gut zu sein im Programmieren für Web APIs. Also richtig im Microsoft-Umfeld, im .NET-Umfeld. Da sind dann halt einfach Informationen drinnen hinterlegt, da ist vielleicht hinterlegt... wo man noch mal zusätzliche Informationen findet. sind vielleicht Codebeispiele mit hinterlegt. Da sind vielleicht sogar auch Skripte hinterlegt, die ausgeführt werden können. Das heißt, das sind vielleicht auch sogar Sachen, die ein LLM, also ein Agent am Ende des Tages per se, auch vielleicht schon irgendwo weiß. Das könnte natürlich auch passieren durch das Training, was das LLM erhalten hat. Aber hier nochmal explizit erwähnt werden, also vielleicht im Kontext ein bisschen nach vorne geholt werden. Aber vielmehr, wo natürlich die Stärke von Skills ist, dass im Best Case zusätzliches Wissen, zusätzliche Fähigkeiten einfach mit reingepackt werden können. quasi so ein Tuning für KI-Agenten, so könnte man das sagen. Das könnte jetzt auch ein Skill sein für, so legt man bei uns im Unternehmen eine PowerPoint-Präsentation an. Also Anna: okay. Dennis: so richtig mit Corporate Design und Identity-Vorgaben und so weiter. Das könnte ein Skill sein bei mir in der Programmierung halt wirklich, wo dann Expertenwissen vielleicht für bestimmte Programmiersparten drin ist, beispielsweise Anna: Mhm. Dennis: Web APIs oder eine bestimmte Bibliothek, ich einsetze. Und das muss dann auch nicht jeder Agent quasi alles haben, sondern ich kann jetzt sagen, okay, in dem Chatfenster behandle ich jetzt dieses Thema und da brauche ich jetzt Skill 1 und Skill 2. Genau. Kann man sich auch selber schreiben, aber es gibt schon super viel für sehr viele Themen, einfach Sachen, die man sich im Internet unterladen kann. Anna: Spannend. Und MCP, war so eine Abkürzung, du so geläufig benutzt hast. Aber was ist das denn nochmal? Dennis: Genau, hatten wir glaube ich auch schon ein paar mal erwähnt. MCP ist ein Protokoll, Model Context Protokoll, was sich auch so als Standard im KI-Umfeld etabliert hat. Der große Vorteil bei MCP ist, dass man quasi über dieses Protokoll Tools anbinden kann, also Werkzeuge, die die KI aufrufen kann, einfach via Protokoll. Man muss ja wissen, dass eine KI an sich eigentlich nichts machen kann. Also wir gehen ja schon mittlerweile selbstständig davon aus, dass eine eine PDF-Datei erstellen kann oder eine Excel-Liste auslesen kann. das kann, also das LLM dahinter kann das nicht. Es kann quasi die, ich sag mal, das Denken dahinter übernehmen. Aber es kann jetzt nicht selber Sachen durchführen, außer man gibt ihm via MCP beispielsweise bestimmte Tools an die Hand. können aber auch Ressourcen zur Verfügung stellen. Also beispielsweise ein MCP-Server, den ich bei mir per Standard immer verbunden habe beim Programmieren, ist der von der Microsoft-Dokumentation. Weil dann hat der KI-Agent, der für mich programmieren soll, immer Zugriff auf die Dokumentation, wo immer die neuesten Infos zu den Sachen sind, die ich halt fürs Programmieren brauche. So, das ist eine Möglichkeit, aber es könnte auch, dass es dann das eigentlich, wo es spannend wird. Es könnte aber auch beispielsweise einfach eine API sein, die bei uns im Unternehmen läuft und die auf unser CRM ERP zugreifen kann, dort vielleicht Sachen rauslesen kann, vielleicht sogar schreiben kann und wir MCP kann dann der KI Agent darauf zugreifen und damit arbeiten. Das ist halt Anna: Okay. Dennis: auch nochmal so ein Tuning Mittel für KI. Anna: Und wenn wir jetzt nochmal zum GitHub-Copilot ganz konkret zurückkommen, Dennis: Mh. Anna: kannst du mal so vielleicht auch grob uns mal mitnehmen, wenn wir zum Beispiel eben so einen Agenten aufsetzen wollen, wir wollen in dem Sinne programmieren, wir wollen eben nicht Vibe-coden. Wie fängt man an? Was sind so die ersten Schritte? Was ist so, was kommt bei rum? Wo sagst du, muss man auf jeden Fall darauf achten? Kannst uns einfach mal so grob mit durchführen, was ist, sage ich mal, zu tun? Dennis: Also genau, wenn man jetzt wirklich so ein leeres Blatt hat und steht jetzt so von neuem Projekt, dann würde ich mir auf jeden Fall vielleicht ein KI Tool zur Hand nehmen und die eigene Idee, die man hat. Vielleicht hat man ja auch schon im besten Fall eine Projektvorgabe, natürlich Anforderungen, die es zu erfüllen gibt. Und ich würde mir schon mal selber grob Gedanken machen, wie ich das Software technisch lösen möchte. Also soll es eine Web Anwendung sein, soll es eine Mobile Anwendung sein. muss das nachher skalieren können, ist es eine Desktop-Anwendung, was sind die Zielplattformen, auf denen das laufen soll, all diese Geschichten, die es halt vorher auch gab. Und dann würde ich das erst mal durchdiskutieren lassen. Das muss jetzt auch nicht der GitHub Copilot sein, das kann auch ein anderes KI-Tool sein, aber dass man sich erst mal so eine Meinung einholt. Und wenn man das dann so bisschen ausgereift hat, quasi das Projekt aus Entwicklersicht oder aus Software-Entwicklungssicht, würde ich dann mir Also natürlich je nach Kenntnisse, die man hat, Gedanken zur Architektur machen. Also beispielsweise, okay, ich weiß, es wird jetzt eine Web-Anwendung. Dann überlege ich mir, brauche ich eine Datenbank oder greife auf eine bestehende Datenbank zu. Brauche ich jetzt einen User Login, Autorisierungen, Authentifizierung? Brauche ich einen eigenen Identity Server? Brauche ich eine API, die vielleicht nachher auch extern verwendet wird von anderen Anwendungen? Habe ich einen Webclient? Wie soll dieser aussehen? Welche Schichten, also welche Klassenbibliotheken will ich vielleicht extrahieren? All das. So, dann habe ich irgendwann ein Konzept. Da gibt es ja auch quasi Methoden, da muss man das dran nicht neu erfinden. Da kann man sich dran orientieren, je nachdem, was man halt so alles gut findet. Und diskutiert das dann auch nochmal mit der KI durch. So, dann fällt vielleicht einem auf, will es sich jetzt vielleicht... Lose an diesem Standard orientieren, hast du hier aber vielleicht ein paar Fehler, dann kannst du sagen, ja, okay, das sind jetzt keine Fehler, sondern das sind einfach Abweichungen, die ich mir selber vorgenommen habe von diesem Architekturmuster. Genau, und diskutiert das so durch. Und im besten Fall macht man daraus quasi in Anführungsstrichen einen verbindlichen Vertrag mit der KI. Das heißt, man sagt, Diese Projekte werden angelegt, diese Schichten werden angelegt, also beispielsweise dann gibt es diese API, dann gibt es diesen Webclient, dieses Framework wird dafür benutzt und so weiter und so fort. Business Logik kommt nachher in diese Klassenbibliothek, Datenbank Zugriff in diese andere. Alles quasi was man sich so auch überlegen würde, nur dass man das quasi einmal auch am besten festschreibt, da kann man dann auch wieder einen eigenen Skill draus machen. wo dann einfach definiert ist, okay, das ist unsere Architektur und die ist quasi fürs Projekt verbindlich. So, und dann kann ich damit eigentlich anfangen zu arbeiten, weil dann weiß der KI Agent, okay, so und so muss ich arbeiten, so und so muss ich quasi Code-Bestandteile aufteilen. Ich als Entwickler weiß das auch. Und was ich auch ganz gerne mache, ist, dann frage ich einfach, hey, wie viel wird zu starten? Anna: Okay. Dennis: Und dann legen wir los. Was schon ratsam ist, man kann schon versuchen, die ersten Programmbestandteile komplett selber zu programmieren, weil dann geht das auf jeden Fall in so eine Richtung, die man zu 100 Prozent gesteuert hat, so wie man sich das halt vorgestellt hat. umso mehr Code man quasi selber schon vorprogrammiert hat, umso eher versteht die KI auch so den eigenen Stil, würde ich sagen. Und geht vielleicht so best case ein bisschen darauf ein. Das sind dann halt auch nochmal so Sachen, die man in einem Skill zusammenpacken könnte, also wie man programmieren möchte. Das sind Sachen, die man dann erstmal lernen muss. Und dann kommt es so bisschen darauf an, wie viel möchte man der KI zutrauen und wie viel halt eben nicht. Also wie... quasi wie viel Code der KI Agent am Ende des Tages schreiben soll. ja, genau, weil Anna: Viel Freiheitsgrad wahrscheinlich der hat auch bekommen. Dennis: natürlich kann der KI Agent ja alles programmieren. Das wird auch irgendwann am Ende des Tages funktionieren. Aber mir ist es immer wichtig, die Kontrolle zu behalten. Also ich muss wissen, was irgendwo passiert. Ich muss selber wissen, in welchen Programmbestandteilen, welche Code-Bestandteile auch. sind, also welche Logiken. Ansonsten gerät man ganz schnell ins Schwimmen, weil es wird der Punkt kommen, wo irgendwas nicht funktionieren wird und wenn man dann nicht herausfindet, woran es liegt, weil die KI es auch nicht herausfindet, wird es richtig schwierig. Und das ist auch, ich sag mal, ein bisschen überwältigend und auch schwieriger als es vorher war, weil man natürlich viel schneller zu Programmcode kommt als vorher. ist halt so. der Zeitfaktor ist halt ein ganz anderer, indem man halt wirklich Code produziert, außer man war halt schon 10x oder 100x Programmierer. Und das muss man halt handeln können. Ob man jetzt, ich sag mal, irgendeine Zahl zu nennen, ob man jetzt 1000 Zeilen Code am Tag programmiert hat oder jetzt vielleicht 10.000. Unabhängig davon, wie realistisch diese Zahlen sind oder nicht, oder dass die Menge von Code-Zeilen eigentlich auch nicht ausschlaggebend sind, aber einfach der Output in der Geschwindigkeit ist natürlich ein ganz anderer. Und das muss man zügeln können, das muss man auch irgendwie verarbeiten können, als derjenige, der halt am Ende des Tages die Verantwortung trägt. Und das ist nicht die KI. Anna: Ich finde das nochmal ein ganz wichtiger Punkt, so zum Abschluss auch dieses Outcome, was du auch gesagt hast, weil man kriegt das ja auf unterschiedlichsten Ebenen mit, jetzt gar nicht mal nur im Bereich der Programmierung, aber sei es soziale Medien, sei es, wenn du es jetzt gerade das Thema in der Softwareentwicklung auch angesprochen hast, und da wird ja auch ganz, schnell über dieses Thema AI-Slop gesprochen. Also es gibt einfach so viel, aber wo so viel halt einfach auch in Anführungszeichen Bullshit dabei ist, weil in dem Sinne es einfach nur rausgespreadet wird. und keiner hat nachher mehr die Kontrolle, keiner kann es mehr warten, keiner weiß in dem Sinne mehr, wo überhaupt irgendwas ist oder wo mal was angepasst werden könnte oder müsste, weil man einfach gar nicht mehr versteht, was da genau produziert wurde. Dennis: Genau, ich meine, diesen Effekten gab es schon immer, weil klar hattest du in der Programmierung auch Bibliotheken, gängig waren, Designvorlagen, gängig waren. Also es haben sich auch vorher Sachen geähnelt. Das ist jetzt vielleicht einfach noch bisschen doller geworden. genau, dieses AI-Slop gibt es quasi in der Programmierung eigentlich auch. wo halt wirklich noch mehr von diesem 0815 Zeug einfach auf den Markt kommt, wo man aber auch merkt, dass sich App Store Anbieter dagegen versuchen zu wehren. ich meine gelesen zu haben, dass sich Apple beispielsweise enorm dagegen wehrt, gevibe-codete Apps auf den Markt zu bringen. Anna: okay. Dennis: Gerade Apple hat ja auch sehr strenge Richtlinien oder schon ja doch sehr strenge Richtlinien Apps quasi in den Store reinzukriegen. Das heißt, das wird halt alles geprüft. Ganz oft ist es so, dass man dann noch mal in eine Korrekturschleife reingehen muss, weil Apple irgendwas angekreidet hat. genau das ist halt bei Vibe-Coding Apps halt noch ein bisschen doller, weil die Leute wahrscheinlich nicht wissen, worauf geachtet wird, worauf man achten muss. Und es gibt auch da natürlich im Programmcode, ich sag mal, Muster, die sich dann abtun. Das ist Anna: Hm. Dennis: halt einfach aufgeblähter Code, ohne Sinn und Verstand irgendwo. Wenn man die Züge loslässt quasi und die KI einfach machen lässt, dann hat man einfach viel zu viel für das, was man am Ende des Tages erzielen möchte. Das fällt auf und das möchte man eigentlich nicht haben. Also die Anna: Hm. Dennis: Qualität wird dann halt durch sowas schon gespälert. wenn man sich zu 100 Prozent darauf verlässt. Anna: Ja, super spannend. Danke Dennis, dass du uns da heute mal konkrete Einblicke gegeben hast, wie du mit dem GitHub Copilot unterwegs bist, was es da für Möglichkeiten gibt, wie du dich vor allen Dingen auch für, ich sag mal, das Tool entschieden hast und wir hoffen, dass wir da dem einen oder anderen vielleicht auch nochmal eine Möglichkeit aufzeigen konnten, wie man entsprechend programmieren kann, eine Alternative zum Vibe-Coding hat und würden uns natürlich über Feedback freuen. Schreibts gern mal. Schreibt uns gerne mal an, wie es euch gefallen hat oder ob ihr vielleicht selber Erfahrung schon mit dem GitHub Copilot habt. Wir würden uns sehr darüber freuen, wenn wir da in den Austausch gehen könnten. Dennis: Genau, würde mich auch freuen. Einen Punkt haben wir heute wieder nicht geschafft, das holen wir, glaube ich, als extra Thema nach. Und zwar natürlich die Abhängigkeit dann von entsprechenden Anbietern. Da ist der GitHub Co-Pilot ein Beispiel, wo wir eigene Erfahrungen gesammelt haben. Kann man natürlich auch auf andere Anbieter ausrollen, da können wir dann nochmal gesondert drüber sprechen. Anna: Dann lass uns das doch direkt in der nächsten Folge machen. Große Stichwort digitale Souveränität, Open Dennis: Genau. Anna: Source versus die proprietären Anbieter. Und dann Dennis: Hmm? Anna: würden wir es heute dabei belassen und die nächste Folge genau damit starten. Okay, bis dann. Ich danke dir. Ciao. Dennis: Mach mal so. Ciao!