AIToday Live

S06E63 - Exclusief: Willem Meints deelt ervaringen met GitHub Copilot Workspaces

August 04, 2024 Aigency by Info Support Season 6 Episode 63

Welkom bij deze aflevering van AIToday Live! Vandaag duiken we in de fascinerende wereld van AI-gestuurde softwareontwikkeling, met een speciale focus op GitHub Copilot Workspace.

Onze experts Joop Snijder, Niels de Naglé en Willem Meints delen hun ervaringen en inzichten over deze innovatieve tool. GitHub Copilot is een AI-ontwikkelaar die code genereert op basis van tekstuele beschrijvingen.

Dit bespaart tijd en maakt het ontwikkelproces efficiënter. Copilot fungeert als een junior ontwikkelaar die helpt bij het specificeren en implementeren van taken.

De voordelen van AI in softwareontwikkeling zijn talrijk, maar er zijn ook uitdagingen zoals het waarborgen van codekwaliteit. Transparantie en ethiek in AI-gebruik zijn cruciaal.

De toekomst van AI-tools zoals Copilot ziet er veelbelovend uit, niet alleen in softwareontwikkeling maar ook in andere creatieve processen.

Links

Aigency
Aigency ontwerpt en ontwikkelt waardevolle, robuuste en betrouwbare Machine Learning-modellen.

Info Support
Info Support is de specialist in maatwerk software en leidend in kunstmatige intelligentie (AI).

Disclaimer: This post contains affiliate links. If you make a purchase, I may receive a commission at no extra cost to you.

Schrijf je in voor onze nieuwsbrief en ontvang exclusieve toegang tot nieuws, blik achter de schermen en meer!

1
00:00:00,001 --> 00:00:08,400
Hoi, welkom bij een nieuwe aflevering van AIToday Live, de Nederlandse podcast over kunstmatige

2
00:00:08,400 --> 00:00:15,920
intelligentie. En in de maandag uitzending praten we altijd met experts op het gebied van AI. En

3
00:00:15,920 --> 00:00:19,880
of je nu een zakelijke professional, IT specialist of AI enthousiasteling bent,

4
00:00:19,880 --> 00:00:25,080
wij bieden waardevolle inzichten een duidelijke uitleg over de nieuwste ontwikkelingen en

5
00:00:25,080 --> 00:00:30,840
toepassing in de wereld van AI. Zo, dat is een mond vol Niels. Wat anders. Ja, we doen het allemaal.

6
00:00:30,840 --> 00:00:35,480
Ja toch? Zeker, maar dan weten de mensen in ieder geval, want we hebben een hele stroom nieuwe

7
00:00:35,480 --> 00:00:40,400
luisteraars erbij, weten zij ook waar ze naar luisteren. Het enige wat we nog niet hebben

8
00:00:40,400 --> 00:00:45,200
gedaan is onszelf even voorgesteld. Mijn naam is Joop Snijder, CTO bij Aigency. Mijn naam Niels

9
00:00:45,200 --> 00:00:51,760
de Naglé, Area Lead Data & AI AI bij Info Support. En vandaag hebben we te gast Willem Meints. Willem,

10
00:00:51,760 --> 00:00:57,040
zou je jezelf even willen voorstellen? Ja, ik ben Willem Meints, ik werk als Chief AI Architect

11
00:00:57,040 --> 00:01:03,480
voor Info Support. Mijn dagelijks werk bestaat uit allerlei gevaarlijke dingen doen met AI. Nou,

12
00:01:03,480 --> 00:01:08,480
gevaarlijk niet, ik ben eerder van de veiligheid eigenlijk. Maar allerlei nieuwe dingen met AI

13
00:01:08,480 --> 00:01:14,240
bezig, klanten aan het helpen, collega's aan het helpen. Ja, en we hebben deze eigenlijk als een

14
00:01:14,240 --> 00:01:20,680
soort van, nou ja laten we zeggen, spoedopname ingepland, want de afgelopen dagen hebben Willem

15
00:01:20,680 --> 00:01:27,840
en ik lopen stuiteren werkelijk maar. Blije eitjes. Blije eitjes hebben we samengewerkt en hebben

16
00:01:27,840 --> 00:01:35,040
gezien zeg maar wat het betekent als je een AI developer inzet. En deze aflevering gaat echt

17
00:01:35,040 --> 00:01:43,080
best wel, nou gaat over programmeren, softwareontwikkeling. Dus als je in de IT zit,

18
00:01:43,080 --> 00:01:49,960
moet je zeker blijven luisteren, maar ook, let op, ook als je marketeer bent, copywriter. Iedereen

19
00:01:49,960 --> 00:01:55,800
eigenlijk waar het gaat over schrijven en je krijgt straks een AI assistent, dan gelden dit soort

20
00:01:55,800 --> 00:02:04,640
dingen ook. Dus de aflevering gaat over IT, maar alle concepten die wij vandaag gaan bespreken,

21
00:02:04,640 --> 00:02:11,480
die kan je straks zelf ook gaan toepassen. Dus blijf luisteren. Ja Willem, misschien dat jij

22
00:02:11,480 --> 00:02:20,560
eventjes wat context kan schetsen van wat wij gedaan hebben. Ja, we hebben dus met een AI

23
00:02:20,560 --> 00:02:26,360
developer voor het eerst mogen samenwerken. Ik weet niet of het helemaal, ik moet nog een beetje

24
00:02:26,360 --> 00:02:34,280
wennen aan de terminologie. We hebben concreet met een product, Copilot Workspace, gewerkt. Dat

25
00:02:34,280 --> 00:02:39,880
is een AI developer die in staat is om van een textuele omschrijving van een stukje werk,

26
00:02:39,880 --> 00:02:45,760
om dat helemaal voor jou uit te voeren tot een werkende code. Dus wat je normaal gesproken

27
00:02:45,760 --> 00:02:51,920
een iemand nodig hebt die de analyse doet van wat wil de klant, een architect om te bedenken hoe de

28
00:02:51,920 --> 00:02:56,280
structuur moet worden en een ontwikkelaar om die code te schrijven, hebben we nu dus een stuk

29
00:02:56,280 --> 00:03:03,080
gereedschap gebruikt om dat voor elkaar te krijgen, in veel minder tijd ook. Ja, en dat gaan we zo

30
00:03:03,080 --> 00:03:11,680
direct even helemaal uitkleden. Maar laten we eerst beginnen Willem, die AI developer. Dat is

31
00:03:11,680 --> 00:03:16,680
GitHub Copilot. Hoe verhoudt zich dat? Dus we dat even moeten uitleggen aan de luisteraars tot

32
00:03:16,680 --> 00:03:23,680
bijvoorbeeld ChatGPT. Ja, dus de meeste mensen zullen ChatGPT kennen als dat is het ding waarmee

33
00:03:23,680 --> 00:03:30,440
ik tekst kan genereren en afbeeldingen tegenwoordig en geluid ook nog. Maar eigenlijk wat ChatGPT is,

34
00:03:30,440 --> 00:03:36,720
is een agent, een digitale assistent die je kan inzetten voor het uitvoeren van taken. Zo moet je

35
00:03:36,720 --> 00:03:41,320
Copilot ook wel een beetje zien als een assistent die jou gaat helpen met het uitvoeren van jouw

36
00:03:41,320 --> 00:03:46,440
taken. Alleen een hele specifieke, dus deze kan programmeren. Ja, hij kan buiten het programmeren

37
00:03:46,440 --> 00:03:52,160
kan hij ook niet heel veel anders. Ik zag dat hij ook nog een beetje kan documenteren, maar daar

38
00:03:52,160 --> 00:03:57,320
stopt het. Dus hij is gespecialiseerd? Een gespecialiseerde versie zou je moeten zien

39
00:03:57,320 --> 00:04:04,280
van een ChatGPT. Ja, een ChatGPT heeft de welbekende interface met chat, een tekstvak onderin

40
00:04:04,280 --> 00:04:08,920
waar je jouw bericht in typt, jouw prompt en daarboven een gespreksgeschiedenis met alles

41
00:04:08,920 --> 00:04:16,360
wat hij genereert. Bij deze Copilot ziet er ook heel anders uit. Die heeft geen chatbox,

42
00:04:16,360 --> 00:04:23,600
dat kent hij niet. Hoe gebruik je het dan? Ja, nou dat is wel leuk om daar naar te kijken.

43
00:04:23,600 --> 00:04:31,480
Ik denk dat niet heel veel luisteraars bekend zijn met wat voor software wij gebruiken als IT'ers om

44
00:04:31,480 --> 00:04:38,040
software te bouwen. In dit geval begint dat met GitHub. Dat is een website waar heel veel open

