WEBVTT

1
00:00:05.810 --> 00:00:09.450
Welkom bij de nieuwe aflevering van de CodeKlets podcast.

2
00:00:09.970 --> 00:00:11.790
De hosts van vandaag zijn Saber en ik.

3
00:00:12.350 --> 00:00:14.730
Zo Saber, dat is al weer lang geleden dat we zo met z'n tweeën zitten.

4
00:00:14.870 --> 00:00:16.730
Ja, dat kun je wel zeggen.

5
00:00:17.450 --> 00:00:22.470
De laatste keer was hij hier ook, we zaten echt met z'n zessen, maar dat was de aflevering

6
00:00:22.470 --> 00:00:24.590
voor Verlienen die jij weer had opgenomen.

7
00:00:24.670 --> 00:00:25.210
Ja, klopt.

8
00:00:25.250 --> 00:00:30.110
Maar dat was ook alweer een tijd geleden, zeg maar, dat was ook wel gezellig.

9
00:00:31.510 --> 00:00:32.970
Maar ja, we moeten wel vaker opnemen.

10
00:00:33.310 --> 00:00:40.270
Ja, dat is het idee, anders zien we elkaar niet zo vaak en ja, dan hebben we niks te delen

11
00:00:40.270 --> 00:00:41.930
met de wereld en dat willen we natuurlijk wel.

12
00:00:42.450 --> 00:00:44.390
Ja, het was ook heel erg gezellig zo met z'n zesjes.

13
00:00:46.010 --> 00:00:52.470
Oké, maar goed, wat zag ik nou, ben jij flink aan het editen geweest de laatste

14
00:00:52.470 --> 00:00:52.670
tijd?

15
00:00:52.830 --> 00:00:53.190
Ja.

16
00:00:53.770 --> 00:00:54.650
Dat moest wel even beter.

17
00:00:54.890 --> 00:00:57.830
Ja, want ik had die belofte volgens mij er eens een keer gedaan dat ik de eerste

18
00:00:57.830 --> 00:01:02.270
aflevering nog een keer zou gaan editen om de geluidskwaliteit weer wat op te schroeven.

19
00:01:05.070 --> 00:01:09.030
Want dat had ik volgens mij redelijk verpest de eerste keer.

20
00:01:10.770 --> 00:01:15.610
Maar ja, goed, het enige nadeel, daar zit nog wel een raar ratelingetje in die aflevering.

21
00:01:15.730 --> 00:01:18.610
Dat heb ik er niet allemaal uit geknipt, want dat was echt monnike werk.

22
00:01:19.210 --> 00:01:22.470
Maar hij is een stuk beter te beluisteren, dus dat lijkt me heel handig.

23
00:01:22.550 --> 00:01:23.410
Wat is de eerste aflevering?

24
00:01:23.450 --> 00:01:26.550
Dat is eigenlijk de kennismaking en het is een beetje jammer dat mensen afhaken

25
00:01:26.550 --> 00:01:28.770
als ze die aflevering horen.

26
00:01:28.970 --> 00:01:30.790
Dus ik hoop dat dat bevalt.

27
00:01:32.310 --> 00:01:36.750
Ja, ik zou zeggen, ga het luisteren, onze allereerste aflevering.

28
00:01:38.190 --> 00:01:41.230
Ja, die is dus een heel mooie, veel mooier qua geluid.

29
00:01:42.070 --> 00:01:45.030
Nou, dankjewel dat je dat nog hebt kunnen, daar heb je veel tijd in gestoken.

30
00:01:45.250 --> 00:01:46.970
Ja, jongen, zes jaar ongeveer.

31
00:01:47.230 --> 00:01:48.970
Maar we bestaan wel drie jaar.

32
00:01:50.510 --> 00:01:56.410
Nee, nee, het op zich, het editen was ja, redelijk snel.

33
00:01:56.410 --> 00:02:00.490
Omdat dat nu gewoon door ervaring, want nu knip je gewoon veel sneller dan dat je in

34
00:02:00.490 --> 00:02:00.870
begin deed.

35
00:02:02.110 --> 00:02:05.290
En geluidskwaliteit heb je gewoon online tool die ik gebruik, want dat is gewoon

36
00:02:05.290 --> 00:02:05.890
luiheid.

37
00:02:06.510 --> 00:02:10.650
En daar gooi ik alles in en dan normaliseert hij het en dan.

38
00:02:11.310 --> 00:02:20.830
Wat ook tof is trouwens, er zit overal AI in en je kunt een transcription, ik hoor

39
00:02:20.830 --> 00:02:24.090
de laatste iemand in Nederland zeggen, ik vind het heel raar klinken, transcriberen

40
00:02:24.090 --> 00:02:24.570
volgens mij.

41
00:02:24.930 --> 00:02:25.450
Transcriberen, ja.

42
00:02:25.930 --> 00:02:26.410
Klinkt niet.

43
00:02:26.670 --> 00:02:31.170
Maar goed, dus en dan komt er gewoon echt een goede tekst uit, gewoon Nederlands.

44
00:02:31.470 --> 00:02:33.530
Dus dat viel me echt heel erg mee.

45
00:02:34.090 --> 00:02:40.830
Maar ja, heb je weleens zoiets in Teams ook geprobeerd en dan van van en dan probeert

46
00:02:40.830 --> 00:02:44.190
hij volgens mij van Engels, Nederlands proberen te vertalen.

47
00:02:44.930 --> 00:02:47.450
Nou, echt, je ligt helemaal in de deuk wat hij ervan maakt.

48
00:02:48.410 --> 00:02:52.190
Maar dit gaat op zich goed, dat model, want blijkbaar zijn Engels is natuurlijk ja,

49
00:02:52.250 --> 00:02:55.430
waarschijnlijk de taal waar het meeste van te vinden is.

50
00:02:55.430 --> 00:02:57.770
Maar waar het model het beste van is, dat geloof ik ook wel.

51
00:02:57.850 --> 00:03:01.510
Maar Nederlands doet het echt wel goed, dus dat hadden we toevallig in de vorige aflevering

52
00:03:01.510 --> 00:03:04.670
over dat bepaalde Afrikaanse talen, die hebben dus gewoon, dan werkt het dus gewoon niet

53
00:03:04.670 --> 00:03:08.630
bij omdat er gewoon te weinig materiaal is om op te trainen.

54
00:03:08.670 --> 00:03:12.210
Dus dat is een beetje jammer, maar we hebben blijkbaar een beetje gelukt met de Nederlandse

55
00:03:12.210 --> 00:03:12.370
taal.

56
00:03:12.530 --> 00:03:12.830
Maar goed.

57
00:03:12.910 --> 00:03:13.790
Heel goed man.

58
00:03:16.290 --> 00:03:17.930
Nou, ja, hartstikke mooi.

59
00:03:18.250 --> 00:03:21.850
Nou, ja, deze aflevering is ook weer wederom bijzonder.

60
00:03:22.570 --> 00:03:29.410
We hebben twee hele interessante gasten uitgenodigd om eens te praten over continuous integration

61
00:03:29.410 --> 00:03:30.930
en continuous delivery.

62
00:03:32.130 --> 00:03:36.470
Onze gasten van vandaag zijn Gerard van Engelen en Rick de Groot.

63
00:03:37.070 --> 00:03:41.450
Nou, leek het ons wel even leuk om jullie even zelf jezelf even te laten voorstellen.

64
00:03:41.970 --> 00:03:44.510
Dus ik begin even hier links van mij dan.

65
00:03:45.050 --> 00:03:47.790
Rick, zou je misschien jezelf aan de luidsrads kunnen voorstellen?

66
00:03:48.690 --> 00:03:50.490
Dat lukt me wel, denk ik.

67
00:03:50.650 --> 00:03:51.250
Ja, ik hoop het.

68
00:03:51.250 --> 00:03:58.390
Ik ben Rick, dus ik ben net veertig geworden, dus ik zit midden in mijn midlifecrisis op

69
00:03:58.390 --> 00:03:58.910
het moment.

70
00:04:01.210 --> 00:04:01.610
Dus...

71
00:04:01.610 --> 00:04:02.850
Kunnen we het ook even over hebben, hoor?

72
00:04:03.370 --> 00:04:05.290
Nou, dan zitten we nog wel even, denk ik.

73
00:04:05.370 --> 00:04:07.130
We moeten het een beetje binnen de tijd houden, toch?

74
00:04:07.610 --> 00:04:09.010
Anders op podcast, denk ik.

75
00:04:09.290 --> 00:04:09.470
Ja, ja.

76
00:04:12.370 --> 00:04:17.350
Ik heb natuurkunde gestudeerd, ik heb heel veel gestudeerd, maar uiteindelijk natuurkunde

77
00:04:17.350 --> 00:04:18.010
gestudeerd.

78
00:04:18.010 --> 00:04:22.850
En sinds ik afgestudeerd ben, werk ik in de software.

79
00:04:23.490 --> 00:04:25.490
Eerst als tester, later als developer.

80
00:04:28.850 --> 00:04:31.810
Ja, dat is nu ongeveer 15 jaar.

81
00:04:32.490 --> 00:04:34.290
Ik weet niet meer precies, maar...

82
00:04:35.650 --> 00:04:39.910
En ik woon in Maartstijk, in de buurt van Utrecht.

83
00:04:40.310 --> 00:04:41.550
Ik heb twee kinderen.

84
00:04:43.150 --> 00:04:44.710
Een jonge en een meisje.

85
00:04:44.710 --> 00:04:49.570
Die ik ook een klein beetje probeer warm te maken voor software development.

86
00:04:50.630 --> 00:04:53.430
Maar veel verder dan gamen, komt tot op het moment nog niet.

87
00:04:53.470 --> 00:04:54.110
Hoe oud zijn ze nu?

88
00:04:54.370 --> 00:04:55.970
10 en 9.

89
00:04:56.410 --> 00:04:58.170
Dus de oudste is net 10 geworden.

90
00:04:58.590 --> 00:04:59.690
Naar 10 is ook wel een half jaar.

91
00:04:59.930 --> 00:05:01.690
Die jongste wordt bijna acht uigen.

92
00:05:02.230 --> 00:05:02.930
Dat gaat ook snel.

93
00:05:04.150 --> 00:05:04.490
Ja, leuk.

94
00:05:04.830 --> 00:05:11.350
Dus ik heb dat, het de kinderen leren programmeren ooit nog als excuus gebruikt

95
00:05:12.250 --> 00:05:14.930
Ik heb zo'n hele oude IBM gekocht.

96
00:05:15.770 --> 00:05:16.090
Cool.

97
00:05:17.130 --> 00:05:20.790
Met het excuus ja, dan kan ik de kinderen leren programmeren.

98
00:05:21.070 --> 00:05:23.450
Volgens mij had je toch ook een keer een hele oude monitor.

99
00:05:23.790 --> 00:05:25.610
Zag ik een keer op LinkedIn of Twitter?

100
00:05:25.630 --> 00:05:26.910
Ja, maar dat is niet alleen een monitor.

101
00:05:26.990 --> 00:05:29.130
Dat is een IBM XT.

102
00:05:29.350 --> 00:05:31.170
Dat ding is uit 83.

103
00:05:31.750 --> 00:05:33.810
Ik ben ook uit 83, maar dat ding is uit 83.

104
00:05:34.210 --> 00:05:38.050
Dat is ook mooi, want dan kun je niet horen op de podcast.

105
00:05:38.850 --> 00:05:39.610
Maar dat ding is loodsvaar.

106
00:05:39.670 --> 00:05:40.750
Er zit zo'n harde schijf in.

107
00:05:40.750 --> 00:05:44.830
Dat is volgens mij 64 MB of zo.

108
00:05:45.730 --> 00:05:50.130
Dan zit er 600 KB intern geheugen.

109
00:05:50.730 --> 00:05:52.550
Oh ja, dat denk ik.

110
00:05:52.590 --> 00:05:55.190
En als je hem aanzet, gaat er ook zo'n tellertje oplopen.

111
00:05:58.350 --> 00:05:59.710
Oh heerlijk.

112
00:05:59.990 --> 00:06:00.550
Nou, mooi man.

113
00:06:00.990 --> 00:06:02.050
En wat doe je nu?

114
00:06:02.370 --> 00:06:05.750
Ik werk nu bij Financial Lease.

115
00:06:07.090 --> 00:06:16.230
Dat is een bedrijf dat bemiddels tussen zetse...

116
00:06:16.230 --> 00:06:20.970
voornamelijk zetse payers, maar zelfstandigen die op zoek zijn naar een auto.

117
00:06:21.950 --> 00:06:24.330
En autobedrijven die auto's aanbieden.

118
00:06:24.470 --> 00:06:25.350
Het is tweedehands.

119
00:06:25.670 --> 00:06:29.390
En dan de banken die het financiële product Financial Lease aanbieden.

120
00:06:29.450 --> 00:06:31.430
Wat voor ondernemers heel aantrekkelijk is.

121
00:06:33.590 --> 00:06:38.750
En als ik het aan mensen probeer uit te leggen die niet precies weten wat het is,

122
00:06:38.910 --> 00:06:43.770
dan zeg ik altijd dat het een soort hypotheker is, maar dan voor zetse payers en auto's.

123
00:06:44.070 --> 00:06:45.910
Ik hoop niet dat mijn baas heel boos wordt.

124
00:06:46.510 --> 00:06:48.050
Nu zit het...

125
00:06:48.850 --> 00:06:49.950
Cancel, cancel ik.

126
00:06:50.690 --> 00:06:53.610
Maar dan is het wel redelijk, geeft het wel een beeld van wat het is.

127
00:06:53.650 --> 00:07:00.690
Ja, dus wij hebben in principe zelf geen voorraad en wij financieren niet.

128
00:07:00.690 --> 00:07:06.090
Maar we ontlasten, of ontsorgen eigenlijk de mensen bij,

129
00:07:06.310 --> 00:07:09.210
net als dat de hypotheker doet bij het aanschaffen van een huis.

130
00:07:09.610 --> 00:07:12.010
Tenminste, dat hoop ik voor je als je zegt.

131
00:07:12.530 --> 00:07:13.990
Ja, dat is wel het idee toch?

132
00:07:14.050 --> 00:07:15.750
En wat voor coole dingen mag jij daar doen?

133
00:07:16.930 --> 00:07:20.250
Ja, ik werk daar als technical lead.

134
00:07:20.390 --> 00:07:24.910
Ik ben daar ruim een jaar geleden binnengekomen.

135
00:07:24.990 --> 00:07:29.970
Toen was de IT-afdeling binnen het bedrijf vrij klein.

136
00:07:29.970 --> 00:07:38.910
Dus we hebben voornamelijk voor onze lease-adviseurs die werken in Salesforce.

137
00:07:39.450 --> 00:07:43.010
Dus dat is wel een Salesforce-team.

138
00:07:45.470 --> 00:07:53.190
En als ik altijd probeer te omschrijven aan de mensen die op kandidaten die op gesprek komen,

139
00:07:53.350 --> 00:07:54.170
van oké, wat doe je dan?

140
00:07:54.170 --> 00:07:57.290
Ja, alles software wat geen Salesforce is, dan komt het eigenlijk op neer.

141
00:07:57.290 --> 00:08:02.950
En dat zijn voornamelijk integraties, services die wij gebruiken

142
00:08:02.950 --> 00:08:08.370
om dat proces van onze lease-adviseurs te vergemakkelijken

143
00:08:09.830 --> 00:08:14.930
en de autobedrijven voor het aanbieden van hun voorraad op onze website.

144
00:08:16.410 --> 00:08:18.350
Oké, cool. Dus technical lead.

145
00:08:18.590 --> 00:08:19.950
Ja, dus een beetje van alles nog wat.

146
00:08:20.350 --> 00:08:25.490
Ja, dus wat meer richting minder zelf aan de knoppen zitten.

147
00:08:26.230 --> 00:08:30.170
Het is niet dat ik helemaal niks meer doe, maar ik heb overal wel een mening over.

148
00:08:31.190 --> 00:08:32.590
Zo ken je mij denk ik ook wel kiezen.

149
00:08:32.650 --> 00:08:32.950
Ja, zeker.

150
00:08:33.610 --> 00:08:37.330
Het is wel leuk om even te vertellen, Rick en ik, we hebben samen bij Mendix gewerkt.

151
00:08:37.510 --> 00:08:45.450
Daar hebben we samen ook echt veel nagedacht over hoe we de CI-CD pipelines van Mendix beter konden maken.

152
00:08:46.050 --> 00:08:49.550
Dus dat was ook een van de redenen waarom we je natuurlijk hebben uitgenodigd.

153
00:08:49.690 --> 00:08:51.390
Nou goed, gaan we door naar onze volgende gast.

154
00:08:52.250 --> 00:08:53.350
Gerard van Engelen.

155
00:08:53.350 --> 00:08:56.450
Ja, nou ja, mijn naam heb je al gehoord natuurlijk, maar ik zal mezelf nog een keer voorstellen.

156
00:08:56.610 --> 00:09:00.390
Gerard van Engelen is altijd zo vreemd nadat iemand je voorstelt.

157
00:09:00.590 --> 00:09:05.390
Maar ik ben 34 en ik heb ook twee kinderen.

158
00:09:05.610 --> 00:09:09.750
Een dochter van anderhalf Lotta en een zoon voor vier, Siebe.

159
00:09:10.410 --> 00:09:14.110
En Siebe gaat deze week voor het eerst naar school, dus dat is allemaal heel spannend natuurlijk.

160
00:09:15.630 --> 00:09:19.410
Ja, in ieder geval voor mij is het spannend, misschien voor de luisteraars niet.

161
00:09:19.410 --> 00:09:23.310
Maar goed, je bent toch ouder.

162
00:09:24.890 --> 00:09:26.970
Nou ja, net als Rick ben ik eigenlijk begonnen als tester.

163
00:09:27.610 --> 00:09:32.710
Ik heb dan alleen bedrijfseconomie gestudeerd, maar nadat ik klaar was met studeren,

164
00:09:32.950 --> 00:09:36.310
dacht ik, alles wat ik nu doe, dat wordt ook door computers gedaan.

165
00:09:36.470 --> 00:09:40.750
Dus ik stapte snel aan boord van de IT-terrein.

166
00:09:41.810 --> 00:09:46.230
En ja, eigenlijk de jaren door is het een beetje, hoe zeg je dat?

167
00:09:46.230 --> 00:09:52.670
Meer gaarig in testautomatisering, toch weer meer CICD, ook wat developmentwerk erbij.

168
00:09:53.770 --> 00:09:58.730
En dan, ja, op dit moment werk ik als platformengineer bij KB gedeticheerd.

169
00:09:59.270 --> 00:10:07.610
En daar werken we nu aan een platform waar een systeem op draait die eigenlijk alle boeken

170
00:10:07.610 --> 00:10:14.390
en wetenschappelijk artikelen die uit zijn gebracht en uit worden gebracht, digitaal opslaat.

171
00:10:14.390 --> 00:10:18.750
Dat is een van de kerntaken van de KB, is het opslaan van de Nederlandse taal.

172
00:10:19.390 --> 00:10:24.530
Dus je kan je voorstellen dat daar petabytes aan data doorheen gaat.

173
00:10:24.810 --> 00:10:30.330
En daar ben ik nu CICD pipelines voor aanbouwen voor de applicaties die dat faciliteren.

174
00:10:31.650 --> 00:10:36.010
Oké, cool. Nou ja, dat is ook een mooie reden om jou hier in de podcast te hebben.

175
00:10:36.230 --> 00:10:38.390
Ja, zeker. Ja, cool.

176
00:10:39.130 --> 00:10:43.670
Andere vragen die wil ik altijd stellen, is hoe jullie zijn begonnen ooit met programmeren.

177
00:10:43.670 --> 00:10:46.390
Heb je, wat is je eerste herinnering eraan?

178
00:10:46.530 --> 00:10:47.630
Hoe ben je er ingerold?

179
00:10:47.770 --> 00:10:51.590
Want de ene die begint toen ik een amper kon lopen.

180
00:10:51.850 --> 00:10:52.730
Nou, dat is overdreven.

181
00:10:53.210 --> 00:10:55.250
En de andere is echt op veel later leeftijd begonnen.

182
00:10:55.950 --> 00:10:58.350
Dus dat vind ik altijd wel leuk om te horen.

183
00:10:59.630 --> 00:11:00.690
Ja, shoot maar.

184
00:11:00.870 --> 00:11:02.930
Ik weet niet wie wil beginnen erover.

185
00:11:03.310 --> 00:11:04.150
Ik wil best beginnen.

186
00:11:05.290 --> 00:11:07.670
Er wordt wel misschien een beetje opa verteld,

187
00:11:07.670 --> 00:11:14.390
want mijn eerste programmeer ervaring was in Flash toen nog van Macromedia.

188
00:11:14.590 --> 00:11:16.890
Ik weet niet of dat later volgens mij bestaat.

189
00:11:16.990 --> 00:11:18.790
Het is al al jaren niet meer.

190
00:11:19.850 --> 00:11:21.830
Maar het is overgenomen door Adobe, volgens mij.

191
00:11:21.930 --> 00:11:23.070
Ja, volgens mij op een gegeven moment wel.

192
00:11:23.290 --> 00:11:24.010
Ja, maar toen.

193
00:11:24.730 --> 00:11:26.230
Maar het is nu nu al.

194
00:11:26.230 --> 00:11:33.510
Ik weet niet hoelang, volgens mij uitgefaceerd uit de gecanceld uit de computer wereld.

195
00:11:33.510 --> 00:11:34.190
Ja, ja.

196
00:11:36.410 --> 00:11:38.570
Was toen ik op de middelbare school zat.

197
00:11:39.010 --> 00:11:41.370
Ik denk dat ik een jaar of 13, 14 was.

198
00:11:41.590 --> 00:11:43.610
Dus dat zal het zijn geweest.

199
00:11:43.670 --> 00:11:45.310
Eind jaren 90, half jaren 90.

200
00:11:46.770 --> 00:11:49.270
En toen heb ik samen met een vriend.

201
00:11:49.870 --> 00:11:54.610
In Flash kon je dan filmpjes maken, animaties, hoe je het wil noemen.

202
00:11:54.670 --> 00:11:58.490
Het zag er niet uit, maar dat was wel het eer.

203
00:11:59.470 --> 00:12:02.870
En dan, ja, tegenwoordig volgens mij in in paint kun je het beter doen.

204
00:12:02.870 --> 00:12:06.490
Maar toen toen was dat helemaal de bom.

205
00:12:07.610 --> 00:12:09.730
Daar is het toen een beetje begonnen.

206
00:12:11.370 --> 00:12:21.770
En toen tijdens mijn middelbare schooltijd, maar eigenlijk vooral tijdens mijn studietijd.

207
00:12:21.990 --> 00:12:24.170
Veel met met pp gewerkt.

208
00:12:24.410 --> 00:12:24.890
Weet niet.

209
00:12:26.560 --> 00:12:29.810
Nog uit de tijd dat dat pp.

210
00:12:30.290 --> 00:12:33.410
Het was een pp3 of zo, pp4.

211
00:12:34.810 --> 00:12:35.990
Nog geen klas gekende denk ik.

212
00:12:36.050 --> 00:12:36.730
Nee, volgens mij niet.

213
00:12:36.830 --> 00:12:40.410
Volgens mij was het gewoon een meer soort aan elkaar geknopt functies.

214
00:12:42.270 --> 00:12:44.590
Ja, het was echt scripting vooral, volgens mij.

215
00:12:45.150 --> 00:12:46.190
Ja, scripting, ja.

216
00:12:47.590 --> 00:12:48.770
Dus die tijd.

217
00:12:50.090 --> 00:12:51.310
En vanuit daar.

218
00:12:52.890 --> 00:12:55.030
Ja, door door gegaan.

219
00:12:55.430 --> 00:12:56.930
Dat was het begin.

220
00:12:56.930 --> 00:13:03.250
Maar mijn eerste herinnering is wel dat ik samen met die vriend toen dat filmpje gemaakt heb.

