Alle afleveringen
S05E07 - Invloed van AI op het vak IT
S05E07

Invloed van AI op het vak IT

Seizoen 5 18 min Hosts: Joop Snijder & Niels Naglé
0:00

Wat leer je in deze aflevering?

Joop Snijder (CTO bij Aigency) en Niels Naglé (Chapter Lead Data&AI bij Info Support) bespreken hoe AI-tools zoals ChatGPT en Copilot het vakgebied van IT-professionals veranderen. Ze vergelijken deze transitie met de opkomst van internet en delen hun persoonlijke ervaringen met AI-assistenten bij het schrijven van code.

01
AI als digitale junior developer De hosts beschrijven AI-tools als een assistent die routinematig werk overneemt, zoals het schrijven van standaardcode. Je valideert de output altijd, net zoals je een code review doet bij collega's.
02
Efficiënter werken met minder detailkennis Developers hoeven niet meer alle technische details te kennen om resultaat te bereiken. Joop schreef zelf in twee dagen twee applicaties met ChatGPT, inclusief tests, ondanks dat hij lang niet had geprogrammeerd.
03
Nieuwe vaardigheden worden belangrijker Taalvaardigheid, abstract denken en creativiteit winnen aan belang. Het stellen van de juiste vraag in natuurlijke taal is cruciaal, anders kost AI juist efficiëntie.
04
Reverse engineering en code-analyse AI kan bestaande code uitleggen, herschrijven naar nette standaarden, documenteren en vertalen naar andere programmeertalen. Dit is vooral waardevol bij slecht gedocumenteerde legacy-projecten.

Kernbegrippen

Prompt engineering
Het formuleren van duidelijke, specifieke vragen in natuurlijke taal om AI-tools optimaal in te zetten voor gewenste resultaten.
Code review
Systematische controle van geschreven code door collega's op kwaliteit, veiligheid en naleving van standaarden voordat implementatie.
Legacy-code
Bestaande, vaak slecht gedocumenteerde programmacode uit eerdere projectfasen die nog steeds in gebruik is.
AI-assistentie
Automatische ondersteuning bij routinematige taken zoals coderen, waarbij menselijke validatie en oordeel essentieel blijven.

Transcript