45
00:04:38,040 --> 00:04:42,160
source projecten in de wereld worden gehost. En die website is bedoeld voor softwareontwikkelaars.

46
00:04:42,160 --> 00:04:46,880
Dat bestaat hoofdzakelijk uit het opslaan van broncode en daar verschillende versies bij houden.

47
00:04:46,880 --> 00:04:53,200
Maar daar hoort ook bij issue management. Een issue management is het stuk waar je werk eigenlijk

48
00:04:53,200 --> 00:04:58,600
gaat bedenken van wat moet ik maken en gaat plannen. Dus dat je het ook over de sprints

49
00:04:58,600 --> 00:05:03,800
heen, over de tijd heen gaat inplannen in je team. Dus de functionaliteit die ik als gebruiker zie,

50
00:05:03,800 --> 00:05:12,880
dat is natuurlijk een keer ontworpen, ontwikkeld, getest en dat proces dat zit dus allemaal in de

51
00:05:12,880 --> 00:05:17,840
GitHub omgeving voor de developer om mee aan de slag te gaan. Ja en daar zit ook deze Copilot aan

52
00:05:17,840 --> 00:05:23,560
verbonden. Het begint dus ook op GitHub. Je begint met het maken van zo'n issue. Dus stel je voor,

53
00:05:23,560 --> 00:05:29,080
je zit met, in dit geval zat ik met Joop via Teams. En een issue klinkt als een probleem,

54
00:05:29,080 --> 00:05:36,680
maar het kan een nieuwe functionaliteit zijn, dat kan ook een bug zijn, maar het heet een issue.

55
00:05:36,680 --> 00:05:42,240
Ja het is een beetje typische terminologie voor IT'ers. Is dit een probleem? Namelijk,

56
00:05:42,240 --> 00:05:48,840
dan moeten ze iets gaan doen. Daarom bestaat die Copilot ook, denk ik. Dus wij zaten met z'n

57
00:05:48,840 --> 00:05:56,600
tweeën van de week te praten over een stuk software wat wij gemaakt hebben om deze taalmodellen te

58
00:05:56,600 --> 00:06:01,120
testen, om de prompt te testen. Prompt Architect heet dat pakket. En wij wilden een nieuwe

59
00:06:01,120 --> 00:06:08,000
functionaliteit toevoegen om naast ChatGPT, dus GPT4 in dit geval, het taalmodel achter ChatGPT,

60
00:06:08,000 --> 00:06:14,920
wilden we ook graag een andere taalmodel gaan testen. In dit geval van Facebook het nieuwe

61
00:06:14,920 --> 00:06:22,000
model. Lama 3.1 die is net uit. Nou dat wilden we testen. Wij zitten met z'n tweeën via Teams en

62
00:06:22,000 --> 00:06:26,280
wat we doen is, we gaan dan in zo'n issue, in zo'n taak eigenlijk, gaan we opschrijven,

63
00:06:26,280 --> 00:06:31,400
oké we willen graag open source model willen we gaan ondersteunen. En dan moet er zo uitzien.

64
00:06:31,400 --> 00:06:35,240
Dus dan gaan we stapje voor stapje, werken wij met z'n tweeën dat uit, wat we dan bedoelen,

65
00:06:35,240 --> 00:06:38,960
eigenlijk wat de software moet gaan doen. Dus de specificatie, de beschrijving,

66
00:06:38,960 --> 00:06:43,360
wat is het eindresultaat, waar moet het voor doen, dat zijn zaken waar jij moet denken.

67
00:06:43,360 --> 00:06:47,280
Ja als je in de marketing zit, dan heb je dat ook als je met een webbouwer gaat zitten,

68
00:06:47,280 --> 00:06:50,240
dan moet je heel specifiek toch wel uitleggen aan die webbouwer, dit is wat ik wil hebben,

69
00:06:50,240 --> 00:06:53,440
dit is hoe het eruit moet zien. Ja of het opstellen van een briefing,

70
00:06:53,440 --> 00:07:00,200
van een van een cliënt. Daar kan je het allemaal mee vergelijken. Dus daar begint het eigenlijk.

71
00:07:00,200 --> 00:07:04,720
En daar zit nog geen AI achter, dat is allemaal nog wat wij met z'n tweeën daar zitten te bedenken.

72
00:07:04,720 --> 00:07:08,720
En dan komt Copilot. Dan zit er een knop in het scherm, daar kan ik op klikken,

73
00:07:08,720 --> 00:07:14,120
dan kan ik zeggen geef het aan Copilot. En dan komt Copilot, die gaat naar mijn issue,

74
00:07:14,120 --> 00:07:18,480
gaat hij kijken, naar de tekst, en die gaat daar een specificatie van maken.

75
00:07:18,480 --> 00:07:21,440
Die gaat dus verder uitdiepen wat ik eigenlijk bedoelde.

76
00:07:21,440 --> 00:07:25,360
Oké, zit er ook interactie dan tussen? Krijg je dan vragen terug?

77
00:07:25,360 --> 00:07:29,240
Nou in eerste instantie vrij weinig, dus hij gaat dat uitdenken voor jou,

78
00:07:29,240 --> 00:07:33,760
en dan zegt hij tegen jou, ik heb een specificatie gemaakt, wil je hem nakijken of aanpassen?

79
00:07:33,760 --> 00:07:39,520
Dat is dus geen chat, dat is een lijst met taken die hij gaat uitvoeren voor jou, een heel plan.

80
00:07:39,520 --> 00:07:42,640
En daar kun jij die taken, kun je de tekst van aanpassen, kun je zeggen,

81
00:07:42,640 --> 00:07:47,760
oh ja maar ik wil ook graag testen toevoegen, en ik wil ook graag dat je het publiceert op internet,

82
00:07:47,760 --> 00:07:54,200
dat pakket. En meer stappen kun je daar dan gaan toevoegen. Dus jij verandert in één keer van rol,

83
00:07:54,200 --> 00:07:58,640
in plaats van dat je als softwareontwikkelaar lekker code gaat zitten schrijven, heb je dus

84
00:07:58,640 --> 00:08:03,720
eerst een discussie met je klant van wat moet het worden? En dan ga je het geven aan de AI developer,

85
00:08:03,720 --> 00:08:09,720
en dan vraag je aan hem, nou werk dit eens uit en vertel me eens wat er moet gebeuren.

86
00:08:09,720 --> 00:08:14,440
Dat kun je reviewen, dan druk je op oké, en dan gaat hij jou precies vertellen welke bestanden

87
00:08:14,440 --> 00:08:17,040
die moet aanpassen, welke code. - Nog heel even terug Willem,

88
00:08:17,040 --> 00:08:20,960
want jij hebt het over die rollen, en ik denk dat het heel goed is om dat even uit te leggen,

89
00:08:20,960 --> 00:08:29,200
want je zou het zo kunnen zien dat ik daar als een product owner zat, of als een systeemanalyst,

90
00:08:29,200 --> 00:08:40,120
een businessanalyst. Willem zat er als senior developer, zo zou je het kunnen zijn, lead

91
00:08:40,120 --> 00:08:48,200
developer. En de AI is dan jouw junior developer. Dus je zit in drie rollen,

92
00:08:48,200 --> 00:09:00,400
zit je als het ware achter dit systeem, gelijktijdig. Dus de specificaties komen van

93
00:09:00,400 --> 00:09:06,960
mij aangevuld met de technische zaken die Willem inbrengt. - Ja, van hoe zouden we dat willen

94
00:09:06,960 --> 00:09:11,080
aanvliegen binnen het huidige landschap waarin we rekening mee moeten houden. Dus die context

95
00:09:11,080 --> 00:09:16,200
wordt ingebracht naast de functionele wensen, technische context, en dan inderdaad wordt het

96
00:09:16,200 --> 00:09:21,000
proces van het komen tot daadwerkelijk de implementatie wordt je ondersteund door

97
00:09:21,000 --> 00:09:24,600
- door je junior developer. - door je junior developer.

98
00:09:24,600 --> 00:09:32,520
En het is heel belangrijk dat het van functioneel naar technisch, want Willem moet dan ook aangeven

99
00:09:32,520 --> 00:09:38,000
van, oh ja, maar dat deze stukken willen we dan wel aangepast hebben, daar ongeveer in de code.

100
00:09:38,000 --> 00:09:43,720
- Ja, je moet hem wel vrij specifiek vertellen wat hij moet doen hoor. Vandaar dat wij ook zeggen,

101
00:09:43,720 --> 00:09:48,040
van het is de junior ontwikkelaar, iemand die komt net nieuw op jouw project, heeft geen idee waar

102
00:09:48,040 --> 00:09:52,880
die moet kijken. Dus je moet vrij specifiek wel vertellen, het staat daar en het heet zo en dit