221
00:13:03.370 --> 00:13:03.890
Ja, precies.

222
00:13:04.410 --> 00:13:08.830
En ongetwijfeld zal er tussen wat HTML en CSS hebben gezeten.

223
00:13:10.330 --> 00:13:13.930
Wat een beetje het gezonde groeipad is.

224
00:13:14.150 --> 00:13:14.710
Ja, ja, ja.

225
00:13:14.710 --> 00:13:17.930
Wat iedereen wel denk ik inmiddels wel ervaart.

226
00:13:19.290 --> 00:13:21.470
Om makkelijk met HTML, ten eerste om te pogumeren.

227
00:13:21.910 --> 00:13:23.970
Ja, vrijwel iedereen heeft dat toegang tot een browser.

228
00:13:24.330 --> 00:13:25.210
Dus ja, dat is het natuurlijk wel.

229
00:13:25.210 --> 00:13:28.630
Ja, het was ook nog uit de tijd dat er geen dev tools in de browser zaten.

230
00:13:28.990 --> 00:13:32.990
Dat je bijna letterlijk met notepad gewoon.

231
00:13:33.010 --> 00:13:35.610
Dan had je dan wel notepad plus plus.

232
00:13:35.690 --> 00:13:37.490
Maar het heette toen volgens mij nog anders.

233
00:13:37.770 --> 00:13:39.370
Dat was eigenlijk gewoon notepad met syntax highlighting.

234
00:13:39.570 --> 00:13:40.010
Dat was het.

235
00:13:42.070 --> 00:13:42.870
Ja, precies.

236
00:13:43.590 --> 00:13:44.990
Bizar is dat vergelijkbaar nu.

237
00:13:45.970 --> 00:13:46.810
Ja, ja, nee.

238
00:13:47.050 --> 00:13:51.270
Die tijden zijn sowieso gelukkig veranderd.

239
00:13:51.950 --> 00:13:54.350
Meestal zeer gelukkig, want soms zit ik ook te vloeken op met tools.

240
00:13:54.350 --> 00:13:58.350
Maar dat is even een ander onderwerp.

241
00:13:59.210 --> 00:14:00.210
En jij Gerard?

242
00:14:01.310 --> 00:14:05.770
Ja, ik ben ik wel wat later op latere leeftijd begonnen met programmeren.

243
00:14:05.850 --> 00:14:09.650
Mijn eerste ervaring was Selenium C Sharp.

244
00:14:09.910 --> 00:14:11.650
Oh ja, de test tool.

245
00:14:11.970 --> 00:14:13.010
Ja, de test tool.

246
00:14:13.170 --> 00:14:16.390
Ik denk dat ik 6, 7 maanden als tester werkte.

247
00:14:17.570 --> 00:14:19.090
En ja, dan zeggen ze op een gegeven moment.

248
00:14:19.190 --> 00:14:20.910
Ja, je moet wel met test automatisering gaan doen.

249
00:14:21.490 --> 00:14:22.170
Video tutorial.

250
00:14:23.050 --> 00:14:24.530
En ja, daar is het eigenlijk begonnen.

251
00:14:24.890 --> 00:14:26.850
Zo'n 6 jaar geleden of zo.

252
00:14:29.010 --> 00:14:29.410
Oké.

253
00:14:29.610 --> 00:14:32.930
En heb je ook weleens een programmeertaal echt van scratch geleerd?

254
00:14:33.530 --> 00:14:37.370
Of ben je gewoon echt in de flow gegaan van de tutorials, wat je net zegt?

255
00:14:39.590 --> 00:14:40.970
Ja, ik denk niet echt van scratch.

256
00:14:40.990 --> 00:14:44.270
Ja, ik doe nu typescript en .net.

257
00:14:44.590 --> 00:14:48.610
En alle twee denk ik wel dat ik, ja, heb ik meer gedaan van nou, ik volg een tutorial.

258
00:14:49.190 --> 00:14:51.610
En dan ga je gewoon in een opdracht, ga je wat doen.

259
00:14:51.610 --> 00:14:56.010
Vaak is het dat je als tester kom je in een opdracht terecht en dan zeggen ze ja,

260
00:14:56.410 --> 00:15:00.710
we willen een test automatisering framework en we willen dit.

261
00:15:00.830 --> 00:15:03.070
En dan is dat weer een andere taal dan de opdracht daarvoor.

262
00:15:03.150 --> 00:15:04.030
Dus dan moet je weer beginnen.

263
00:15:04.230 --> 00:15:11.110
En dan, als ik nu vanuit mijn developer rol een opdracht zou aannemen,

264
00:15:11.210 --> 00:15:14.090
dan zou het denk ik wel typescript zijn.

265
00:15:15.230 --> 00:15:15.570
Ja, ja.

266
00:15:15.730 --> 00:15:19.890
Nee, want ja, kijk, ook in onze podcast hebben we het vaak over van ja,

267
00:15:19.890 --> 00:15:24.070
ook voor de youngsters out there, weet je wel, die onze podcast luisteren

268
00:15:24.470 --> 00:15:28.070
omdat ze gewoon echt kennis op willen doen van hoe de, ja, noem het maar even,

269
00:15:28.510 --> 00:15:31.410
de mannen of vrouwen die in de midlife crisis veertig jaar komen,

270
00:15:32.350 --> 00:15:34.970
hoe ze hun programmeerervaring hebben opgedaan.

271
00:15:35.030 --> 00:15:35.290
Ja.

272
00:15:35.290 --> 00:15:36.530
Dus vandaar dat ik even die vraag stel.

273
00:15:36.750 --> 00:15:38.930
Dus ik denk dat Saber en jij ook wel denken,

274
00:15:38.990 --> 00:15:41.070
je hebt ook een IT opleiding gedaan, toch?

275
00:15:41.310 --> 00:15:41.570
Ja.

276
00:15:42.030 --> 00:15:43.210
Ja, ik ook.

277
00:15:44.270 --> 00:15:46.890
Ja, weet je, daar leer je echt gewoon van scratch van,

278
00:15:46.890 --> 00:15:49.150
ja, joh, wat is, hoe ga je om met geheugen?

279
00:15:49.270 --> 00:15:49.950
Wat is rap?

280
00:15:51.690 --> 00:15:54.410
Tegenwoordig doen ze dat denk ik niet meer, vermoed ik.

281
00:15:54.810 --> 00:15:55.810
Alles is dan in de cloud.

282
00:15:56.430 --> 00:15:58.370
We hebben toevallig in de vorige podcast, maar dat is.

283
00:15:58.470 --> 00:15:59.230
Oh, oh ja.

284
00:15:59.230 --> 00:16:02.250
Ja, nee, dat is, het is lastig omdat ik weet niet of op HBO's

285
00:16:02.250 --> 00:16:03.870
dat dus misschien niet meer gegeven wordt.

286
00:16:04.450 --> 00:16:04.530
Ja.

287
00:16:04.570 --> 00:16:05.910
Op universiteiten weet ik zeker dat ze dat doen,

288
00:16:05.950 --> 00:16:08.630
omdat ze dan met compilers bezig zijn en parsers en ja.

289
00:16:09.250 --> 00:16:11.670
Maar dat, ja, dat hadden we toen die discussie,

290
00:16:11.810 --> 00:16:13.550
of Tins en Fellini legden het ook uit van ja,

291
00:16:13.550 --> 00:16:17.850
eigenlijk is een universiteit een wetenschappelijk instituut.

292
00:16:17.950 --> 00:16:20.750
Dus je leidt mensen op om wetenschappelijk onderzoek te doen.

293
00:16:20.950 --> 00:16:21.970
Dat is normaal gesproken zo.

294
00:16:22.750 --> 00:16:23.870
En dan is het heel logisch.

295
00:16:24.110 --> 00:16:29.710
Dus dat als je daar komt, dat je dan wel de diepte in gaat.

296
00:16:29.910 --> 00:16:31.890
Dat je weet wat doet de CPU en zo.

297
00:16:32.170 --> 00:16:35.010
Dat is wel een soort van kennis die je nodig hebt.

298
00:16:35.290 --> 00:16:37.630
Terwijl op HBO is het vooral toepassen van.

299
00:16:38.130 --> 00:16:42.290
En is het nog nodig dat je machine taal, zeg maar, nog moet leren?

300
00:16:42.290 --> 00:16:42.850
Dat is assembly.

301
00:16:43.230 --> 00:16:44.650
Ik weet niet of dat nu nog gebeurt.

302
00:16:44.710 --> 00:16:45.370
Dat weet ik niet eens.

303
00:16:46.350 --> 00:16:47.750
En dat zal misschien niet zo zijn.

304
00:16:47.890 --> 00:16:50.250
Dus dat je niet meer zo diep hoeft te gaan.

305
00:16:51.570 --> 00:16:52.130
Nee, maar dan.

306
00:16:52.270 --> 00:16:54.370
Kijk, wat ik nog van mijn opleidingen kan redden,

307
00:16:54.530 --> 00:16:56.850
is dat je dan veel leerde over, weet je,

308
00:16:56.930 --> 00:17:00.250
hoe je architectuur bijvoorbeeld in software zou kunnen opzetten.

309
00:17:00.670 --> 00:17:02.270
Hoe je moet modelleren.

310
00:17:03.190 --> 00:17:05.850
Van datgene wat de requirement is tot aan,

311
00:17:05.870 --> 00:17:07.190
dat werkelijk de implementatie.

312
00:17:07.730 --> 00:17:09.350
En dan echt met UML aan de gang.

313
00:17:09.990 --> 00:17:11.610
En weet je, ook al die dingen eromheen.

314
00:17:11.610 --> 00:17:13.290
Ook met databases omgaan.

315
00:17:14.570 --> 00:17:16.050
En waarom dat dan zo belangrijk is en zo.

316
00:17:16.410 --> 00:17:20.290
Maar goed, kijk, ik merk, er zijn gewoon verschillende invalstromen.

317
00:17:20.630 --> 00:17:23.490
We zitten hier met mensen die dus geen IT-opleiding hebben gedaan.

318
00:17:24.090 --> 00:17:26.450
En die dan blijkbaar met tutorials ook heel ver komen.

319
00:17:26.510 --> 00:17:27.230
Ik nog steeds hoor.

320
00:17:27.690 --> 00:17:29.010
Ik heb ook altijd met tutorials.

321
00:17:29.070 --> 00:17:30.730
AWS ontlangs ook gedaan.

322
00:17:31.290 --> 00:17:32.630
Maar er is sowieso heel veel instroom.

323
00:17:33.650 --> 00:17:35.750
Er zijn altijd waves, dat noemen we maar.

324
00:17:36.090 --> 00:17:38.190
Dan is er denk ik heel veel vragen naar ontwikkelaars.

325
00:17:38.230 --> 00:17:39.850
En dan zie je dat er heel veel instroom is.

326
00:17:39.850 --> 00:17:42.470
Dus dat hebben we eigenlijk altijd gehad.

327
00:17:42.670 --> 00:17:48.670
En ik denk dat de laatste acht jaar dat er heel veel vragen naar ontwikkelaars is ontstaan.

328
00:17:49.090 --> 00:17:51.530
Waardoor er nog meer mensen bij kwamen.

329
00:17:52.570 --> 00:17:58.050
En dan zie je dan krijg je die dingen als bootcamps en alle andere manieren om mensen op te leiden, zeg maar.

330
00:17:58.350 --> 00:18:02.190
De beschikbaarheid voor goede content is natuurlijk ook wel verschrikkelijk omhoog gegaan.

331
00:18:02.590 --> 00:18:08.410
Als ik kijk naar hoe ik vijf jaar geleden aan mijn informatie moest komen en hoe dat nu is.

332
00:18:08.410 --> 00:18:11.370
Misschien word je ook wel beter in het zoeken van informatie.

333
00:18:11.450 --> 00:18:12.530
Ja, dat denk ik wel, ja.

334
00:18:13.050 --> 00:18:17.170
Maar ja, weet je, als je nu neem je abonnementje op CodeCloud of Cloud Guru.

335
00:18:18.670 --> 00:18:22.810
En ja, ik denk dat iedereen die een klein beetje IT-achtergrond heeft,

336
00:18:22.870 --> 00:18:26.930
die kan binnen twee, drie maanden wel met elk platform uit de vliegtuig.

337
00:18:26.930 --> 00:18:28.650
Ja, ja, ik denk dat het waar is.

338
00:18:28.790 --> 00:18:32.350
Ja, dat is niet heel gek, zeg maar.

339
00:18:32.510 --> 00:18:34.650
En ook met de constant chat-GPT.

340
00:18:35.430 --> 00:18:37.390
Nee, ik moet even deze test automatiseren.

341
00:18:37.390 --> 00:18:38.510
Doe het eventjes voor me.

342
00:18:38.650 --> 00:18:39.530
Weet je wel, dit is de context.

343
00:18:39.590 --> 00:18:41.730
Ja, ik ben nog steeds skeptisch, zeg maar.

344
00:18:41.830 --> 00:18:44.210
Ik geloof echt wel dat het helpt als tool.

345
00:18:45.250 --> 00:18:45.690
Ja, ik ben nog skeptisch.

346
00:18:45.730 --> 00:18:46.350
Ik weet niet waarom.

347
00:18:46.510 --> 00:18:50.090
Ik heb niet een angst, want ik zie het gewoon als een hulpmiddel, zeg maar,

348
00:18:50.210 --> 00:18:51.310
alsof iemand naast je zit.

349
00:18:51.570 --> 00:18:54.950
En dat, ja, zo'n GitHub co-pilot heet, letter co-pilot,

350
00:18:55.110 --> 00:18:57.830
is degene die naast je zit om je te helpen.

351
00:18:57.990 --> 00:19:01.450
Dus dat is ook de positionering, zeg maar, voorlopig, hoe ik het zie.

352
00:19:03.310 --> 00:19:06.890
Ja, met de constant rekenmachine zijn ook niet alle wiskundigen uitgestorven.

353
00:19:06.890 --> 00:19:07.950
Nee, nee, nee, daarom.

354
00:19:08.350 --> 00:19:11.650
Dus ik zie het ook niet als een, precies, ik zie het niet als een bedreiging.

355
00:19:13.110 --> 00:19:16.870
Ik zie het, het is een middel waardoor je productiever kunt zijn.

356
00:19:17.930 --> 00:19:19.670
Maar ja, er zijn nog misschien wel wat kanttekeningen.

357
00:19:19.670 --> 00:19:22.070
Dus dat bedoel ik niet mee dat het niet toepassbaar is,

358
00:19:22.270 --> 00:19:24.330
maar van waar komt al die, waar haal je die code vandaan?

359
00:19:24.670 --> 00:19:32.430
En ja, wat zijn de legal aspecten die dan daarbij komen kijken?

360
00:19:33.410 --> 00:19:35.750
En privacy, zeg maar, dat is ook nog wel een ding.

361
00:19:36.350 --> 00:19:38.970
Ja, en dan heb je nog niet eens over intellectueel eigendom.

362
00:19:38.990 --> 00:19:40.730
Ja, ja, vooral dat, ja.

363
00:19:41.150 --> 00:19:46.170
Nou, toevallig ook bij mijn huidige opdrachtgever, daar hebben we ook een onderzoekje gedaan.

364
00:19:46.270 --> 00:19:49.190
Weet je wel, met security samen van, oh, iemand zei ook van,

365
00:19:49.470 --> 00:19:52.050
we moeten chattypity gaan gebruiken, man, dat is hartstikke makkelijk.

366
00:19:52.590 --> 00:19:55.190
En dan deed hij van alles, maar toen kwamen we toch wel achter van,

367
00:19:55.390 --> 00:20:01.150
ja, je bent toch wel intellectuele eigendommen aan het delen over het model van de opdrachtgever.

368
00:20:01.230 --> 00:20:02.870
En dat is niet zo handig.

369
00:20:02.870 --> 00:20:04.590
Dus daar moet je wel...

370
00:20:04.590 --> 00:20:06.610
Ook onbedoeld kan het bij een ander teweegkomen.

371
00:20:07.550 --> 00:20:08.090
Ja, ja.

372
00:20:08.310 --> 00:20:14.050
Ja, ja, dus dat en, nou ja, die kunnen we niet al te lang over chattypity doorgaan.

373
00:20:14.410 --> 00:20:21.070
Maar bij mijn huidige opdrachtgever waren ze bezig om te kijken of het nuttig was,

374
00:20:21.230 --> 00:20:24.970
of het, ja, om even te testen van, ja, je gaat de developers helpen.

375
00:20:25.950 --> 00:20:30.170
En daar is van hogerhand gezegd, ja, heel leuk, maar dit feestje, dit stopt nu.

376
00:20:30.170 --> 00:20:30.930
Oké, ja.

377
00:20:31.090 --> 00:20:33.190
Want reasons, zeg maar.

378
00:20:33.690 --> 00:20:36.210
Ja, Amerika en weet ik veel te al, maar goed.

379
00:20:37.450 --> 00:20:40.510
Nou goed, het onderwerp van vandaag is CI CD.

380
00:20:40.630 --> 00:20:42.810
Dus laten we daar maar even terug op keren.

381
00:20:44.090 --> 00:20:47.030
En misschien wel ietsje breder, de DevOps culture.

382
00:20:48.050 --> 00:20:50.570
Maar weet je, laten we eerst gewoon even beginnen met CI.

383
00:20:50.930 --> 00:20:55.070
En dan is het misschien ook wel handig als we, ook voor de luisteraars die dat nog nooit eerder hebben meegemaakt.

384
00:20:55.270 --> 00:20:56.870
Ik kan me niet voorstellen trouwens, maar goed.

385
00:20:57.270 --> 00:20:59.970
Stel je voor dat er iemand daar zit die denkt, wat is CI?

386
00:21:00.490 --> 00:21:02.910
Laten we eens even hebben over wat dat betekent.

387
00:21:03.150 --> 00:21:04.430
Misschien wil iemand het...

388
00:21:04.430 --> 00:21:08.550
Ja, zou ik iemand het in zijn woorden willen uitleggen, wat CI is?

389
00:21:09.230 --> 00:21:11.950
Kunnen we het daar sowieso over hebben, want volgens mij iedereen ziet er wel een beetje anders.

390
00:21:12.050 --> 00:21:18.210
Ja, ik vind het wel sowieso goed dat we het even opsplitsen, CI en CD, want dat natuurlijk twee verschillende principen zijn.

391
00:21:22.250 --> 00:21:25.470
Continuous integration, als je het vertaalt naar continu integreren.

392
00:21:25.470 --> 00:21:29.250
Dat is denk ik ook wel wat de lading dekt.

393
00:21:29.350 --> 00:21:31.630
Het gaat om het continu integreren van code.

394
00:21:33.190 --> 00:21:40.730
En dan denk ik dat je praat over dingen zoals branching, zoals merge requests, repair reviews,

395
00:21:42.530 --> 00:21:43.790
en dan dingen zoals SonarCube.

396
00:21:43.950 --> 00:21:50.190
Dus eigenlijk alles wat je gebruikt vanaf het moment dat je als developer code begint te schrijven op je lokale machine,

397
00:21:50.750 --> 00:21:55.310
tot aan het moment dat het in een repository staat.

398
00:21:55.310 --> 00:22:02.390
En met RuPaul Story, als je in de Java wereld leeft, dan zou er bijvoorbeeld ook een artifactory kunnen zijn.

399
00:22:02.750 --> 00:22:05.970
In mijn ogen, of bijvoorbeeld zelfs een docker image.

400
00:22:06.750 --> 00:22:12.090
Dat is wel een randgevalletje misschien, maar dat zou ik ook nog wel als continuous integration beschrijven.

401
00:22:12.190 --> 00:22:17.010
Dus eigenlijk alles wat je doet om code op een juiste manier te integreren en te bouwen.

402
00:22:17.570 --> 00:22:22.410
Nou, ik denk ook iets wat we uit onze eigen onderzoek ook gedaan hebben.

403
00:22:22.410 --> 00:22:27.070
We hebben nog even de CI volgens Martin Fowler nog eens even bijgezocht.

404
00:22:27.870 --> 00:22:34.250
En iets wat mij wel achterblijft daar is dat het vooral bedoeld is om integratie arrows zo snel mogelijk te ontdekken.

405
00:22:35.550 --> 00:22:42.550
Dus stel dat ik aan een stukje code werk die op mijn machine niet werkt en ik ben er gewoon weken mee bezig.

406
00:22:42.870 --> 00:22:47.090
En jij bent toevallig ook net even in die stuk code ook iets aan het veranderen.

407
00:22:47.170 --> 00:22:50.370
Ja, dan wil je eigenlijk zo snel mogelijk dat het gaat clashen.

408
00:22:50.370 --> 00:22:52.650
Dus dat we erachter komen, oh ja, jij bent er ook mee bezig.

409
00:22:52.690 --> 00:22:55.330
Dus daar ga ik er last van krijgen. En andersom natuurlijk.

410
00:22:55.910 --> 00:22:58.810
Dus dat is denk ik ook wel een van de redenen waarom je CI zou willen.

411
00:22:59.790 --> 00:23:00.470
En het geautomatiseerd.

412
00:23:00.610 --> 00:23:07.330
Want het eerste wat bij mij altijd bleef kleven is dat het moet geautomatiseerd zijn.

413
00:23:07.690 --> 00:23:10.690
Want natuurlijk weer met de hand beelden, merging.

414
00:23:10.890 --> 00:23:14.090
Nou goed, dat doe je dan mee redelijk met de hand.

415
00:23:15.490 --> 00:23:17.970
Maar geautomatiseerd beelden is wel, volgens mij, redelijk essentieel.

416
00:23:17.970 --> 00:23:20.530
Want het zou bijna niemand doen als je het niet geautomatiseerd doet.

417
00:23:20.910 --> 00:23:21.990
In je test draaien.

418
00:23:22.210 --> 00:23:25.170
Het is een leuke, ik vind het echt een super tof onderwerp trouwens.

419
00:23:25.470 --> 00:23:29.190
Want ik was bij de Continuous Integration and Testing Conferentie.

420
00:23:29.430 --> 00:23:31.950
Kitcon heet dat. Of Kitcon, zo spreek ik het uit.

421
00:23:33.530 --> 00:23:37.950
En daar had iemand het over van dat je eigenlijk helemaal geen beeldmachine nodig hebt.

422
00:23:38.310 --> 00:23:42.510
Want in feite zou je gewoon op je eigen machine gewoon constant een kitpool kunnen doen.

423
00:23:42.630 --> 00:23:43.470
Kitpool, kitpool.

424
00:23:44.070 --> 00:23:46.210
En dan opnieuw alles runnen.

425
00:23:46.470 --> 00:23:47.430
En dan lokaal alles.

426
00:23:48.790 --> 00:23:52.990
En daar ontstond de discussie van ja, dat is helemaal niet waar.

427
00:23:53.830 --> 00:23:58.970
Want je wilt toch ook een machine helemaal onafhankelijk die niks doet en geen context heeft.

428
00:23:59.630 --> 00:24:00.870
Bijna niet dan.

429
00:24:01.450 --> 00:24:02.570
De boel om te laten bouwen.

430
00:24:02.750 --> 00:24:04.050
Dus daar ging de discussie over.

431
00:24:04.710 --> 00:24:06.450
Maar goed, misschien moeten we niet zo diep gaan hier.

432
00:24:06.570 --> 00:24:08.670
Nou ja, nee, dat is op zich interessant natuurlijk.

433
00:24:09.050 --> 00:24:12.330
Waarschijnlijk op dat soort conferenzen krijg je soms heel veel filosofisch in de scherm.

434
00:24:12.330 --> 00:24:14.230
Dat is op zich niet heel, heel gek.

435
00:24:14.610 --> 00:24:18.130
Misschien is het iemand, dat doe ik ook graag, om te challenger, zeg maar.

436
00:24:18.270 --> 00:24:22.710
Even de randen opzoeken om dan uiteindelijk wat meer in beweging te krijgen.