Welkom bij een nieuwe aflevering van de AI Today Live podcast. Mijn naam is Joop Snijder, ik ben CTO bij Aigency. En mijn naam is Niels Naglé, chapter lead Data&AI bij Info Support. Hé Niels, we hebben denk ik vandaag een mooi onderwerp. En dat is namelijk de impact van AI op het vakgebied van de IT. Wij zijn natuurlijk technisch aangelegd en we kijken vaak hoe wij middelen in kunnen zetten bij klanten. Maar wij worden nu in die zin uitgedaagd, namelijk dat AI ook invloed gaat hebben op hoe wij ons werk gaan doen. Ja, mooi toch? Fantastisch. Sommige mensen vinden het misschien beangstigend, maar ik vind het inspirerend. Ja, vanuit de IT zijn we gewend om om te gaan met verandering. Dus in het verleden hebben we meer grote veranderingen gehad. En ik denk dat dat juist heel interessant is, waardoor we misschien ook juist dit als passie hebben, toch? Ja, zeker. Die verandering moet er zijn. Dat geeft me energie. En ik zie bij jou ook als er weer wat nieuws uitkomt, dan zie ik je sprankelen van 'Goh, wat gaan we hiermee kunnen?' En 'Hoe gaat ons werk veranderen?' Ja, en dan ik denk juist met de komst van ChatGPT dat het voor iedereen nu heel zichtbaar is. Wat mij betreft was er al behoorlijk wat invloed vanuit de nieuwe technologieën op ons vakgebied. Maar ik denk met ChatGPT, Copilot, dat soort producten die er nu zijn, dat het voor iedereen in ieder geval heldig gaat worden dat er een verandering is die niet meer terug te draaien is. Ja. Voor mij voelt het heel erg als de opkomst van internet. Ik was al aan het werk toen dat gebeurde. Wat ik daar toen zag is dat er ook in eerste instantie heel erg tegen werd gehouden van geen internetgebruik bij klanten. Want ja, dat kon je afleiden. Weet je, er waren allerlei redenen te bedenken, wat mij betreft allemaal non-argumenten, om die nieuwe technologie niet te gebruiken. En misschien gaan we dat, nou zullen er organisaties zijn die daar nu ook zo over denken. Ja, dat beeld heb ik wel inderdaad. Maar je gaat er niet aan ontkomen. Nee toch? Hetzelfde met internet. Ja, ik ben niet gestart met internet zonder internet. Dus voor mij is het gewoon altijd aanwezig. En laat staan voor mijn kinderen, die kennen niet anders. En ik denk dat je daar weg zou denken. En ik denk dat we over een paar jaar ook zo terugkijken naar deze ontwikkeling die we nu... zien gebeuren. En daar hebben we mee moeten leren omgaan. En dat geldt ook voor deze technologie. Dus de fantasie prikkelt heel erg. Net alsof, weet ik veel, ChatGPT nu alle code of alle programmatuur voor je kan schrijven. Dat is natuurlijk niet zo. Maar, er gaat wel wat veranderen. Zeker. Welke veranderingen zie jij? Nou, de verandering die ik persoonlijk zie is dat je soms de details niet hoeft te weten... ...van wat er eigenlijk onder water gebeurt om hetgene wat je wil te gaan bereiken. Dus je wil een stukje code hebben dat al 20.000 keer geschreven is... ...en dat heb je nu ook nodig in je applicatie. In plaats van weer even de details helemaal in te moeten duiken... ...vraag je het, je krijgt een stukje code, je valideert altijd nog eventjes... ...je zorgt dat er het test ook eventueel zelfs gegenereerd wordt. Dus je doet wel de kwaliteitsstempels. Je kan dus efficiënter en sneller het doel bereiken met minder kennis. En zelfs als je genoeg kennis hebt, is het heel fijn om een soort assistent te hebben... die het saaie werk, de heavy lifting voor je doet. En waarbij je jezelf meer kan richten op de dingen die je assistent uiteindelijk niet kan. Dus zie je het als een soort junior developer die je op dit moment nog bij je hebt. Ik verwacht in de toekomst dat hij steeds meer... Hij groeit naar junior, senior. Als we dat in dezelfde vergelijking mogen gaan trekken. Maar op dit moment is het denk ik echt een hele goede assistent... waar je werk aan kan uitbesteden. En volgens mij zelfs onze senior developers doen ook code reviews. Dus ook daar neem je niks klakkeloos over. Als het goed is ben je bezig met bedrijfskritische applicaties. Dus wat dat betreft, niks nieuws onder de zon. Behalve dat je nu altijd en overal toegang hebt tot je assistent. Dus je hebt ieder moment iemand om mee te sparren, om inspiratie op te halen. En zoals je gewend bent van je collega's, doe je inderdaad wat je zegt altijd een peer review. Je doet altijd nog een validatie. Dat zit tegenwoordig al in onze way of working, in het proces. Dat je die kwaliteitsstempels doet en dat geldt hier niet anders voor. Collega's kunnen fouten maken, ook dit soort modellen kunnen fouten maken. Dus het is wel van belang dat goed te controleren. Ja, en ik denk dat het heel erg gunstig is, omdat je ook... Kijk, als je met Chat Repité of Copilot aan de slag kan, is dat hij heel veel programmeertalen ondersteunt. Ja. Ik heb zelf een hele tijd niet meer geprogrammeerd. Dus ik ben met ChatGPT aan de slag gegaan. En ik heb daar gewoon in twee dagen twee applicaties kunnen schrijven. Omdat ik heel goed wist wat ik wilde. Dat kon ik vragen. Dan kreeg ik code uit. Die kon ik inderdaad runnen. Ik heb daar testen voor kunnen laten maken ook door de ChatGPT. Dus ik kon ook echt testen of die deed wat ik verwachtte. Ja, en hoe fijn is dat? en zelfs wat complexere zaken. Ik kon vragen van, hoe zou ik dit parallel geprogrammeerd kunnen krijgen? Dan kreeg ik ook gewoon drie opties waarbij ik een uitleg krijg van... van deze optie, als je heel veel schijfacties naar disk hebt, dan kan je beter deze gebruiken. Als je heel veel gebruik maakt van je CPU, dan kan je beter deze gebruiken. Dus ik krijg ook echt opties. Tuurlijk moet ik dan zelf nadenken, daar kiezen. Maar dat is ook wat ik wil. Een paar dingen die, zoals je er zo zegt, naar boven komen... Je weet goed wat je wil. Ik denk dat dat een belangrijke is. Dat je ook weet waar je het over hebt. Dus dat je ook het foutje zou kunnen herkennen wat eruit komt. Dus je weet wel genoeg van de materie om de diepte in te kunnen duiken. En je hebt eigenlijk net gezegd wat we met collega's onderling ook doen. Namelijk het sparren, zeggen dat we opties hebben tot onze beschikking. De voor- en nadelen daarna kunnen afwegen. Ja, eigenlijk is het gewoon een extra collega die je erbij hebt. Ja, precies. Het betekent wel dat er misschien wat aanpassingen zijn in skills. Wij zijn van huis uit natuurlijk heel goed in het programmeren, in heel erg deterministisch nadenken. We gaan het nu veel meer hebben over uiteindelijk, hoe moet je uiteindelijk praten tegen zo'n chatbot, zodanig dat je daar ook iets uit krijgt wat je wil. Ja, dus juist weten wat je wil, hoe je dat kan vragen op basis van welke modellen je eronder gebruikt, zal het verschillen hoe je je vragen moet stellen. Dus die context snappen en begrijpen, om je werk efficiënt te maken, want als je dat niet goed begrijpt, dan gaat het juist efficiëntie kosten, is mijn idee. - Ja, nee, zeker. En het gaat verder dan het stellen van wat zoekacties op Google, dus daar zijn we natuurlijk heel erg gewend om juist met keywords te werken, misschien juist niet teveel context geven, dat je dat zelf uit kan zoeken. Hier moet je in natuurlijke taal, in volzinnen, duidelijk schrijven, niet ambigu zijn, dus niet dingen met dubbele betekenis, specifiek. Dus het vergt zo direct veel meer taalvaardigheid dan misschien de programmeervaardigheid. Ja, hetzelfde denk ik met name ook het abstract denken en de creatief denken, dat dat meer waarde gaat krijgen in dit soort oplossingen. Ja, want het is een heel krachtig middel, maar er zitten ook een aantal beperkingen aan. En dus één van de beperkingen is creativiteit. Dat zit er niet in, het is een hele handige papegaai. Dus hij moet iets geleerd al van tevoren hebben om daar woord voor woord voorspellingen voor te doen. Ook qua code schrijft hij woord voor woord variabelen voor variabelen. En zo programmeert uiteindelijk dat ding. Als je iets radicaals nieuws wil, echte innovatie zal vanuit ons zelf moeten komen. Dus daar moet je wel rekening mee houden. Juist nog mooier dat we met die innovatie nog meer innovatie kunnen creëren. En dus op de innovatie ook wel moeten blijven zitten. Ja, en dat is aan de innovatie kant. De case die ik zelf echt helemaal geweldig vind, is van stel je komt op een nieuw project. En daar ligt natuurlijk een hele berg code. En daar moet jij als developer worden gezegd van, "Oh ja trouwens, hier zit een bug in die code, los het even op." Nou misschien is die redelijk gedocumenteerd, misschien niet gedocumenteerd. Laten we er even van uitgaan dat het code is die gemaakt is door een concurrerend bedrijf van ons. Oftewel, die is niet gedocumenteerd. Het is matig geschreven. Hoe kan dan uiteindelijk zo'n assistent jou helpen? Dat het al begint met dat je kan vragen om een stuk code uit te laten leggen. Je copy-paste die code en dan vertelt je uiteindelijk wat dat ding doet. Je kan vragen om hem om te laten schrijven. Je kunt vragen of je er nette code van maakt. Wat is dan nette code? Die discussie gaan we natuurlijk dan wel over. Er zijn natuurlijk allerlei... - Standaarden en richtlijnen die je kan hanteren. Daar heb je ook meerdere opties. Precies. - De leesbaarheid komt tot de goede... maar ook de begrijpbaarheid inderdaad. Als je daar heel specifiek in bent, bijvoorbeeld stel het is Python code... kan je echt zeggen, maak dit Pythonic. Dat is gewoon een beschreven standaard en dan houdt hij zich daar aan. En dan krijg je in ieder geval veel meer leesbare code. Je kan vragen, documenteer dit, maak je testen van. Dus je kan zodanig testen laten maken, dat als je die run je... en als die het doet, kan je je code nog verder gaan aanpassen. En moeten die testen het blijven doen? En de volgende stap zou kunnen zijn, schrijf je hier een specificatie voor? Ja. Want dan documenteer je het ook zodanig, zeg maar, dat je ook misschien de businesswaarde vastlegt. Reverse engineering, Joop. Reverse engineering met een AI-assistent. Hoe cool is dat? Ja, o, mooi. Nog eentje die ik zelf ook wel interessant vind, is het stukje meerdere talen kunnen ondersteunen. Ik heb zelf met name ervaring met SQL, dat je ook kan zeggen, kan je dit eens vertalen naar SQL-code, of van SQL naar Python, van Python naar andere talen, om eigenlijk hetzelfde doel te bereiken, en toch even te kunnen vertalen naar een tool. Dus eigenlijk heb je ook gelijk een learning platform, om nieuwe talen te gaan verder kunnen ondersteunen, en ook dat meer eigen te gaan maken. Ja, precies. Dat is denk ik ook een hele mooie. Juist omdat je weet wat je wil, kan je ook inderdaad gaan kijken van hoe zou dat in een andere context moeten en kunnen. Ja, het is een hele mooie manier om nieuwe dingen te leren. Ja, zeker. Wat heb je ook al gemerkt op dit gebied, wat niet handig is, wat niet kan? Nou ja, daar zit je toch wel op de innovatie tak. De nieuwe innovatieve solutions of technologies, die zullen niet direct gesupported zijn. Dus daar zitten wel wat limitaties. Maar voor de rest, ja, nee. Ik heb nog niet echt waar die niet inspireert of in ieder geval je triggert om het anders te bekijken. Nou richten we ons natuurlijk heel erg op ChatGPT, Copilot. Copilot is eigenlijk een beetje op dezelfde taalmodel getraind als ChatGPT. maar het zit in een wat andere interface en net iets ander model eronder. Maar wat we niet moeten vergeten is dat er namelijk veel meer tooling beschikbaar is... die je kan helpen als IT. Van huis uit zijn we misschien niet het beste in taal. Laat staan iets in businesstaal uiteindelijk beschrijven. Wat deze AI tools voor je kunnen doen, is ook die vertaling. Dus jij zegt van de ene programmeert aan naar de andere programmeert aan. Maar je kan dus ook van de ene tone of voice naar de andere tone of voice. Dus je hebt een technisch stuk geschreven en je kan zeggen van schrijf dit nou eens even om... zodat het begrijpelijk is voor business of begrijpelijk is voor sea level. Dus het kan je ook heel erg helpen om je beter uit te drukken... om duidelijker te maken wat je wil, vragen naar, ja precies eigenlijk, op zoek naar antwoorden. Dus wat zijn de juiste vragen om het antwoord te krijgen waar je naar op zoek bent? Ja, ook hier weet weer wat is je doel, wat is je publiek en daarbij kan die je ondersteunen. Ik heb zelfs wel weleens wat stopwoordjes in mijn tekst en die herken ik op de duur zelf niet meer. En dan zeg ik, nou, dan kan je aan deze tekst wat krachtiger neerzetten. En eigenlijk is het zo simpel als sommige woordjes weglaten. en een andere tone of voice introduceren. Daar gebruik ik het heel erg regelmatig voor. Ja, ik gebruik ook heel veel, dit tool heet languagetools.org. Daar check je grammatica aan je zinnen. En ik doe dat zowel in het Engels als Nederlands, die ondersteunt heel veel talen. Maar wat daar echt heel gaaf aan is, is dat je namelijk ook zinnen kan... Hoe zeg je dat in het goed Nederlands? - Herschrijven? Ja, herschrijven. We zijn wel geneigd om snel passieven te schrijven. Maar dan krijg je eigenlijk vier, vijf opties op zo'n zin. Zo kan je hem ook schrijven. Zo maak je hem meer formeel, zo maak je hem meer informeel. Zo wordt hij eenvoudiger. En het helpt je bij dat hij aangeeft hoe leesbaar je tekst is. Dus ook dat soort toolingen, niet alleen maar richting programmeren, maar juist ook richting uitdrukken. Wat wil je ophalen, documenteren voor de toekomst? Je documenteert altijd voor je toekomstige zelf. Dat dat gewoon helpt. Ja, daar krijg je ook ondersteuning bij. We kunnen ons weer meer richten op hetgeen waar wij meer waarde kunnen creëren. Iets wat we natuurlijk in de IT al jaren doen, je hebt het net al aangehaald, is programma's en applicaties bouwen om de bedrijfskritische processen goed te laten verlopen. Waardoor mensen die daar eerst al heel handmatig werk hadden, zich nu kunnen focussen op andere zaken. Hetzelfde geldt voor ons eigen vakgebied. Daar vindt ook die ontwikkeling plaats. Prachtig. Ja toch? Waar moeten mensen beginnen, vind jij Niels? Nou, bijblijven bij deze ontwikkelingen. Dat is denk ik stap één. weten wat er is, wat de mogelijkheden zijn. En heb je nog niet, chat-GPT is één van de oplossingen die je noemt, maar er zijn er veel meer. Ga op onderzoek uit. Pas het toe. Ga ermee prototypen. Zeg niet gelijk ga je mee ook zaken voor productie dingen maken, maar laat jezelf ondersteunen, weet wat er is. Want anders dan sta je dadelijk 1-0, 2-0, 3-0, misschien wel 4-0 achter... voordat je begonnen bent. Dus zorg dat je bij blijft. Ja, helemaal met eens. Wat ik merk, nou zeker ik ben nu zo'n jaar bezig met GPT 3, veel gebruikt. Nou ja, sinds november afgelopen jaar natuurlijk ChatGPT. Wat je merkt is dat je er steeds handiger in wordt. Je krijgt er meer uit, de resultaten zijn beter. En de enige manier om dat te doen is door het gewoon veel te gebruiken. - Te doen. Ja, want je merkt ook waar de onmogelijkheden zitten. Je krijgt meer context, je krijgt meer gevoel. Hetzelfde als je nieuwe taal gaat leren, ook daar zal je in het begin even struggelen. En ook daar word je steeds beter in. Hetzelfde geldt voor deze ontwikkeling. Zorg dat je de tijd en energie instopt en dat wint zich over de tijd weer terug. Lijkt me nou mooi om mee af te sluiten. Zeker, dus allemaal mee aan de slag.