103
00:09:52,880 --> 00:09:58,200
is het patroon. Maar als je dat goed doet, dan komt hij best wel met een heel aardige specificatie

104
00:09:58,200 --> 00:10:02,880
terug van, oké, moet ik dit gaan doen? En als je dat dan op oké klikt, dan krijg je daarna een

105
00:10:02,880 --> 00:10:07,280
implementatieplan ook nog van hem. En dan gaat hij precies vertellen in welk bestand hij welke

106
00:10:07,280 --> 00:10:09,680
wijziging moet gaan doorvoeren. - Ja, als ik het even van mezelf vertaal,

107
00:10:09,680 --> 00:10:14,280
voor de mensen die bekend zijn in de agile wereld, daar hebben we natuurlijk een sprint en daar moeten

108
00:10:14,280 --> 00:10:18,800
we werk in specificeren en dan gaat het technisch team het refinen. Eigenlijk wat ik je nu hoor

109
00:10:18,800 --> 00:10:22,800
zeggen, klinkt een beetje als het stukje refiner, dat het technisch team gaat kijken wat moet er

110
00:10:22,800 --> 00:10:26,240
aangepast worden, waar moet aangepast worden, zodat we dadelijk kunnen inschatten, oké, maar hoeveel

111
00:10:26,240 --> 00:10:29,920
tijd kost het om dit te bouwen? Vinden we dat als product owner waard om dat te gaan bouwen,

112
00:10:29,920 --> 00:10:33,600
want we weten nu hoeveel het ongeveer kost. Eigenlijk word je geholpen in dat proces ook

113
00:10:33,600 --> 00:10:37,760
nog eens in de refinement, waar moeten die wijzigingen plaatsvinden en welke wijzigingen

114
00:10:37,760 --> 00:10:40,320
moeten er plaatsvinden. - Zo zou je het precies moeten zien,

115
00:10:40,320 --> 00:10:46,440
specificatie, refinement, implementatie. - En dan heeft hij geholpen met de refinement,

116
00:10:46,440 --> 00:10:50,200
hoor ik net, dus dan word je weer misschien getriggerd en we kennen al het ZGPT waar je ook

117
00:10:50,200 --> 00:10:55,320
extra functionaliteit kan inbouwen voor voldoende kan de security eisen, dat zal hier ongetwijfeld

118
00:10:55,320 --> 00:11:00,760
ook mogelijk zijn dat hij daar rekening mee moet houden. Dus daarmee word je ook al verrijkt in

119
00:11:00,760 --> 00:11:04,960
de werkzaamheden waar je misschien niet aan gedacht hebt om dat toch mee te nemen in het proces.

120
00:11:04,960 --> 00:11:10,960
- Ja op dit moment is het vrij beperkt nog wat hij doet, dus bepaalde details kun je gewoon

121
00:11:10,960 --> 00:11:15,880
weglaten en dan zegt hij tegen je, oh maar wacht even ik zie dat je dat toch wel nodig hebt dus

122
00:11:15,880 --> 00:11:23,280
ik voeg dat zelf toe. Dus bijvoorbeeld, wij testen alles automatisch, dat zal hij ook zelf bedenken,

123
00:11:23,280 --> 00:11:27,280
dat is even, oh ja ik moet het natuurlijk ook controleren of datgene wat ik bedacht heb ook

124
00:11:27,280 --> 00:11:34,360
echt klopt. Dus dat voegt hij wel toe. Security is tot op heden nog een beetje lastig, maar

125
00:11:34,360 --> 00:11:38,680
daar heb ik denk ik even een randje geraakt, dat het net even buiten het domein viel wat hij

126
00:11:38,680 --> 00:11:43,480
snapte. Op zich niet erg, maar ik verwacht ook dat hij dat ook steeds beter kan in de toekomst.

127
00:11:43,480 --> 00:11:47,480
- Ja als het dan toch even vertaald naar als we dan het agile proces verder ingaan,

128
00:11:47,480 --> 00:11:50,360
we hebben de refinement gedaan, we hebben het gepokerd, we hebben een waarde aangegeven,

129
00:11:50,360 --> 00:11:56,280
we gaan het bouwen. Eigenlijk wat je dan hoort zeggen is dat de AI ook nog de development

130
00:11:56,280 --> 00:12:01,400
tests automatisch al wel specificeert, zodat zoals wij zelf ook als we iets bouwen moeten

131
00:12:01,400 --> 00:12:05,760
wij testen wat we zelf gebouwd hebben en dan bieden we het aan als review aan een collega,

132
00:12:05,760 --> 00:12:10,840
een lead van het team. Die rol die pak jij dan weer op, maar eigenlijk het dev-testen,

133
00:12:10,840 --> 00:12:14,480
het development testen van wat er gebouwd moet worden, werkt dat ook daadwerkelijk zoals ik het

134
00:12:14,480 --> 00:12:22,240
dacht? Dat zit ook al vanuit de AI engineer. - Ja, helemaal zelf. En wat wel mooi is als je

135
00:12:22,240 --> 00:12:28,640
dus dat implementatieplan hebt en je drukt op oké, dan maakt hij de code, maar jij krijgt daarna

136
00:12:28,640 --> 00:12:34,320
weer de kans om het zelf na te kijken en ook aan te passen te plekken. En dat kan door commentaar te

137
00:12:34,320 --> 00:12:38,840
geven, dus we zijn ook op GitHub, heb je ook faciliteiten om, dat noemen ze dan reviews,

138
00:12:38,840 --> 00:12:45,520
dus om code na te kijken en te beoordelen of dat klopt. En omdat GitHub is gemaakt voor teams die

139
00:12:45,520 --> 00:12:48,600
verspreid zijn over de hele wereld en die misschien niet op hetzelfde moment werken.

140
00:12:48,600 --> 00:12:53,160
Dus wat je ziet is dat je dan commentaar kan geven en het zet die erbij in de code,

141
00:12:53,160 --> 00:12:57,480
zo van "hé deze developer vond dit ervan, die heeft hier commentaar geplaatst". Dat

142
00:12:57,480 --> 00:13:01,960
heb je hier ook, alleen ik lever dan commentaar op de AI en wat de AI zal doen,

143
00:13:01,960 --> 00:13:08,120
als een fanatieke collega die die is, gaat die te plekken de code aanpassen. Dus als ik dan zeg

144
00:13:08,120 --> 00:13:13,120
"ja maar je had hier iets gedaan, dat kan niet, dat klopt niet", dan past hij het te plekken aan.

145
00:13:13,120 --> 00:13:18,040
- Oké en dat zit ook weer, ja, dat gaat toch even de engineering mij af inderdaad. Dan gaat

146
00:13:18,040 --> 00:13:22,120
hij toch wel die versie bijhouden, zodat hij wel weet wat ervoor was gedaan en dat je dus weer kunt

147
00:13:22,120 --> 00:13:25,400
terugdraaien, want dat zien we soms ook wel, dan gaan we het kapot repareren, willen we ook niet.

148
00:13:25,400 --> 00:13:31,320
- Het kapot repareren, dat is een mooie term. - Ja, dan denken we dat we het gefixt hebben,

149
00:13:31,320 --> 00:13:35,440
maar dan maken we het toch weer kapot. - Ja, dus dat kan. We hebben dat ook

150
00:13:35,440 --> 00:13:39,480
gister wel gemerkt, richting het einde van onze sessie gisteren van 20 minuten,

151
00:13:39,480 --> 00:13:46,440
hadden we hem toch kapot gerepareerd, zoals jij het net verwoordde. En ik was blij verrast om

152
00:13:46,440 --> 00:13:53,520
vanmorgen te zien dat er een soort ongedaan maken, ctrl z-knop op zit. Dus je kan alle

153
00:13:53,520 --> 00:13:59,240
stappen die de AI neemt in zijn werk, die neemt hij op, een soort zwarte doos loopt ermee en ik

154
00:13:59,240 --> 00:14:03,720
kan dan stap voor stap doorheen lopen, ook weer terug om te zien wat heeft hij nou gedaan en

155
00:14:03,720 --> 00:14:08,680
wat was mijn invoer daarbij. Want uiteindelijk, we hebben het hier over de toepassing van AI en

156
00:14:08,680 --> 00:14:13,440
ik durf wel te zeggen dat het inmiddels zo complex is, dat er niet altijd mee helemaal te beoordelen

157
00:14:13,440 --> 00:14:19,080
is of dat goed gaat. Dan is het fijn dat GitHub ervoor gekozen heeft om het helemaal traceerbaar

158
00:14:19,080 --> 00:14:22,760
te maken, dat ik ook stappen terug kan zetten en kan zeggen, oh ja, maar dit gaat echt niet goed,