437
00:24:23.690 --> 00:24:25.990
Dus op die manier snap ik dat op zich wel.

438
00:24:26.270 --> 00:24:28.810
Ik zou het gek vinden, zeg maar, dat je dat alleen...

439
00:24:28.810 --> 00:24:32.990
Je moet toch iets maken, compileren of samenstellen.

440
00:24:33.250 --> 00:24:34.510
Dat maakt me niet uit hoe dan.

441
00:24:35.310 --> 00:24:36.430
Om tot iets werkends te hebben.

442
00:24:36.470 --> 00:24:38.750
Want het moet werkende software zijn die je ergens kan draaien.

443
00:24:38.830 --> 00:24:41.450
En dat is wel meer dan alleen maar een meurtje.

444
00:24:41.450 --> 00:24:45.610
Het enige wat je zou kunnen zeggen is dat je lokaal Docker images zou bouwen.

445
00:24:45.810 --> 00:24:47.210
En dan die ergens heen.

446
00:24:47.770 --> 00:24:49.210
Het hoeft niet...

447
00:24:49.210 --> 00:24:50.190
Daar ben ik het mee.

448
00:24:51.310 --> 00:24:52.750
Dat is geen theorie, dat kan.

449
00:24:53.270 --> 00:24:55.090
Het hoeft niet op een beeldmachine te draaien.

450
00:24:55.330 --> 00:24:57.190
Want je zou ook kunnen zeggen...

451
00:24:57.190 --> 00:25:02.130
We hebben in principe dat een van de ontwikkelaars maakt die image en die pusht die image.

452
00:25:02.170 --> 00:25:05.070
En dat is de output van het automatiseerde proces.

453
00:25:05.150 --> 00:25:08.190
Ja, dat zou ook kunnen, maar gebeurt alleen niet zo heel veel.

454
00:25:08.330 --> 00:25:09.590
Meestal is het gewoon een centrale...

455
00:25:09.590 --> 00:25:11.330
Dan moet je ook zorgen dat maar één developer het doet.

456
00:25:11.530 --> 00:25:13.710
Want anders krijg je concurrency problemen.

457
00:25:13.990 --> 00:25:14.490
Als twee...

458
00:25:14.490 --> 00:25:16.830
Dan kan je nog zo tegelijk pullen, pullen, pullen.

459
00:25:16.930 --> 00:25:19.050
En dan als je alle twee tegelijk in de push...

460
00:25:19.050 --> 00:25:20.230
Ja, wat is dan de juiste?

461
00:25:20.230 --> 00:25:21.290
Dat is precies die discussie.

462
00:25:23.270 --> 00:25:26.250
Maar kun je het überhaupt ooit precies tegelijkertijd doen?

463
00:25:27.110 --> 00:25:29.310
Nou ja, met automatisering kan je natuurlijk...

464
00:25:29.310 --> 00:25:30.750
In GitLab heb je merge trains.

465
00:25:31.330 --> 00:25:33.630
Dan zorg je in ieder geval dat het achter elkaar gebeurt.

466
00:25:34.430 --> 00:25:36.410
Dan ben je in ieder geval die concurrency kwijt.

467
00:25:39.200 --> 00:25:41.100
Ja, of het zou kunnen, dat weet ik niet.

468
00:25:41.240 --> 00:25:42.940
Maar goed, het is een interessante...

469
00:25:42.940 --> 00:25:45.000
Ik vind het leuk om wat te prikkelen daarmee.

470
00:25:46.920 --> 00:25:47.720
Die zin...

471
00:25:47.720 --> 00:25:50.160
Ja, het was ook wel een wat oudere man die...

472
00:25:50.160 --> 00:25:51.600
Die is waarschijnlijk een oudere...

473
00:25:51.600 --> 00:25:54.280
Weet je, in de tijd waar het toen nog niet zo hip was.

474
00:25:55.620 --> 00:25:56.680
Het allang deed natuurlijk.

475
00:25:56.920 --> 00:25:57.900
Dus dan wilde ze een punt maken.

476
00:25:58.020 --> 00:26:00.840
Maar goed, ik vind het wel een mooie theorie...

477
00:26:00.840 --> 00:26:03.980
Als het gaat over integratie er zo snel mogelijk...

478
00:26:03.980 --> 00:26:04.680
Probeer te vinden.

479
00:26:04.680 --> 00:26:05.140
Ja.

480
00:26:06.240 --> 00:26:09.200
Ja, dat is wel leuk.

481
00:26:09.420 --> 00:26:11.140
Trouwens, Gerrit, je zei het net ook al mooi.

482
00:26:12.560 --> 00:26:14.900
Ja, heel vaak zeg je CICD, hè?

483
00:26:15.640 --> 00:26:16.040
CICD.

484
00:26:16.660 --> 00:26:17.180
Waarom denk je...

485
00:26:17.180 --> 00:26:18.560
Of misschien kan ik een vraag geven aan Rick stellen.

486
00:26:19.380 --> 00:26:22.980
Waarom denk je dat je CICD uit elkaar zou moeten trekken?

487
00:26:26.020 --> 00:26:28.820
Ik denk dat het verschillende dingen zijn.

488
00:26:32.940 --> 00:26:36.420
Ja, uiteindelijk is het een uit elkaar trekken.

489
00:26:36.640 --> 00:26:38.260
Ja, bij mij betreft niet uit elkaar te trekken.

490
00:26:38.380 --> 00:26:44.080
Sterker nog, het wordt vaak in één zin of in één adem genoemd.

491
00:26:46.220 --> 00:26:48.880
Ik denk alleen wat we net...

492
00:26:48.880 --> 00:26:50.060
We hebben het net over.

493
00:26:50.160 --> 00:26:53.160
Ik denk trouwens dat even terugkomen op continuous integration.

494
00:26:53.400 --> 00:26:56.800
Continuous integration is natuurlijk alleen van belang...

495
00:26:56.800 --> 00:26:59.160
...dat je een distributed systeem hebt.

496
00:26:59.340 --> 00:27:05.020
Want als je in je eentje aan iets werkt, dan is saven in je text editor...

497
00:27:05.020 --> 00:27:07.880
...in principe al continuous integration.

498
00:27:09.860 --> 00:27:13.100
Ja, daar ging de definitie.

499
00:27:13.540 --> 00:27:14.800
Wordt dan best wel interessant.

500
00:27:16.040 --> 00:27:18.860
Ja, er staat daar heel expliciet ook...

501
00:27:18.860 --> 00:27:20.900
...automated build, including test.

502
00:27:21.280 --> 00:27:22.540
Dus dan zeg je eigenlijk al van...

503
00:27:22.540 --> 00:27:30.660
Als je in een Git repo hebt en je bouwt je software...

504
00:27:30.660 --> 00:27:34.260
...maar je hebt geen test, dan doe je geen continuous integration.

505
00:27:34.360 --> 00:27:35.700
Dat vind ik een beetje kort door de bocht.

506
00:27:36.100 --> 00:27:36.980
Je kunt natuurlijk ook zeggen...

507
00:27:36.980 --> 00:27:39.960
...het bouwen van je code is een test.

508
00:27:40.420 --> 00:27:42.040
Als het bouwt, dan is het...

509
00:27:42.040 --> 00:27:44.600
...in de filosofische discussies terecht te komen.

510
00:27:45.060 --> 00:27:50.860
Je zou kunnen zeggen dat niet elk onderdeel per se nodig is voor continuous integration.

511
00:27:50.860 --> 00:27:54.380
Je kan het doen zonder status-iconen-analyse.

512
00:27:54.420 --> 00:27:55.860
Je kan het doen zonder unit-test.

513
00:27:57.000 --> 00:27:59.440
Het is maar hierom dat in de definitie heel specifiek...

514
00:27:59.440 --> 00:28:00.440
...including test staat.

515
00:28:01.220 --> 00:28:03.860
Ja, in principe is...

516
00:28:04.680 --> 00:28:07.920
Ik zou wel wat vinden zeggen over de kwaliteit van je integratieproces...

517
00:28:07.920 --> 00:28:12.140
...als je zegt we doen alleen maar builden en doen.

518
00:28:12.320 --> 00:28:13.940
Dat is een mening.

519
00:28:14.420 --> 00:28:17.000
Maar doe je dan continuous integration of niet?

520
00:28:17.140 --> 00:28:17.460
Dat is de vraag.

521
00:28:18.100 --> 00:28:19.600
Oké, als je...

522
00:28:19.600 --> 00:28:24.100
Anyway, filosofisch misschien voor de bol.

523
00:28:24.620 --> 00:28:25.340
Ja, precies.

524
00:28:25.500 --> 00:28:26.700
Volgens Fowler inderdaad.

525
00:28:26.860 --> 00:28:28.760
Er staat wel dat het geferifieerd moet worden.

526
00:28:28.820 --> 00:28:33.340
Maar ja, het verschil wat mij betreft...

527
00:28:33.340 --> 00:28:35.920
...zo ver die bouwt, draait nog niet.

528
00:28:37.980 --> 00:28:39.120
Nou, draait nog niet.

529
00:28:39.940 --> 00:28:41.720
Dus ja, continuous delivery.

530
00:28:42.260 --> 00:28:47.060
Of als je het hebt over delivery, dan heb je het wat mij betreft ook over...

531
00:28:49.680 --> 00:28:50.960
...dat het draait.

532
00:28:51.180 --> 00:28:56.300
Dus dat het werkt, dat het draait of dat het beschikbaar is.

533
00:28:56.400 --> 00:28:57.760
Laat ik het zo zeggen, dat het beschikbaar is.

534
00:28:58.260 --> 00:29:05.200
Want een artifact kan ook gedeployed worden naar een package-repository...

535
00:29:05.200 --> 00:29:06.680
...en dan is het in principe ook gedeliverd.

536
00:29:06.800 --> 00:29:09.940
Of een docker image naar dockerhub is het...

537
00:29:09.940 --> 00:29:11.400
Kan je zien...

538
00:29:11.400 --> 00:29:14.540
Of nou, dat is misschien voor de ene in het proces is dat al de delivery.

539
00:29:14.600 --> 00:29:16.740
Terwijl dat voor de andere het begin van de integration is.

540
00:29:16.740 --> 00:29:19.480
Dat is ook weer misschien een interessante discussie.

541
00:29:19.780 --> 00:29:21.360
Ja, ik zou zeggen dat het een soort...

542
00:29:21.360 --> 00:29:24.140
...zo'n grijs gebied is van integration en delivery.

543
00:29:24.600 --> 00:29:25.740
Dat is misschien de slash.

544
00:29:27.040 --> 00:29:27.600
Inderdaad.

545
00:29:28.000 --> 00:29:30.780
Dat is misschien wel een interessante...

546
00:29:30.780 --> 00:29:35.660
...poppake inderdaad van oké, de delivery van de één.

547
00:29:35.940 --> 00:29:42.580
Want ja, als jij een library hebt die jij shipt naar NPM...

548
00:29:43.260 --> 00:29:45.400
...dat is in jouw proces...

549
00:29:46.060 --> 00:29:48.840
...het eind stadium of dan komt het onderhoud.

550
00:29:48.840 --> 00:29:50.080
Maar dan heb je net gedeliverd.

551
00:29:50.520 --> 00:29:52.420
Maar dan begint voor de mensen die dependen op jou...

552
00:29:53.040 --> 00:29:54.600
...daar begint hun ontwikkelproces.

553
00:29:54.860 --> 00:29:59.000
Ja, die CD, dat is een beetje een collega van mij die noemt.

554
00:29:59.140 --> 00:30:00.260
En dat vind ik op zich wel...

555
00:30:00.260 --> 00:30:05.320
...die zegt altijd CD, continuous delivery, continuous deployment, zeg maar.

556
00:30:06.000 --> 00:30:08.320
Dus die zegt dat altijd in de inzuchten achter elkaar.

557
00:30:08.500 --> 00:30:09.640
Dus die deployment is wel belangrijk.

558
00:30:09.840 --> 00:30:12.180
Want dan zet je het dus in productie, zeg maar.

559
00:30:13.120 --> 00:30:15.380
De deployment is onderdeel van delivery, toch?

560
00:30:15.880 --> 00:30:20.020
Ja, delivery aan zich is gewoon hier heb je de spullen.

561
00:30:20.300 --> 00:30:20.740
Ja, CD-tje, alsjeblieft.

562
00:30:20.740 --> 00:30:24.380
En deployment, zeg maar, het echt in productie brengen.

563
00:30:25.200 --> 00:30:28.720
En daar zijn nuance verschillen, zeg maar.

564
00:30:28.860 --> 00:30:30.400
Op een gegeven moment is dat waarschijnlijk losgelaten.

565
00:30:30.740 --> 00:30:32.380
Oké, continuous delivery is gewoon bijde.

566
00:30:33.480 --> 00:30:36.060
Maar er is een moment geweest dat zei, oké, delivery.

567
00:30:36.240 --> 00:30:38.760
Oké, hier heb je het en lever het uit.

568
00:30:38.800 --> 00:30:41.420
Het staat ergens en daar kun je het ophalen.

569
00:30:41.540 --> 00:30:42.200
En dan deployment.

570
00:30:42.200 --> 00:30:45.720
Dan zeg je, oké, ik deploy naar één server of 20.000 servers.

571
00:30:45.880 --> 00:30:49.780
Dus dat is weer een ander soort van vakgebied.

572
00:30:49.920 --> 00:30:52.460
Ja, de delivery en de deployment is altijd een beetje dubbelsinnig.

573
00:30:53.620 --> 00:30:56.140
Elke keer zoek het op en dan vergeet ik weer wat precies de volgorde is.

574
00:30:56.260 --> 00:31:02.200
Maar volgens mij is deployment dat je een geautomatiseerd proces hebt waarmee je het op omgevingen kan deployen.

575
00:31:02.320 --> 00:31:07.800
Maar dat bijvoorbeeld de delivery naar production eigenlijk nog een handmatige stap kan zijn.

576
00:31:07.800 --> 00:31:12.700
En delivery is dat je eigenlijk continu naar productie aan het gaan bent.

577
00:31:13.440 --> 00:31:19.400
Dus een merge leidt altijd tot een deployment of een delivery op productie als er geen testen vallen.

578
00:31:20.420 --> 00:31:24.380
Dus daar zit het nuance verschil en dat hoor je niet altijd.

579
00:31:24.740 --> 00:31:28.100
De meeste mensen hebben het over hetzelfde als ze het over cd hebben.

580
00:31:29.720 --> 00:31:32.220
Maar goed, dat is ook weer het nuance verschil.

581
00:31:32.740 --> 00:31:37.780
En het is per bedrijf, bij het één bedrijf is het net iets anders dan bij het ander bedrijf.

582
00:31:37.780 --> 00:31:43.860
Ja, dat zijn er soms smaken, architectonische keuzes of skillset, tools.

583
00:31:44.340 --> 00:31:46.780
En ook wat uiteindelijk je eindgebruikers willen.

584
00:31:47.800 --> 00:31:50.340
Want toevallig vandaag had ik het met een collega over.

585
00:31:50.680 --> 00:31:54.560
Wij bouwen een verzekeringsplatform, laten we even plat slaan.

586
00:31:55.700 --> 00:32:00.920
En die verzekeraars zitten echt niet te wachten op elke dag een nieuwe release.

587
00:32:01.920 --> 00:32:03.900
Die worden misschien wel helemaal gek.

588
00:32:04.720 --> 00:32:08.020
Gisteren deed hij het nog en vandaag doet hij weer wat anders.

589
00:32:09.120 --> 00:32:11.900
Dat is misschien ook zonder release, maar het gebeurt soms.

590
00:32:12.400 --> 00:32:14.780
Ja, inderdaad, ook dat klopt.

591
00:32:15.680 --> 00:32:18.260
Maar daar kwamen we wel achter denk ik.

592
00:32:18.420 --> 00:32:22.440
We zijn nog niet helemaal over uit of überhaupt continuous delivery gaat werken daar.

593
00:32:24.220 --> 00:32:28.880
Ik zei misschien niet voor alles, maar voor sommige dingen wel.

594
00:32:29.360 --> 00:32:32.900
Want stel dat je cosmetische dingetjes zoals bijvoorbeeld alle tekstvelden...

595
00:32:32.900 --> 00:32:34.780
...moeten naar rechts uitgelijnd worden.

596
00:32:34.980 --> 00:32:36.060
Weet ik veel, zoiets stoms.

597
00:32:36.440 --> 00:32:39.920
Dan wil je toch wel volgens mij zo snel mogelijk...

598
00:32:39.920 --> 00:32:43.840
Maar als je inderdaad een verzekeringswet of een verzekeringsregel...

599
00:32:43.840 --> 00:32:47.060
...weet ik veel hoe je het noemt, business rules, zou je dat veranderen?

600
00:32:48.200 --> 00:32:49.700
Misschien wel even handig om...

601
00:32:51.480 --> 00:32:55.140
Ja, laatste keer dat bij verzekeraar werkte was het ook vier releases per jaar.

602
00:32:56.640 --> 00:32:59.640
Maar ook een, noem het maar even, een webplatform?

603
00:32:59.640 --> 00:33:03.380
Ja, ja, ja. Toevallig werkt mijn vrouw nog steeds daar.

604
00:33:04.060 --> 00:33:10.820
Het is wel regelmatiger, maar nog steeds niet dagelijks of meerdere keer in de sprint of per sprint.

605
00:33:11.340 --> 00:33:17.100
Dus het is minder vaak dan dat continuous deployment zou insinueren.

606
00:33:18.000 --> 00:33:21.960
Maar nog steeds wel, het moet geautomatiseerd zijn en de delivery.

607
00:33:22.280 --> 00:33:24.600
Je doet er wel aan, alleen de frequentie is lager.

608
00:33:24.760 --> 00:33:28.220
Alleen wat ik denk, en dat durf ik niet te zeggen, want ik ken niet alle verzekeraars.

609
00:33:28.820 --> 00:33:32.620
Het is niet alleen maar dat stukje software, maar er komt nog een hele straat achter, zeg maar.

610
00:33:32.720 --> 00:33:35.320
En dan moeten ze bijvoorbeeld testen, regressietesten.

611
00:33:35.440 --> 00:33:37.520
Er moeten alle data sets beschikbaar zijn.

612
00:33:37.540 --> 00:33:39.820
Treinen van gebruikers. Ja, dat ook.

613
00:33:40.820 --> 00:33:48.620
Ik heb zelf ook bij een medisch reguleerd of een gereguleerd software als Medical Device gewerkt.

614
00:33:49.540 --> 00:33:54.520
En je kunt dat niet zomaar doen, want er zit ook gewoon heel veel,

615
00:33:55.780 --> 00:33:58.680
regelgeving achter die dingen van jouw eis.

616
00:33:59.820 --> 00:34:05.320
Natuurlijk, als je het heel graag wil, is er vast wel een manier dat je het op de ene of andere manier voor elkaar krijgt.

617
00:34:05.940 --> 00:34:14.800
Maar ja, je moet gewoon dat altijd auditable terug kunnen leiden.

618
00:34:18.640 --> 00:34:22.160
En verzekeraars vallen, neem ik aan, ook onder bepaalde wet en regelgeving.

619
00:34:22.700 --> 00:34:27.340
Ja, waar gewoon naar gehandels. Ja, precies.

620
00:34:27.700 --> 00:34:31.680
Dat klopt, want er moeten bepaalde procedures moeten in place zijn, waardoor het gewoon betekent.

621
00:34:32.060 --> 00:34:34.360
Weet ik veel. Er moeten, weet ik, vier ogenprincipes.

622
00:34:35.060 --> 00:34:40.060
Er moeten meerdere mensen moeten op een oké hebben gedrukt voordat jij gedeployed hebt.

623
00:34:40.380 --> 00:34:44.220
Of de code moet gereviewd zijn door meerdere. Dus het is allemaal processen, zeg maar.

624
00:34:45.320 --> 00:34:47.620
Ja, dat is de laatste tien jaar of zo.

625
00:34:48.140 --> 00:34:51.800
Ja, er glippen wel eens heel rare stuk code, zeg maar.

626
00:34:51.920 --> 00:34:55.100
Er komen er in productie, waardoor een bedrijf gewoon heel liable wordt.

627
00:34:56.500 --> 00:35:00.620
En dan snap ik wel dat je niet iedere dag of ieder uur, zeg maar, kunt deployen.

628
00:35:00.760 --> 00:35:05.480
Maar andere bedrijven die bijvoorbeeld heel erg commercieel marketing gedreven,

629
00:35:05.620 --> 00:35:09.820
ja, dan zie je dat die gewoon liefst iedere tien minuten nieuwe versie online hebben.

630
00:35:09.820 --> 00:35:12.860
Toch zie ik ook vaak dat die niet in staat zijn om het te doen.

631
00:35:12.860 --> 00:35:16.220
Ik heb hiervoor bij een heel groot...

632
00:35:16.220 --> 00:35:19.920
Nou, ik heb bij Carnex gewerkt die auto's verkoopt.

633
00:35:20.000 --> 00:35:20.960
Ze bestaan toch niet meer.

634
00:35:22.660 --> 00:35:23.600
Daarom ja.

635
00:35:23.960 --> 00:35:27.620
En daar was de software vaak heel snel klaar.

636
00:35:28.620 --> 00:35:33.360
En dan was het wachten op een bank die toestemming wilde geven

637
00:35:33.360 --> 00:35:36.100
voor het financiële product dat we gebruikten of content.

638
00:35:36.640 --> 00:35:39.100
Of dan had je te maken met dat het in het Engels was aangeleverd

639
00:35:39.460 --> 00:35:41.900
en dat het in acht talen moest uitgerold worden.

640
00:35:41.900 --> 00:35:43.760
Dus dat je op de vertalers wachtte.

641
00:35:43.860 --> 00:35:47.080
Er zijn zoveel dingen die bijdragen aan het wel of niet

642
00:35:47.080 --> 00:35:49.060
continu naar productie kunnen brengen.

643
00:35:50.140 --> 00:35:52.920
Als ik naar de definitie kijk,

644
00:35:54.660 --> 00:35:59.060
wij impliceren hier allemaal dat het geautomatiseerd.

645
00:35:59.080 --> 00:36:03.600
Maar in de definitie volgens Fowler wordt nergens geautomatiseerd genoemd.

646
00:36:04.320 --> 00:36:05.160
Nee, dat hoeft ook niet.

647
00:36:05.620 --> 00:36:09.520
Als je een aap de hele tijd op een knopje laat drukken

648
00:36:09.520 --> 00:36:12.720
of sterk nog als je in een courrier de hele tijd een pakketje

649
00:36:12.720 --> 00:36:15.820
met een USB-stick naar het datacenter laat brengen,

650
00:36:15.980 --> 00:36:17.920
zou je dat kunnen verkopen als continuous delivery?

651
00:36:18.300 --> 00:36:20.760
Ik weet niet of dat in deze, misschien hebben we dat eraf geluid.

652
00:36:21.100 --> 00:36:24.180
Het is wel zo, volgens mij dacht ik dat in die definitie ook ergens nog staat

653
00:36:24.180 --> 00:36:27.720
dat je op een knop drukt en dan gaat er een proces lopen.

654
00:36:28.780 --> 00:36:31.140
Maar het zou niet geautomatiseerd hoeven te gaan.

655
00:36:31.360 --> 00:36:34.520
Die continuous integration, als je die naar boven checkt,

656
00:36:35.350 --> 00:36:40.680
ja, die noemt explicit automatisering. Maar goed, ja.

657
00:36:40.880 --> 00:36:44.620
Ik dacht ook net toen we hadden van oké, wat is CI, CD?

658
00:36:45.380 --> 00:36:46.380
Wat is nou het verschil?

659
00:36:46.540 --> 00:36:51.280
Ik denk dat als ik de discussie ook een beetje analyseer,

660
00:36:51.300 --> 00:36:54.840
dat we eigenlijk wel mee overeen zijn dat continuous delivery