159
00:14:22,760 --> 00:14:27,120
ik ga even terug aanpassen en dan ga ik weer verder. Ja, zoals je zelf ook aan het werk bent en je komt

160
00:14:27,120 --> 00:14:30,920
erachter dat je ergens wat terug wil zetten, dan doe je dat ook inderdaad. En dat kan dus hier ook.

161
00:14:30,920 --> 00:14:35,320
En dan ook met de stappen die met behulp van AI gedaan zijn, waar je zelf misschien niet de invloed

162
00:14:35,320 --> 00:14:39,560
op had, maar nu wel invloed op wil hebben. Juist. Om zelf eigenlijk wel de controle te kunnen hebben.

163
00:14:39,560 --> 00:14:47,720
Later weet je ook nog welke delen zeg maar dus door AI gegenereerd zijn. Dat is allemaal traceerbaar.

164
00:14:47,720 --> 00:14:56,000
Dat is echt prachtig gemaakt. Fantastisch om mee te werken. Wij schrokken eerst even. We dachten,

165
00:14:56,000 --> 00:15:02,720
wow, wat is dit? In die zin, Willem en ik zitten al meer dan twaalf jaar of zo in dit vakgebied,

166
00:15:02,720 --> 00:15:10,400
dus laten we zeggen dat we niet heel vaak opnieuw worden verbaasd. De afgelopen dagen hebben we

167
00:15:10,400 --> 00:15:14,720
echt, ik begon al, we hebben lopen stuiteren. Wij zaten echt in het begin echt van, wow,

168
00:15:14,720 --> 00:15:20,360
wat gebeurt hier? Want we hebben natuurlijk alles eerder behandeld van de AI developer komt eraan,

169
00:15:20,360 --> 00:15:25,320
de AI assistenten komen eraan. Hoe gaat dat eruitzien? Geen idee. We hebben hele slechte

170
00:15:25,320 --> 00:15:29,640
versies gezien op internet en die voorbij kwamen met allemaal agents en weet ik wat allemaal.

171
00:15:29,640 --> 00:15:37,360
Dit is een versie die werkt, maar ook op een dusdanige manier met een gebruikservaring,

172
00:15:37,360 --> 00:15:42,840
dat je alles snapt wat daar terugkomt, dat je het kan aanpassen, dat je kan zeggen,

173
00:15:42,840 --> 00:15:53,400
oh nee, maar ik bedoelde eigenlijk, het is zo natuurlijk. Het is precies de manier waarop

174
00:15:53,400 --> 00:15:59,760
we nu dat ook doen, wat jij al aanhaalde, met collega's, met allerlei sessies om dingen te

175
00:15:59,760 --> 00:16:05,360
verbeteren, specificaties op te schrijven, alleen gecomprimeerd. Dus je hebt veel sneller,

176
00:16:05,360 --> 00:16:09,680
heb je resultaat, waardoor je ook heel snel bijvoorbeeld experimenten kan uitvoeren.

177
00:16:09,680 --> 00:16:15,520
Je zegt van, ja maar wat nou als, want jij zei van met de product owner, je gaat risico's inschatten,

178
00:16:15,520 --> 00:16:20,000
hoe lang gaat dit duren, weet ik. Maar misschien kan je dit nu even overslaan, dat je zegt van,

179
00:16:20,000 --> 00:16:27,760
weet je, we zetten er een tijdslimiet op, je krijgt een uur. Je krijgt een uur voor deze feature en

180
00:16:27,760 --> 00:16:34,280
dan gaan we maar eens kijken of dat lukt. En na dat uur weet je heel goed, is het of gelukt,

181
00:16:34,280 --> 00:16:39,560
denk je van, dit gaat het niet worden, of dat je een veel betere inschatting kan maken van,

182
00:16:39,560 --> 00:16:42,440
wat gaat het kosten om het uiteindelijk productie rijp te maken.

183
00:16:42,440 --> 00:16:45,800
Dat noemen we gewoon in Agile ook wel een spike. En dat is inderdaad een timebox,

184
00:16:45,800 --> 00:16:50,440
x periode. Misschien dat die 4 uur inderdaad gewoon lekker naar een uurtje kan om te gaan kijken,

185
00:16:50,440 --> 00:16:55,440
is het haalbaar, misschien heb je het zelfs al af. Dan nog afhechten en testen en als dat er ook

186
00:16:55,440 --> 00:17:01,240
automatisch uitkomt, gaat veel sneller. Ik zie heel veel spikes extra gaan aangekomen,

187
00:17:01,240 --> 00:17:04,600
dat zit heel veel waarde inderdaad. Vooral hetgene waar je nog niet de waarde moeilijk kan inschatten,

188
00:17:04,600 --> 00:17:07,680
waar dan inderdaad meer tijd in moet zitten. Dat is wel heel mooi.

189
00:17:07,680 --> 00:17:08,320
Ja, cool.

190
00:17:08,320 --> 00:17:13,840
Voordat we overgaan, want er zijn ook wel wat uitdagingen. Maar we hebben ook, Willem,

191
00:17:13,840 --> 00:17:22,360
we hebben een nieuw onderdeel in de podcast en dat is onze AI Game Changer kaartspel. En die

192
00:17:22,360 --> 00:17:27,560
willen we ook met jou spelen, want het idee is dat namelijk als je stellingen met elkaar bespreekt,

193
00:17:27,560 --> 00:17:32,200
dat je daar uiteindelijk heel veel van elkaar leert en ja, als het goed is,

194
00:17:32,200 --> 00:17:33,560
daar ook weer veel beter van wordt.

195
00:17:33,560 --> 00:17:34,400
Zeker.

196
00:17:34,400 --> 00:17:40,520
Dan heb ik de muziekjes niet goed klaar staan, maar zo gaat dat.

197
00:17:40,520 --> 00:17:44,520
Die pakken we er even bij en daar komt die aan.

198
00:17:44,520 --> 00:18:06,760
Ja Willem, daar komt hij. In de categorie ethiek en maatschappij.

199
00:18:06,760 --> 00:18:11,640
Ik breek nog heel even in. Want normaal gesproken, kijk, we staan voor transparantie. Normaal gesproken

200
00:18:11,640 --> 00:18:19,160
kaarten schudden we, pakken we er echt willekeurig eentje uit. Maar omdat Willem collega is, weet je,

201
00:18:19,160 --> 00:18:23,760
ja, er zijn best wel heel veel kaartjes. Daar weten we gewoon het antwoord op. Weet ik ook

202
00:18:23,760 --> 00:18:29,120
dat Willem dat weet. Dus we hebben er gezamenlijk, hebben we er eentje uitgekozen wat echt interessant

203
00:18:29,120 --> 00:18:31,400
is ook voor deze aflevering. In het kader van transparantie.

204
00:18:31,400 --> 00:18:38,200
Nou ja, transparantie, daar gaat het ook over. Dus toeval bestaat niet. Organisaties moeten

205
00:18:38,200 --> 00:18:43,120
transparant zijn over het gebruik van AI in hun besluitsvormingsprocessen.

206
00:18:43,120 --> 00:18:51,080
Dat is een pittige, eigenlijk wel. We zien nu dat AI overal doorheen aan het

207
00:18:51,080 --> 00:18:56,240
seipelen is. Ook bij ons bij Info Support zie ik het steeds meer. Ik ben natuurlijk best betrokken

208
00:18:56,240 --> 00:19:01,360
bij heel veel trajecten waarbij dan mensen bij komen en dan zeggen ik zou eigenlijk AI hiervoor

209
00:19:01,360 --> 00:19:08,800
willen gebruiken. Kan dat? Dan zeg ik, dat kan een hoop. Technisch kan het. Maar de vraag is,

210
00:19:08,800 --> 00:19:12,880
moet je het willen? Dat is natuurlijk de ene vraagstuk wat je hebt. En het andere is,

211
00:19:12,880 --> 00:19:19,280
hoe ga je er daarna mee om? En ik denk dat het voor heel veel processen wel verstandig is om

212
00:19:19,280 --> 00:19:25,280
er transparant over te zijn. Hoe transparant? Dat vind ik een hele lastige.

213
00:19:25,280 --> 00:19:29,600
En, waar denk je dan aan met transparantie? Hoe ver?

214
00:19:29,600 --> 00:19:37,400
Nou, we hadden bijvoorbeeld kort een discussie over het gebruik van AI bij het opzoeken van

215
00:19:37,400 --> 00:19:41,600
informatie uit ons functiehuis. Wij hebben bij Info Support een functiehuis waarin staat,

216
00:19:41,600 --> 00:19:46,720
hé wij verwachten dit en dit van onze collega's op een bepaald salarisniveau en verwachten ook

217
00:19:46,720 --> 00:19:52,280
in binnen bepaalde rollen een bepaald gedrag. En nou moet je een soort van kruising maken

218
00:19:52,280 --> 00:19:56,760
tussen die twee dingen om tot een beoordeling te komen aan het einde van het jaar. Dat is best heel

219
00:19:56,760 --> 00:20:01,440
heftig als je 70 medewerkers moet beoordelen in een jaar. Dus wij kregen op een gegeven moment de

220
00:20:01,440 --> 00:20:06,720
vraag, kreeg ik de vraag, kunnen we niet de AI inzetten om een mooie samenvatting ervan te maken

221
00:20:06,720 --> 00:20:11,280
die van toepassing is op één persoon die je moet beoordelen? En toen zei ik, oeh, dat is wel heel

222
00:20:11,280 --> 00:20:15,960
spannend. Maar volgens mij moet je daar best wel transparant over zijn dat je dat met AI gedaan

223
00:20:15,960 --> 00:20:21,560
hebt. En daarna is natuurlijk de vraag van, dit is stap één, dat je informatie opzoekt met behulp

224
00:20:21,560 --> 00:20:28,480
van een RAC system of een search om een persoon goed en eerlijk te kunnen beoordelen. Want dat is

225
00:20:28,480 --> 00:20:32,520
de uitgangspunt. Ze willen wel echt heel erg graag eerlijk iemand beoordelen op hoe die functioneert.

226
00:20:32,520 --> 00:20:38,880
Maar dit is stap één. Stap twee zou ook kunnen zijn, ik kan de beoordelingstext genereren. Ga

227
00:20:38,880 --> 00:20:44,000
je dat dan ook doen? En hoe transparant ben je daarover dat je dat doet? Ja en vooral denk ik

228
00:20:44,000 --> 00:20:47,600
dat hier het belang van transparantie is. Dus transparantie is op verschillende vlakken als ik

229
00:20:47,600 --> 00:20:52,720
hem zo even voor mezelf even vertaal wat ik hoor. Is transparantie zit hem in, ga ik hem voor dit

230
00:20:52,720 --> 00:20:57,520
proces gebruiken? Op wie heeft het invloed? Welke data gaat er gebruikt worden? Dat zijn dan zaken

231
00:20:57,520 --> 00:21:02,480
waar je rekening moet houden met de keuze om AI in te zetten en hoe transparant ben ik daarin.

232
00:21:02,480 --> 00:21:08,920
Ja en hoe herleidbaar wil ik dat eigenlijk hebben? Dat ik daar, waar heb ik AI dan ingezet?

233
00:21:08,920 --> 00:21:34,840
Ja we hebben natuurlijk gezien van wat we met Copilot Workspaces allemaal kunnen. We zijn

234
00:21:34,840 --> 00:21:41,680
super blij daarmee, maar we hebben ook wel wat uitdagingen en ik denk dat we ook wel een risico

235
00:21:41,680 --> 00:21:49,720
of twee zien misschien toch? Ja er zit wel de eerste vraag die ik kreeg van een andere jonge

236
00:21:49,720 --> 00:21:57,400
collega was, word je hier niet ontzettend lui van? Want dat is het eigenlijk. Dus programmeren was

237
00:21:57,400 --> 00:22:03,160
altijd wel een klus waar je flink mee bezig bent. Mensen die wel een software hebben laten bouwen

238
00:22:03,160 --> 00:22:07,720
of een website of iets dergelijks, die weten dit ook wel dat het best wel duur is om alles uit te

239
00:22:07,720 --> 00:22:14,800
laten werken door een ontwikkelaar. En nu is dat, in ons geval was dat 40 seconden ofzo was die klaar

240
00:22:14,800 --> 00:22:19,000
met programmeren. Dus zo snel gaat dat. In 20 minuten hadden wij een compleet uitgewerkte

241
00:22:19,000 --> 00:22:28,320
functionaliteit van start to finish. Gedeployed zelfs. Dus ik snap die vraag wel die ik kreeg van

242
00:22:28,320 --> 00:22:33,040
hey nou maar word je daar niet heel lui van? En daar vind ik wel dat een risico in zit. Je moet

243
00:22:33,040 --> 00:22:37,920
die AI vanaf het begin tot het einde op de vingers kijken. Je moet hem in de gaten houden,

244
00:22:37,920 --> 00:22:42,480
want hij gaat een keer de bocht uit en dat is ook wel gebeurd. Gisteravond gebeurde dat dan even.

245
00:22:42,480 --> 00:22:47,160
Ja dus dat is wel iets waar je waar je echt scherper moet zijn. Je moet zeker niet lui

246
00:22:47,160 --> 00:22:52,840
gaan worden, want dat gaat niet goed komen. Nee dus eigenlijk is het een collega die vol

247
00:22:52,840 --> 00:22:57,600
aan de bak gaat, maar die nog wel gewoon hulp nodig heeft. Met waar moet ik kijken? Gaat het

248
00:22:57,600 --> 00:23:02,280
nog wel goed? Heb je aan alles gedacht? En zo moet je hem zeggen als hulpmiddel voor jezelf,

249
00:23:02,280 --> 00:23:07,800
als ondersteuning onder je arm kan je hem inzetten. Maar niet alleen los gaan laten,

250
00:23:07,800 --> 00:23:12,960
want dan zie je daar dus de risico's. Code reviews doen we natuurlijk sowieso normaal.

251
00:23:12,960 --> 00:23:19,200
En straks weet je als jij anders teksten schrijft, dan laat je dat ook aan iemand lezen. Dus als jij

252
00:23:19,200 --> 00:23:26,360
nieuwsbrieven schrijft, neem ik ook aan dat je niet gewoon schrijft en gewoon zo het web opgooit.

253
00:23:26,360 --> 00:23:34,400
Zo moet je dit ook zien. Alleen moet je dus scherper worden in waar je naar kijkt. En het

254
00:23:34,400 --> 00:23:38,920
lastige is, volgens mij hebben we dat eerder ook al eens gezegd, hoe beter het wordt,

255
00:23:38,920 --> 00:23:45,800
hoe groter het risico is dat je erop gaat vertrouwen, hoe makkelijker je bent in 'het zal

256
00:23:45,800 --> 00:23:50,320
wel goed zijn'. Dus je moet jezelf vooral heel scherp houden. En dit gaat over discipline.

257
00:23:50,320 --> 00:23:55,800
En mens en discipline, dat wil nog wel eens een combinatie zijn die kan schuren.

258
00:23:55,800 --> 00:24:00,880
Ja, dus dat betekent wees ervan bewust. Zorg dat mensen hierin gesupport worden,

259
00:24:00,880 --> 00:24:07,080
getraind worden, opgeleid worden. En op andere stukken kan je wat meer loslaten,

260
00:24:07,080 --> 00:24:10,280
maar op andere stukken moet je juist gaan aantrekken. Alleen daar besef van hebben.

261
00:24:10,280 --> 00:24:10,800
Ja.

262
00:24:10,800 --> 00:24:16,160
En bewustwording, daar zit dan de uitdaging in. Want in principe is iedere programmeur dus lui,

263
00:24:16,160 --> 00:24:19,600
want in principe willen we al ons werk automatiseren en doen. Dus wat dat betreft,

264
00:24:19,600 --> 00:24:24,560
moeten we daar gewoon waarin, moeten we waar scherp op zijn. En dat zal over tijd veranderen.

265
00:24:24,560 --> 00:24:28,240
Dat zien we nu ook altijd al, als we een andere taal gaan doen, efficiëntie van platformen die

266
00:24:28,240 --> 00:24:35,000
beter worden, de techniek die je meer ondersteunt. Dus ook hier geldt, wees bewust van het proces

267
00:24:35,000 --> 00:24:36,680
dat er omheen plaatsvindt.

268
00:24:36,680 --> 00:24:43,360
Ja. En waar ik ook nog wel antwoord op zou willen hebben, Willem, naar jouw visie,

269
00:24:43,360 --> 00:24:49,040
is van, hebben we zo direct minder, meer engineers nodig?

270
00:24:49,040 --> 00:24:52,960
Je zou hopen minder, maar volgens mij is dat heel erg moeilijk.

271
00:24:52,960 --> 00:24:58,800
Dat is wat je denkt. Dus de AI die gaat zo direct een deel van de software developers vervangen.

272
00:24:58,800 --> 00:25:05,320
Ik denk, en dit is, ik weet het niet is het eerlijke antwoord, want we kunnen dit niet

273
00:25:05,320 --> 00:25:09,760
helemaal overzien wat er nu gebeurt. Maar als ik nu vandaag een inschatting moet maken,

274
00:25:09,760 --> 00:25:15,360
denk ik dat we meer engineers nodig gaan hebben, want het wordt uiteindelijk complexer wat we gaan maken.