661
00:36:54.840 --> 00:36:58.960
in ieder geval minimaal één stap na continuous integration is.

662
00:36:59.460 --> 00:37:01.580
Continuous integration komt eerder.

663
00:37:03.560 --> 00:37:06.700
Hoeveel eerder dan, dat is denk ik discutabel.

664
00:37:07.800 --> 00:37:13.760
Ik denk ook dat CI langer gedaan wordt dan CD.

665
00:37:14.880 --> 00:37:18.380
Ik weet eigenlijk niet beter, ik ben dotnet developer,

666
00:37:18.500 --> 00:37:21.840
dat in het begin beeld je nog op je eigen machine.

667
00:37:23.200 --> 00:37:25.040
Soms levert je je desktop software uit,

668
00:37:25.160 --> 00:37:26.760
dan kan je op CD's uitgeleverd worden.

669
00:37:27.020 --> 00:37:29.640
Dus dat was al heel anders, die delivery dan was.

670
00:37:31.180 --> 00:37:34.980
Maar met web applicaties was het al vrij snel

671
00:37:34.980 --> 00:37:37.580
dat we naar geautomatiseerde beelds gingen,

672
00:37:37.900 --> 00:37:40.260
om die reproduceerbaarheid erin te krijgen.

673
00:37:40.440 --> 00:37:41.980
Anders kreeg je gewoon dat als Jantje beelde,

674
00:37:41.980 --> 00:37:44.340
dan kreeg je iets anders dan Pietje.

675
00:37:46.060 --> 00:37:48.840
En centrale beeldomgevingen om te zorgen.

676
00:37:49.680 --> 00:37:52.600
Toen met dotnet en Microsoft had je heel veel afhankelen

677
00:37:52.600 --> 00:37:53.400
op een Windows machine.

678
00:37:53.520 --> 00:37:55.080
Als je maar één ding verkeerd had geïnstalleerd,

679
00:37:55.080 --> 00:37:56.460
dan werkte het helemaal niet meer.

680
00:37:56.660 --> 00:38:00.000
Dus het was heel erg om die foutgevoeligheid eruit te krijgen.

681
00:38:00.820 --> 00:38:03.140
Dus dat CI deden we al redelijk snel,

682
00:38:03.300 --> 00:38:06.320
dat is best wel lang al in place.

683
00:38:07.140 --> 00:38:10.060
En dat CD, dat je echt naar productie gaat met de web applicatie

684
00:38:10.060 --> 00:38:13.240
en geautomatiseerd, dat was wat later.

685
00:38:13.340 --> 00:38:16.420
Dat was best luxe, omdat er vooral,

686
00:38:16.420 --> 00:38:18.680
dat is misschien een beetje meer die DevOps manier,

687
00:38:18.800 --> 00:38:19.960
dat waren best wel schuttetjes.

688
00:38:20.060 --> 00:38:22.520
Dus het was echt van oké, wij zijn het software development team,

689
00:38:22.520 --> 00:38:24.940
dan komt de CD'tje bij wijze van spreken, komt eruit

690
00:38:24.940 --> 00:38:29.140
en ik ga naar een beheerder, zeg maar,

691
00:38:29.360 --> 00:38:31.900
en die installeert het dan op een server met een dikke handleiding.

692
00:38:32.520 --> 00:38:35.400
Dat is de web applicatie, de SQL database moest bij een DBA,

693
00:38:35.740 --> 00:38:36.740
die moest daar nog iets doen.

694
00:38:37.260 --> 00:38:41.700
En als dat allemaal ergens in een teststraat,

695
00:38:41.820 --> 00:38:44.160
de OTAP, gedeploitert in één fase,

696
00:38:44.680 --> 00:38:46.440
dan had je dat overwonden, dan mocht je naar de volgende,

697
00:38:46.440 --> 00:38:49.220
dan had je naar acceptatie, dan had je daar weer allerlei dingen en data.

698
00:38:49.220 --> 00:38:54.680
Dus dat was best wel heftig, zeg maar, om een release te doen.

699
00:38:55.080 --> 00:38:56.740
Dus het was ook best wel logisch dat in die tijd,

700
00:38:56.740 --> 00:38:59.300
dat je niet echt, als iemand toen zei van ja, we gaan iedere dag releaseen,

701
00:38:59.380 --> 00:39:00.380
dat kon gewoon niet.

702
00:39:00.480 --> 00:39:03.000
Dat was echt fysiek gewoon onmogelijk om dat voor elkaar te krijgen.

703
00:39:03.380 --> 00:39:05.520
Ja, precies, want dat zijn natuurlijk twee silo's,

704
00:39:05.800 --> 00:39:07.320
Stintjes, de developmentgroep die dan...

705
00:39:07.860 --> 00:39:10.220
Ja, inderdaad, wat je zegt, ik heb mijn NPM package opgeleverd.

706
00:39:11.640 --> 00:39:13.060
Toetledokie, het werkt toch met mij?

707
00:39:13.640 --> 00:39:17.980
Sterker nog, er zijn natuurlijk heel veel repos op GitHub

708
00:39:17.980 --> 00:39:23.260
die NPM packages of modules leveren.

709
00:39:23.680 --> 00:39:27.780
Dus ja, als je zegt van het moet een draaiend stuk software,

710
00:39:27.900 --> 00:39:30.080
dan is eigenlijk alles wat partiële software is,

711
00:39:30.600 --> 00:39:35.360
per definitie zou dan niet continuous delivery zijn.

712
00:39:35.560 --> 00:39:36.520
Precies, meens.

713
00:39:37.020 --> 00:39:41.840
En dan stel dat die beheerafdeling die NPM packages bij elkaar harkt

714
00:39:41.840 --> 00:39:45.140
en dan een product van maakt, dat uiteindelijk releasable is.

715
00:39:45.140 --> 00:39:49.640
Ja, die werelden zijn zo verschillend,

716
00:39:52.620 --> 00:39:55.660
waardoor die ruizen in de lijn gewoon alleen maar groter worden.

717
00:39:55.980 --> 00:39:58.020
En vandaar dat nu, als we het hebben over DevOps,

718
00:39:58.500 --> 00:40:00.080
dat is misschien een mooi bruggetje.

719
00:40:00.420 --> 00:40:04.360
Ja, DevOps probeert dus die twee werelden bij elkaar te voelen

720
00:40:04.360 --> 00:40:05.780
en samen te mengen.

721
00:40:06.920 --> 00:40:10.600
In ieder geval dat de twee afdelingen wel in dezelfde boot zitten

722
00:40:10.600 --> 00:40:11.940
om die release goed te krijgen.

723
00:40:11.940 --> 00:40:16.180
Of de opleving naar de klant dat de klant ook echt letterlijk de waarde heeft

724
00:40:16.180 --> 00:40:17.580
van wat het zou moeten zijn.

725
00:40:17.920 --> 00:40:20.840
Ik ben wel blij dat we deze definitie van DevOps zou hanteren.

726
00:40:21.460 --> 00:40:23.040
Als je in de markt kijkt, zie je natuurlijk dat er veel

727
00:40:23.860 --> 00:40:26.220
om DevOps engineers wordt gevraagd

728
00:40:26.220 --> 00:40:28.280
en dat zijn dan vaak meer platform engineers.

729
00:40:29.520 --> 00:40:32.600
Of cloud engineers, maar als je dat uitzet,

730
00:40:32.740 --> 00:40:33.960
dan moet je meteen de hoofdprijs betalen.

731
00:40:35.080 --> 00:40:35.800
Klopt, ja.

732
00:40:36.340 --> 00:40:39.940
Ik denk dat deze definitie van DevOps waar je praat over

733
00:40:39.940 --> 00:40:44.220
dat je had in de klassieke wereld ops en development.

734
00:40:44.680 --> 00:40:48.880
Die voeg je dan samen om die schutting er tussen weg te zagen.

735
00:40:48.980 --> 00:40:52.720
Dan heb je denk ik de juiste definitie van DevOps te pakken.

736
00:40:52.960 --> 00:40:55.480
Ik denk dat elke developer tegenwoordig ook al

737
00:40:57.080 --> 00:40:59.360
op zijn eigen machine redelijk wat operations doet

738
00:40:59.360 --> 00:41:05.260
omdat je kan tegenwoordig alles wel prima op je eigen computer draaien.

739
00:41:05.520 --> 00:41:06.760
Dus je moet ook wel een beetje snappen

740
00:41:08.740 --> 00:41:12.260
tot op zekere hoogte of in zekere mate moet je in ieder geval begrijpen

741
00:41:13.460 --> 00:41:17.400
hoe het werkt of je komt er vaak snel genoeg achter hoe het werkt

742
00:41:17.400 --> 00:41:18.760
want je moet gaan debuggen.

743
00:41:19.780 --> 00:41:20.680
Tenminste, ik weet niet hoe bij jullie het zit,

744
00:41:20.860 --> 00:41:22.680
maar bij mij werkt alles in één keer.

745
00:41:23.680 --> 00:41:24.120
Ja hoor.

746
00:41:25.380 --> 00:41:31.380
Nee, maar ik denk dat die lijn is ook gewoon veel meer vervaagd

747
00:41:31.380 --> 00:41:32.500
ten opzichte van vroeger.

748
00:41:32.500 --> 00:41:40.800
En het is ook operations, ik wil geen DevOps'er tekort doen

749
00:41:41.800 --> 00:41:44.740
want goede DevOps zijn zeer waardevol.

750
00:41:45.580 --> 00:41:48.160
Maar die cloud platforms die proberen het natuurlijk ook wel

751
00:41:48.160 --> 00:41:49.860
allemaal zo makkelijk mogelijk voor je te maken.

752
00:41:49.900 --> 00:41:52.540
Dus je hoeft tegenwoordig geen rocket engineer meer te zijn

753
00:41:53.800 --> 00:41:56.380
om iets draaiend te kunnen krijgen in de cloud.

754
00:41:56.760 --> 00:41:59.160
Om een productie omgeving in te richten is iets anders.

755
00:41:59.420 --> 00:42:01.940
Maar om iets draaiend te krijgen in de cloud

756
00:42:01.940 --> 00:42:04.040
en voor je te laten werken,

757
00:42:04.460 --> 00:42:08.000
dat, behalve dan de permissies bij AWS,

758
00:42:08.500 --> 00:42:10.500
maar daar moet je wel rocket engineer voor zijn.

759
00:42:10.960 --> 00:42:12.300
Inmiddels wel ja.

760
00:42:12.740 --> 00:42:14.280
Maar Google is het niet veel anders hoor.

761
00:42:15.220 --> 00:42:16.660
Nee, maar ik bedoel...

762
00:42:16.660 --> 00:42:17.120
Ik begrijp het wel ja.

763
00:42:17.200 --> 00:42:19.540
Het is...

764
00:42:19.540 --> 00:42:23.220
Zo, dat was Siri de eerste keer.

765
00:42:23.400 --> 00:42:24.200
Die weet het ook niet.

766
00:42:25.380 --> 00:42:28.040
Maar die opsrol, de beheerder noemt,

767
00:42:28.140 --> 00:42:30.300
ja in Nederland wordt het meestal de beheerder genoemd,

768
00:42:30.460 --> 00:42:31.760
die is ook echt wel veranderd.

769
00:42:31.760 --> 00:42:33.180
Vooral door de cloud.

770
00:42:33.720 --> 00:42:36.300
Want voorheen was het echt de man die gewoon de data...

771
00:42:36.300 --> 00:42:39.060
Het is ergens bij een verzekeraar van een bank,

772
00:42:39.300 --> 00:42:40.300
die liep het serverhok in.

773
00:42:40.480 --> 00:42:41.840
En ja, die wist hoe die service werkt.

774
00:42:41.940 --> 00:42:43.120
En die moest patchen,

775
00:42:43.320 --> 00:42:44.960
zorgen dat het spul in de lucht bleef.

776
00:42:45.080 --> 00:42:46.820
En die zorgde ook echt gewoon dat die software

777
00:42:46.820 --> 00:42:48.400
fysiek geïnstalleerd werd op die machine.

778
00:42:48.460 --> 00:42:50.340
Dan moest die gewoon echt heen gaan, zeg maar.

779
00:42:50.560 --> 00:42:51.220
Ja, of nou goed,

780
00:42:51.240 --> 00:42:53.880
ze laten hem natuurlijk ook remote inloggen.

781
00:42:54.340 --> 00:42:56.640
Maar hij haalt toegang fysiek tot die machine.

782
00:42:56.780 --> 00:43:00.360
Dus dat was echt wel zijn of haar verantwoordelijkheid.

783
00:43:01.660 --> 00:43:06.760
En die was, volgens mij was die volgens mij een belangrijke taak was

784
00:43:06.760 --> 00:43:09.780
vooral zorgen dat die server bleef draaien,

785
00:43:09.880 --> 00:43:10.720
dat het stabiel was,

786
00:43:10.860 --> 00:43:12.740
dat er toen in mindere mate,

787
00:43:12.740 --> 00:43:15.600
maar dat niet om de havenklap gehakt werd en zo.

788
00:43:16.080 --> 00:43:17.520
Dus dat was de verantwoordelijkheid.

789
00:43:17.540 --> 00:43:20.800
En dat is voor denk ik misschien wel 90 of 95 procent

790
00:43:20.800 --> 00:43:22.580
uithanden genomen door de cloud.

791
00:43:23.360 --> 00:43:23.620
En dan zie je...

792
00:43:23.620 --> 00:43:25.060
Dat is ook heel goedkoop geworden, vroeger.

793
00:43:25.300 --> 00:43:26.240
Nee, dat geloof ik niet.

794
00:43:26.880 --> 00:43:27.980
Nee, cloud is echt niet goedkoop.

795
00:43:27.980 --> 00:43:30.380
Nou, daar laat ik dan...

796
00:43:30.380 --> 00:43:31.980
De instap is...

797
00:43:32.760 --> 00:43:35.700
Vroeger had je een enorme hoge instapdrempel.

798
00:43:36.720 --> 00:43:38.220
Wat service aanschappen,

799
00:43:38.360 --> 00:43:39.700
waar je was zo twee, drie ton verder.

800
00:43:40.980 --> 00:43:43.140
En dus je moest ook wel echt heel goed nadenken

801
00:43:44.300 --> 00:43:46.920
voordat je voordat je zoiets aan ging schoffen.

802
00:43:46.940 --> 00:43:48.280
Terwijl tegenwoordig je kunt,

803
00:43:49.280 --> 00:43:51.380
gewoon pay as you go kun je het proberen.

804
00:43:51.380 --> 00:43:53.140
En als het niet werkt dan discard je het weer.

805
00:43:53.880 --> 00:43:55.620
Of een 80 euro instap op Kubernetes.

806
00:43:55.620 --> 00:43:56.280
Ja.

807
00:43:57.180 --> 00:44:00.500
Ik bedoel, je kunt al die cloud platformen...

808
00:44:00.500 --> 00:44:01.840
Ik bedoel, je moet je credit cardnummer doorgeven,

809
00:44:02.180 --> 00:44:06.620
maar je kunt in principe in free tier kun je prima experimenteren

810
00:44:07.760 --> 00:44:10.940
en kijken van oké, hoeveel...

811
00:44:10.940 --> 00:44:14.440
Vroeger was, denk ik ook...

812
00:44:14.440 --> 00:44:16.960
Ik ben geen operations engineer,

813
00:44:17.220 --> 00:44:20.660
maar vroeger was het heel hard nadenken vooraf van oké,

814
00:44:20.840 --> 00:44:21.960
wij willen dit gaan draaien.

815
00:44:22.040 --> 00:44:25.340
Wat moet dit, wat moet ik aan servercapaciteit hebben?

816
00:44:25.340 --> 00:44:30.620
En nu denk je van, als het te weinig is, dan schakel ik wat bij.

817
00:44:30.680 --> 00:44:31.620
Ja, klopt.

818
00:44:32.400 --> 00:44:33.300
Tenminste, zo doe ik het.

819
00:44:33.480 --> 00:44:37.360
Misschien wederom doe ik nu mensen tekort, maar...

820
00:44:37.360 --> 00:44:39.220
Je hoeft minder ver vooruit te kijken.

821
00:44:40.040 --> 00:44:40.680
Ja, precies.

822
00:44:41.100 --> 00:44:42.740
Het is reactief geworden.

823
00:44:43.400 --> 00:44:49.340
En niet meer dat je echt van tevoren moet...

824
00:44:50.060 --> 00:44:52.980
Want ook zo'n investering van drie ton,

825
00:44:53.540 --> 00:44:54.880
dat was niet voor twee maanden

826
00:44:54.880 --> 00:44:58.660
De meeste bedrijven schrijven die dingen in drie, vier jaar af.

827
00:44:58.980 --> 00:45:01.140
Nee, precies, daar ben ik mee.

828
00:45:03.800 --> 00:45:05.260
Het was best een risico.

829
00:45:06.300 --> 00:45:07.980
Er werd geprovisioned, dus vooraf bekeken,

830
00:45:08.120 --> 00:45:11.100
wat verwachten wij aan load en hoe zit onze applicatie.

831
00:45:11.160 --> 00:45:14.300
En dan kocht je daar je hardware op in en je softwarelicensies.

832
00:45:14.440 --> 00:45:15.120
En dan ging je.

833
00:45:15.400 --> 00:45:16.500
Dus dat was best wel een deel.

834
00:45:16.680 --> 00:45:19.340
Dus stel dat als een opdrachtgever naar ons toe kwam,

835
00:45:19.520 --> 00:45:20.840
zat dat ook allemaal in offerte.

836
00:45:20.880 --> 00:45:23.720
Dat was best wel een ding dat je ook helemaal moest meenemen.

837
00:45:24.280 --> 00:45:25.720
En er hoorde bij die investering.

838
00:45:26.480 --> 00:45:29.200
Terwijl nu is dat risico, zeg maar, is kleiner.

839
00:45:29.340 --> 00:45:32.960
Je kunt ook stel dat je daarna vier weken of vijf weken achter komt.

840
00:45:33.100 --> 00:45:34.040
Dit wordt helemaal niks.

841
00:45:34.140 --> 00:45:37.240
Dan heb je heel weinig risico gelopen, want je hebt die servers.

842
00:45:37.360 --> 00:45:39.680
Je hebt een paar tientjes kwijt en dat is het.

843
00:45:39.780 --> 00:45:41.680
Terwijl als je dat vroeger had gedaan,

844
00:45:41.900 --> 00:45:44.980
dan had je dus even een enorme investering gedaan.

845
00:45:45.220 --> 00:45:46.760
En dan had je wel wat zachtereinigheid.

846
00:45:46.880 --> 00:45:49.160
Daarom had je onder al die bureaus, zeker van die testers,

847
00:45:49.260 --> 00:45:50.700
stonden al die desktopcomputers.

848
00:45:51.520 --> 00:45:52.340
Met zo'n briefje.

849
00:45:52.340 --> 00:45:53.120
Niet uitzetten.

850
00:45:53.420 --> 00:45:53.820
Klopt.

851
00:45:53.980 --> 00:45:55.180
Je kon ze ook huren en zo.

852
00:45:55.460 --> 00:45:56.320
Dat soort modellen.

853
00:45:56.780 --> 00:45:58.260
Tijdens ontwikkeling gebeurde dat wel.

854
00:45:58.680 --> 00:46:01.100
Het is niet meteen dat je in het ontwikkeld traject

855
00:46:01.100 --> 00:46:03.780
meteen al de duurste serveren had staan.

856
00:46:04.960 --> 00:46:06.200
Maar dat was wel...

857
00:46:06.200 --> 00:46:09.400
Het was significant duurder dan de computers

858
00:46:10.240 --> 00:46:12.240
waar je developers op aan het werk waren.

859
00:46:13.040 --> 00:46:13.840
Ja, ja, ja.

860
00:46:15.600 --> 00:46:16.700
Meestal wel, dat klopt.

861
00:46:17.320 --> 00:46:19.400
Als je 100 developers hebt in één server,

862
00:46:19.400 --> 00:46:22.240
dan worden al die MacBooks bij elkaar misschien wel...

863
00:46:22.240 --> 00:46:23.800
Maar waarom reageerde ik op dat duurde?

864
00:46:23.960 --> 00:46:26.200
Nu is het een beweging, daar hoef ik niet lang bij stilstaan.

865
00:46:27.300 --> 00:46:30.540
Dat er nu wordt gekeken, heb je wel zoveel cloud nodig?

866
00:46:30.820 --> 00:46:32.540
Misschien kun je gewoon een server,

867
00:46:32.580 --> 00:46:34.200
en als je de juiste skills in huis hebt,

868
00:46:34.800 --> 00:46:37.140
gewoon zelf servers kopen en draaien.

869
00:46:37.780 --> 00:46:40.000
Dan kan het en vaak is het goedkoper.

870
00:46:40.380 --> 00:46:43.660
Die afweging wordt nu vaker gemaakt.

871
00:46:43.860 --> 00:46:44.440
Dat vind ik gezond.

872
00:46:44.700 --> 00:46:47.960
Ik zeg niet dat het altijd de beste manier is.

873
00:46:47.960 --> 00:46:51.780
Want je moet ook zorgen dat je je security op orde hebt.

874
00:46:52.240 --> 00:46:53.840
Er komt er heel veel bij kijken.

875
00:46:54.400 --> 00:46:57.420
Want inmiddels is er zoveel...

876
00:46:57.420 --> 00:47:02.800
Bij AWS, Azure en Google Cloud zoveel kennis opgebouwd

877
00:47:02.800 --> 00:47:04.820
in het efficiënt draaien van het spul.

878
00:47:05.000 --> 00:47:06.600
Daar kun je niet altijd tegenop boksen.

879
00:47:07.000 --> 00:47:08.240
Ja, maar ook de onderhoud.

880
00:47:09.680 --> 00:47:13.100
Het feit dat je gewoon minimaal onderhoud hebt.

881
00:47:13.920 --> 00:47:17.000
En als je allemaal service zelf hebt.

882
00:47:18.100 --> 00:47:21.600
Ze moeten toch onderhoud worden gepraatst de hele tijd.

883
00:47:23.100 --> 00:47:27.380
Dus je moet het in de gaten houden.

884
00:47:27.960 --> 00:47:29.680
Dat kost ook geld.

885
00:47:30.200 --> 00:47:30.860
Ik weet nog wel...

886
00:47:30.860 --> 00:47:33.080
Dan kan je vast nog wel herinneren dat we toen bij Mendix werkte.

887
00:47:33.120 --> 00:47:35.440
Toen heb ik inderdaad echt zo'n business case moeten maken

888
00:47:35.440 --> 00:47:36.800
van waar we naar de klaut moesten.

889
00:47:37.000 --> 00:47:38.620
Hoeveel geld er er niet in omging.

890
00:47:38.780 --> 00:47:40.580
Om die service allemaal zelf te onderhouden.

891
00:47:40.700 --> 00:47:41.880
Patches inderdaad wat je zei.

892
00:47:43.360 --> 00:47:44.240
Beveiligingszaken oplossen.

893
00:47:44.520 --> 00:47:47.060
En wat het uiteindelijk ook voor effect gaf als het fout ging.

894
00:47:47.360 --> 00:47:48.880
Dus dat we echt letterlijk niet meer konden bouwen.

895
00:47:50.260 --> 00:47:51.480
Dat hadden we gedaan.

896
00:47:51.820 --> 00:47:54.860
En toen hadden we gewoon een vrij simpele opteelsom gemaakt.

897
00:47:55.000 --> 00:47:56.960
En toen kwam het uiteindelijk toch in de klaut wel goedkoper uit.

898
00:47:57.300 --> 00:47:59.580
Maar dat is hoeveel jaar geleden?

899
00:47:59.660 --> 00:48:01.560
Ik denk bijna 6, 10.

900
00:48:01.580 --> 00:48:03.960
Tussen de 5 en 10 jaar geleden.

901
00:48:04.260 --> 00:48:04.760
Ja klopt.

902
00:48:04.860 --> 00:48:06.880
Ik denk wel dat dat makkelijker is geworden inmiddels.

903
00:48:07.020 --> 00:48:10.340
Dat je een flink datacenter hebt.

904
00:48:10.340 --> 00:48:16.300
Met automatisering, al dat patching en die meuk, kan je ook wel makkelijker regelen.

905
00:48:18.980 --> 00:48:20.340
Cloud versus staal.

906
00:48:21.140 --> 00:48:24.400
Ik denk dat dat een afweging is die je per bedrijf moet maken.

907
00:48:24.660 --> 00:48:26.340
Een apart IP voor je ILO.

908
00:48:26.920 --> 00:48:28.060
En dan kan je daar inloggen.

909
00:48:30.640 --> 00:48:34.620
Maar goed, weet je, inderdaad het is gewoon heel afhankelijk van de risicogevoeligheid.

910
00:48:34.880 --> 00:48:38.340
Maar goed, ik neem aan dat bedrijven als AWS en Microsoft...

911
00:48:38.340 --> 00:48:40.860
Die hebben vast wel wet en regelgeving voor.

912
00:48:41.720 --> 00:48:42.980
Die je daarbij kunnen helpen, toch?

913
00:48:43.080 --> 00:48:45.120
Om bepaalde zaken gewoon veilig te stellen.

914
00:48:47.760 --> 00:48:48.580
Of misschien niet.

915
00:48:49.020 --> 00:48:50.520
Of ben ik daar echt te veel in getrouwd?

916
00:48:52.660 --> 00:48:54.480
Kijk, Nederland is op zich nog best wel mega.

917
00:48:54.560 --> 00:48:56.120
Duitsland is daar heel veel strikter in.

918
00:48:56.780 --> 00:48:59.420
Dus die hebben echt zoiets van oké, die data gaat echt, echt buiten.

919
00:48:59.700 --> 00:49:02.840
Dat mag niet, want allerlei regels en wetten.

920
00:49:02.900 --> 00:49:05.000
Dan zijn wij wat makkelijker meegaan erin.

921
00:49:05.000 --> 00:49:08.140
Dus Microsoft kwam hier in Nederland qua cloud.

922
00:49:09.240 --> 00:49:11.500
Microsoft dus, vooral omdat ze daar meer ervaring hebben.

923
00:49:11.920 --> 00:49:13.260
Die kwamen, meer dingen kwamen ze weg.

924
00:49:13.680 --> 00:49:14.540
In Duitsland was dat echt niet zo.

925
00:49:14.660 --> 00:49:17.000
Duitsland heeft volgens mij, voor Azure, hebben ze...

926
00:49:18.700 --> 00:49:20.920
Volgens mij heeft T-Mobile een van de datacenters,

927
00:49:21.120 --> 00:49:23.620
of toen in het begin die datacenter van Microsoft inbeheer.

928
00:49:23.620 --> 00:49:25.620
Omdat dat moest gewoon een Duits bedrijf zijn.

929
00:49:26.640 --> 00:49:28.460
Omdat met die, weet je, die Patriot Act,

930
00:49:29.260 --> 00:49:32.120
mag Amerika altijd gewoon jouw datacenter binnenkomen lopen.

931
00:49:32.120 --> 00:49:36.200
Als zij denken, daar zit gewoon data, we willen erbij,

932
00:49:36.360 --> 00:49:38.220
dan is het heel leuk, maar dan komen we gewoon binnen.

933
00:49:38.900 --> 00:49:40.380
En dat vond Duitsland niet zo.

934
00:49:40.460 --> 00:49:42.380
Maar goed, dat is even een heel andere discussie.

935
00:49:43.660 --> 00:49:46.190
Maar in cloud, dat kun je gewoon niet meer wegdenken.

936
00:49:47.640 --> 00:49:48.420
Dat is er gewoon.

937
00:49:48.700 --> 00:49:52.060
Dus als we de vraag, kun je CICD doen zonder cloud?

938
00:49:52.460 --> 00:49:53.220
Ja, dat kan.

939
00:49:53.520 --> 00:49:56.060
We kunnen echt wel een zet Raspberry Pi's kopen,

940
00:49:56.760 --> 00:49:58.600
een eigen build-servertje bouwen, toch?

941
00:49:59.140 --> 00:50:01.120
Ja, eens, maar het is tegelijkertijd...

942
00:50:02.220 --> 00:50:05.120
Dus dat is alleen maar bijvoorbeeld het hosten,

943
00:50:05.240 --> 00:50:06.780
of je build-server host in de cloud.

944
00:50:07.980 --> 00:50:08.880
Dat kun je doen.

945
00:50:09.100 --> 00:50:10.280
En waar draai je je software?

946
00:50:11.100 --> 00:50:12.680
Dat draai je liefst ook in de cloud.

947
00:50:12.740 --> 00:50:14.180
Dat kun je ook allemaal zelf doen.

948
00:50:14.620 --> 00:50:16.200
En je ziet wel dat er nu een product ontstaan

949
00:50:20.520 --> 00:50:24.420
die bijna niet evenaar zijn als je die zelf gaat draaien.

950
00:50:26.700 --> 00:50:28.300
Dus dat wordt steeds lastiger.

951
00:50:28.300 --> 00:50:33.260
In de overheid wereld wel dat cloud vaak niet wint van staal.

952
00:50:33.460 --> 00:50:35.540
Als je kijkt naar aanbestedingen en dat soort dingen,

953
00:50:36.060 --> 00:50:37.860
tijd dat je klaar bent met aanbestedingen,

954
00:50:37.940 --> 00:50:38.800
ze hebben het geïmplementeerd,

955
00:50:38.840 --> 00:50:40.480
dan kan je weer opnieuw beginnen met aanbesteden.

956
00:50:41.360 --> 00:50:48.120
Dan hebben we het nog niet over de data die wordt opgeslagen door onze overheden.

957
00:50:48.320 --> 00:50:52.320
Wil je dat bij de Google's van de wereld terechtkomt?

958
00:50:52.460 --> 00:50:53.900
Nee, nee, nee, precies, die snap ik.

959
00:50:55.120 --> 00:51:00.320
Daar zie je wel vaak, ik zit nu bij de Koninklijke Bibliotheek,

960
00:51:00.480 --> 00:51:03.900
dat is gewoon semi-overheidsinstelling, alles op staal.

961
00:51:05.880 --> 00:51:08.140
Ook GitLab draait op staal.

962
00:51:09.180 --> 00:51:14.180
Er zijn nu wat applicaties die gericht zijn op de,

963
00:51:14.180 --> 00:51:16.900
ik doe even tussen aan aanstekers zien, de consument.

964
00:51:18.020 --> 00:51:21.120
En die gaan ze dan in Azure onderbrengen.

965
00:51:21.120 --> 00:51:25.360
Maar dat zijn geen bedrijfscritische applicaties.

966
00:51:27.800 --> 00:51:30.220
Maar wat is de definitie van cloud?

967
00:51:34.480 --> 00:51:38.680
Als je servers ergens op een andere geografische locatie staat

968
00:51:38.680 --> 00:51:42.460
en je connect via het internet, hebben we het dan niet al over cloud?

969
00:51:43.840 --> 00:51:45.780
Er zijn wel veel definities.

970
00:51:46.640 --> 00:51:48.260
We zeggen vaak on-premise.

971
00:51:49.220 --> 00:51:53.520
Die dude van Oracle vindt dat hij het uitgevonden heeft,

972
00:51:53.780 --> 00:51:55.360
maar zei dat als het niet draait op jouw machine,

973
00:51:56.140 --> 00:51:58.340
als de machine niet voor jou is, dan is het de cloud.

974
00:51:58.980 --> 00:52:02.320
Dus het draait ergens op, want we draaien de servers ook in server,

975
00:52:03.620 --> 00:52:07.040
hoe heet dat, ergens anders, co-location.

976
00:52:07.100 --> 00:52:10.240
Data centers precies. Maar dat noemen we geen cloud,

977
00:52:10.380 --> 00:52:13.140
want die servers waren gewoon ons eigen dom.

978
00:52:13.140 --> 00:52:17.560
En zodra het niet ons eigen dom was, werd het cloud.

979
00:52:17.760 --> 00:52:20.760
En ook de flexibiliteit, dat je zei, geef mij 10 van die,

980
00:52:20.780 --> 00:52:21.680
dat was dan heel makkelijk.

981
00:52:21.780 --> 00:52:25.760
Dus dat was een beetje de definitie van cloud.

982
00:52:26.900 --> 00:52:29.440
En waardoor je dan, als je het in een data center hebt staan,

983
00:52:29.620 --> 00:52:32.280
en het zijn jouw servers, en niemand anders kan erbij fysiek,

984
00:52:32.740 --> 00:52:33.880
dan is het gewoon jouw staal.

985
00:52:34.680 --> 00:52:36.500
En dat is denk ik wel een belangrijk verschil,

986
00:52:36.500 --> 00:52:39.220
zeker voor de overheid ten opzichte van cloud.

987
00:52:39.220 --> 00:52:42.720
Nou, is het zeker zo dat ook Microsoft,

988
00:52:42.940 --> 00:52:45.860
en de Googles, en de Amazons, ook alles aan doen

989
00:52:45.860 --> 00:52:51.180
om ook voor de overheid toch nog offerings te hebben,

990
00:52:52.220 --> 00:52:54.720
en garanties probeert te bieden,

991
00:52:55.540 --> 00:52:57.720
zodat die data niet ergens anders terecht komt.

992
00:52:58.720 --> 00:53:00.300
Dat zijn zoveel lobbies, want ze weten gewoon,

993
00:53:00.300 --> 00:53:01.540
dat is gewoon heel veel business te halen.

994
00:53:03.020 --> 00:53:05.480
En er zijn allemaal richtlijnen, certificaten voor,

995
00:53:05.560 --> 00:53:07.040
dus dat speelt wel.

996
00:53:07.040 --> 00:53:09.580
Ik ben er helemaal niet up-to-date mee,

997
00:53:10.020 --> 00:53:11.320
maar dat spel speelt heel lang.

998
00:53:11.380 --> 00:53:13.800
Dat is met financiële instellingen in Nederland ook.

999
00:53:14.500 --> 00:53:16.860
Ik heb nog in het begin meegemaakt,

1000
00:53:17.740 --> 00:53:18.960
ik weet niet, een van de banken die zeiden,

1001
00:53:19.060 --> 00:53:21.540
ja, heel leuk, maar dit gaat gewoon de cloud niet in, punt.

1002
00:53:23.200 --> 00:53:25.040
Want de Nederlandse bank, die vindt het gewoon niet goed.

1003
00:53:25.500 --> 00:53:27.480
Als zij het niet goed vinden, mogen wij het gewoon niet.

1004
00:53:27.880 --> 00:53:31.820
Dat heeft heel veel lobbywerk van de drie grote, zeg maar,

1005
00:53:33.020 --> 00:53:36.780
Amazon, Google en Microsoft en IBM trouwens ook,

1006
00:53:37.700 --> 00:53:39.560
om te zorgen dat het toch mocht, zeg maar.

1007
00:53:39.640 --> 00:53:42.060
Nu zie je wel dat financiële instellingen gewoon in de cloud staan.

1008
00:53:42.640 --> 00:53:44.460
Dus dat is ook al een stap, zeg maar,

1009
00:53:44.760 --> 00:53:45.920
die ik toen in eerste instantie dacht,

1010
00:53:45.980 --> 00:53:47.060
ja, dit gaat echt nooit gebeuren,

1011
00:53:47.220 --> 00:53:50.600
want wie garandeert ons nu dat die data niet ergens anders terecht komt?

1012
00:53:51.600 --> 00:53:54.520
En als we het dan hebben over intellectueel eigendop,

1013
00:53:54.680 --> 00:53:57.160
dat is toch vaak code die we schrijven,

1014
00:53:57.200 --> 00:53:59.740
die we dan in Git opslagen.

1015
00:54:02.640 --> 00:54:04.280
Doen we dat ook in de cloud?

1016
00:54:05.980 --> 00:54:08.420
Want eigenlijk waar ik op doel is de vraag,

1017
00:54:09.960 --> 00:54:13.980
als je CI zou willen gaan toepassen in een Greenfield project,

1018
00:54:14.720 --> 00:54:17.020
welke tool zou je dan willen gebruiken?

1019
00:54:18.000 --> 00:54:22.400
Is dat iets wat je lokaal, weet je wel, on-premise is,

1020
00:54:22.500 --> 00:54:27.900
zou willen proberen of zou je direct naar de verschillende bedrijven die dit allemaal omarmen?

1021
00:54:27.900 --> 00:54:30.180
Heb je nu over repository management?

1022
00:54:30.480 --> 00:54:34.820
Ja, repository management, echt alles wat er nodig is om CI goed te doen,

1023
00:54:34.920 --> 00:54:38.280
met pull requests en zaken zoals dat.

1024
00:54:40.360 --> 00:54:44.020
En kijk, je kan, GitHub weet ik overigens niet hoor,

1025
00:54:44.080 --> 00:54:46.140
maar GitLab kun je on-premise draaien,

1026
00:54:47.820 --> 00:54:51.900
maar dan draai je natuurlijk nog steeds,

1027
00:54:56.040 --> 00:55:00.160
eigenlijk GitLab, dus behalve dat je dan zelf alles moet beheren

1028
00:55:00.820 --> 00:55:06.580
en misschien zeker weet dat jouw repository, Git repos,

1029
00:55:07.220 --> 00:55:09.020
in ieder geval niet bereikbaar zijn voor anderen,

1030
00:55:10.300 --> 00:55:13.020
maak je uiteindelijk nog steeds gebruik van dezelfde tool.

1031
00:55:14.820 --> 00:55:16.640
Kijk, als je het echt gaat hebben van,

1032
00:55:16.700 --> 00:55:18.180
moet je die tools gebruiken of niet,

1033
00:55:19.000 --> 00:55:20.280
dan is mijn persoonlijke mening,

1034
00:55:20.480 --> 00:55:21.880
misschien ook omdat ik er niks van af weet,

1035
00:55:21.880 --> 00:55:25.260
maar je maakt het jezelf wel heel lastig als je het niet doet,

1036
00:55:28.200 --> 00:55:31.100
dus het kan waarschijnlijk, want vroeger kon het ook,

1037
00:55:32.120 --> 00:55:34.280
maar dan kom je op een gegeven moment ook in discussie,

1038
00:55:34.460 --> 00:55:36.320
moet je Git gebruiken of niet.

1039
00:55:38.000 --> 00:55:40.400
Version control, dat is dan de volgende stap

1040
00:55:40.400 --> 00:55:44.240
en uiteindelijk zit je op een bierfilter je programma te schrijven,

1041
00:55:44.240 --> 00:55:46.220
het is wel veilig,

1042
00:55:51.280 --> 00:55:56.120
maar wat kost het en wat zijn de risico's?

1043
00:55:58.740 --> 00:56:03.280
Ja, want ik merk wel dat op de gegevens waar ik zit,

1044
00:56:03.520 --> 00:56:05.400
dat wordt toch vaak on-premise geïnstalleerd,

1045
00:56:05.560 --> 00:56:07.780
dus dat soort Git repo-achtige tools,

1046
00:56:08.040 --> 00:56:10.840
zoals Bitbucket, GitLab,

1047
00:56:11.900 --> 00:56:13.620
die worden toch wel lokaal geïnstalleerd,

1048
00:56:13.620 --> 00:56:15.660
bij Rijkswaterstaat heb ik een tijdje geweten,

1049
00:56:15.860 --> 00:56:19.540
daar hetzelfde verhaal, alles lokaal en bare metal inderdaad.

1050
00:56:19.740 --> 00:56:21.000
Ik ben wel benieuwd hoe dat dan,

1051
00:56:21.200 --> 00:56:25.240
want uiteindelijk zijn die, als we toch naar AI hebben,

1052
00:56:25.680 --> 00:56:30.980
die co-pilot bijvoorbeeld, die werkt natuurlijk uiteindelijk op basis van,

1053
00:56:33.400 --> 00:56:35.860
in deze context, wat is over het algemeen,

1054
00:56:35.860 --> 00:56:43.240
wat de mensen, als developer, als volgende woord,

1055
00:56:44.580 --> 00:56:47.540
wat is het vervolgen in je syntax, dat vult die aan.

1056
00:56:47.940 --> 00:56:50.540
Dat doet die natuurlijk op basis, waarschijnlijk van alle repos,

1057
00:56:50.780 --> 00:56:52.620
maar neemt die daar dan ook de private repos in mee.

1058
00:56:52.680 --> 00:56:55.000
En als jij het on-premise installeert,

1059
00:56:56.560 --> 00:56:59.960
dan zou je heel efficiënt een soort van eigen context kunnen creëren

1060
00:56:59.960 --> 00:57:01.680
op jouw basis, van jouw repos,

1061
00:57:01.720 --> 00:57:03.720
want de kans is veel groter dat je iets daaruit wil.

1062
00:57:03.720 --> 00:57:08.120
Maar ja, mag GitHub dat dan gebruiken om een co-pilot te trainen?

1063
00:57:09.760 --> 00:57:12.420
Of mogen ze het, of doen ze het, of doen ze het niet?

1064
00:57:13.920 --> 00:57:17.380
Ik denk dat dat een interessante discussie is ook gaan worden,

1065
00:57:17.420 --> 00:57:19.740
want het is natuurlijk allemaal hartstikke handig dat die tooling er is,

1066
00:57:19.800 --> 00:57:21.260
maar die tooling moet ook ergens leren.

1067
00:57:21.680 --> 00:57:26.120
Ja, die co-pilot, die offering, daar is wel...

1068
00:57:26.120 --> 00:57:28.300
Je hebt een enterprise-versie waarbij ze wel zeggen,

1069
00:57:28.440 --> 00:57:33.400
oké, jouw private repositories verlaat niet jouw private omgeving.

1070
00:57:33.400 --> 00:57:39.000
Dus het is niet zo dat dan de algemene GitHub co-pilot, zeg maar,

1071
00:57:39.200 --> 00:57:42.540
de suggestie die die geeft, dat die gebaseerd is op de code...

1072
00:57:42.540 --> 00:57:45.000
Zij gebruiken niet jouw data om een co-pilot te trainen?

1073
00:57:45.400 --> 00:57:48.080
Juist, alleen jouw eigen instantie, zeg maar.

1074
00:57:48.420 --> 00:57:50.920
Maar kan je wel een lokale co-pilot trainen met jou?

1075
00:57:51.760 --> 00:57:53.440
Nou ja, die repos...

1076
00:57:53.440 --> 00:57:58.120
Mijn ervaring is dat als je in face code co-pilot gebruikt,

1077
00:57:58.780 --> 00:58:02.300
dat die beter wordt naarmate je hem gebruikt.

1078
00:58:02.300 --> 00:58:04.520
Dus als je bijvoorbeeld refactoring aan het doen bent,

1079
00:58:05.360 --> 00:58:07.680
dat als je bijvoorbeeld in de volgende...

1080
00:58:08.300 --> 00:58:12.980
Ik was laatst iets met metadata aan het toevoegen in verschillende files.

1081
00:58:14.040 --> 00:58:20.520
En dat vanaf de derde file kreeg ik gewoon foutloos een hele brok code voor.

1082
00:58:20.820 --> 00:58:23.800
Ja, de meest relevante context is de repos zelf natuurlijk.

1083
00:58:24.000 --> 00:58:26.180
En misschien wel de file waarin je aan het werk bent zelf.

1084
00:58:30.160 --> 00:58:34.180
Dat zit al een tijdje voordat codecs, is dat volgens mij van OpenAI.

1085
00:58:35.220 --> 00:58:39.140
Dus die co-pilot is volgens mij nog steeds...

1086
00:58:39.140 --> 00:58:41.540
Nou goed, een versie van codecs is hier op gebaseerd.

1087
00:58:41.660 --> 00:58:43.320
Dus dat is allemaal dat feestje.

1088
00:58:43.640 --> 00:58:46.600
Maar daarvoor had Microsoft al technologie, zeg maar,

1089
00:58:46.900 --> 00:58:49.020
in Visual Studio, de normale Visual Studio.

1090
00:58:49.040 --> 00:58:51.240
En Visual Studio Code zal dat misschien ook gebruiken.

1091
00:58:51.440 --> 00:58:54.100
Om op basis van jouw code suggesties te doen van,

1092
00:58:55.620 --> 00:58:57.800
met code completion was in eerste instantie het makkelijkste.

1093
00:58:58.060 --> 00:59:01.260
Oké, deze functie wil je waarschijnlijk nu gaan gebruiken.

1094
00:59:01.760 --> 00:59:02.480
En dit soort dingen ook.

1095
00:59:02.640 --> 00:59:04.520
En daar is ook discussie over privacy.

1096
00:59:04.620 --> 00:59:07.820
Want dat spul werd geanalyseerd niet op jouw machine, maar ergens in de cloud.

1097
00:59:08.660 --> 00:59:11.340
En dan was het van, ja, waar gaat het heen, zeg maar.

1098
00:59:11.480 --> 00:59:13.520
Dus daar is weer privacy een dingetje.

1099
00:59:13.640 --> 00:59:14.620
Kun je gewoon uitzetten, zeg maar.

1100
00:59:14.820 --> 00:59:16.500
Dat zit wel op de hout in.

1101
00:59:18.500 --> 00:59:21.100
Maar goed, dus dat...

1102
00:59:21.600 --> 00:59:23.580
Ja, dat is zeker een interessante discussie.

1103
00:59:23.580 --> 00:59:25.980
Ik denk dat die tools helpen je heel erg.

1104
00:59:26.180 --> 00:59:27.420
Alleen, ja, dat zit wel in een keerzaam.

1105
00:59:27.480 --> 00:59:28.980
Maar die discussie is niet alleen binnen...

1106
00:59:28.980 --> 00:59:30.400
Dat is het fijne hier aan.

1107
00:59:30.620 --> 00:59:34.220
Niet alleen maar binnen software development is die discussie aan de hand.

1108
00:59:34.300 --> 00:59:41.440
Want dat is juist bij creatieve, single songwriters, textwriters voor films en zo.

1109
00:59:41.620 --> 00:59:43.440
En allerlei dat soort processen.

1110
00:59:43.800 --> 00:59:50.880
Daar is ook heel veel discussie over, ja, licensing en rechten, zeg maar, copyrights.

1111
00:59:51.000 --> 00:59:53.100
Dus dat geldt voor ons ook en met privacy.

1112
00:59:53.100 --> 00:59:55.620
Dus het is interessant waar het heen gaat.

1113
00:59:56.240 --> 00:59:57.360
Het zijn hele mooie tools.

1114
00:59:58.480 --> 01:00:02.220
Maar waar het ons naar heen leidt, dat wordt nog wel een spannende.

1115
01:00:03.360 --> 01:00:07.540
Wat wel of wat nog interessanter is hier, misschien wel...

1116
01:00:07.540 --> 01:00:11.060
Nu wil ik ook weer niet mensen tekort doen, maar...

1117
01:00:11.060 --> 01:00:15.380
Bij artiesten die zijn zich vaak bewust van hun IP.

1118
01:00:15.600 --> 01:00:22.120
Maar met een developer die is zich natuurlijk vaak niet bewust van het IP van het bedrijf.

1119
01:00:22.120 --> 01:00:27.320
Maar misschien nog wel meer dan dat de CEO van het bedrijf zich bewust is

1120
01:00:27.320 --> 01:00:33.420
van dat dat soort tooling misschien hun IP op straat legt.

1121
01:00:37.660 --> 01:00:42.740
Ik denk dat er weinig CEO's zijn die bij de developers langs gaan

1122
01:00:42.740 --> 01:00:44.860
en eens even gaan kijken welke tooling ze gebruiken.

1123
01:00:44.960 --> 01:00:48.500
Sterker nog, als ze het zouden doen, denk ik dat al die developers misnijdig worden