275
00:25:15,360 --> 00:25:20,560
Dus nu versnellen we, maar daardoor denken we, oh, dan kunnen we meer gaan doen en complexere

276
00:25:20,560 --> 00:25:25,120
problemen gaan oplossen. Dus wordt het weer moeilijker en heb je weer meer mensen nodig met kennis.

277
00:25:25,120 --> 00:25:30,000
En ik denk ook dat, we hadden het net over dat nakijken van die code. Je moet echt wel heel

278
00:25:30,000 --> 00:25:35,120
erg goed weten hoe het werkt om te kunnen beoordelen of het goed is of niet.

279
00:25:35,120 --> 00:25:39,320
Dus het is niet zo dat je minder moet weten. Je moet eerder meer weten van softwareontwikkeling,

280
00:25:39,320 --> 00:25:45,960
omdat je anders niet kunt overzien wat de AI nou doet. Want hij spuugt met een indrukwekkende

281
00:25:45,960 --> 00:25:49,560
hoeveelheid code komt eruit rollen. -Kennis van de context.

282
00:25:49,560 --> 00:25:54,520
Ja, niet alleen dat. Dus je hebt misschien meer kennis nodig, zelfs van het domein.

283
00:25:54,520 --> 00:26:01,200
Want je moet heel duidelijk zijn in je specificaties. Dus die moet je zo goed mogelijk opschrijven.

284
00:26:01,200 --> 00:26:06,680
Nou weten we dat een natuurlijke taal natuurlijk voor meerdere uitleg vatbaar is.

285
00:26:06,680 --> 00:26:12,080
Zo ambiguur zoals het maar zijn kan. Dus je moet specifieker kunnen worden in je domein.

286
00:26:12,080 --> 00:26:21,160
Maar die AI is getraind op patronen. En die patronen zijn vaak weer design patterns.

287
00:26:21,160 --> 00:26:24,680
En design patterns moet je zien als, als je teksten gaat schrijven,

288
00:26:24,680 --> 00:26:31,560
heb je bijvoorbeeld copyright frameworks. En zo heb je in iedere sector wel een soort

289
00:26:31,560 --> 00:26:37,560
van leidraad. Dat je zegt van zo pak je dingen aan. Die moet je dus heel goed kennen.

290
00:26:37,560 --> 00:26:46,440
Dus wij specificeren ook van gebruik dit design pattern. Dus daar moet je dus een goede ontwikkelaar

291
00:26:46,440 --> 00:26:52,320
voor zijn om te weten welk design pattern, welke copyright framework hoort nou bij welk type vraag.

292
00:26:52,320 --> 00:26:58,280
Welk design pattern hoort bij welke oplossing. -Dus dat betekent ook wat voor opleiding.

293
00:26:58,280 --> 00:27:02,600
Want nu zie je dat vaak als je doorgroeit tussen junior en senior. Dat je dan meer

294
00:27:02,600 --> 00:27:05,960
kennis gaat opnemen van design patterns. Maar die zou je dus al eerder eigen moeten gaan maken.

295
00:27:05,960 --> 00:27:11,160
Want dat beïnvloedt eerder het werk. Omdat je je niet als collega onder de arm hebt.

296
00:27:11,160 --> 00:27:19,240
-Ja absoluut. Dus je zou haast kunnen zeggen van ja minder of meer is eigenlijk helemaal

297
00:27:19,240 --> 00:27:26,640
niet de discussie. De vraag is hoeveel beter moeten engineers worden om op een hele goede

298
00:27:26,640 --> 00:27:35,760
manier gebruik te kunnen maken van de versnelling van zo'n middel. Dus er gaat meer van je gevraagd

299
00:27:35,760 --> 00:27:40,440
worden. Want ik ben helemaal eens met met Willem. Want dat gebeurde bij ons ook.

300
00:27:40,440 --> 00:27:44,000
Dus de eerste feature was een kleine feature. Daar hadden we echt zo wow.

301
00:27:44,000 --> 00:27:50,120
En wat nou als we, maar dan kunnen we misschien dit ook. En ik had eigenlijk een feature opgeschreven.

302
00:27:50,120 --> 00:27:57,440
Een issue had ik opgeschreven voor veel later. Dat we open source zouden gaan ondersteunen.

303
00:27:57,440 --> 00:28:04,800
Zo van ja als het zo gaat dan wil ik die nu. -Dus dat heeft invloed op heel veel verschillende

304
00:28:04,800 --> 00:28:07,240
aspecten. -Ja en daar moet je echt wel rekening mee houden.

305
00:28:07,240 --> 00:28:15,160
Dus daar zie je wel een verschuiving. En je ziet een verschuiving van coderen naar specificeren.

306
00:28:15,160 --> 00:28:22,880
Dus het zwaartepunt gaat zo direct liggen in hoe goed kan jij specificeren. En misschien wat minder

307
00:28:22,880 --> 00:28:30,920
goed in hoe goed kun je coderen. -Ja en hoe kan je beoordelen/reviewen.

308
00:28:30,920 --> 00:28:35,320
Dat is ook wel key. Daar heb je ook juist die technische kennis, die inhoudkennis wel voor nodig.

309
00:28:35,320 --> 00:28:42,320
Maar om daar te komen, die struggles die worden wat meer geautomatiseerd. Waardoor je daar,

310
00:28:42,320 --> 00:28:47,040
als je goed begrijpt en goed specifieert, je efficiëntie slecht en kwaliteit kan laten

311
00:28:47,040 --> 00:28:50,000
groeien. Maar als je dat niet doet, dan gaat de kwaliteit efficiëntie juist naar beneden.

312
00:28:50,000 --> 00:28:53,920
-Ja slechtere kwaliteit software die vrij snel kapot is.

313
00:28:53,920 --> 00:28:59,560
-Ja en ik denk dat het risico ook is dat nu heel veel mensen dit kunnen gaan doen.

314
00:28:59,560 --> 00:29:06,200
Jij moet er dus uit. -Ja ik wil nog wel even zo weten,

315
00:29:06,200 --> 00:29:10,720
en dat hoor ik later dan voor jullie wel inderdaad. De kosten. Daar ben ik ook wel nieuwsgierig naar.

316
00:29:10,720 --> 00:29:20,720
-Ja licentiekosten, nemen we even mee. Wat ik nog wilde aangeven,

317
00:29:20,720 --> 00:29:27,520
ik moet er helaas uit. -Hij is echt met spoed naar ons toegekomen.

318
00:29:27,520 --> 00:29:33,360
-Ja precies. Is dat ik het nu even kwijt ben wat ik wilde vragen.

319
00:29:33,360 --> 00:29:47,760
Je kan natuurlijk dingen veel makkelijker, sneller. Dus wat je gaat krijgen is dat mensen die juist

320
00:29:47,760 --> 00:29:54,000
niet een betere engineer worden, niet dit allemaal doen. Want ze zeggen dit moet. Dan krijg je er

321
00:29:54,000 --> 00:30:01,560
gewoon code uit toch? Dat is op zich wel een risico. -Ja het werkt ook voor de junior engineer

322
00:30:01,560 --> 00:30:07,600
toch nog wel heel erg goed eigenlijk. Ik zie het meer dat de co-pilot nu een hefboom is,

323
00:30:07,600 --> 00:30:12,400
waarbij het momentum wat je kan creëren met die hefboom in één keer veel groter is dan wat je

324
00:30:12,400 --> 00:30:18,680
het kunnen doen zonder die AI. Dus de impact van de junior ontwikkelaar in de negatieve zin was

325
00:30:18,680 --> 00:30:23,600
beperkt tot nog toe, want je kon daar best wel goed bij bijsturen. Je geeft ze eenvoudige taken.

326
00:30:23,600 --> 00:30:28,440
En nu in één keer stel je ze in staat om een taak op te pakken die gewoon ver boven skill level

327
00:30:28,440 --> 00:30:34,000
ligt. En dat lukt ze ook nog om het voor elkaar te krijgen. Super mooi, staat goed op je,

328
00:30:34,000 --> 00:30:38,800
als je alleen maar daarnaar kijkt en dan is dat super goed voor de beoordeling. Alleen ja die

329
00:30:38,800 --> 00:30:45,280
hefboom is wel echt heel gevaarlijk. Je moet elkaar blijven helpen. Wat wel goed is om toch

330
00:30:45,280 --> 00:30:50,240
even bij te vermelden is dat als je dus zo'n wijziging hebt gedaan met co-pilot workspace,

331
00:30:50,240 --> 00:30:54,880
dan is het nog niet klaar. Dan is het niet zo van dan staat het op productie. Wat daar achteraan

332
00:30:54,880 --> 00:31:00,320
komt is de rest van het ontwikkelproces. Dus dan op GitHub werken ze met pull request. Dus dan ga je