1124
01:00:48.500 --> 01:00:51.040
dat ze zich bemoeien met wat zij aan tooling gebruiken.

1125
01:00:52.360 --> 01:00:55.140
En het is ook de vraag, en dat weten we denk ik ook niet allemaal zo,

1126
01:00:55.360 --> 01:01:03.100
maar hoeveel van jouw IP, in welke vorm, komt die ergens anders?

1127
01:01:03.520 --> 01:01:04.520
Hoe bruikbaar is het?

1128
01:01:04.520 --> 01:01:05.680
Hoe bruikbaar is het, zeg maar.

1129
01:01:06.000 --> 01:01:09.540
Misschien zal er soms een stuk code voorstellen waar je denkt,

1130
01:01:09.640 --> 01:01:13.960
oh wacht even, dit is gewoon letterlijk 1 op 1 wat ik bij iemand anders had kunnen zien.

1131
01:01:14.400 --> 01:01:18.780
Dat zou kunnen. Maar ik vraag me dat ook af, want we doen er heel moeilijk over.

1132
01:01:18.780 --> 01:01:21.880
Maar ik weet niet of dat in de context dat je dan überhaupt weet,

1133
01:01:22.080 --> 01:01:28.180
van ik heb hier heel erg belangrijke algoritmen waar de concurrent iets mee...

1134
01:01:28.180 --> 01:01:31.900
Aan de andere kant was dat natuurlijk al met al die licensing van,

1135
01:01:32.020 --> 01:01:36.100
ik ben er niet helemaal in thuis, maar wat voor licentie je gebruikt.

1136
01:01:36.740 --> 01:01:44.380
En als je die dependencies hebt die in bepaalde open source licentie hebben,

1137
01:01:45.580 --> 01:01:49.400
wat eigenlijk jou dan verplicht om open source of jou verplicht.

1138
01:01:49.860 --> 01:01:52.440
Maar waarvan ze eigenlijk zeggen, oké, als je dit gebruikt,

1139
01:01:53.580 --> 01:01:55.500
ik weet nu niet precies welke licentie het is,

1140
01:01:55.580 --> 01:02:01.020
maar als je dit gebruikt, dan schik je je naar dat jou code open source is.

1141
01:02:01.700 --> 01:02:04.340
En dus ongetwijfeld heel veel niet open source projecten zijn

1142
01:02:04.340 --> 01:02:08.040
die dat soort dependencies wel gebruiken.

1143
01:02:08.440 --> 01:02:09.540
Ja, oh zo, dat klopt.

1144
01:02:10.560 --> 01:02:13.780
Ook dat er zijn ook tools voor om die licentiescans te doen, zeg maar.

1145
01:02:13.780 --> 01:02:16.300
Dus dat je dan bijvoorbeeld in npmreposters en in .net ook

1146
01:02:16.300 --> 01:02:19.260
dat die scant welke licenties en of zijn die wel compatible,

1147
01:02:19.400 --> 01:02:20.540
want dan kun je regels voor opstellen.

1148
01:02:20.740 --> 01:02:22.980
Ik weet dat bij Manix deden wij dat ook al.

1149
01:02:23.260 --> 01:02:23.880
Ja, met SNIC.

1150
01:02:24.420 --> 01:02:25.540
Ja precies, ja ja.

1151
01:02:25.940 --> 01:02:28.360
En zo zijn er meer van die tools die checken gewoon voor oké,

1152
01:02:28.360 --> 01:02:30.060
nee wacht even dit kan niet, want dit is MIT,

1153
01:02:30.200 --> 01:02:33.680
wij mogen niet met MIT licensing werken of met BSD, whatever.

1154
01:02:33.940 --> 01:02:37.700
Dus dat is wel, een aantal bedrijven die weten dat zij liable zijn,

1155
01:02:38.520 --> 01:02:41.340
die doen dat bewust, die weten gewoon ja, dat moeten we doen.

1156
01:02:41.380 --> 01:02:43.660
Maar ik weet zeker dat er heel veel bedrijven echt totaal

1157
01:02:43.660 --> 01:02:46.700
geen benulden van hebben en niet eens weten wat voor risico's er lopen.

1158
01:02:46.960 --> 01:02:49.420
Dus met Facebook en React is dat even gebeurd.

1159
01:02:49.660 --> 01:02:52.360
Ik weet niet of het licentiemodel van React

1160
01:02:53.120 --> 01:02:56.440
in een jaar of drie of vier wilden ze gaan veranderen.

1161
01:02:57.060 --> 01:03:00.400
En daar stond in, zeg maar, als een product baseert op React

1162
01:03:00.400 --> 01:03:02.940
en wat concurreert met een product van Facebook,

1163
01:03:03.060 --> 01:03:06.100
dan kan Facebook dat product claimen, zeg maar.

1164
01:03:06.480 --> 01:03:08.300
Dat was echt een hele rare constructie.

1165
01:03:08.380 --> 01:03:10.160
Zat die ervan, oké dit is gewoon, dan ben je gewoon klaar.

1166
01:03:10.200 --> 01:03:11.540
Dan stoppen we nu met z'n allen met React,

1167
01:03:11.540 --> 01:03:13.760
want we weten niet wat Facebook morgen doet.

1168
01:03:14.260 --> 01:03:17.560
Want stel dat ik nu in een dashboard van een auto React zou gebruiken

1169
01:03:18.660 --> 01:03:21.800
en weet ik wat voor logica erbij, dan kunnen jullie, zeg maar,

1170
01:03:21.920 --> 01:03:24.580
iets claimen omdat jullie morgen auto's gaan bouwen.

1171
01:03:24.740 --> 01:03:25.840
Ja, dat gaan we even niet meer doen.

1172
01:03:26.440 --> 01:03:29.900
Dus dat hebben ze heel snel, dat licentiemodel hebben ze te snel teruggedraaid.

1173
01:03:30.340 --> 01:03:33.780
Maar dat was wel echt, ja, wel een beetje een shock, zeg maar.

1174
01:03:35.960 --> 01:03:37.060
Ja, oké, mooi man.

1175
01:03:37.380 --> 01:03:41.000
Ja, ik zie het ook nog wel even leuk om bij stil te staan.

1176
01:03:41.780 --> 01:03:46.020
Stel dat je CI zou willen introduceren bij een team.

1177
01:03:47.220 --> 01:03:49.820
Of bij je, ja, in ieder geval bij een team.

1178
01:03:52.180 --> 01:03:54.000
Welke tool zou jij aanraden?

1179
01:03:54.740 --> 01:03:56.340
Welke toolset zou je aanraden?

1180
01:03:56.540 --> 01:03:58.700
Want je hebt, we hebben een paar al genoemd, GitLab.

1181
01:03:58.980 --> 01:03:59.500
Je hebt GitHub.

1182
01:04:00.200 --> 01:04:01.740
Je hebt, mis ik nog één.

1183
01:04:02.640 --> 01:04:04.100
Je hebt Azure DevOps.

1184
01:04:04.640 --> 01:04:05.320
Van Atlassian.

1185
01:04:05.660 --> 01:04:07.500
Goede oude Jenkins heb je ook nog.

1186
01:04:07.780 --> 01:04:08.600
Atlassian, ja.

1187
01:04:09.340 --> 01:04:10.080
Hoe heet dat nou?

1188
01:04:11.200 --> 01:04:13.220
GoCD heb je ook volgens mij.

1189
01:04:13.540 --> 01:04:17.080
Ja, ze hebben ook best wel heel veel van die online CI.

1190
01:04:18.020 --> 01:04:18.760
Circle CI.

1191
01:04:18.860 --> 01:04:19.440
Circle CI.

1192
01:04:19.520 --> 01:04:20.600
Hoe is het, ik weet niet of het staat.

1193
01:04:21.580 --> 01:04:22.320
Oh ja, Travis, wow.

1194
01:04:22.620 --> 01:04:23.140
Ja.

1195
01:04:25.500 --> 01:04:30.560
Maar ja, wat is tegenwoordig een beetje hip om te gebruiken?

1196
01:04:31.020 --> 01:04:32.700
Wat gebruikt jouw bedrijf bijvoorbeeld nu?

1197
01:04:32.880 --> 01:04:35.760
Ik weet niet wat hip is om te gebruiken.

1198
01:04:37.220 --> 01:04:42.180
Mijn mening is bij elke tooling gebruik wat makkelijk voor je werkt.

1199
01:04:42.340 --> 01:04:45.860
En als dat hetgeen is waar je bekend mee bent, doe dat vooral.

1200
01:04:46.240 --> 01:04:52.040
Ga geen, of het is zonde om heel veel tijd te investeren in iets wat nu hip is.

1201
01:04:52.220 --> 01:04:54.800
En wat misschien morgen ook nog wel hip is.

1202
01:04:55.400 --> 01:05:01.160
Maar je kan beter die tijd gebruiken om je code te verbeteren.

1203
01:05:01.220 --> 01:05:01.460
Ja.

1204
01:05:01.460 --> 01:05:02.160
Nee.

1205
01:05:03.220 --> 01:05:05.820
En dus zou ik ook zeggen van gebruik wat makkelijk is.

1206
01:05:05.980 --> 01:05:07.580
Wij gebruiken zelf GitHub.

1207
01:05:08.860 --> 01:05:09.900
Hiervoor GitLab.

1208
01:05:10.860 --> 01:05:11.560
En dus ook GitHub.

1209
01:05:11.640 --> 01:05:12.920
Wij gebruiken GitHub Actions.

1210
01:05:13.360 --> 01:05:14.300
Hoeft overigens ook niet.

1211
01:05:14.860 --> 01:05:21.920
Wat we net zeggen, er zijn online tools die andere online tools die je ook prima integreren.

1212
01:05:22.980 --> 01:05:24.020
Ja, nogmaals.

1213
01:05:26.180 --> 01:05:28.720
Ik zou niet zeggen van dit moet je wel gebruiken.

1214
01:05:28.720 --> 01:05:30.100
Dit moet je niet gebruiken.

1215
01:05:31.040 --> 01:05:33.340
Wat werkt, wat is makkelijk.

1216
01:05:36.100 --> 01:05:40.580
Ook belangrijk denk ik hoe makkelijk is om het te leren.

1217
01:05:40.740 --> 01:05:45.350
We hadden het net al over dat tegenwoordig veel mensen zelf leren programmeren.

1218
01:05:45.700 --> 01:05:48.380
Dat is ook omdat er veel documentatie is.

1219
01:05:48.680 --> 01:05:51.940
En die programmeertalen ook allemaal een stuk begrijpelijker worden.

1220
01:05:53.040 --> 01:05:56.860
Vroeger met als je zelf leren programmeren in C.

1221
01:05:56.960 --> 01:05:58.600
Nou, dan moest je wel vrij veel geduld hebben.

1222
01:05:59.040 --> 01:06:03.800
En dat is nu gewoon heel anders.

1223
01:06:04.460 --> 01:06:05.620
Ook door die tooling die we hebben.

1224
01:06:05.940 --> 01:06:07.040
Dat draagt er ook aan bij.

1225
01:06:07.700 --> 01:06:14.620
Ja, want iets wat ik ook weleens in onze podcast over gehad heb.

1226
01:06:15.720 --> 01:06:20.680
Is of je nou wel of niet van die Jammerfails moet gebruiken.

1227
01:06:20.780 --> 01:06:22.120
Of dat je het uit moet programmeren.

1228
01:06:22.360 --> 01:06:23.520
Hier zie jij de pipeline.

1229
01:06:24.920 --> 01:06:26.520
Hoe bedoel je eigenlijk programmeren in Jammerfails?

1230
01:06:26.520 --> 01:06:31.820
Ja, dus kijk, Jammerfails zijn over het algemeen heel erg statisch.

1231
01:06:32.120 --> 01:06:33.740
Dat kan één richting op gaan.

1232
01:06:34.820 --> 01:06:37.700
En soms wil je ook wel eens logica gaan introduceren.

1233
01:06:37.820 --> 01:06:40.100
Van if je of misschien ook wel.

1234
01:06:40.200 --> 01:06:41.140
Nee, voorloopjes hoeft dat niet.

1235
01:06:42.580 --> 01:06:45.500
En dan is het misschien handig om een programmeertaal te hebben.

1236
01:06:46.000 --> 01:06:52.440
Of iets van een scripttaaltje die ervoor zorgt dat de boel dynamischer wordt in je pipeline.

1237
01:06:52.440 --> 01:06:57.520
Ja, veel pipelines die ondersteunen dat toch al.

1238
01:06:57.540 --> 01:07:00.730
Tenminste, wij gebruiken GitHub Actions.

1239
01:07:02.720 --> 01:07:05.280
Ja, het ziet eruit als een Jammerfail.

1240
01:07:05.480 --> 01:07:06.690
Het heeft een Jammer extensie.

1241
01:07:07.300 --> 01:07:10.540
Maar er zit wel conditionele syntax in.

1242
01:07:11.340 --> 01:07:14.900
Dus ze hebben eigenlijk gewoon de Jammer syntax.

1243
01:07:15.980 --> 01:07:21.670
Ze hebben waarschijnlijk zelf een parser er die gebaseerd is op Jammer.

1244
01:07:21.670 --> 01:07:23.450
Maar die doet meer.

1245
01:07:24.910 --> 01:07:30.510
En ik kan me niet voorstellen dat GitLab, CI dat niet op een dergelijke manier.

1246
01:07:30.510 --> 01:07:32.890
Github, Camp Bash, Python.

1247
01:07:33.670 --> 01:07:34.330
Ja, dat is ook nog.

1248
01:07:34.550 --> 01:07:38.130
Je kan gewoon codeblocks invoegen.

1249
01:07:38.770 --> 01:07:41.250
Ik weet dat bij Jenkins vroeger kon dat al.

1250
01:07:42.610 --> 01:07:46.430
Ik denk wat een goede vooruitgang is.

1251
01:07:46.830 --> 01:07:49.650
En daar heb ik het over dus een hele tijd geleden.

1252
01:07:49.650 --> 01:07:56.890
Dat zag je vaak dat die pipelines eigenlijk gedetached waren van de codebase.

1253
01:07:57.210 --> 01:08:02.470
En tegenwoordig is het onderdeel van de code.

1254
01:08:02.690 --> 01:08:05.350
Waardoor het mee evolueert met de code.

1255
01:08:06.650 --> 01:08:13.150
De tijd dat er wijzigingen waren en dat vervolgens je hele testpipeline omviel.

1256
01:08:13.650 --> 01:08:14.810
En dat je er langer bezig was.

1257
01:08:14.990 --> 01:08:15.750
Dat niemand wist waarom.

1258
01:08:15.750 --> 01:08:21.710
Dat de onderhoud aan de testpipeline meer werk was dan de test zelf.

1259
01:08:23.430 --> 01:08:25.050
Dat is eigenlijk niet meer.

1260
01:08:26.430 --> 01:08:27.170
Oftewel niet meer.

1261
01:08:27.590 --> 01:08:34.470
Maar het zijn telkens kleine stapjes die tegelijkertijd in dezelfde codebase gebeuren.

1262
01:08:35.330 --> 01:08:40.670
Ik denk wel dat het niet echt een goed antwoord is op wat nu de juiste tool is.

1263
01:08:41.490 --> 01:08:45.970
Kijk, als je bijvoorbeeld keihard op die Azure stack en je zit al in de cloud.

1264
01:08:46.150 --> 01:08:47.610
En je hebt Azure DevOps in de cloud.

1265
01:08:48.430 --> 01:08:54.430
Dan zou ik zelf niet zo goed snappen waarom je dan een andere pipeline zou pakken dan die van Azure.

1266
01:08:55.690 --> 01:08:58.450
Wij zitten nu op GitLab bij KB.

1267
01:08:58.950 --> 01:09:00.550
Of Koninklijke Bibliotheek.

1268
01:09:00.870 --> 01:09:04.050
Omdat ze dat on-premise hebben draaien.

1269
01:09:04.210 --> 01:09:05.610
En daar doen we alles in jeml.

1270
01:09:06.430 --> 01:09:10.630
Ik doe de website van mijn werkgever.

1271
01:09:12.630 --> 01:09:13.690
En dat doe ik dan.

1272
01:09:14.250 --> 01:09:17.470
Ik heb de repository in GitLab.

1273
01:09:17.810 --> 01:09:20.270
Maar de deployments heb ik in Netlify.

1274
01:09:20.890 --> 01:09:25.330
Omdat ik gewoon niet, hoe noemen we dat, bothered wil zijn met het deployment.

1275
01:09:25.630 --> 01:09:30.190
En je krijgt automatisch preview omgevingen op MergeRequest. Super simpel.

1276
01:09:31.090 --> 01:09:33.210
Tegenwoordig heb je StridePace.

1277
01:09:34.170 --> 01:09:36.450
Sorry, even toch een tussendoor vraag.

1278
01:09:36.630 --> 01:09:42.010
Dus je hebt wel in je repo van je website een Yammerfile die dan iets anders gebruikt?

1279
01:09:43.290 --> 01:09:44.390
Voor de Open People website.

1280
01:09:44.410 --> 01:09:45.710
Dus die website van mijn werkgever.

1281
01:09:46.850 --> 01:09:48.810
Daar hebben we gewoon een GitLab repository.

1282
01:09:49.450 --> 01:09:53.730
En eigenlijk het enige wat we doen is commit naar een preview branch.

1283
01:09:54.450 --> 01:09:58.690
En op basis van die preview branch maakt Netlify automatisch een preview omgeving.

1284
01:09:58.690 --> 01:10:01.590
De Canary deployments van GitLab.

1285
01:10:04.310 --> 01:10:12.030
Dit is specifiek, Netlify is echt een cloud platform voor front-end websites.

1286
01:10:12.910 --> 01:10:17.190
Die eigenlijk de hele meuk van deployments en integraties voor je weg neemt.

1287
01:10:17.810 --> 01:10:22.070
En voor 15 euro 5 websites, bedoel, waar praat je dan over?

1288
01:10:22.090 --> 01:10:25.230
Dus dan heb je geen, om even een concreet vraag te stellen.

1289
01:10:25.650 --> 01:10:27.830
Dus dan heb je geen CI pipeline bestandje?

1290
01:10:27.830 --> 01:10:28.450
Nee.

1291
01:10:29.190 --> 01:10:30.930
Want je werkt dus met die branches?

1292
01:10:31.130 --> 01:10:38.350
Ja, en je kan wel nog bijvoorbeeld even kiezen om zelf een pipeline te maken.

1293
01:10:38.570 --> 01:10:40.270
Waarbij je nog wat unit tests doet.

1294
01:10:40.470 --> 01:10:43.750
Of bijvoorbeeld een change log ergens naartoe published.

1295
01:10:44.930 --> 01:10:46.030
Maar het hoeft niet.

1296
01:10:46.970 --> 01:10:49.450
En ik denk dat als je bijvoorbeeld een team hebt.

1297
01:10:50.850 --> 01:10:56.230
Waarbij de verwassenheid op het gebied van vooral CID, maar CICD dan wat lager is.

1298
01:10:56.230 --> 01:11:00.870
En ook misschien de bereidwilligheid om zo'n tool te adopteren en lager is.

1299
01:11:01.030 --> 01:11:07.290
Dan denk ik dat een tool als Netlify of StridePace uitermate geschikt is.

1300
01:11:07.590 --> 01:11:12.750
Om ervoor te zorgen dat je als team niet zorgen hoeft te maken over dat operations gedeelte.

1301
01:11:14.270 --> 01:11:18.950
StridePace, daar kan je zelfs manage Kubernetes clusters in één keer alles deployment bij krijgen.

1302
01:11:21.250 --> 01:11:22.370
Ja, precies.

1303
01:11:22.370 --> 01:11:26.830
Maar ja, een beetje om weer terug te komen wat ik zei.

1304
01:11:26.950 --> 01:11:32.870
Ik denk niet dat er één passend antwoord is voor alle bedrijven.

1305
01:11:32.870 --> 01:11:34.430
Nee, dat weet ik zeker.

1306
01:11:34.430 --> 01:11:37.270
Behalve dan dat er dus, er is geen passend antwoord.

1307
01:11:37.750 --> 01:11:38.150
Nee, precies.

1308
01:11:38.150 --> 01:11:38.950
Dus context afhankelen.

1309
01:11:39.370 --> 01:11:40.230
Nee, maar goed die Jamal.

1310
01:11:40.530 --> 01:11:45.450
Kijk, dat is, er is ook sommige mensen die vinden dat helemaal niks.

1311
01:11:45.610 --> 01:11:47.650
Maar goed, alleen werkt het erbij.

1312
01:11:47.650 --> 01:11:54.850
En het is denk ik niet voor niks dat het best wel populair is, zeg maar, om in Jamal de beeldpipeline uit te drukken.

1313
01:11:54.890 --> 01:11:59.550
Want het is eigenlijk declaratief, zeg maar, om uit te leggen van, oké, wat moet je nu gaan doen?

1314
01:12:00.970 --> 01:12:08.030
En ja, er zullen, ja, blijkbaar in GitHub Actions heb je dan parcels die dan wat logica eruit kunnen halen.

1315
01:12:08.890 --> 01:12:13.250
En er zijn andere manieren, zeg maar, van beeld dat je eigenlijk gewoon, ja, gewoon code hebt waar je mee beeld.

1316
01:12:13.710 --> 01:12:19.650
En die, waar allerlei concepten in zitten, zoals, ja, weet ik veel, dingen uit kit halen.

1317
01:12:20.350 --> 01:12:26.470
Een versie ergens op plaatsen, beelden en, weet ik veel wel, allerlei fancy dingen die daar dan weer in zitten.

1318
01:12:26.510 --> 01:12:29.330
En dat daar misschien meer flexibiliteit in zit.

1319
01:12:29.410 --> 01:12:32.310
Ja, dat zal in bepaalde use cases heel erg goed aansluiten.

1320
01:12:33.270 --> 01:12:36.670
En bij anderen weer niet. Dus ja, het is wel weer, it depends, zoals altijd.

1321
01:12:37.710 --> 01:12:38.970
Nou, het was net Levi, hè?

1322
01:12:39.190 --> 01:12:40.450
Net Levi, ja.

1323
01:12:40.450 --> 01:12:45.670
En dat klinkt inderdaad als een CD-achtige tool dan, waarschijnlijk, of niet?

1324
01:12:46.230 --> 01:12:47.270
Het is niet zozeer, zie jij dan?

1325
01:12:47.270 --> 01:12:56.370
Ja, nou ja, kijk, als je, waar zij sterker zijn, is bijvoorbeeld dingen zoals Vue en Nuxt of Next en React en Angular.

1326
01:12:56.950 --> 01:12:59.790
En dan pomp je z'n applicatie erin en dan doen zij de beeld.

1327
01:12:59.950 --> 01:13:05.210
Nou ja, dat is dan, ja, NPM-beeld en dan, dat is niet echt heel moeilijk.

1328
01:13:05.210 --> 01:13:12.010
En wat dan gebeeld wordt, dat stoppen zij op een, in een container of op een server, ik weet niet precies wat ze doen.

1329
01:13:12.030 --> 01:13:13.390
Ja, dat klinkt als een CD dan.

1330
01:13:14.150 --> 01:13:19.750
Kijk, onze aflevering gaat over CI-CD, dus datgene wat jij dus nu beschrijft, dat klinkt meer in de CD-hoek.

1331
01:13:20.890 --> 01:13:25.750
Ja, ja, ja, ja, ja, maar tegelijkertijd, precies wat jij ook zegt, die NPM-run of zo, NPM-beeld.

1332
01:13:26.950 --> 01:13:28.310
Ja, die beeld ook gewoon.

1333
01:13:28.310 --> 01:13:29.090
Ja, ja.

1334
01:13:30.130 --> 01:13:31.530
Ze zitten toch wel weer samen.

1335
01:13:31.810 --> 01:13:32.950
Ja, dat ligt er aan de node.

1336
01:13:32.990 --> 01:13:34.150
Het is een node-yes-applicatie.

1337
01:13:34.270 --> 01:13:37.350
Er zit gewoon een script in, dat zegt wat we moeten gaan bouwen.

1338
01:13:38.190 --> 01:13:39.910
Dus dan zit het, en dan kun je ook lokaal draaien.

1339
01:13:40.030 --> 01:13:42.110
Dus dat is dan iets anders, zeg maar.

1340
01:13:42.250 --> 01:13:42.590
Ja, ja, ja, ja.

1341
01:13:42.610 --> 01:13:43.130
Oke, duidelijk.

1342
01:13:43.350 --> 01:13:45.550
Dus er is ook weer zo'n beetje een great graffiti.

1343
01:13:45.670 --> 01:13:46.450
Weer een great graffiti.

1344
01:13:46.610 --> 01:13:56.770
Ik denk wel dat het NCI-NCD is, maar ik denk dat als je CI echt goed wilt doen, dan denk ik wel dat je eigenlijk iets met testen moet doen en dat doen zij niet.

1345
01:13:56.910 --> 01:13:57.250
Nee.

1346
01:13:57.250 --> 01:14:04.110
Dus ik heb bijvoorbeeld in onze repo heb ik wel wat unit tests staan, die draaien zij niet

1347
01:14:04.110 --> 01:14:04.550
voor je.

1348
01:14:04.970 --> 01:14:08.150
Zij doen niet, oh effe eerst testen, oh dat werkt niet, ik ga het niet deployen.

1349
01:14:08.290 --> 01:14:11.650
Nee zij builden, pompen het naar een omgeving toe.

1350
01:14:11.690 --> 01:14:13.130
Dus tijdens de build doen ze niet de unit test.

1351
01:14:13.250 --> 01:14:14.250
Easy deployment.

1352
01:14:16.510 --> 01:14:17.890
Ja deployment as a service.

1353
01:14:20.710 --> 01:14:21.530
Oké, ja mooi.

1354
01:14:22.650 --> 01:14:26.190
Ik denk dat we ook wel redelijk, laten we even naar de tijd kijken.

1355
01:14:26.190 --> 01:14:33.310
Ja we zitten op een uur en een kwartier, al heel veel interessante dingen, wat mij opviel

1356
01:14:33.310 --> 01:14:37.650
dat we op een gegeven moment ook wel richting de AI-achtige dingen, weet je wel, dat is

1357
01:14:37.650 --> 01:14:38.370
op zich niet erg.

1358
01:14:38.390 --> 01:14:39.170
Dat kan je niet omheen hè?

1359
01:14:39.310 --> 01:14:41.090
Nee dat kan je echt niet meer omheen in deze tijd.

1360
01:14:42.830 --> 01:14:47.290
We hebben er volgens mij nog niet eens een aflevering AI gehad, dat is ook wel

1361
01:14:47.290 --> 01:14:47.670
bijzonder.

1362
01:14:48.190 --> 01:14:48.470
Oh niet meer?

1363
01:14:50.170 --> 01:14:54.350
Ja ik denk dat we daar echt niet omheen kunnen, ik vind het echt iets, ik had toevallig

1364
01:14:54.350 --> 01:14:58.450
vandaag met een collega van mij erover, het is heel lang zo geweest dat ik eigenlijk alles

1365
01:14:59.010 --> 01:15:02.990
wel redelijk wilde weten, zeg maar hoe werkt het nou, nou dat is vooral met programmeertalen,

1366
01:15:03.070 --> 01:15:06.910
met de cloud en ik wil graag weten wat zit er nou achter, dan hoef je niet een specialist

1367
01:15:06.910 --> 01:15:09.630
of zo te worden, maar dan in ieder geval wel een beetje het gevoel van hoe werkt

1368
01:15:09.630 --> 01:15:10.130
het.

1369
01:15:10.330 --> 01:15:14.830
Bij AI heb ik dat echt, ja dat was bij machine learning eigenlijk ook al, maar

1370
01:15:16.330 --> 01:15:21.990
bij generative AI heb ik dat helemaal losgelaten, ik weet echt niet, wat gebeurt hier nu?

1371
01:15:21.990 --> 01:15:26.630
Ik las laatst dat ze zelfs niet eens weten wat er nou eigenlijk gebeurt, zeg maar, hoe

1372
01:15:26.630 --> 01:15:32.710
komt chat GPT tot die tekst, dus wat er nou echt binnen, dus de routines die echt afvallen,

1373
01:15:33.010 --> 01:15:36.430
ze hebben gewoon nu nog, dat kan eigenlijk niemand ook bij open AI kunnen, ze kunnen

1374
01:15:36.430 --> 01:15:37.230
niet vertellen wat er gebeurt.

1375
01:15:37.390 --> 01:15:42.010
Dat is ook bij Bart ook, dat ze zeggen, ja we leren hem elke keer dat hij dingen

1376
01:15:42.010 --> 01:15:45.390
niet mag doen en dan kom je een week later terug en doet hij het alsnog.

1377
01:15:45.450 --> 01:15:48.250
Ja precies, weet jij alsof je je kind aan het opvoeden bent.

1378
01:15:48.250 --> 01:15:52.650
Ja, maar dat is eigenlijk wel, je traint en er zijn ook mensen die zeggen, het is eigenlijk

1379
01:15:52.650 --> 01:15:56.610
geen AI, dat is gewoon, je leert gewoon een trucje, je geeft gewoon heel veel dingen

1380
01:15:56.610 --> 01:15:59.890
en je zegt iedere keer, nee dit is het goede en dat is niet, en dan uiteindelijk komt

1381
01:15:59.890 --> 01:16:00.410
er iets uit.

1382
01:16:01.350 --> 01:16:05.110
Dat zijn we al jaren aan het doen toch, Google aan het trainen met are you a robot

1383
01:16:05.110 --> 01:16:11.310
en dan, nee dit is een trap, dit is een trap, ja precies, eigenlijk wel ja.

1384
01:16:11.530 --> 01:16:15.150
Ja al dat soort dingen, ik dacht wel dat zij dat gebruiken om hun algoritmes

1385
01:16:15.150 --> 01:16:15.650
te trainen hoor.

1386
01:16:15.770 --> 01:16:17.430
Ja dat is zo, dat klopt.

1387
01:16:17.430 --> 01:16:19.950
Dat zou stom zijn als ze het niet doen.

1388
01:16:20.490 --> 01:16:25.190
Overigens denk ik dat generative AI nog gevaarlijker is dan echte AI.

1389
01:16:25.670 --> 01:16:28.890
Ik bedoel als je domme AI beslissingen laat nemen dan.

1390
01:16:29.690 --> 01:16:34.070
Ja ik hoop niet dat dat gebeurt, het blijft volgens mij, je moet er nog steeds een

1391
01:16:34.070 --> 01:16:37.810
menselijk input, want als jullie het misschien ook wel eens gehoord hebben, dat hij kan

1392
01:16:37.810 --> 01:16:41.210
hallucineren zeg maar, hij kan gewoon echt dingen verzinnen die gewoon totaal niet

1393
01:16:41.210 --> 01:16:46.570
slaan op wat je hem gevraagd hebt en als je daar jouw, ja weet ik veel, een business

1394
01:16:46.570 --> 01:16:50.230
besluit op gaat baseren, ja automatisch en blind, ja dat wordt wel tricky.

1395
01:16:50.850 --> 01:16:54.530
Maar ja, marketeers, ja die vinden het fijn om te helpen, ze geven me een stuk

1396
01:16:54.530 --> 01:16:57.850
tekst, want dan, ja ik heb even een writer's block en dan heb je wel iets zeg maar.

1397
01:16:58.190 --> 01:17:02.210
Ja het is, we doen hetzelfde toch, ik bedoel wij rammen iets in op Google,

1398
01:17:02.690 --> 01:17:07.930
we kopiëren het van Stack Overflow, we filteren op Stack Overflow en dus ik

1399
01:17:07.930 --> 01:17:15.170
snap heel goed dat als jij in een sector zit waar je teksten moet schrijven,

1400
01:17:15.170 --> 01:17:21.530
dat het heel relaxed is om, het is makkelijker om vanuit een beetje een

1401
01:17:21.530 --> 01:17:27.030
rough draft iets te doen dan helemaal vanuit het niets, dat hebben wij ook.

1402
01:17:27.250 --> 01:17:34.750
Het is makkelijker om in een codebase, waar al, of in een codebase kleine

1403
01:17:34.750 --> 01:17:39.090
aanpassingen te maken dan eerst de hele board template op de hoest uit.

1404
01:17:39.090 --> 01:17:46.710
Ja dat zien we dus ook in de, in GitHub Actions, daar zag ik ook inderdaad

1405
01:17:46.710 --> 01:17:50.610
hele handige, hoe noem je ze dingen, van die template-achtige.

1406
01:17:50.610 --> 01:17:54.290
Ja het zijn workflows en die dingen heten Actions volgens mij.

1407
01:17:54.890 --> 01:18:00.690
Ja ik moet zeggen ik kom dus van GitLab CI en ik vind de syntax van

1408
01:18:00.690 --> 01:18:06.750
GitHub Actions wel vrij verbost ten opzichte van GitLab CI, GitLab CI is veel leaner,

1409
01:18:07.590 --> 01:18:09.970
maar GitHub Actions is wel flexibeler.

1410
01:18:10.190 --> 01:18:10.830
Ja precies.

1411
01:18:11.210 --> 01:18:16.250
Dus maar ik denk als instap dat GitLab CI makkelijker te doen, misschien is het ook

1412
01:18:16.250 --> 01:18:21.450
omdat ik tien jaar lang met GitLab CI heb gewerkt, maar ik ben ook bias.

1413
01:18:22.390 --> 01:18:26.530
Maar om nog even jouw vraag, jij zei in het begin van ja, moet je beginnen of niet of

1414
01:18:26.530 --> 01:18:31.110
wanneer moet je beginnen? Ik denk persoonlijke mening is gewoon zo snel mogelijk,

1415
01:18:32.030 --> 01:18:36.650
want het is een beetje hetzelfde als met test, dan kom je zo'n codebase en er zijn er

1416
01:18:36.650 --> 01:18:40.050
geen test en dan is het vaak altijd ja, we wilden meters maken, dus we hebben de test

1417
01:18:40.050 --> 01:18:46.510
laten zitten of iets dergelijks of ja, ik bedoel, we hebben altijd allemaal briljante

1418
01:18:46.510 --> 01:18:51.870
excuses waarom we geen test schrijven, maar uiteindelijk en dan komen we in de

1419
01:18:51.870 --> 01:18:55.710
situatie dat ze zeggen, ja nu, het is nu zoveel, we kan nooit al die tests schrijven,

1420
01:18:55.790 --> 01:18:58.770
terwijl ja, als je gewoon begint en dat is denk ik met CI ook, weet je,

1421
01:18:58.770 --> 01:19:05.570
je begint gewoon met een hele simpele pipeline die die linters, die Git hoeks anders draaien,

1422
01:19:05.570 --> 01:19:08.230
dat die ook nog even in de cloud gedraaid wordt, dan heb je in ieder

1423
01:19:08.230 --> 01:19:12.790
geval, dan komen we weer op, het is makkelijker om dan een extra job

1424
01:19:12.790 --> 01:19:16.190
daartussen te fietsen, die net weer iets meer doet, die unit test gedraaid,

1425
01:19:16.330 --> 01:19:20.850
om zo langzaam naar iets wat daadwerkelijk een deployment doet van die pipeline,

1426
01:19:21.510 --> 01:19:27.570
dan helemaal vanaf scratch dat op te gaan moeten zetten, dus ja.

1427
01:19:27.890 --> 01:19:34.030
Ik ben met je eens ook omdat hoe je in Git gaat werken, dat is rand voorwaarlijk

1428
01:19:34.030 --> 01:19:36.910
hoe je als team samen gaat werken, dus je kiest een branching strategie,

1429
01:19:37.030 --> 01:19:41.330
je kiest hoe je merge request gaat, of pull request gaat afhandelen,

1430
01:19:41.630 --> 01:19:44.570
wanneer je gaat deployen, dat zijn allemaal afspraken die je met je team moet maken,

1431
01:19:44.590 --> 01:19:49.750
hoe kan je beginnen met developpen voordat je afspraken hebt gemaakt over hoe je de

1432
01:19:49.750 --> 01:19:51.870
überhaupt software naar productie gaat werken?

1433
01:19:52.110 --> 01:19:57.750
Ja, en mensen die erbij komen, die zien, oh, er is een pipeline,

1434
01:19:58.950 --> 01:20:04.810
ik heb een stukje code gemaakt, ik voeg die test toe, het draait mee in de pipeline.

1435
01:20:05.970 --> 01:20:09.350
Terwijl als het er niet is, dan doen mensen het niet, want niemand doet het,

1436
01:20:09.630 --> 01:20:15.810
helemaal als je open source hebt natuurlijk, het is gewoon makkelijker, het nodigt uit,

1437
01:20:18.450 --> 01:20:20.170
dus wanneer moet je doen nu?

1438
01:20:20.990 --> 01:20:23.230
Ja, wacht er niet te lang mee, dat is eigenlijk je boodschap.

1439
01:20:23.370 --> 01:20:24.790
Ja, je kunt niet zonder.

1440
01:20:25.350 --> 01:20:29.670
Ja, maar die indruk heb ik wel, met elk project waar ik begin,

1441
01:20:30.630 --> 01:20:35.650
dan weet je, heel vaak als ik met testers die dan ook net leren programmeren,

1442
01:20:35.790 --> 01:20:38.530
die denken ook van nee, dat is toch allemaal niet nodig, die pipelines,

1443
01:20:40.710 --> 01:20:43.770
dat is al een brug te ver, want ze moeten überhaupt leren wat programmeren is,

1444
01:20:44.150 --> 01:20:48.910
maar ik merk wel in alles, ik begin een beetje een way of working te zijn,

1445
01:20:49.330 --> 01:20:51.450
bij mij in ieder geval, ik kan niet zonder.

1446
01:20:54.350 --> 01:20:55.810
Vroeger dacht je van ja, dan doe je dat toch al,

1447
01:20:55.890 --> 01:20:58.430
maar nu denk je van ja, als het in zo'n pipeline zit, hoef ik niet te onthouden,

1448
01:20:58.450 --> 01:21:00.910
ook gaat die project, ik moet dit doen, ik moet dit doen, ik moet dit doen.

1449
01:21:00.950 --> 01:21:02.890
Het is ook een stukje te op een taartjesvaart.

1450
01:21:05.450 --> 01:21:09.330
Als ik bash commando's vanuit een checklist, zit de copypasting naar m'n shell,

1451
01:21:09.410 --> 01:21:13.070
kan ik beter gewoon in de pipeline zitten, die dat...

1452
01:21:13.070 --> 01:21:15.750
Dat maakt je ook minder afhankelijk, want je zal net zien dat iemand

1453
01:21:15.750 --> 01:21:19.670
heeft drie keer zo'n deployment achter elkaar gedaan, om de week,

1454
01:21:20.010 --> 01:21:23.130
en dan na zes weken gaat die op vakantie en dan zit iedereen te kijken,

1455
01:21:23.190 --> 01:21:24.410
wat was het ook alweer?

1456
01:21:25.370 --> 01:21:28.430
Of hij moet dan documenteren en die documentatie is weer stuk.

1457
01:21:29.710 --> 01:21:30.450
Ja, dat werkt niet.

1458
01:21:30.470 --> 01:21:32.670
Het is net zoals je een docker image bouwt, weet je dat je een punt

1459
01:21:32.670 --> 01:21:35.970
erachter moet zetten voor de context en dat iemand het dan copieert zonder punt.

1460
01:21:36.350 --> 01:21:37.250
En dan denk ik, ja, het werkt niet.

1461
01:21:37.330 --> 01:21:39.070
Nou, ik wacht wat tot Henk terug is van z'n vakantie.

1462
01:21:39.250 --> 01:21:40.230
Zeker te wachten op die punt.

1463
01:21:41.430 --> 01:21:44.270
Hey, maar goed, ik stel voor dat we doorgaan naar de tips.

1464
01:21:44.570 --> 01:21:46.870
Dat is ons laatste onderdeel van deze podcast.

1465
01:21:47.850 --> 01:21:50.510
Nou, ik denk dat we het toch wel een paar hebben genoemd,

1466
01:21:50.590 --> 01:21:53.810
maar misschien kunnen we even een korte revue laten passeren.

1467
01:21:53.930 --> 01:21:55.730
Ik heb ook met jullie meegeschreven, een paar dingen.

1468
01:21:56.930 --> 01:22:01.630
Ik vond Rick, zo net begon je over GitHub Actions en ik heb ook wel eens meegewerkt.

1469
01:22:01.670 --> 01:22:03.750
Ik vond die ook wel een beetje noemenswaardig,

1470
01:22:03.850 --> 01:22:10.410
van mensen die nog nooit met GitHub überhaupt iets met pipelines gemaakt hebben.

1471
01:22:10.610 --> 01:22:14.050
Kijk er eens naar, want het is best wel een interessante theorie ook wat ze beschrijven.

1472
01:22:14.190 --> 01:22:16.230
Mooie documentatie, veel beschikbaar.

1473
01:22:17.670 --> 01:22:27.390
En wat je zegt, je hebt dus heel veel van modulair die Actions die gewoon veel vrij beschikbaar zijn,

1474
01:22:28.410 --> 01:22:30.610
waar je eigenlijk je pipeline mee op kan bouwen.

1475
01:22:32.210 --> 01:22:36.530
Laat je niet afschrikken, ook zeker als je met CI gaat beginnen.

1476
01:22:37.250 --> 01:22:41.490
Schrik niet van enorme jam op files, dus begin gewoon simpel.

1477
01:22:43.310 --> 01:22:47.810
GitHub heeft volgens mij ook gewoon die runners die je kan gebruiken.

1478
01:22:48.030 --> 01:22:51.930
Begin gewoon wat ik zeg, zo simpel mogelijk.

1479
01:22:52.210 --> 01:22:57.010
Ik moet wel zeggen, ik vind dat een beetje, stel dat je GitHub is,

1480
01:22:57.210 --> 01:23:02.010
want voor mij GitLab was eerder met, zeg maar, CI.

1481
01:23:02.010 --> 01:23:02.610
Intervierde pipeline.

1482
01:23:02.970 --> 01:23:07.110
Ja, dat was ook een beetje de filosofie toen van GitLab.

1483
01:23:07.250 --> 01:23:10.370
Ik heb met pijn in mijn hart afstand gedaan van GitLab,

1484
01:23:10.370 --> 01:23:17.270
maar het was denk ik vier of vijf keer zo duur ten opzichte van GitHub.

1485
01:23:18.230 --> 01:23:21.290
Dus op een gegeven moment, dus weet je, ik moest het ook allemaal verkopen.

1486
01:23:21.970 --> 01:23:26.530
Want ja, weet je, ik heb hier tien developers die hebben een licentie nodig.

1487
01:23:26.790 --> 01:23:30.570
Het kost of 50 euro de neus per jaar of het kost 150 euro de neus.

1488
01:23:30.730 --> 01:23:31.110
Ja, nee, precies.

1489
01:23:31.210 --> 01:23:35.850
Qua kosten, ja, dat is natuurlijk sowieso die discussie die ga je dan krijgen.

1490
01:23:35.890 --> 01:23:39.310
Ik vond het heel jammer, want ik was wel fan van GitLab.

1491
01:23:39.310 --> 01:23:41.350
Maar ook, zeg maar, want we hadden toen redelijk snel.

1492
01:23:41.510 --> 01:23:44.650
Ik denk dat het ook wel kon dat ze best wel vriendjes wilden zijn met Google,

1493
01:23:44.910 --> 01:23:49.310
dat ze Kubernetes, zeg maar, integratie hadden ze ook wel heel vroeg.

1494
01:23:49.450 --> 01:23:53.750
Ik dacht wel voordat het best wel hip was dat je gewoon dingen op kan spinnen,

1495
01:23:53.810 --> 01:23:59.850
dat je dus vanuit je feature branch een werkend omgeving kreeg en dan kom je even testen.

1496
01:23:59.910 --> 01:24:03.310
En als je dan goed begonnen had, een up klaar, strik je er omheen,

1497
01:24:04.110 --> 01:24:06.690
werd alles weggegooid en je kon weer doorgaan.

1498
01:24:06.690 --> 01:24:10.210
Dat waren de practices, daar waren ze best winst in mijn ogen, best snel bij.

1499
01:24:10.450 --> 01:24:14.910
Volgens mij zet GitLab zichzelf ook meer in de markt als fullstack DevOps platform.

1500
01:24:15.210 --> 01:24:17.730
Volgens mij was een filosofie from ID to deployment.

1501
01:24:18.470 --> 01:24:20.210
Ja, volgens mij dat zal het wel zijn, ja.

1502
01:24:21.950 --> 01:24:27.810
En GitLab, die zit in een kleiner deel, want het is gewoon een onderdeel van Microsoft.

1503
01:24:28.030 --> 01:24:32.210
Sinds het overgenomen is door Microsoft zie je wel dat ze echt enorme stappen hebben gemaakt.

1504
01:24:32.210 --> 01:24:40.850
In eenzelfde ecosysteem als GitLab proberen aan te bieden, tenminste zo zie ik het.

1505
01:24:42.030 --> 01:24:50.730
Ik krijg het idee dat GitHub op een gegeven moment met features achter GitLab aan het aanlopen was,

1506
01:24:50.890 --> 01:24:54.390
in plaats van dat het nu lijkt alsof we hier een enorme GitLab zitten te verkopen.

1507
01:24:54.830 --> 01:24:55.710
Ja, we hebben je aandelen.

1508
01:24:55.930 --> 01:25:00.510
Nee, maar dat gevoel had ik toen ook en ik vond het wel fijn dat GitLab er was,

1509
01:25:00.510 --> 01:25:04.070
om een beetje GitHub scherp, zo zag ik het, ze hielden GitHub gewoon scherp.

1510
01:25:05.090 --> 01:25:07.070
Dus dat heeft denk ik ons allemaal wel school.

1511
01:25:07.090 --> 01:25:09.930
Iedereen was wel een beetje bang toen GitHub werd overgenomen door Microsoft,

1512
01:25:10.110 --> 01:25:12.870
en ik denk dat het eigenlijk allemaal goed uitgepakt is als je kijkt.

1513
01:25:12.990 --> 01:25:13.750
Ja, dat denk ik wel.

1514
01:25:13.990 --> 01:25:21.110
En hetzelfde met Visual Studio Code natuurlijk, als je ziet hoeveel developers Visual Studio Code gebruiken.

1515
01:25:21.230 --> 01:25:26.270
Microsoft nu is echt wel anders, een ander beestje zeg maar dan dat het vroeger was.

1516
01:25:27.070 --> 01:25:32.030
Erik, heb jij nog, even los van alle nerdtalk die we tot nu toe hebben gedaan,

1517
01:25:32.150 --> 01:25:35.450
heb je nog andere boekseries, websites of andere tips?

1518
01:25:35.530 --> 01:25:41.530
Ik heb sowieso één boek dat ik altijd tegen iedereen zeg van dit boek moet je lezen,

1519
01:25:41.610 --> 01:25:45.530
en dat is Clean Code van Robert C. Martin.

1520
01:25:46.850 --> 01:25:50.690
Ja, het boek is denk ik uit de jaren 90, misschien begin 2000,

1521
01:25:51.150 --> 01:25:54.010
maar het is nog steeds super relevant.

1522
01:25:58.550 --> 01:26:00.730
Ook de YouTube filmpjes, die zijn ook heel tof.

1523
01:26:01.250 --> 01:26:06.250
Ik denk dat je daar heel veel, of tenminste ik heb er zelf heel veel uitgehaald en heel veel geleerd.

1524
01:26:08.530 --> 01:26:14.150
En ik ga nu niet jouw tips spoileren, maar ik zie een tip van jou staan.