333
00:31:00,320 --> 00:31:05,880
eigenlijk de vraag stellen aan iemand anders. Wil jij mijn code toevoegen aan het programma? En daar

334
00:31:05,880 --> 00:31:12,040
zit een mens tussen, een menselijke controle. En daar zit dus nog een moment dat de senior

335
00:31:12,040 --> 00:31:16,280
ontwikkelaar mee kan kijken en kan beoordelen. Is het echt goed gegaan of is hier toch iets heel

336
00:31:16,280 --> 00:31:23,320
raars uitgekomen? En ik denk dat je heel goed moet beseffen dat als je dingen zeg maar heel snel

337
00:31:23,320 --> 00:31:27,560
aan elkaar geknoopt wil hebben, soort van duct tape. Daar is die AR heel goed in. Gewoon van

338
00:31:27,560 --> 00:31:32,120
allerlei dingetjes aan elkaar knopen. Dat je dan ook dus software hebt waar alles aan elkaar hangt.

339
00:31:32,120 --> 00:31:37,640
En dan hoeft er maar dit te gebeuren en dan breekt het. Dan is het wat wij noemen houtje touwtje.

340
00:31:37,640 --> 00:31:42,680
Dan gaat je touwtje, die wordt doorgeknipt en dan valt je houtje op de grond. Zo simpel is het.

341
00:31:42,680 --> 00:31:48,600
Ja het effect is volgens mij hetzelfde als wat je nu ziet. Als je naar een hele goedkope webbouwer

342
00:31:48,600 --> 00:31:53,520
toe gaat en je vraagt iemand van 16 om een website in elkaar te bouwen. Je krijgt wat je krijgt.

343
00:31:53,520 --> 00:32:01,680
Ja precies. Je krijgt wat je spendeert. We hebben ingezonden vragen. We hebben een hele mooie vraag

344
00:32:01,680 --> 00:32:07,440
van de week en die past denk ik hier heel goed bij. Dus die wilde ik je laten horen. Dus kijken of we

345
00:32:07,440 --> 00:32:18,320
daar een beetje antwoord op zouden kunnen formuleren. De vraag van de week is deze week

346
00:32:18,320 --> 00:32:26,720
Hallo Niels, Joop. Mijn naam is Frits. Ik werk als IT manager bij PostNL en ik heb een vraag voor

347
00:32:26,720 --> 00:32:33,880
jullie. Hoe kan ik ChatGPT gebruiken om goede testplannen te schrijven om mijn aannames te

348
00:32:33,880 --> 00:32:40,080
testen? Nou ik hoor heel graag van jullie. Oh dit is wel inderdaad, dat past hier heel goed bij.

349
00:32:40,080 --> 00:32:49,680
Ja ik denk we gaan toch even afbreken in wat Copilot dan eigenlijk doet. Hoe kan het nou dat

350
00:32:49,680 --> 00:32:53,880
hij in staat is om zo'n hele complexe taak, want dat is van Frits denk ik ook wel het geval,

351
00:32:53,880 --> 00:32:58,280
een testplan schrijven waarin je aannames doet. Dat klinkt nog niet heel eenvoudig.

352
00:32:58,280 --> 00:33:06,120
Dat doet Copilot ook met je codewijziging. En hier zit een truc in wat je kan doen. Je kan

353
00:33:06,120 --> 00:33:14,880
namelijk met ChatGPT bedenken hier een stap voor stap plan voor, voor mijn testplan schrijven. Wat

354
00:33:14,880 --> 00:33:19,360
hij dan gaat doen is hij komt dan terug met een takenlijstje eigenlijk van de stappen die je zou

355
00:33:19,360 --> 00:33:23,360
moeten ondernemen om zelf een testplan op te schrijven. Waarbij je die specificaties weer

356
00:33:23,360 --> 00:33:28,960
heel belangrijk is, want die zijn heel contextgevoelig. Dus je schrijft zelf welke risico's

357
00:33:28,960 --> 00:33:36,760
wil je afdekken? Wat is de context waarin je dat testplan wil schrijven? Misschien zelfs meegeven

358
00:33:36,760 --> 00:33:42,360
wat voor type testplannen. Daar zijn natuurlijk allerlei verschillende in. Net zo goed als wat

359
00:33:42,360 --> 00:33:48,720
we net hadden bij die specificatie in Copilot. Ja je kan het dus echt wel benaderen als van

360
00:33:48,720 --> 00:33:54,560
hoe zou ik dat doen? Dus ik zou inderdaad net als jij zou zeggen van oké wat voor risico wil ik

361
00:33:54,560 --> 00:33:59,880
afdekken? Wat wil ik bereiken? Wat is het doel? En waarbinnen gebeurt het? Als je dat aan ChatGPT

362
00:33:59,880 --> 00:34:04,960
uitgeschreven opgeeft en je zegt dan maak een stap voor stap plan hiervoor. Dan komt hij met

363
00:34:04,960 --> 00:34:08,840
een takenlijst terug en dan vervolgens kun je tegen hem zeggen. Ja maar dat is niet het testplan,

364
00:34:08,840 --> 00:34:15,120
maar het is het stappenplan die komt tot dat testplan. Ja en daarna zeg je tegen hem werk

365
00:34:15,120 --> 00:34:21,240
stap 1 uit, werk stap 2 uit, werk stap 3 uit enzovoort enzovoort. En dan zul je zien dat hij

366
00:34:21,240 --> 00:34:26,240
dan wel met een testplan komt. Als je tegen hem zegt van ik heb dit product, dit zijn mijn risico's,

367
00:34:26,240 --> 00:34:33,240
dit is het doel, maak een testplan. Dan gaat hij een soort van. Moa, generiek. Ja, je vraagt de

368
00:34:33,240 --> 00:34:37,200
stagiair en je krijgt hetzelfde. Maar als je nou stap voor stap dat aan hem vertelt van ik wil gewoon

369
00:34:37,200 --> 00:34:42,040
dat je eerst een stappenplan maakt en dan stap voor stap gaat laten uitwerken. Dan zul je zien dat

370
00:34:42,040 --> 00:34:48,560
hij dat wel doet. Precies en het mooie is dat je dus net als wat we net hadden bij Copilot,

371
00:34:48,560 --> 00:34:54,920
dat bij dat stappenplan als je zegt van werk stap 1 uit, dat je daar weer dus nieuwe context,

372
00:34:54,920 --> 00:35:00,920
hele specifieke context van jezelf, dat je die opgeeft. Dat je zegt neem dit mee in deze stap.

373
00:35:00,920 --> 00:35:09,800
En zo bouw je eigenlijk stap voor stap, bouw je dit plan op. Ja en ik zou dus in dit geval ook,

374
00:35:09,800 --> 00:35:17,040
dit lukt bijna niet in één conversatie. Dat vindt hij echt moeilijk. De truc die ik zelf dus

375
00:35:17,040 --> 00:35:21,760
nog wel eens uithaal is een Word document open aan de zijkant. Daar plak ik het antwoord in op

376
00:35:21,760 --> 00:35:27,400
dat plan en dan ga ik stukje bij beetje kopiëren plakken weer in ChatGPT met de juiste context

377
00:35:27,400 --> 00:35:32,240
erbij. En dan komt er in Word eigenlijk mijn hele plan helemaal te staan. Ja, dat is een soort

378
00:35:32,240 --> 00:35:37,760
kladblaadje voor ChatGPT alleen ziet hij die niet. Dat is de truc. Mooi, mooi antwoord. Nou Frits,

379
00:35:37,760 --> 00:35:42,480
laat ons even horen of dit ook een bevredigend antwoord voor je is. We willen natuurlijk ook

380
00:35:42,480 --> 00:35:49,660
weten is het gelukt met je testplan? Absoluut, toch? Hey Willem, het laatste stukje wil ik

381
00:35:49,660 --> 00:35:55,680
gebruiken van, ik had nu al eigenlijk een beetje het idee dat ik een kijkje in de toekomst had,

382
00:35:55,680 --> 00:36:01,520
maar het is er. Dus dit is eigenlijk de werkelijkheid waar we naar gekeken hebben. Hoe

383
00:36:01,520 --> 00:36:10,760
zie jij dit ontwikkelen? Het feit dat AI gaat programmeren, ja wat we tot nu toe gezien hebben.

384
00:36:10,760 --> 00:36:19,040
Ik denk, ja de eerste stap is natuurlijk dit verfijnen. Dat ga je meemaken dat dat dan gaat

385
00:36:19,040 --> 00:36:22,920
gebeuren. Ik zie ook wel dat dit gekopieerd gaat worden naar andere plekken waar dit handig is.

386
00:36:22,920 --> 00:36:31,120
Wat bedoel je met andere plekken? Copywriting, presentaties maken. Testplannen schrijven.

387
00:36:31,120 --> 00:36:36,680
Ja, Frits op weg helpen met een testplan. Of als je geen Frits heet, dan kan dat nog steeds.

388
00:36:36,680 --> 00:36:42,680
Dus je gaat zien dat andere vakgebieden van dit patroon, wat we hier eigenlijk zien,

389
00:36:42,680 --> 00:36:49,920
gaan profiteren. De volgende stap is volgens mij toch nog wel weer dat er meerdere gespecialiseerde

390
00:36:49,920 --> 00:36:56,400
agents bij komen kijken om nog complexere zaken weer op te lossen. Ja en met agents bedoel je,

391
00:36:56,400 --> 00:37:04,280
want nu hebben we een agent die kan programmeren. Dat je straks hele specifieke... Ja, als je een

392
00:37:04,280 --> 00:37:07,880
webapplicatie bouwt is bijvoorbeeld beveiliging weer heel erg belangrijk. Een agent die je

393
00:37:07,880 --> 00:37:12,240
webapplicatie binnenstebuiten kan keren op zoek naar beveiligingslekken. Dat is natuurlijk ook

394
00:37:12,240 --> 00:37:19,400
super handig. Maar ook voor puur praktisch voor op kantoor een agent die delen van je bedrijfsproces

395
00:37:19,400 --> 00:37:25,240
uitvoert en dat meerdere agents met elkaar gaan communiceren om een nog grotere deel van je

396
00:37:25,240 --> 00:37:32,520
bedrijfsproces te automatiseren. Ik zie dat wel gebeuren denk ik. Ja, ik meen het. We hadden

397
00:37:32,520 --> 00:37:39,000
natuurlijk nog beloften van Niels van hoe zit het met kosten, licentiestructuren als je dit wil gaan

398
00:37:39,000 --> 00:37:46,520
gebruiken zodra je daadwerkelijk zeg maar in je projecten. Ja, dus we moeten ons goed realiseren

399
00:37:46,520 --> 00:37:54,600
dat op dit moment Copilot Workspaces is in preview. Het verandert ongeveer 4 tot 6 keer per

400
00:37:54,600 --> 00:38:00,480
dag. Krijg ik nieuwe knopjes, nieuwe dingen erin. Dus pricing hebben ze niet beschikbaar. Maar je

401
00:38:00,480 --> 00:38:06,320
kan je voorstellen je hebt nu Copilot licentie voor ik meen iets van 15 dollar per maand of

402
00:38:06,320 --> 00:38:11,520
richting de 30 daar in die buurt zit dat ongeveer. Per persoon he? Per persoon, dus laten we zeggen

403
00:38:11,520 --> 00:38:16,400
30 euro per maand. Ja, dit is extra functionaliteit. Ik kan me voorstellen dat ze hier een premium

404
00:38:16,400 --> 00:38:21,240
variant van gaan maken dat je dus 50 euro per maand betaalt hiervoor. Ik denk nog steeds dat

405
00:38:21,240 --> 00:38:25,840
het vrij goedkoop is voor wat je krijgt. Ja, als je dat omrekent naar uurtarief. Ja,

406
00:38:25,840 --> 00:38:31,760
ik bedoel ik kan daar niet eens een uur voor werken eerlijk gezegd. Dus dat ja, ik denk dat

407
00:38:31,760 --> 00:38:38,960
het reuze meevalt qua licenties. Wat denk ik ook wel goed is om te realiseren is dat dus met dit

408
00:38:38,960 --> 00:38:43,160
soort dingen je gaat je code naar het internet sturen naar een externe partij. Dat is altijd

409
00:38:43,160 --> 00:38:48,880
een heet hangijzer. Dat is hier ook zo. Er gelden dezelfde regels voor als voor Copilot zelf. Dat

410
00:38:48,880 --> 00:38:55,360
wil dus zeggen dat de data is van jou. GitHub kan er niet in kijken. Daar hebben ze ook een

411
00:38:55,360 --> 00:39:00,640
licentie technisch en zo hebben ze dat allemaal afgedikt voor je qua overeenkomst. En wat ook wel

412
00:39:00,640 --> 00:39:05,920
goed is om te weten, ze gaan code genereren. Daar kan open source code bij verschijnen. Ook daarvoor

413
00:39:05,920 --> 00:39:11,640
geldt ze genereren alleen code wat licentie technisch mag. Ze controleren daarop dat ze de

414
00:39:11,640 --> 00:39:16,840
goede spullen genereren. Dat is wel heel mooi. Ja, ik heb laatst voor het eerst live meegemaakt

415
00:39:16,840 --> 00:39:21,840
dat ik code suggestie kreeg wat dan licentie technisch niet kon. Met wat ik had ingesteld

416
00:39:21,840 --> 00:39:26,040
staan. En dan kreeg ik een soort waarschuwing onderin beeld. Ik heb iets geprobeerd te genereren

417
00:39:26,040 --> 00:39:30,720
voor je maar ik heb het maar weer weggehaald want het was copyright technisch niet handig. Dus dat

418
00:39:30,720 --> 00:39:36,800
is wel heel goed. Dat is zeker goed. Ja, dus dat zit hier ook gewoon in gebouwd. Netjes. Willem,

419
00:39:36,800 --> 00:39:46,400
weet je, hoe kunnen mensen nou zelf beginnen hiermee? Ja, dus Copilot Workspace is nog niet

420
00:39:46,400 --> 00:39:51,200
voor iedereen beschikbaar. Het is voor een kleine groep op dit moment. Maar dat groeit wel heel snel.

421
00:39:51,200 --> 00:39:56,400
Er staat op GitHub.com, kun je je aanmelden op de wachtlijst. Dus bij je softwareontwikkelaar of

422
00:39:56,400 --> 00:39:59,840
bij je IT manager en je denkt van nou dit moet ik een keertje gedaan hebben. Meld je je aan voor

423
00:39:59,840 --> 00:40:04,560
de wachtlijst. Ik weet niet hoe snel het gaat maar ik vermoed dat het steeds sneller wordt. Die

424
00:40:04,560 --> 00:40:09,480
wachtlijst. Dat je aan de beurt bent om daar ook toegang toe te krijgen. En is dat dan ook zeg maar

425
00:40:09,480 --> 00:40:19,000
de actie die je wil oproepen aan mensen van ga dit gewoon proberen? Ja, kijk nu workspace proberen

426
00:40:19,000 --> 00:40:24,400
is een beetje lastig. Maar goed, meld je aan voor de wachtlijst in ieder geval. En ga GitHub Copilot,

427
00:40:24,400 --> 00:40:32,160
degene die nu al publiek is, ga die in ieder geval wel gebruiken. Want dat alleen al is een flinke

428
00:40:32,160 --> 00:40:36,960
stap vooruit en het helpt je alleen maar bij het beter begrijpen wat dit soort tools doen. Ja,

429
00:40:36,960 --> 00:40:43,840
want uiteindelijk komen we als software developers hier niet onderuit dat dit ons werk gaat veranderen.

430
00:40:43,840 --> 00:40:48,760
Net zo goed als dat het in iedere sector, overal waar het gaat over schrijven, wat je dan ook

431
00:40:48,760 --> 00:40:54,680
schrijft, gaat gewoon je werk veranderen. Ja, en wij zeiden een half jaar geleden,

432
00:40:54,680 --> 00:41:01,360
dat gaat nog twee jaar duren. En we hebben heel erg ongelijk gehad. Ja, zo gaat het.

433
00:41:01,360 --> 00:41:08,840
Sneller dan dat je verwacht. Absoluut. Hé, hartstikke bedankt. We hebben het er echt even

434
00:41:08,840 --> 00:41:15,160
zo tussendoor gepropt. Dus ik hoop dat je het als luisteraar ook heel erg leuk vindt. Het is allemaal

435
00:41:15,160 --> 00:41:21,200
nog heel erg preview. We hebben ervan mogen proeven en we wilden dat heel graag met jullie delen.

436
00:41:21,200 --> 00:41:30,560
Dank je wel, Willem. Leuk dat je er weer luisterde naar deze aflevering. Weet dat je lid kan worden

437
00:41:30,560 --> 00:41:37,000
van onze community van AI-enthusiastelingen. En dan kan je namelijk maandelijks exclusieve content

438
00:41:37,000 --> 00:41:40,960
ontvangen. Als je je inschrijft voor onze nieuwsbrief, dan blijf je geïnformeerd over

439
00:41:40,960 --> 00:41:44,720
de nieuwste ontwikkelingen. De link vind je in de show note. Tot de volgende keer.

440
00:41:44,720 --> 00:41:46,720
Zie je?

441
00:41:46,720 --> 00:42:07,120
.


People on this episode