1525
01:26:14.150 --> 01:26:21.910
Ik ben een tijdje terug met de kinderen zijn wij naar het Game Museum in Soetermeer geweest.

1526
01:26:22.370 --> 01:26:29.370
Nou dat is echt, je komt wel redelijk overprikkeld er vandaan,

1527
01:26:29.750 --> 01:26:42.490
maar het is echt een hal vol met eigenlijk alle computer games van de arcade games uit de jaren 80 tot aan gewoon nu zeg maar.

1528
01:26:43.390 --> 01:26:48.630
Tof. Super vet, maar je wordt wel helemaal simpel van de beepjes en de bliepjes, maar.

1529
01:26:49.110 --> 01:26:52.310
Maar is het ook echt een locatie, is het tijdelijk of is het echt?

1530
01:26:52.650 --> 01:26:56.710
Nee, volgens mij is het, ik weet niet waarom het museum heet, want het heeft vrij weinig met museum te maken.

1531
01:26:56.870 --> 01:27:02.870
Het is eigenlijk gewoon een enorme gamehal, je komt met je museumkaart ook niet binnen.

1532
01:27:07.890 --> 01:27:13.690
Maar je entry is volgens mij een slot van twee uur, misschien in dat kader een tip.

1533
01:27:14.190 --> 01:27:19.750
Wij gingen toen naar het laatste slot van de dag en toen waren we een half uurtje te vroeg, maar toen mochten we een half uurtje eerder naar beneden.

1534
01:27:20.570 --> 01:27:21.390
Goede tip trouwens.

1535
01:27:22.470 --> 01:27:30.330
Maar ja, het is wel echt zeker als je een beetje van arcade games houdt, maar je kan ook gewoon Dugun doen.

1536
01:27:31.610 --> 01:27:39.370
Oh, nice. Heel tof. Thanks voor de tip. Ja Gerard, ik heb ook even naar je geluisterd

1537
01:27:39.370 --> 01:27:45.490
in die zin. Of jij nog wat interessante tips had. Ik heb Netlify toch maar even opgeschreven.

1538
01:27:46.750 --> 01:27:53.730
Ja, dat lijkt mij wel. Die ken ik nog niet. Een goede tip. Ik zit al de hele tijd mijn hersenen

1539
01:27:53.730 --> 01:27:57.430
te breken over, je hebt nog een tegenhang van Netlify die ongeveer hetzelfde doet,

1540
01:27:57.430 --> 01:28:02.850
maar ik kan even niet op de naam komen. Versel. Versel, ja. Ik dacht anders lekker boeiend dat ik het

1541
01:28:02.850 --> 01:28:13.310
heb gezegd. Ik denk als je met een C zit. Als je begint als web developer en je wilt eigenlijk

1542
01:28:13.310 --> 01:28:16.950
gewoon een leuke front-end applicatie maken, je wilt wel code gebruiken, dus geen WordPress,

1543
01:28:17.110 --> 01:28:25.030
dan denk ik dat Netlify en Versel uitermate geschikt zijn om dat te doen. Voor iedereen die

1544
01:28:25.030 --> 01:28:31.810
leuk vindt op bijvoorbeeld met, ik zou zeggen doe lekker Nuxt met Vue. Dat is een aardige instap.

1545
01:28:32.850 --> 01:28:39.830
En dan GitLab, Netlify. Dan denk ik dat je met een beetje effort dat je binnen een maand iets

1546
01:28:39.830 --> 01:28:48.410
leuks online kan hebben. Als je dan een stapje verder wil, bijvoorbeeld iets met Kubernetes,

1547
01:28:48.410 --> 01:28:58.010
dan zijn er ook platforms zoals Stridebase die dan dat moeilijker van Kubernetes voor je weg

1548
01:28:58.770 --> 01:29:10.090
nemen. Sorry, Stridebase zeg je? Ja, Stridebase. En wat doet dat? Pace is het, P-A-C-E. Ja,

1549
01:29:10.130 --> 01:29:16.770
eigenlijk is het een beetje wat Versel en Netlify doen, maar dan met ops voor Kubernetes,

1550
01:29:16.770 --> 01:29:23.150
dus Managed Kubernetes Clusters, Inclusive Deployments. Volgens mij gaan ze binnenkort

1551
01:29:23.150 --> 01:29:30.110
GitOps doen. Dus dan hoef je eigenlijk alleen nog maar in je Git repository te zeggen,

1552
01:29:30.290 --> 01:29:36.410
nou dit is de image en dan whoep, dan flamt hij alles voor je de lucht in. Dus dat is wel

1553
01:29:36.410 --> 01:29:40.050
een leuke, ik weet niet helemaal of ze al volledig online zijn, dat is een start-up die

1554
01:29:40.050 --> 01:29:46.510
ik volg, dus hoog verwachten. Dank je wel, dank je wel. Heb je nog boekserie, websites of

1555
01:29:46.510 --> 01:29:49.970
andere tips? Ja, misschien dat ik toch wel een klein beetje nerdy blijf hoor. In het

1556
01:29:49.970 --> 01:29:54.810
begin hadden we het heel veel over kinderen, leren programmeren, dat soort dingen. En

1557
01:29:54.810 --> 01:30:00.450
laatst hebben wij, dat was wel met volwassen hoor, met Code People hebben we een hackathon

1558
01:30:00.450 --> 01:30:10.030
gedaan waarbij we robots in elkaar gingen zetten. En daar hebben we een robotje van

1559
01:30:10.030 --> 01:30:16.570
gebruikt, een circuitmess van gebruikt, een circuitmess bij een hoop, als je dat zou vernederlandse.

1560
01:30:17.250 --> 01:30:22.170
En ja, zij hebben eigenlijk heel veel Arduino bouwpakketten waarbij je bijvoorbeeld zelf een,

1561
01:30:23.170 --> 01:30:27.910
hoe noemen we dat, een home assistant in elkaar kan zetten of een radiografische auto. En

1562
01:30:27.910 --> 01:30:33.230
dan is het leuk dat je met je handen bezig kan zijn met de kinderen. Maar er is ook

1563
01:30:33.230 --> 01:30:37.570
een stukje programmeren bij en daar maken ze gebruik van, volgens mij de building blocks,

1564
01:30:37.570 --> 01:30:42.970
dat is eigenlijk een soort schilletje om zee heen, waarbij je gewoon blokjes in elkaar kan gooien en

1565
01:30:42.970 --> 01:30:48.710
dan krijg je werk in de kolen. Dat is geschikt voor kinderen van 11 jaar. Dus als je het leuk

1566
01:30:48.710 --> 01:30:54.650
vindt om wat met je kinderen samen te doen dan en iets met de techniek dan ja circuitmess is wel

1567
01:30:55.730 --> 01:31:01.990
voor de jongere kinderen. Wij hadden voor ons een zo'n lego boost. Ja, dat is ook heel

1568
01:31:01.990 --> 01:31:10.070
vet. De voorlopen van mindstorms, maar dan dus voor jongere kinderen. En dat is ook de nadeel

1569
01:31:10.070 --> 01:31:16.100
is wel eens met de tablet, maar dan heb je inderdaad ook gewoon wel de core principes van

1570
01:31:16.610 --> 01:31:21.570
het programmeren. Dus de building blocks, maar dan moet je die, dat zal bij jij uitlegd ook

1571
01:31:21.570 --> 01:31:28.550
zijn. Die robot moet je dan opdrachten laten uitvoeren. En dat is dan ook onderdeel van

1572
01:31:28.550 --> 01:31:33.630
bouwen. Dus op de tablet heb je de bouwinstructies en dan telkens bouw je een deel en dan laat je

1573
01:31:33.630 --> 01:31:39.130
die dan dat deel dat je gebouwd hebt opdrachten uitvoeren. Maar die zijn hier nog wel mindstorms

1574
01:31:39.130 --> 01:31:43.610
is het niet. Dat verloopt ze niet meer. Ik geloof dat boost ook gaat stoppen. Mindstorms

1575
01:31:43.610 --> 01:31:48.750
hebben we ook nog inderdaad want dat gaat stoppen. Dus we hebben toen dat zagen ook

1576
01:31:48.750 --> 01:31:58.510
nog snel een setje aangeschapt omdat het dat het wel echt echt heel leuk is. Ja,

1577
01:31:58.970 --> 01:32:04.190
maar die zijn trouwens ook niet te krijgen meer. Maar goed, wel een soort van integratie

1578
01:32:04.190 --> 01:32:11.210
was het allemaal onder support. Ik kon je ook met Java dan ook weer programmeren.

1579
01:32:11.530 --> 01:32:15.410
Oh nee, Java doe ik niet. Nee, doe ik niet. Snap ik heel goed. Als we het hebben over

1580
01:32:15.410 --> 01:32:22.210
Lego. Ik had ook nog een tipje. Ik zag toevallig iemand in een groepsjet. Blijkbaar een nieuwe

1581
01:32:22.210 --> 01:32:27.570
Lego Pac-Man arcade komt er of misschien ook wel uitgebracht. Dus dan moet ik even

1582
01:32:27.570 --> 01:32:33.030
checken. Maar dan kan je dus in een. Ik heb zelf ook zo'n zo'n Nintendo, zo fake Nintendo

1583
01:32:33.030 --> 01:32:38.230
natuurlijk Lego pakket een keer gekregen. Oh, die heb ik gezien. Ja, dus de NES, maar

1584
01:32:38.230 --> 01:32:43.390
van Lego. Ja, maar dan van Lego. Hij doet natuurlijk helemaal niks. Maar deze die volgens

1585
01:32:43.390 --> 01:32:47.670
mij zit daar ook echt Pac-Man in. Dus ja, dat is misschien wel tof. Als je echt

1586
01:32:47.670 --> 01:32:53.050
inderdaad van die oude games houdt. Ik had ook wel eens een keertje. Misschien

1587
01:32:53.050 --> 01:32:56.430
heb ik deze tip al eens eerder gedeeld, maar ik kwam een keer tegen een website

1588
01:32:56.430 --> 01:33:01.090
dat heette Review Pad en dan was ik nogal van onder de indruk, maar nog nooit echt

1589
01:33:01.090 --> 01:33:05.150
gebruikt. Die heb ik wel gedaan. Ja, heb ik wel gedaan. Ja. Oké, dan gaan we die

1590
01:33:05.150 --> 01:33:08.990
gauw stippen. Nee, maar ik mag hem twee keer tippen. Ja, Automated Code Reviews.

1591
01:33:09.010 --> 01:33:15.210
Wauw. Dus dat de AI misschien weet je wel, je gaat te helpen om de developers in

1592
01:33:15.210 --> 01:33:26.410
India. Dat is gewoon Review Farms. Ja, ik heb ook wel eens een tool. Ik heb

1593
01:33:26.410 --> 01:33:32.490
een tool die genereert release notes op basis van je tips. Oh, echt? Of die doet suggesties

1594
01:33:32.490 --> 01:33:39.230
voor je release notes op basis of de omschrijving van je pull requests. Maar ja, dat

1595
01:33:39.230 --> 01:33:44.950
heb ik nog nooit gebruikt. Oké, cool. En het laatste tipje was DependerBot, want

1596
01:33:44.950 --> 01:33:49.510
we hadden het net over GitHub Actions. Ik weet nog wel, toen ik nog bij Ahol

1597
01:33:49.510 --> 01:33:54.010
werkte, daar waren we DependerBot aan het onderzoeken en dat werkte erg goed

1598
01:33:54.010 --> 01:34:00.430
om insecure dependencies snel te detecteren. Uiteindelijk wat die deed was ook pull requests

1599
01:34:00.430 --> 01:34:05.570
maken. Dat is een plugin voor GitHub toch? Ja, want ik zie er wel eens voorbijkomen

1600
01:34:05.570 --> 01:34:10.630
dat zo'n bot voor je GitHub Actions is. Inderdaad. En dan doet hij automatisch pull

1601
01:34:10.630 --> 01:34:14.010
requests. Je zou zelfs kunnen accepteren gelijk, maar goed, dat is aan jezelf denk

1602
01:34:14.010 --> 01:34:17.670
ik. Hoe werkt dat dan? Dat vinkje ergens aan? Ja, het is echt zo simpel als een

1603
01:34:17.670 --> 01:34:21.340
vinkje aanzetten en dan doe je het voor de hele organisatie en dan is het klaar.

1604
01:34:21.840 --> 01:34:24.400
En dan krijg je pull requests en dan worden de developers heel erg irriterend.

1605
01:34:24.420 --> 01:34:28.360
Er wordt er niks mee gedeployed. Nee, precies. Als je dat wil voorkomen, dan zie je het eruit.

1606
01:34:28.600 --> 01:34:32.640
We hebben daar al een overwasp in de pipeline en dan eigenlijk het enige wat je ziet is

1607
01:34:34.120 --> 01:34:38.260
suppression, suppression, suppression. Precies, laten we het staan. Maar goed,

1608
01:34:38.360 --> 01:34:46.380
dat was het. Saber, heb jij nog? Ja, ik heb twee tips, jongen. De tweede is,

1609
01:34:47.220 --> 01:34:51.320
daar begin ik mee, het slaat nergens op hè. The end of local host, dat is echt

1610
01:34:51.320 --> 01:34:55.720
maar een blogpost van iemand en gaat erover, zeg maar, dat de ontwikkeldomgevingen,

1611
01:34:56.600 --> 01:35:01.480
ja nu draaien we alles. We gebruiken Git, we pullen zeg maar de code of we clone

1612
01:35:01.480 --> 01:35:05.740
een repository. We halen de code lokaal en gaan we op onze eigen ontwikkeldomgevingen lokaal

1613
01:35:05.740 --> 01:35:09.840
ontwikkelen. Maar dit is de beweging dat je dan alles gewoon in de cloud hebt draaien. Dus

1614
01:35:09.840 --> 01:35:16.500
je hebt volgens mij open telemetry, scaffold, dat zijn allemaal tools die dat ondersteunen.

1615
01:35:16.500 --> 01:35:22.600
Ja, van GitHub heb je Codespaces volgens mij, Microsoft heeft DevBoxes. Dus

1616
01:35:22.600 --> 01:35:26.500
ze zijn allemaal van dat soort dingen. Dus dan draai je eigenlijk alles in de cloud. En

1617
01:35:26.500 --> 01:35:31.260
daar krijg je ook andere dingen. Je kunt sneller zeg maar je spullen binnenhalen,

1618
01:35:31.340 --> 01:35:35.920
want alles draait daar toch al. En dat je ook wat meer samen deelt, zeg maar, in die

1619
01:35:36.840 --> 01:35:40.860
omgeving. En ook dat je gewoon een definitie hebt van oké dit is een ontwikkeldomgeving,

1620
01:35:41.000 --> 01:35:44.220
dit zijn alle tools die erop zitten. Druk op een knopje, je hebt er eentje bij,

1621
01:35:44.220 --> 01:35:48.060
een on-boarder van mensen gaat makkelijker. Er zijn altijd voordelen die je daarbij krijgt.

1622
01:35:50.320 --> 01:35:56.720
Maar goed, die blog posten die zet ik in show notes voorbij. En de serie Silo op Apple TV,

1623
01:35:57.280 --> 01:36:03.180
die dat is nu de derde aflevering is. Ja, dat boeit nu niet. Wanneer je het luistert,

1624
01:36:03.340 --> 01:36:05.840
maakt het natuurlijk niet uit. Maar die serie is gewoon leuk. Ik heb nu de derde aflevering

1625
01:36:06.520 --> 01:36:12.960
gekeken. Ja, ik heb de boeken niet gelezen, want ik lees nooit boeken. Waarom zou ik boeken

1626
01:36:12.960 --> 01:36:21.120
gelezen? Maar goed, stel de mensen die dit kennen, het is volgens mij een trilogie als boek.

1627
01:36:23.020 --> 01:36:28.440
Waar gaat het om? Is het in de toekomst? Nou, volgens mij speelt, het is een science fiction

1628
01:36:28.440 --> 01:36:31.060
film, ik wil niet zeggen dat het in de toekomst is, maar dit speelt zich volgens mij in de

1629
01:36:31.060 --> 01:36:35.500
toekomst af en het is heel mysterieus. Ze hebben een heel grote silo, zeg maar. Daar

1630
01:36:35.500 --> 01:36:42.560
leven heel veel mensen in en de buitenwereld is heel gevaarlijk. Je mag er niet uit,

1631
01:36:42.560 --> 01:36:46.300
want als je eruit gaat, dan is het afgelopen en dan ben je dood en et cetera. En dan hebben

1632
01:36:46.300 --> 01:36:55.180
ze wel ramen, mensen denken dat ze ramen hebben naar buiten toe. En via die ramen

1633
01:36:55.180 --> 01:36:59.940
zie je dat de wereld er niet zo heel leuk uitziet, zeg maar. Maar ja, dat weten we

1634
01:36:59.940 --> 01:37:04.220
dus niet, want je weet nog niet, is dat echt of is dat niet? En wie heeft die silo's

1635
01:37:04.220 --> 01:37:08.960
gemaakt? En er is 140 jaar geleden, volgens mij, is er een opstand geweest,

1636
01:37:08.960 --> 01:37:16.440
heel rellen en de bad guys zijn overwonnen. Nou, het is echt wel best een leuke, nee,

1637
01:37:16.500 --> 01:37:19.000
niet best leuk, het is gewoon een hele leuke serie, echt wel heel goede acteurs ook.

1638
01:37:20.540 --> 01:37:29.740
Nou goed, dat is mijn tip. Oké, nice. Daar moet je mee doen. Ja, oké. Het moet ineens denken

1639
01:37:29.740 --> 01:37:34.040
aan een serie op Netflix, waar je ook, ik weet niet of het Netflix was, maar er was een serie

1640
01:37:34.040 --> 01:37:38.880
waar je dus ook een groep mensen in een bubbel leefde, dus echt letterlijk. Ja,

1641
01:37:38.880 --> 01:37:42.680
dat kan. Ja, moet even de titel even opzoeken, ik zat al te googelen, maar dan leek het een

1642
01:37:42.680 --> 01:37:48.820
beetje op. Is het niet The 100? Ja, dat is hem, de serie 100. Ja, dan lijkt het een beetje op.

1643
01:37:49.180 --> 01:37:53.020
Ja, die was vol corona zeg maar. Ik denk dat dit ook al een beetje ingegeven wordt door corona,

1644
01:37:53.240 --> 01:37:57.660
van oké, je zit ergens in en je mag niet naar buiten en iemand anders bepaalt voor je.

1645
01:37:57.780 --> 01:38:02.080
Weet je, ik denk dat dat ook een beetje ingegeven is, doordat we allerlei maatregelen

1646
01:38:02.760 --> 01:38:07.700
tijdens corona hebben gehad en dat mensen zich dan allemaal een beetje gekneefeld hebben gevoeld.

1647
01:38:07.900 --> 01:38:12.520
Maar goed, die science fiction boeken waren natuurlijk al veel eerder. Ja, dat is ook zo.

1648
01:38:14.720 --> 01:38:21.300
Nou goed, ja, dan gaan we afronden. Dat was hem weer voor vandaag. Rick, Gerard,

1649
01:38:21.400 --> 01:38:26.740
hartstikke bedankt voor jullie tijd. Ik denk dat we een hele leuke aflevering hebben gemaakt dat

1650
01:38:26.740 --> 01:38:32.580
over CI en CD ging en DevOps een klein stukje. We hebben het ook veel over AI toch uiteindelijk

1651
01:38:32.580 --> 01:38:36.220
gehad. Dat was uiteindelijk gewoon een beetje natuurlijk ontstaan, maar altijd leuk om weer

1652
01:38:36.220 --> 01:38:41.280
over te hebben. Niemand weet of wij dat nu hebben gezegd of dat het gegeneerde is. Ja,

1653
01:38:41.360 --> 01:38:46.980
wie weet. Misschien zijn we allemaal, ja, zit mijn bot hier nu. Even kijken. Maar goed,

1654
01:38:47.220 --> 01:38:50.020
ja, in ieder geval nogmaals bedankt en natuurlijk ook onze luisteraars voor het

1655
01:38:50.760 --> 01:38:56.720
luisteren. Hey, Rick en Gerard, hoe zouden de luisteraars jullie eventueel kunnen vinden

1656
01:38:56.720 --> 01:39:03.200
op het grote internet? Google. Google. Rick de Groot. Ja, dan vindt hij heel veel hits,

1657
01:39:03.200 --> 01:39:10.180
denk ik. Mocht je daar behoefte aan hebben, wat ik sterk betwijfel, maar dan kun je mij

1658
01:39:10.180 --> 01:39:17.300
vinden op rickdegroot.io en vanuit daar kun je de rest wel vinden. Niet heel up to date,

1659
01:39:17.360 --> 01:39:21.780
maar het is in ieder geval een entry point. Ja, precies. Je hebt in ieder geval een API waar

1660
01:39:21.780 --> 01:39:28.120
we mee kunnen. Nou, sorry. Ja, ik denk dat ik doe een poging om zo goed mogelijk onvindbaar

1661
01:39:28.120 --> 01:39:33.620
te blijven op internet, behalve op LinkedIn. Daar doe ik wel een poging om een of twee

1662
01:39:33.620 --> 01:39:38.040
keer per week iets leuks over software development te plaatsen. Dus als je mijn naam Gerard van

1663
01:39:38.040 --> 01:39:43.000
Engelen op LinkedIn zoekt, dan kun je me wel vinden. Maar in ieder geval gelukt.

1664
01:39:43.720 --> 01:39:47.980
Ja, dat klopt. Wat misschien wel grappig is, als je überhaupt iets over mensen wilt

1665
01:39:47.980 --> 01:39:54.920
vinden, dan moet je eerst naar delver.nl gaan. Delver is met ph en dat is toevallig

1666
01:39:54.920 --> 01:40:02.280
een website van de Koninklijke Bibliotheek, die eigenlijk alle digitale teksten van de

1667
01:40:02.280 --> 01:40:05.380
Koninklijke Bibliotheek ontsluit. Dus als je daar naartoe gaat en je zoekt op je eigen

1668
01:40:05.380 --> 01:40:11.700
naam en je hebt een keer ergens in de krant gestaan, dan kan het zijn dat daar

1669
01:40:12.980 --> 01:40:20.880
een krantartikel over naar voren komt. Nou, nul hits. Vijf minutes, no way dat die mij

1670
01:40:20.880 --> 01:40:27.900
hoort. Ja, we hebben al vrij nauwkeurig te googlen na. Ja, dat is wel grappig.

1671
01:40:29.500 --> 01:40:33.260
Nou, goed joh, dank je wel weer. Nou, toch weer. Wederom weer een tip, thanks.

1672
01:40:34.840 --> 01:40:41.360
Oké, nou ja, nogmaals bedankt allemaal voor het luisteren. Ja, dit was de CodeKlets

1673
01:40:41.360 --> 01:40:49.500
podcast over de CI-CD aflevering en alle relevante informatie over CodeKlets kun

1674
01:40:49.500 --> 01:40:54.040
jullie natuurlijk vinden op codeklets.nl. En ja, we gaan natuurlijk ons best doen om

1675
01:40:54.040 --> 01:40:59.060
de volgende aflevering heel snel weer op te nemen en weer naar jullie toe te sturen.

1676
01:40:59.780 --> 01:41:02.860
Nee, toe te sturen is een beetje onzin, hè? Dat doen we niet. O nee, dat doen we met

1677
01:41:02.860 --> 01:41:06.000
continuous delivery, toch? Met CD's. Ja, zeker. Ja, als je het nou gepost hebt,

1678
01:41:06.160 --> 01:41:09.260
is het gewoon delivered. Ja, precies, precies. Druk op een knop.

1679
01:41:09.260 --> 01:41:11.360
Hé, tot de volgende weer. Om het belletje in Spotify.

1680
01:41:11.760 --> 01:41:14.920
Oh ja, dat zou ook nog kunnen, ja. Later. Later.
