1
00:00:01,080 --> 00:00:03,000
Speaker 1: How'd you like to listen to dot net rocks with

2
00:00:03,040 --> 00:00:07,879
no ads? Easy? Become a patron for just five dollars

3
00:00:07,919 --> 00:00:10,800
a month. You get access to a private RSS feed

4
00:00:10,839 --> 00:00:14,240
where all the shows have no ads. Twenty dollars a month,

5
00:00:14,279 --> 00:00:16,879
we'll get you that and a special dot net Rocks

6
00:00:16,960 --> 00:00:21,000
patron mug. Sign up now at Patreon dot dot NetRocks

7
00:00:21,120 --> 00:00:37,600
dot com. Welcome back to dot net Rocks, the Internet

8
00:00:37,640 --> 00:00:40,920
audio talkshow for dot net developers. Remember that tagline rich.

9
00:00:40,960 --> 00:00:42,479
Speaker 2: Yeah, because we're not clever enough to come up the

10
00:00:42,520 --> 00:00:44,880
word podcast, Well we.

11
00:00:44,679 --> 00:00:48,520
Speaker 1: Were two years before that word could have thought of

12
00:00:48,560 --> 00:00:52,200
the word yeah. I'm Carl Franklin, and I'm Richard Campbell,

13
00:00:52,240 --> 00:00:53,840
Gary You and Park is here with us. We're gonna

14
00:00:53,880 --> 00:00:56,600
be talking to him in a minute. But first, Richard, Hello,

15
00:00:57,000 --> 00:00:57,920
where the heck are you?

16
00:00:58,600 --> 00:01:01,679
Speaker 2: I am at build stuff in Vilnius, Lithuania.

17
00:01:01,759 --> 00:01:02,039
Speaker 1: Wow.

18
00:01:02,240 --> 00:01:05,879
Speaker 2: Yeah, cool? Last week I was in Brisbane, Australia, So

19
00:01:05,959 --> 00:01:07,640
I do not know what time it is?

20
00:01:08,719 --> 00:01:11,280
Speaker 1: Your uh? Your wife doesn't like you hanging around the

21
00:01:11,280 --> 00:01:13,200
house too long, does she look?

22
00:01:13,200 --> 00:01:15,159
Speaker 2: I'm good for about three weeks, right, and by somewhere

23
00:01:15,159 --> 00:01:16,719
else three weeks She's like, don't you have somewhere to

24
00:01:16,760 --> 00:01:21,400
go now. No, she was with me in Australia. We

25
00:01:21,439 --> 00:01:23,760
did a month in New Zealand, Australia with the new

26
00:01:23,840 --> 00:01:25,040
grand baby with a family.

27
00:01:25,120 --> 00:01:25,319
Speaker 3: Yeah.

28
00:01:25,400 --> 00:01:27,599
Speaker 2: Yeah, yeah. She went from seven months old to eight

29
00:01:27,640 --> 00:01:30,359
months old. We're on the road and when we left

30
00:01:30,400 --> 00:01:32,799
with her, she could just sit up and she had

31
00:01:32,799 --> 00:01:35,480
do a little teth in the bottom. There's cool. And

32
00:01:35,519 --> 00:01:37,719
by the end of the month she's got two up

33
00:01:37,799 --> 00:01:40,959
and down and she's starting to crawl and she's pulling

34
00:01:40,959 --> 00:01:44,959
herself to her feet. Like you forget how fast babies grow.

35
00:01:45,079 --> 00:01:45,760
It's done.

36
00:01:45,879 --> 00:01:48,280
Speaker 1: My grand baby is two years old and she's actually

37
00:01:48,400 --> 00:01:49,239
visiting right now.

38
00:01:49,319 --> 00:01:50,120
Speaker 2: Oh that's awesome.

39
00:01:50,519 --> 00:01:52,519
Speaker 1: They came up for Thanksgiving weekend.

40
00:01:52,920 --> 00:01:55,400
Speaker 2: I'm digging this grandparenting thing. Man, this is fun.

41
00:01:55,640 --> 00:02:00,799
Speaker 1: Enough grandparent chit chat. Let's talk about what happened in

42
00:02:00,879 --> 00:02:04,719
nineteen eighty because this is episode nineteen eighty twenty more

43
00:02:04,760 --> 00:02:11,360
episodes and we've got we're now teenagers. Yes, that's right, thirteen,

44
00:02:11,520 --> 00:02:16,000
I think. Yeah, so let's talk about it. Okay, Well,

45
00:02:16,039 --> 00:02:20,879
this is the year that pac Man debuted. Yeah you

46
00:02:20,919 --> 00:02:25,520
know that. Yeah, and CNN was launched, ye, and that

47
00:02:26,159 --> 00:02:29,639
kind of changed everybody's worldview and made it seem like

48
00:02:29,680 --> 00:02:31,000
the world was more dangerous.

49
00:02:32,039 --> 00:02:35,719
Speaker 2: Yeah, we could cave. Twenty four hour news, right, cable news. Yeah.

50
00:02:35,759 --> 00:02:38,639
Speaker 1: No, matter where the bad stuff happens, you'll know about it.

51
00:02:38,719 --> 00:02:38,960
Speaker 2: Yes.

52
00:02:40,039 --> 00:02:42,879
Speaker 1: Thirteenth Winter Olympics were held in Lake Placid, New York.

53
00:02:43,000 --> 00:02:48,360
Oh right, yeah, starting February thirteen. Let's see US grane embargo.

54
00:02:48,479 --> 00:02:51,919
On January fourth, Jimmy Carter announced the grain embargo against

55
00:02:51,919 --> 00:02:56,120
the USSR. Of course, the Iran hostage crisis read its

56
00:02:56,199 --> 00:03:00,919
ugly head. Let's see, there was an new Mexico State

57
00:03:00,960 --> 00:03:04,879
penitentiary riot Mount Saint Helen's. Everybody remembers that we had

58
00:03:04,960 --> 00:03:07,560
ash all the way over here in Connecticut on our

59
00:03:07,599 --> 00:03:08,919
cars from Mount Saint Helen.

60
00:03:09,240 --> 00:03:12,199
Speaker 2: Yeah, and we heard it up in Vancouver. It was

61
00:03:12,199 --> 00:03:13,080
this Sunday morning.

62
00:03:14,000 --> 00:03:16,360
Speaker 1: And that's all I'm gonna say. Because we've been getting

63
00:03:16,360 --> 00:03:19,919
some negative feedback show we say about how long it

64
00:03:19,960 --> 00:03:21,919
takes to get to our actual show.

65
00:03:22,000 --> 00:03:24,520
Speaker 2: So I'll wrap it up right here. Okay, but you

66
00:03:24,599 --> 00:03:28,120
can talk amazing. You didn't mention Lenin was killed in

67
00:03:28,280 --> 00:03:29,199
nineteen eighty though.

68
00:03:29,080 --> 00:03:32,159
Speaker 1: You know what, that's right, he was killed in oh Man.

69
00:03:32,479 --> 00:03:33,879
That was a hard day.

70
00:03:33,960 --> 00:03:34,680
Speaker 2: It was a bad day.

71
00:03:34,840 --> 00:03:36,919
Speaker 1: That was a bad day. And we don't mean you

72
00:03:36,919 --> 00:03:41,960
know lenin the leader. I mean John Lennon, of course, briefly,

73
00:03:42,039 --> 00:03:44,719
what you got for science and tech and all that.

74
00:03:45,120 --> 00:03:47,319
Speaker 2: On the space side, this is the year that Vorger

75
00:03:47,360 --> 00:03:49,439
one flies by Saturn, first time we get close up

76
00:03:49,439 --> 00:03:53,520
pictures of Saturn. This dose also well. The Russians are

77
00:03:53,520 --> 00:03:59,039
operating to Salute six space station in orbit and routinely

78
00:03:59,080 --> 00:04:01,680
supplying it and maintained it. This is the launch of

79
00:04:01,719 --> 00:04:05,000
the Solar Max satellite on Delta two rocket that immediately

80
00:04:05,039 --> 00:04:07,599
has attitude control failures after a couple of months of

81
00:04:07,639 --> 00:04:11,560
operations and will be repaired by this Space Shuttle challenger

82
00:04:11,599 --> 00:04:14,840
in a few years, because the Shuttle is well in development.

83
00:04:14,879 --> 00:04:18,079
In fact, Columbia has spent all of nineteen eighty in

84
00:04:18,199 --> 00:04:21,639
testing getting ready for its first flight in nineteen eighty one. Wow.

85
00:04:22,000 --> 00:04:24,279
On the computing side, this is the year that Jack

86
00:04:24,319 --> 00:04:28,319
Tramil unveils the VIC twenty, although it doesn't actually show

87
00:04:28,399 --> 00:04:30,720
up in the US until nineteen eighty one. In nineteen

88
00:04:30,720 --> 00:04:33,360
eighty it's released to Japan as the VIC one thousand

89
00:04:33,399 --> 00:04:37,079
and one with sixty five oh two processor five K

90
00:04:37,240 --> 00:04:39,800
of ram Because numbers are hard, although expandable to thirty

91
00:04:39,839 --> 00:04:43,360
two k and he also pays it was only about

92
00:04:43,399 --> 00:04:45,600
three hundred bucks. They sell two million of the things.

93
00:04:45,720 --> 00:04:48,000
It'll get replaced by the CC four course. But one

94
00:04:48,000 --> 00:04:49,839
of the key things he did is he got Scott

95
00:04:49,879 --> 00:04:53,399
Adams to port the Scott out of Adventures, five of

96
00:04:53,439 --> 00:04:55,879
them to the VIC twenty. Now with only five k RAM,

97
00:04:55,920 --> 00:04:57,720
there's no way to make those games running there, but

98
00:04:58,199 --> 00:05:01,959
the game would sload off a sixteen k ROM cartridge

99
00:05:02,120 --> 00:05:05,120
as you played it, so that the sworage was in

100
00:05:05,160 --> 00:05:07,639
the wrong cartridge. And they sell it makes one point

101
00:05:07,680 --> 00:05:10,519
five million just on those games. Wow. So and it

102
00:05:10,560 --> 00:05:13,279
comes to go very very quickly. Nineteen eighty also the

103
00:05:13,319 --> 00:05:16,680
year that Tim berners Lee builds a tool called Inquire,

104
00:05:17,199 --> 00:05:23,879
which is a network hypertext system. Hmmm yeah, okay, that'll

105
00:05:23,920 --> 00:05:27,439
never go anywhere, never go anywhere. Two more things. Seagate

106
00:05:27,480 --> 00:05:30,199
releases the ST five six, which is a five megabyte

107
00:05:30,240 --> 00:05:33,279
three and a half inch full height hard drive which

108
00:05:33,319 --> 00:05:37,079
I will make money from installing into the upcoming IBM

109
00:05:37,240 --> 00:05:40,240
PC which will be released next year. And this is

110
00:05:40,240 --> 00:05:44,120
also the year that a collaboration between deck Intel and

111
00:05:44,240 --> 00:05:47,600
Xerox comes up with the Ethernet Dix standard for ten

112
00:05:47,720 --> 00:05:51,879
megabit networking. Wow, this is at a time when every

113
00:05:51,879 --> 00:05:54,120
company had their own kind of networking, and so they

114
00:05:54,199 --> 00:05:55,680
try and create sentence on this, and so the I

115
00:05:55,759 --> 00:05:58,000
triple lee will start what do we know as the

116
00:05:58,160 --> 00:06:01,560
eight O two standard four lands. This is the beginning

117
00:06:01,639 --> 00:06:03,720
of all of that. And that's what I got.

118
00:06:03,920 --> 00:06:07,879
Speaker 1: Awesome, awesome, awesome, all right, Well let's get going with

119
00:06:08,000 --> 00:06:09,680
better no framework, roll the music?

120
00:06:09,800 --> 00:06:18,839
Speaker 2: Awesome? All right, man, what do you got?

121
00:06:18,959 --> 00:06:23,920
Speaker 1: Okay? This is a tool called uni get ui, which

122
00:06:24,000 --> 00:06:29,439
was formerly win get ui, and the main goal of

123
00:06:29,439 --> 00:06:32,160
the project is created an intuitive guy for the most

124
00:06:32,160 --> 00:06:36,839
common CLI package managers for Windows ten and eleven, such

125
00:06:36,879 --> 00:06:41,639
as wind get Scoop, Chocolate, pip, NPM, dot Net tool, PowerShell, Gallery,

126
00:06:41,680 --> 00:06:46,680
and moore. Check out the package manager compatibility table. So

127
00:06:46,959 --> 00:06:48,920
they like to say that it's kind of like a

128
00:06:49,079 --> 00:06:51,560
package manager manager package manager.

129
00:06:52,959 --> 00:06:55,319
Speaker 2: It's package manager inception.

130
00:06:55,600 --> 00:06:57,279
Speaker 1: But I thought that would be good because you know,

131
00:06:57,439 --> 00:07:00,319
mister Chocolady is here and yeah, it's kind of and

132
00:07:00,360 --> 00:07:02,720
it's kind of trending on GitHub right now. So kids

133
00:07:02,759 --> 00:07:03,240
met cool.

134
00:07:03,319 --> 00:07:04,120
Speaker 2: Yeah, who knew.

135
00:07:04,319 --> 00:07:08,000
Speaker 1: I don't find a need for this myself, but you know.

136
00:07:08,639 --> 00:07:10,480
Speaker 2: How many How often are you building machines?

137
00:07:10,920 --> 00:07:14,040
Speaker 1: Well, that's true, but there's a little but you know,

138
00:07:14,480 --> 00:07:19,360
there's package managers for NPM and and all of that

139
00:07:19,360 --> 00:07:22,439
stuff as well PowerShell galleries. Yeah, it goes beyond just

140
00:07:22,639 --> 00:07:26,680
you know, chocolatey and Windows. Anyway, that's what I got.

141
00:07:26,680 --> 00:07:28,759
Who's talking to us today, Richard.

142
00:07:28,839 --> 00:07:31,759
Speaker 2: Grabbing comment off show eighteen fifty nine when we did

143
00:07:31,800 --> 00:07:34,360
with one Gary, you and Park back in twenty twenty

144
00:07:34,360 --> 00:07:38,079
three talking about it. Oddly enough, chocolatey hey, and this

145
00:07:38,160 --> 00:07:40,480
common comes to us from Curtis who this is about

146
00:07:40,480 --> 00:07:42,839
a year ago, where he said, I'm maintaining most chocolate

147
00:07:42,959 --> 00:07:45,759
packages fairly easily. I spent about an hour a month

148
00:07:46,240 --> 00:07:50,399
managing patches that update the using the au tool, which

149
00:07:50,439 --> 00:07:56,079
is on the GitHub repository by Digital Coyote. The manual

150
00:07:56,120 --> 00:07:58,160
packages in that repo are is can really more time

151
00:07:58,199 --> 00:08:01,639
intensive though multipass, for instance cars booting up a Windows

152
00:08:01,720 --> 00:08:04,680
pro or enterprise system to build tests and deploy that package.

153
00:08:05,560 --> 00:08:07,560
On the note of using older dot net frameworks, it's

154
00:08:07,600 --> 00:08:09,439
one of the things we talked about back that show.

155
00:08:10,079 --> 00:08:12,120
I've seen time and again someone go into a new

156
00:08:12,120 --> 00:08:15,399
project to choose dot net four six two because quote

157
00:08:15,519 --> 00:08:20,040
it's stable, or quote we know it works. As recently

158
00:08:20,040 --> 00:08:22,439
as mid twenty twenty three, I see the same choices

159
00:08:22,480 --> 00:08:24,480
in new get packages as well, where a team will

160
00:08:24,560 --> 00:08:26,879
choose to stick with the deprecated version of a package

161
00:08:26,920 --> 00:08:32,159
because it's known to work. Upgraded projects to each LTS

162
00:08:32,200 --> 00:08:35,240
release since dot net core two point one without issues.

163
00:08:35,879 --> 00:08:39,320
That includes upgrading most dependencies on each release pretty through

164
00:08:39,360 --> 00:08:41,879
the release notes and weighing the risk benefit will almost

165
00:08:41,919 --> 00:08:45,679
always cause you to upgrade. The security fixes alone are

166
00:08:45,759 --> 00:08:49,799
usually worth any breaking changes in your app. Absolutely, that's

167
00:08:49,840 --> 00:08:53,320
good advice, Curtis. I'm not gonna argue a bit. Absolutely,

168
00:08:53,480 --> 00:08:55,840
you know it's worth getting moving on. And the new

169
00:08:56,440 --> 00:09:00,720
tools for actually checking compatibility guiding off four to six

170
00:09:00,919 --> 00:09:04,080
up to what it is now dot net ten, which

171
00:09:04,159 --> 00:09:07,960
is the latest LTS release, they're impressively good. They will

172
00:09:08,399 --> 00:09:10,360
not only tell you where you're gonna have problems, they

173
00:09:10,399 --> 00:09:13,200
will give you good instructions on what to do about it. Yep. So,

174
00:09:14,279 --> 00:09:18,639
with the exception of web forms and other obviously non ports,

175
00:09:18,720 --> 00:09:22,440
if you you a lot of apps apportable, even the

176
00:09:22,480 --> 00:09:26,080
wind forms from the win SDK really not really a

177
00:09:26,080 --> 00:09:28,440
breaking change anymore. They've done a pretty good job there,

178
00:09:28,919 --> 00:09:31,399
So Curtis, thank you so much your comment, and a

179
00:09:31,480 --> 00:09:33,039
copy of music cobuy is on its way to you.

180
00:09:33,039 --> 00:09:34,440
And if you'd like a copy of music, go buy.

181
00:09:34,440 --> 00:09:35,960
I write a cam on the website at dot net

182
00:09:36,039 --> 00:09:38,279
rocks dot com or on the facebooks. You publish every

183
00:09:38,279 --> 00:09:39,600
show there and if you comment there and I read

184
00:09:39,639 --> 00:09:41,639
in the show, will send you copy music Go buy.

185
00:09:41,799 --> 00:09:45,440
Speaker 1: Music to Code by track twenty three is halfway done. Nice,

186
00:09:45,480 --> 00:09:48,720
so I expect that to be published within the next

187
00:09:48,720 --> 00:09:53,000
couple of weeks, maybe by Christmas, because why wouldn't you

188
00:09:53,240 --> 00:09:56,480
get your favorite friends music to code buy for That's

189
00:09:56,480 --> 00:10:01,279
a great idea. Yeah. And also you mentioned web forms,

190
00:10:02,039 --> 00:10:05,399
the thing that just didn't move over to core, right, yep,

191
00:10:05,440 --> 00:10:08,519
this is this is the main focus of my consultancy

192
00:10:08,559 --> 00:10:12,279
now is doing dot net core you know, Blazer versions

193
00:10:12,320 --> 00:10:14,759
of old web forms apps.

194
00:10:14,440 --> 00:10:16,360
Speaker 2: Web forms apps. Yeah, I figured that'd be a path.

195
00:10:16,440 --> 00:10:17,480
Speaker 1: Yeah, absolutely.

196
00:10:17,519 --> 00:10:20,279
Speaker 2: And it's not that automatic either, is it like it's worked? No,

197
00:10:20,519 --> 00:10:22,159
you don't know, I mean, but it's good to do

198
00:10:22,200 --> 00:10:25,679
a rethink Jeff Fritz. Actually Fritz and friends had a

199
00:10:25,759 --> 00:10:29,840
library that had the same interfaces as the web forms things.

200
00:10:30,120 --> 00:10:31,919
But you end up with a lot of code that

201
00:10:32,000 --> 00:10:35,200
isn't modern and all that stuff. But yeah, yeah, the

202
00:10:35,279 --> 00:10:37,759
best thing to do is just start over use your

203
00:10:38,240 --> 00:10:42,480
business logic. Well, you have a template for what people want,

204
00:10:42,639 --> 00:10:44,559
you know that, but you also have a list of

205
00:10:44,559 --> 00:10:46,799
things that people are annoyed by. Yeah, so it's a

206
00:10:46,799 --> 00:10:49,759
great opportunity to rebuild and something makes them happier.

207
00:10:49,840 --> 00:10:52,559
Speaker 1: Yep, Okay, let's introduce Gary and bring them back on

208
00:10:52,600 --> 00:10:55,840
the show. Gary Ewan Park has over ten years experience,

209
00:10:55,919 --> 00:10:59,799
probably more like twelve thirteen fifteen now right, working as

210
00:10:59,840 --> 00:11:04,759
a developer on technologies such as ASPNAT, Windows Forms, WPF, Sharepoints,

211
00:11:04,799 --> 00:11:08,080
silver Light, and many others. Throughout his career, Gary has

212
00:11:08,080 --> 00:11:10,879
always looked to see how things can be automated, using

213
00:11:10,879 --> 00:11:13,000
the mantra that if you do the same thing more

214
00:11:13,039 --> 00:11:17,519
than twice, it's time for automation. In twenty seventeen, he

215
00:11:17,639 --> 00:11:22,159
was awarded a Microsoft MVP in Developer Technologies, and in

216
00:11:22,200 --> 00:11:25,440
twenty twenty one he was awarded a getthub Star. His

217
00:11:25,600 --> 00:11:29,240
day job has him working for Chocolatey Software Incorporated. In

218
00:11:29,279 --> 00:11:32,480
his spare time, Gary contributes a number of open source projects,

219
00:11:32,559 --> 00:11:37,639
including Chocolatey box Starter, cake Cake contrib, get version and

220
00:11:37,759 --> 00:11:38,799
get release manager.

221
00:11:39,159 --> 00:11:43,799
Speaker 2: So enough, there's a scene to those projects. There's scenes. Hmmm, yeah,

222
00:11:43,799 --> 00:11:46,200
there seems to be a theme there, Gary, that's weird.

223
00:11:46,559 --> 00:11:50,879
Speaker 3: Yeah, it's a long sorted history that's put it out.

224
00:11:50,720 --> 00:11:54,039
Speaker 1: Here, and we're funny, grateful.

225
00:11:54,480 --> 00:11:57,279
Speaker 2: We just had Mattias on talking about Cake as well,

226
00:11:57,360 --> 00:12:00,399
you know, like it's these are things that are part

227
00:12:00,399 --> 00:12:02,399
of our lives. I don't even think about him anymore.

228
00:12:02,440 --> 00:12:04,440
You just did the way that you build machines, the

229
00:12:04,480 --> 00:12:08,679
way that you deploy applications, it's stuff you got to do, right.

230
00:12:09,320 --> 00:12:11,080
This is the plumbing of software.

231
00:12:11,399 --> 00:12:13,840
Speaker 1: I first heard about Chocolate from Alan Stevens.

232
00:12:14,120 --> 00:12:15,399
Speaker 2: Yeah, yeah, he was.

233
00:12:15,639 --> 00:12:18,519
Speaker 1: He was gung ho on it. He was really ahead

234
00:12:18,519 --> 00:12:20,919
of his time in terms of, you know, embracing new

235
00:12:20,919 --> 00:12:25,240
technologies when it came out, and probably still is. I

236
00:12:25,240 --> 00:12:25,720
haven't talked to.

237
00:12:25,759 --> 00:12:27,759
Speaker 2: Him in a while, but yeah, been Well, so what

238
00:12:27,759 --> 00:12:28,440
have you been working on?

239
00:12:28,559 --> 00:12:29,279
Speaker 1: Friend?

240
00:12:30,480 --> 00:12:33,200
Speaker 3: We continue to be busy over here, to be honest,

241
00:12:33,240 --> 00:12:37,720
I mean we are. We're obviously we're a small team Chocolate,

242
00:12:37,840 --> 00:12:41,960
but we have been increasing our numbers Chocolate, and the

243
00:12:42,000 --> 00:12:44,840
requests keep coming in in terms of what people are

244
00:12:44,879 --> 00:12:47,600
looking for, So we are we are definitely kept busy.

245
00:12:48,279 --> 00:12:53,000
Literally yesterday or yesterday, I'm into today. We've just shipped

246
00:12:53,039 --> 00:12:56,480
new versions of four of our core products. So wow, yeah, no,

247
00:12:56,559 --> 00:13:01,080
we're busy. We're absolutely making progress.

248
00:13:01,440 --> 00:13:03,919
Speaker 1: Before you go on, we should probably define with chocolate

249
00:13:04,039 --> 00:13:06,519
as I know that everybody probably knows, but there might

250
00:13:06,559 --> 00:13:08,320
be a few people out there who are like, what,

251
00:13:09,159 --> 00:13:13,200
so chocolate is like new Get for Windows, right, if

252
00:13:13,200 --> 00:13:16,399
you think about it, that's way new Get chocolate.

253
00:13:16,519 --> 00:13:19,480
Speaker 3: Yeah, no, absolutely, that's yeah, yep, that's where it started.

254
00:13:19,519 --> 00:13:23,720
I mean Rob Reynolds, the original creator of Chocolatey, was

255
00:13:23,879 --> 00:13:27,799
very much making use of new Get to manage his

256
00:13:28,440 --> 00:13:31,240
project dependency, so you can actually install the libraries that

257
00:13:31,279 --> 00:13:34,639
you need for under coding against. But what he found was,

258
00:13:35,200 --> 00:13:37,240
and this is the story he'll tell the story himself,

259
00:13:37,240 --> 00:13:40,399
but he would go to his a friend's machine or

260
00:13:40,399 --> 00:13:42,480
a colleagues machine to help him do a pairing session,

261
00:13:42,879 --> 00:13:45,759
and the tools that he wanted weren't on that machine.

262
00:13:45,799 --> 00:13:48,559
So he wanted a simple way to get the tools

263
00:13:48,559 --> 00:13:50,919
that he wanted onto that machine so that he could

264
00:13:50,960 --> 00:13:53,840
aid with painting sessions. And he was using new Get

265
00:13:53,840 --> 00:13:55,879
and he looked at them board and said, well, if

266
00:13:55,919 --> 00:13:58,039
I can use new get to install libraries, then maybe

267
00:13:58,080 --> 00:14:02,200
I can use new get to install applications. So he

268
00:14:02,320 --> 00:14:07,600
took he started a project which Chocolate as a package manager.

269
00:14:07,679 --> 00:14:10,639
Originally started as a PowerShell project, so it was written

270
00:14:10,639 --> 00:14:14,600
in PowerShell scripted and PowerShell. The sole focus was to

271
00:14:14,720 --> 00:14:18,480
use the new get client libraries to install applications. And

272
00:14:18,519 --> 00:14:23,000
then as the project progressed, it morphed into a dot

273
00:14:23,080 --> 00:14:25,720
Net application and c sharp and it's been that way

274
00:14:25,759 --> 00:14:28,080
for quite a while now, and it continues to be

275
00:14:28,279 --> 00:14:33,960
a mechanism for installing applications onto your machine in a simple,

276
00:14:34,559 --> 00:14:36,919
maintainable and repeatable way. So that's kind of the aim

277
00:14:37,000 --> 00:14:39,720
of what Chocolate is. It's a Windows package manager.

278
00:14:40,799 --> 00:14:44,360
Speaker 2: Now there is a bunch of these. I mean, I

279
00:14:44,360 --> 00:14:46,480
don't put new Getting Chocolate in the same category, but

280
00:14:46,559 --> 00:14:50,360
I think wind get sits there certainly, Like how do

281
00:14:50,399 --> 00:14:52,240
you rationalize all of these? Geary?

282
00:14:53,480 --> 00:14:55,559
Speaker 3: So what it comes down to, and I've spoken to

283
00:14:55,559 --> 00:14:58,200
a few people at different conferences and et cetera about this.

284
00:14:58,600 --> 00:15:01,440
It comes down to it. It's choice. It's what is

285
00:15:01,480 --> 00:15:03,320
it you want to what is it you want to use,

286
00:15:03,360 --> 00:15:05,840
and how do you want to use it? So people

287
00:15:06,080 --> 00:15:08,759
quite often hear people say, oh, the Windows doesn't have

288
00:15:08,840 --> 00:15:12,440
a package package package management ecosystem. You look at Linux

289
00:15:12,480 --> 00:15:15,360
where they've got four or five six different package managers

290
00:15:15,360 --> 00:15:17,960
for installing things. But on the Windows side of the house,

291
00:15:17,960 --> 00:15:19,759
where we're getting to a point where we have quite

292
00:15:19,799 --> 00:15:22,639
a selection now. So there's chocolate E, there's wind Get

293
00:15:22,639 --> 00:15:27,639
that you spoke about, there's scoop, there's other alternatives that

294
00:15:27,759 --> 00:15:31,279
you can use to install tools nowadays, and there's things

295
00:15:31,320 --> 00:15:33,360
like dot Net Global tools that the kind of that's

296
00:15:33,399 --> 00:15:35,320
kind of changed the landscape in terms of how you

297
00:15:35,399 --> 00:15:40,000
get tools into your Windows machine or into your cic

298
00:15:40,159 --> 00:15:43,159
D pipeline, so you can use dot Net tool install

299
00:15:43,279 --> 00:15:46,360
now as well. So that's list. There is a plethora

300
00:15:46,559 --> 00:15:50,720
of options in the Windows ecosystem now for doing application

301
00:15:50,840 --> 00:15:55,440
management and we Chocolate are one of those, and we're

302
00:15:55,519 --> 00:16:00,879
aiming to make the one the Windows installation ecosystem as

303
00:16:00,879 --> 00:16:03,879
simple as possible, because it literally is. When you start

304
00:16:03,919 --> 00:16:08,039
digging into the differences between ms I installers and n

305
00:16:08,159 --> 00:16:11,639
s I, n s I S installers and ex s's

306
00:16:11,679 --> 00:16:14,279
a there's a multitude of them. So what we Chocolate

307
00:16:14,320 --> 00:16:17,759
are trying to do is make that landscape easier to maintain.

308
00:16:18,080 --> 00:16:21,440
Speaker 1: So you're mentioning some updates that you were that you're

309
00:16:21,480 --> 00:16:24,039
coming out with or having that with yep.

310
00:16:24,960 --> 00:16:30,679
Speaker 3: So the team shipped new product versions of so chocolate

311
00:16:30,759 --> 00:16:33,600
as a product has Chocolate ECLI. That's the one that

312
00:16:33,639 --> 00:16:36,519
most people might know about. It's the open source version

313
00:16:36,559 --> 00:16:40,919
of chocolate and people can download install that freely. Even

314
00:16:40,919 --> 00:16:43,919
in a commercial ecosystem, you can use Chocolate Cli. But

315
00:16:43,960 --> 00:16:46,919
we've also got other products that the commercial offerings that

316
00:16:46,960 --> 00:16:50,200
build on top of the Chocolate Cli. So there's new

317
00:16:50,240 --> 00:16:54,360
releases to the Chocolate License Extension, a system that we

318
00:16:54,399 --> 00:16:58,240
call Chocolate Agent, and also the Chocolate Gouy License Extension.

319
00:16:58,279 --> 00:17:00,840
So there was updates to four of our coreate going

320
00:17:00,840 --> 00:17:02,240
out the door yesterday and today.

321
00:17:02,279 --> 00:17:04,720
Speaker 1: Did you really just say chocolately and Guy in the

322
00:17:04,799 --> 00:17:06,559
same sense I did?

323
00:17:06,839 --> 00:17:11,920
Speaker 3: I did. So Chocolate Gouey is our offering for using

324
00:17:12,000 --> 00:17:16,640
chocolate but through a graphical user interface to Guy.

325
00:17:17,720 --> 00:17:20,759
Speaker 1: Similar to framework there correct.

326
00:17:20,480 --> 00:17:24,519
Speaker 3: So similar to win get UI. So Chocolate Gouey offers

327
00:17:25,160 --> 00:17:28,240
support for trust the Chocolate package manager, whereas what wouldn't

328
00:17:28,240 --> 00:17:32,119
get Ui is attempting to solve is as you mentioned,

329
00:17:32,200 --> 00:17:35,119
is the package manager managers. You know, the UI version

330
00:17:35,160 --> 00:17:37,599
of the package manager manager. So you might remember there

331
00:17:37,599 --> 00:17:41,039
was a system called one get which was a PowerShell

332
00:17:41,160 --> 00:17:44,799
version of a package manager manager, so it was driven

333
00:17:44,799 --> 00:17:48,000
from the command line, and when UI kind of sits

334
00:17:48,079 --> 00:17:52,720
above that obviously but allows the management of multiple package

335
00:17:52,759 --> 00:17:56,599
managers on Windows. So actually, I've been in I've had

336
00:17:56,640 --> 00:18:01,160
a longgoing issue with the maintainer of will get UI

337
00:18:01,240 --> 00:18:06,160
to try and improve the traffic support and UNI get UI.

338
00:18:06,920 --> 00:18:10,160
So it's a it's a great offering and we've actually

339
00:18:10,160 --> 00:18:11,920
I've tried to have that conversation with him to improve

340
00:18:11,920 --> 00:18:14,480
that support. But yeah, it's been working well.

341
00:18:14,559 --> 00:18:16,880
Speaker 1: So I wonder when it's going to be before we

342
00:18:16,920 --> 00:18:19,079
find package manager manager managers.

343
00:18:20,440 --> 00:18:24,359
Speaker 3: It's good maybe hopefully, hopefully I will be happily retired

344
00:18:24,440 --> 00:18:27,079
before that, but before that comes about get to.

345
00:18:26,960 --> 00:18:28,880
Speaker 2: The third order. This is exactly this.

346
00:18:29,119 --> 00:18:32,160
Speaker 1: It's sort of the reflects the corporate order of things,

347
00:18:32,200 --> 00:18:34,759
doesn't it. Yeah, it's not a good thing. I think

348
00:18:34,759 --> 00:18:37,839
it's too much, too much. Can we all just get

349
00:18:37,880 --> 00:18:39,039
along really nice?

350
00:18:39,400 --> 00:18:42,599
Speaker 2: Indeed, are you finding folks using chocolate for setting up

351
00:18:42,680 --> 00:18:44,559
vms in the cloud these days as well?

352
00:18:44,759 --> 00:18:47,359
Speaker 3: Yeah, I mean that's definitely that's definitely a use case

353
00:18:47,400 --> 00:18:51,319
that we have heard of. Yes, there's it's the same

354
00:18:51,359 --> 00:18:53,920
with whether it's a physical machine, whether it's a VM,

355
00:18:54,039 --> 00:18:59,200
whether it's something else. There's always any to install the

356
00:18:59,240 --> 00:19:03,359
applications that you need. And obviously the first approach that

357
00:19:03,440 --> 00:19:06,000
you might use is to download it from the website,

358
00:19:06,039 --> 00:19:08,720
double click on a click, click a click through the installers.

359
00:19:09,680 --> 00:19:12,079
But it gets to the point where that's if you're

360
00:19:12,119 --> 00:19:14,119
doing that over and over and over again, you're you're

361
00:19:14,160 --> 00:19:17,559
looking for a way to automate that process and trying

362
00:19:17,599 --> 00:19:21,640
to take that try to make that entry point that

363
00:19:21,720 --> 00:19:24,000
bit easier by a single command to get all that

364
00:19:24,039 --> 00:19:28,119
applications installed. That's the niche that Chocolate is trying to serve. So,

365
00:19:28,400 --> 00:19:32,079
whether it's a physical device on your locally, whether it's

366
00:19:32,119 --> 00:19:36,680
in the cloud, that are mechanisms to install and use Chocolate.

367
00:19:37,319 --> 00:19:39,839
And then the natural progression of that is within a

368
00:19:39,880 --> 00:19:43,160
CICD pipeline as part of your build, you might need

369
00:19:43,240 --> 00:19:46,039
an application installed in order to perform the build. So

370
00:19:46,079 --> 00:19:49,319
whether it's a tool, whether it's something like get Version,

371
00:19:49,359 --> 00:19:51,440
whether it's something like get the lease Manager, you need

372
00:19:51,480 --> 00:19:56,759
that on the host agent in order to perform the build.

373
00:19:57,359 --> 00:19:59,880
If you look at the build agent that comes from

374
00:20:00,279 --> 00:20:04,640
Have Actions, Chocolate is already on the box. So if

375
00:20:04,680 --> 00:20:07,400
you need to perform an installation of an application as

376
00:20:07,480 --> 00:20:10,000
part of your build, you can just add a new

377
00:20:10,039 --> 00:20:13,559
step to your workflow, which is Choco install whatever the

378
00:20:13,599 --> 00:20:14,240
application is.

379
00:20:14,319 --> 00:20:17,079
Speaker 2: Yeah. Sure, so I could see this from the from

380
00:20:17,119 --> 00:20:19,359
an ARM template point of view saying Okay, I need

381
00:20:19,400 --> 00:20:21,759
to stand up this particular instance of a VM. I

382
00:20:21,799 --> 00:20:24,759
want this SOS on it, and then once that's in place,

383
00:20:24,920 --> 00:20:28,000
now I go into a get have actions they poke

384
00:20:28,119 --> 00:20:32,160
to this, do your Choco installs start? To me, it's

385
00:20:32,160 --> 00:20:34,920
all about repeatability, right like that, So every time I

386
00:20:35,039 --> 00:20:37,559
call this that VM is exactly correct.

387
00:20:37,599 --> 00:20:39,440
Speaker 3: So whether I say whether it's an ARM template or

388
00:20:39,480 --> 00:20:43,119
whether it's something else. Like even Cody and our team

389
00:20:43,200 --> 00:20:47,599
just now is looking to change our Packer builds to

390
00:20:47,720 --> 00:20:51,960
regenerate some based golden images that we use, So Chocolate

391
00:20:52,000 --> 00:20:54,519
is involved in that workflow as well. Packer defines what

392
00:20:54,640 --> 00:20:57,559
needs to be installed and we use chocolate to perform

393
00:20:57,599 --> 00:21:00,480
those actions. So that's definitely another mech and that we

394
00:21:00,519 --> 00:21:01,079
can go through.

395
00:21:01,319 --> 00:21:03,400
Speaker 1: If you have an exc that you want to always

396
00:21:03,440 --> 00:21:07,680
install in your Windows machine that only has a gooey installer.

397
00:21:07,799 --> 00:21:10,000
In other words, there is now command line switches or

398
00:21:10,000 --> 00:21:13,240
anything like that. Is that throw a roadblock up for Chocolate?

399
00:21:14,000 --> 00:21:16,920
Speaker 3: So yes and no, this is one of the what

400
00:21:17,440 --> 00:21:21,839
I mentioned before that the Windows installer landscape is vast.

401
00:21:22,079 --> 00:21:24,400
What you've described is just one of those. So the

402
00:21:24,799 --> 00:21:28,279
creator of that installer, that native installer, hasn't included the

403
00:21:28,279 --> 00:21:32,400
command line switches. So there is an immediate roadblock because essentially,

404
00:21:32,440 --> 00:21:34,839
what Chocolate is trying to do is it's trying to

405
00:21:34,880 --> 00:21:38,640
call out to just the ex to perform the installation.

406
00:21:38,759 --> 00:21:41,680
So if it can't toggle the command line switches, then

407
00:21:41,720 --> 00:21:45,519
there is a problem there. So what most package maintainers

408
00:21:45,559 --> 00:21:48,920
do in that scenario is they will introduce something like

409
00:21:49,319 --> 00:21:53,400
AutoIt or auto hockey. So they will have created an

410
00:21:53,400 --> 00:21:56,480
auto hockey script. So for those who don't know, hockey

411
00:21:56,640 --> 00:22:01,279
is essentially looking for triggers the Windows ecosystem. So whether

412
00:22:01,359 --> 00:22:05,200
it's a form opening or whether it's a button becoming visible,

413
00:22:05,279 --> 00:22:08,160
they will have created an auto hock key script that

414
00:22:08,599 --> 00:22:11,279
will then do the action of clicking the buttons on

415
00:22:11,279 --> 00:22:14,799
that native installer. So what the Chocolity package then looks

416
00:22:14,839 --> 00:22:19,279
like is the Chocolate package takes a dependency on auto hockey.

417
00:22:19,759 --> 00:22:23,240
So when Chocolatey comes along to install the first package,

418
00:22:23,519 --> 00:22:25,920
it needs to install the dependency, which is all Hockey.

419
00:22:26,440 --> 00:22:29,759
The script then says, run the auto hoockkey script and

420
00:22:29,839 --> 00:22:33,079
look for these Windows triggers, and then it performs the

421
00:22:33,119 --> 00:22:37,480
installation of your native installer. Auto hoot key kicks in,

422
00:22:37,640 --> 00:22:41,400
it clicks all the buttons, and then the application is

423
00:22:41,440 --> 00:22:44,720
then installed and the package is successfully installed after that.

424
00:22:44,759 --> 00:22:47,039
So there is a mechanism to do it. But where

425
00:22:47,039 --> 00:22:51,480
we get complaints source concerns is oh, where did this

426
00:22:51,519 --> 00:22:54,000
auto hoot key come from on my machine? So then

427
00:22:54,039 --> 00:22:56,000
we kind of have to explain that, Well, the native

428
00:22:56,000 --> 00:23:01,359
installer didn't handle a clean installation or a clean unattended installation,

429
00:23:01,839 --> 00:23:03,920
so you need to introduce something like a hockey to

430
00:23:03,920 --> 00:23:04,880
perform that operation.

431
00:23:05,039 --> 00:23:07,680
Speaker 1: It reminds me of when we used to do this

432
00:23:08,079 --> 00:23:13,960
crazy show called Monday's and Mark Miller introduced his new

433
00:23:14,039 --> 00:23:18,039
invention which was called the installed buddy. Okay, so basic

434
00:23:18,880 --> 00:23:21,359
next next finished is in the days where everything was

435
00:23:21,400 --> 00:23:26,200
a Windows installation and it would just click next, next, next, next, next, next, next,

436
00:23:26,279 --> 00:23:30,119
finish for you installed buddy.

437
00:23:30,559 --> 00:23:32,720
Speaker 2: It turns out it's a real thing. It's called auto

438
00:23:32,720 --> 00:23:33,920
hot key. That's funny.

439
00:23:33,920 --> 00:23:36,720
Speaker 3: It is the system is there. I mean it's it's

440
00:23:36,759 --> 00:23:40,039
a viable solution for the underlying problem, which is the

441
00:23:40,160 --> 00:23:43,720
native installer didn't have those plan line switches to make

442
00:23:43,759 --> 00:23:45,240
it an unattended installation.

443
00:23:45,400 --> 00:23:47,640
Speaker 2: I'm sure I imagine it's a little brittle if they've

444
00:23:47,720 --> 00:23:50,839
changed it install steps well absolutely, yeah, yeah, So.

445
00:23:50,839 --> 00:23:53,119
Speaker 3: What we do so as part of the so for

446
00:23:53,160 --> 00:23:55,880
those who don't know, we have a Trotholate community repository,

447
00:23:55,920 --> 00:23:58,319
which is where we host all of the Tropolic packages

448
00:23:58,359 --> 00:24:00,920
that the community maintains. One of the things that we

449
00:24:01,000 --> 00:24:04,440
do as part of that is the moderation process is

450
00:24:04,480 --> 00:24:07,279
we will and the cloud will spin up a VM

451
00:24:07,400 --> 00:24:11,359
to perform the installation to ensure that it actually installs correctly.

452
00:24:12,160 --> 00:24:16,480
So if something were to change and the autohockey script

453
00:24:16,519 --> 00:24:20,079
stopped working, then package verifier existing, which is when we

454
00:24:20,160 --> 00:24:22,039
run through and check to make sure that things are

455
00:24:22,039 --> 00:24:26,119
still installing correctly. It might ultimately fail and send a

456
00:24:26,160 --> 00:24:28,240
message to the maintainer to say that there's a problem.

457
00:24:29,000 --> 00:24:30,680
Those processes in place to help with that.

458
00:24:31,039 --> 00:24:34,240
Speaker 1: This might be a good application of some sort of

459
00:24:34,279 --> 00:24:38,720
AI thing that you know, can analyze the screen image

460
00:24:38,920 --> 00:24:41,759
of you know the installer and figure out and you

461
00:24:41,759 --> 00:24:44,160
can just tell it just you know, take select all

462
00:24:44,200 --> 00:24:48,079
the defaults and it would do that. I don't know,

463
00:24:48,440 --> 00:24:51,079
just thinking out loud, it'll be fifty bucks.

464
00:24:53,839 --> 00:24:57,839
Speaker 2: Well, I keep thinking about like Microsoft has the form recognizer,

465
00:24:57,920 --> 00:25:00,960
we will take pay per forms and generate them into

466
00:25:01,000 --> 00:25:03,680
code for you. Like we're just not that far away

467
00:25:03,680 --> 00:25:06,359
from saying, hey, just look at this dialogue and figure

468
00:25:06,400 --> 00:25:09,920
out what should happen next. Yeah. Really, you really could

469
00:25:10,079 --> 00:25:14,759
deeply automate that. So of course, if they the better

470
00:25:14,799 --> 00:25:19,920
thing is just give us the command line yes please, yes, please. Yeah.

471
00:25:20,000 --> 00:25:23,599
Speaker 3: I mean that's the for us from a package manager perspective,

472
00:25:23,599 --> 00:25:26,680
that's the ultimate, because then that is what is No

473
00:25:26,720 --> 00:25:29,839
one is repeatable, and it will continue to function the

474
00:25:29,880 --> 00:25:32,720
way that we expect it to unless that a breaking

475
00:25:32,799 --> 00:25:36,640
change in the installer or they switch installer technology, because

476
00:25:36,640 --> 00:25:40,279
that sometimes happens as well. An application might the underlying

477
00:25:40,279 --> 00:25:43,119
application doesn't change, but they might switch from a YSE

478
00:25:43,160 --> 00:25:47,160
installer to an MSI or something changes in the native installer.

479
00:25:47,279 --> 00:25:50,920
So that's where the package maintainer and the knowledge of

480
00:25:51,880 --> 00:25:54,440
what is possible, that's where the package maintainer's job really

481
00:25:54,519 --> 00:25:58,079
kicks in to help with keeping those packages install on

482
00:25:58,119 --> 00:25:58,759
correctly nice.

483
00:25:58,880 --> 00:26:04,200
Speaker 1: Are there any other sort of gotcha's or roadblocks besides

484
00:26:04,319 --> 00:26:10,000
the the UI only installer that you guys deal with gracefully.

485
00:26:10,640 --> 00:26:14,680
Speaker 3: So the one of the one of the hiccups that

486
00:26:14,720 --> 00:26:17,200
sometimes have happened from a package maintenance point of view,

487
00:26:17,400 --> 00:26:20,519
and it does cause problems for the package maintainers is

488
00:26:20,559 --> 00:26:23,160
knowing what those silent arguments are. So again it comes

489
00:26:23,200 --> 00:26:27,599
back to what is the underlying installer technology, because there

490
00:26:27,680 --> 00:26:30,799
is a standard set. If you like, it's if it's

491
00:26:30,839 --> 00:26:33,480
an MSI installer, these are the command line arguments, or

492
00:26:34,839 --> 00:26:37,519
if it's this install technology is these command line arguments

493
00:26:37,640 --> 00:26:41,880
or MSIs are actually sometimes better because they'll actually declare

494
00:26:41,920 --> 00:26:44,880
within their manifest file these are the available command line arguments,

495
00:26:44,880 --> 00:26:47,920
so you can pick which one you want to pass in.

496
00:26:49,319 --> 00:26:51,759
So when you first get started with package maint and

497
00:26:51,759 --> 00:26:54,240
then it's like, oh, I just want to install this thing,

498
00:26:54,440 --> 00:26:56,160
but then you kind of have to dig into that

499
00:26:56,240 --> 00:26:59,160
thing to understand how to manage it and how to

500
00:26:59,359 --> 00:27:01,839
install it. So one of the things that we do

501
00:27:01,920 --> 00:27:04,319
try to do and we provide this at the minute

502
00:27:04,440 --> 00:27:06,759
and one of some of the commercial offerings is we

503
00:27:06,839 --> 00:27:10,039
have a packaged builder, as we call it, so it

504
00:27:10,039 --> 00:27:13,519
will actually look at the underlying installer technology and make

505
00:27:13,559 --> 00:27:16,799
informed decisions about these are the sensible defaults for this

506
00:27:16,920 --> 00:27:21,119
application type. So it's one of the it's one of

507
00:27:21,119 --> 00:27:23,960
the features that we have been pushing within the team

508
00:27:24,079 --> 00:27:28,240
to if we can bring it down to some of

509
00:27:28,279 --> 00:27:31,480
the lower versions of Trocolate to make that package maintenance

510
00:27:31,519 --> 00:27:34,519
story a bit easier. Something we'd like to have for

511
00:27:34,680 --> 00:27:37,519
now that is a commercial only offering that we provide

512
00:27:37,680 --> 00:27:41,160
that sort of installer detection logic and helping with the

513
00:27:41,200 --> 00:27:42,400
provisioning of look packages.

514
00:27:42,400 --> 00:27:44,039
Speaker 1: All right, go one more question before we take a

515
00:27:44,039 --> 00:27:46,480
break here, and that is you know, sometimes we're installing

516
00:27:46,519 --> 00:27:50,680
something and you need administrator approval, and so your whole

517
00:27:50,720 --> 00:27:53,759
screen goes away and you get this dialogue box that

518
00:27:54,000 --> 00:27:56,440
can't be automated. As far as I know, you have

519
00:27:56,519 --> 00:27:59,759
to click the yes I approve button. Do you get

520
00:27:59,759 --> 00:28:03,359
around on that by like just running the install scripts

521
00:28:03,359 --> 00:28:06,160
in admin mode for example? I don't even know if

522
00:28:06,200 --> 00:28:08,079
that is enough to get rid of that.

523
00:28:09,440 --> 00:28:11,240
Speaker 3: From what you've described as one of the kind of

524
00:28:11,279 --> 00:28:15,759
the fundamental principles of how Chocolate operates. So I know

525
00:28:15,799 --> 00:28:17,880
that richer ops. That's going to go on when I

526
00:28:17,880 --> 00:28:20,960
start saying this, but I'm already quivering. Bear with me,

527
00:28:21,000 --> 00:28:24,440
doing a little bit right, Bear with me. So, Chocolate

528
00:28:24,519 --> 00:28:29,160
as a product by default does require to be installed

529
00:28:29,160 --> 00:28:32,200
by an administrator user, and it's installed to the c

530
00:28:32,359 --> 00:28:37,039
program data folder with those administrative permissions, and as a result,

531
00:28:37,200 --> 00:28:40,599
Chocolate Chocolate ex when it runs, needs to be running

532
00:28:40,640 --> 00:28:44,440
as administrator because at the end of the day, most applications,

533
00:28:44,599 --> 00:28:49,279
the most at least a significant proportion of the applications

534
00:28:49,279 --> 00:28:53,839
that you want to install need administrator rights because they

535
00:28:53,880 --> 00:28:56,079
might be installing to see program files folder, they might

536
00:28:56,079 --> 00:28:58,599
be adding registry entries, they might be lots of stuff

537
00:28:58,640 --> 00:29:03,920
that require admin permission. So way back when the decision

538
00:29:04,000 --> 00:29:07,240
was made that chocolate as a product would require administrator

539
00:29:07,319 --> 00:29:10,920
rights to run, and we have continued with that. Now

540
00:29:11,039 --> 00:29:12,960
to answer your next question that might flow on to

541
00:29:13,039 --> 00:29:15,440
that as well, how can I get other people within

542
00:29:15,480 --> 00:29:19,640
my organization that don't have administrator rights to perform package installations.

543
00:29:20,279 --> 00:29:22,839
That's where some of our other products, the likes of

544
00:29:23,200 --> 00:29:25,880
background Service kicks in. So that's a mechanism where we

545
00:29:25,920 --> 00:29:30,200
allow for a non administrator user to essentially request the

546
00:29:30,200 --> 00:29:33,319
installation of a package, and that package installation is performed

547
00:29:33,359 --> 00:29:36,839
by the background service that has those administrator rights. So

548
00:29:36,880 --> 00:29:40,880
you're getting almost like a self service scenario where you

549
00:29:40,880 --> 00:29:45,279
can say as a company, as an organization, I want

550
00:29:45,279 --> 00:29:48,440
to allow the installation of these packages. But then as

551
00:29:48,440 --> 00:29:50,000
a user, I can say, well, I want that one

552
00:29:50,039 --> 00:29:52,119
and I want that one, and I'll self provision those,

553
00:29:52,319 --> 00:29:54,160
so you kind of get the best of both worlds.

554
00:29:54,440 --> 00:29:57,359
But yes, it's an age old problem. And the decision

555
00:29:57,359 --> 00:30:01,000
that we chocolately made was that we would require administrator

556
00:30:01,119 --> 00:30:03,680
rights by default now.

557
00:30:03,640 --> 00:30:07,039
Speaker 1: So when you run under administrator rights, you don't get those.

558
00:30:08,319 --> 00:30:12,359
Speaker 3: Dialogue normal no no, no correct. So you're you're you're

559
00:30:13,200 --> 00:30:16,559
circumventing is the wrong word, but you're certainly side stepping

560
00:30:17,000 --> 00:30:20,640
the need for the those ucps because you're escalated.

561
00:30:22,039 --> 00:30:22,440
Speaker 2: Exactly.

562
00:30:22,559 --> 00:30:25,960
Speaker 3: Okay, good, Now that has its own problems, and that's

563
00:30:26,039 --> 00:30:28,240
kind of why I preempted the ops hack going on,

564
00:30:28,880 --> 00:30:33,079
because then you're got administrator right, so malicious actors could

565
00:30:33,079 --> 00:30:33,880
take advantage of.

566
00:30:33,799 --> 00:30:34,440
Speaker 1: That, exactly.

567
00:30:34,480 --> 00:30:36,319
Speaker 3: So that's there's all sorts of that we get into

568
00:30:36,720 --> 00:30:39,599
within the team, within the organization, we get we have

569
00:30:39,759 --> 00:30:42,559
lots of conversations along those lines as to whether this

570
00:30:42,799 --> 00:30:46,880
is security vulnerabilities, et cetera. So all sorts of conversations

571
00:30:47,039 --> 00:30:47,799
have along that.

572
00:30:47,960 --> 00:30:50,599
Speaker 1: Well, we're gonna we're going to have that conversation after

573
00:30:50,640 --> 00:30:53,559
the break carry so we'll be right back after these

574
00:30:53,680 --> 00:30:58,279
very important messages stick around. Do you have a complex

575
00:30:58,319 --> 00:31:00,839
dot net monolith you'd like to refactor to a micro

576
00:31:00,960 --> 00:31:05,359
services architecture? The micro Service Extractor for dot Net tool

577
00:31:05,519 --> 00:31:10,200
visualizes your app and helps progressively extract code into micro services.

578
00:31:10,559 --> 00:31:17,200
Learn more at aws dot Amazon dot com, slash Modernize.

579
00:31:18,880 --> 00:31:21,039
Speaker 2: And we're back. It's dot net Rocks. Amerger Campbell, Thatt's

580
00:31:21,039 --> 00:31:24,319
Carl Franklin. You talking to our friend Gary and Park

581
00:31:24,720 --> 00:31:27,920
a bit about the latest on the chocolatey side of things,

582
00:31:28,000 --> 00:31:30,960
you know, I mean, you know, I'm the run ass

583
00:31:31,000 --> 00:31:34,720
guy as well, and we certainly talk about install hacks

584
00:31:34,799 --> 00:31:36,920
like there is.

585
00:31:36,960 --> 00:31:38,759
Speaker 1: Like run as yeah there.

586
00:31:38,920 --> 00:31:43,079
Speaker 2: Well, there are exploiters that are smart enough now that

587
00:31:43,200 --> 00:31:45,799
they managed to get into a machine, recognize it, don't

588
00:31:46,240 --> 00:31:50,920
leave it a process running that's waiting for escalated privileges

589
00:31:51,000 --> 00:31:54,640
to intercept. But there's only so much you can do.

590
00:31:55,079 --> 00:31:57,720
I mean, the reality here is we don't want users

591
00:31:57,759 --> 00:31:59,799
to be able to install software. So you need to

592
00:31:59,799 --> 00:32:02,559
ask privileges to install software. And where you're talking in

593
00:32:02,559 --> 00:32:06,720
an enterprise environment. And as much as we talk about

594
00:32:06,759 --> 00:32:10,559
granulating privileges for all of that, I know no one

595
00:32:10,720 --> 00:32:14,160
I've ever spoken to that's done a large scale package deployment,

596
00:32:14,200 --> 00:32:17,720
so multiple apps and so forth, installing where the privileges

597
00:32:17,720 --> 00:32:21,559
are actually varying from install to install. They just go

598
00:32:21,680 --> 00:32:26,319
super user push everything in, go out like it's just

599
00:32:26,440 --> 00:32:27,799
not practical.

600
00:32:27,960 --> 00:32:30,759
Speaker 1: And yeah, I think also the security risk come more

601
00:32:30,799 --> 00:32:33,039
from people than they do from the software. I mean,

602
00:32:33,079 --> 00:32:35,240
if you've got a good software bill materials and you

603
00:32:35,400 --> 00:32:38,799
trust the software that you're installing goes without saying, then

604
00:32:38,839 --> 00:32:41,319
the person the admin who writes the script is probably

605
00:32:41,400 --> 00:32:43,039
going to be the one that runs it. So it's

606
00:32:43,039 --> 00:32:46,440
not like somebody's gonna somebody like Patrick Kins to say,

607
00:32:46,720 --> 00:32:49,319
if somebody just offered you a piece of food on

608
00:32:49,359 --> 00:32:51,680
the street, here eat this, You're not going to eat it,

609
00:32:51,839 --> 00:32:55,000
you know. Yeah, So if somebody says, here, run this script,

610
00:32:55,759 --> 00:32:58,720
you'd be a little you should be a little apprehensive

611
00:32:58,720 --> 00:33:00,359
about it until you check it out well.

612
00:33:00,359 --> 00:33:02,240
Speaker 2: And more importantly, that's why we don't give you the

613
00:33:02,279 --> 00:33:04,319
privileges so that you'll have to ask us about it.

614
00:33:04,359 --> 00:33:06,039
We'll say, where did you get that from?

615
00:33:06,079 --> 00:33:06,640
Speaker 1: Exactly?

616
00:33:06,839 --> 00:33:09,680
Speaker 3: So exactly purely from a chocolatey point of view and

617
00:33:09,720 --> 00:33:13,000
a chocolate ecosystem point of view, the default place to

618
00:33:13,039 --> 00:33:15,319
get those packages that Carl's talking about there is the

619
00:33:15,400 --> 00:33:19,680
chocolate community repository. So the problem that we have there

620
00:33:19,839 --> 00:33:23,319
is that anyone can push to the chocolate community apositry,

621
00:33:23,400 --> 00:33:25,759
so there is the potential for there being bad actors

622
00:33:25,759 --> 00:33:27,559
in that space. Now we do what we can in

623
00:33:27,680 --> 00:33:32,559
terms of moderating those packages and shooting a good package quality,

624
00:33:32,799 --> 00:33:36,039
but ultimately there's no guarantee and we don't provide any

625
00:33:36,039 --> 00:33:39,759
guarantee that there won't be something nefarious on that website.

626
00:33:39,839 --> 00:33:42,680
But that's why we recommend due diligence in terms of

627
00:33:42,759 --> 00:33:45,119
again that what you said, you wouldn't run any scripts

628
00:33:45,119 --> 00:33:47,759
from the internet, you wouldn't install any package from the

629
00:33:47,759 --> 00:33:49,920
internet either. There are a due diligence aspect to that.

630
00:33:50,359 --> 00:33:52,599
Speaker 1: Well, so it depends on the package, right, I mean,

631
00:33:52,640 --> 00:33:56,039
if it's version one point oh oh oh of some

632
00:33:56,160 --> 00:33:59,559
new thing and nobody's installed it before, I wouldn't install it.

633
00:33:59,680 --> 00:34:01,680
You know, you want to wait for there's definitely.

634
00:34:01,759 --> 00:34:01,880
Speaker 2: Two.

635
00:34:02,119 --> 00:34:04,039
Speaker 3: Yeah, no, absolutely absolutely.

636
00:34:03,559 --> 00:34:05,839
Speaker 1: Package is mature and it's been vetted by the community.

637
00:34:06,160 --> 00:34:09,119
Speaker 3: That's true too, yeah, absolutely. But where we're going to

638
00:34:09,199 --> 00:34:11,599
go with that is that, in an organizational point of view,

639
00:34:11,960 --> 00:34:14,519
we don't recommend the usage of the Chocolate community of

640
00:34:14,559 --> 00:34:17,360
positry because it's not something that you as a company

641
00:34:17,719 --> 00:34:19,960
would want to make use of. So what we recommend

642
00:34:20,039 --> 00:34:23,639
instead is you take the packages that you vetted and

643
00:34:23,679 --> 00:34:26,159
you put them into your own internal repository, and that's

644
00:34:26,199 --> 00:34:28,000
where you get to your what you describe their car,

645
00:34:28,079 --> 00:34:30,840
which was someone's done all the vetting, someone's done all

646
00:34:30,880 --> 00:34:33,360
the package installations to make sure that they're valid, and

647
00:34:33,400 --> 00:34:36,280
then you offer them up to the internal organization to say,

648
00:34:36,519 --> 00:34:38,840
have your pick of these ones. But they don't get

649
00:34:38,920 --> 00:34:40,760
to use the community depository.

650
00:34:40,800 --> 00:34:43,360
Speaker 2: And this is the commercial version of Chocolate, right, that's

651
00:34:43,400 --> 00:34:47,480
the central management tool and install our controls and all

652
00:34:47,519 --> 00:34:50,760
those sorts of things. So for me as an oh, really,

653
00:34:51,280 --> 00:34:53,000
that's exactly.

654
00:34:53,519 --> 00:34:56,760
Speaker 3: Well, there was a slight clarification there. So the repository

655
00:34:56,800 --> 00:34:58,719
itself so which is not to be confused with a

656
00:34:58,760 --> 00:35:02,320
GitHub repository and one FNTO, here is a repository of

657
00:35:02,400 --> 00:35:05,639
packages that's not something that we chocolately offer. So we

658
00:35:05,679 --> 00:35:09,320
would look to something like a progate or an Nexus

659
00:35:09,360 --> 00:35:11,800
or an arch factory to provide the actual.

660
00:35:11,840 --> 00:35:12,639
Speaker 2: The actual package.

661
00:35:13,440 --> 00:35:16,400
Speaker 3: Okay, so those are stored there, and what you're refering

662
00:35:16,440 --> 00:35:18,599
to there is the Chocolate Central management. It would build

663
00:35:18,639 --> 00:35:21,960
on top of that to allow the deployment of packages

664
00:35:22,000 --> 00:35:25,599
to across your suite of computers. But we we at

665
00:35:25,599 --> 00:35:29,480
a minute, don't offer a repository solution for packages.

666
00:35:29,639 --> 00:35:33,000
Speaker 2: That's not something. And you also get to the other aspect,

667
00:35:33,039 --> 00:35:36,880
which is rarely as an administrator of infrastructure, and do

668
00:35:36,920 --> 00:35:39,840
I actually want the latest version of anything? Right? We

669
00:35:39,960 --> 00:35:43,719
have an accepted set of versions of Adobe Reader, and

670
00:35:43,840 --> 00:35:45,280
those are the ones we're going to install. I don't

671
00:35:45,280 --> 00:35:46,920
care if there's new one coming out until it's gone

672
00:35:46,960 --> 00:35:49,000
through the process. It's not in the package.

673
00:35:49,079 --> 00:35:52,639
Speaker 1: I think the problem is you've chosen Adobe Reader. Yeah,

674
00:35:52,679 --> 00:35:54,440
well fair, real problem.

675
00:35:54,679 --> 00:35:57,880
Speaker 2: Yeah, but you know the the when when you get

676
00:35:57,880 --> 00:36:02,400
to hundreds of thousands of seeds, you're trying to manage

677
00:36:02,480 --> 00:36:05,880
the total landscape of different versions of things. Yeah, sure,

678
00:36:05,920 --> 00:36:07,639
and so you get a little more strict and this

679
00:36:07,719 --> 00:36:09,480
is the stuff you pay for and why you get

680
00:36:09,480 --> 00:36:12,199
paid to do your job. So privileges are one thing,

681
00:36:12,239 --> 00:36:15,480
but known versions of another. Because this whole conversation about

682
00:36:15,480 --> 00:36:18,920
supply chain attack like this is only getting worse.

683
00:36:19,079 --> 00:36:19,719
Speaker 1: It's serious.

684
00:36:20,039 --> 00:36:23,199
Speaker 2: Yeah, and they're definitely besieging open source.

685
00:36:23,960 --> 00:36:25,760
Speaker 3: So on that note that the flip side of that

686
00:36:25,880 --> 00:36:28,039
is that there are thads out there that do want

687
00:36:28,079 --> 00:36:31,440
the latest and greatest. And what happened the other month

688
00:36:31,519 --> 00:36:34,800
was last month when dot Net shipped one of our

689
00:36:34,960 --> 00:36:38,000
one of our core community maintainers, Jacob, he went about

690
00:36:38,079 --> 00:36:41,639
and set about set created packages for all the new

691
00:36:41,679 --> 00:36:44,679
dot Net packages. So whether that's the desktop version, the

692
00:36:44,760 --> 00:36:48,519
runtime version, the SDK, he flooded us. He literally flooded

693
00:36:48,599 --> 00:36:51,880
us with the dot Net related packages on the community pository.

694
00:36:51,960 --> 00:36:54,920
So it's great because we then have all the dot

695
00:36:54,920 --> 00:36:57,639
Net ten packages that people can then install. But that's

696
00:36:57,719 --> 00:37:00,119
him literally being on the bleeding edge. It was it

697
00:37:00,159 --> 00:37:02,639
was announced and he had packages ready to go and

698
00:37:02,960 --> 00:37:04,880
ship to the community positors.

699
00:37:04,480 --> 00:37:07,880
Speaker 1: And he said, I'm done then, you know.

700
00:37:08,880 --> 00:37:12,840
Speaker 3: So the great thing about the open source is that

701
00:37:13,000 --> 00:37:15,480
the option there and then is that someone could pick

702
00:37:15,519 --> 00:37:18,320
those packages up. So all the work that Jacob does,

703
00:37:18,840 --> 00:37:21,639
it's all on a gihub repository, all of his packaging scripts,

704
00:37:21,719 --> 00:37:23,960
all of his automation to create those packages and keep

705
00:37:23,960 --> 00:37:26,480
those packages up today, that's all on GitHub. So if

706
00:37:26,599 --> 00:37:29,000
Jacob were to step away, and we've had people step

707
00:37:29,039 --> 00:37:33,199
away from the community, that's absolutely something that happens. But

708
00:37:33,280 --> 00:37:35,719
what we find is that there's always people that come

709
00:37:35,760 --> 00:37:38,519
along and I say I'm interested in maintaining that package

710
00:37:38,679 --> 00:37:43,519
and ultimately gets picked up. So Jacob would be sorely missed,

711
00:37:43,599 --> 00:37:45,280
let's put it that way, if he were to step

712
00:37:45,320 --> 00:37:49,000
away from the community. But for the he's been involved

713
00:37:49,039 --> 00:37:52,960
in the all of the dominant packages since I can't

714
00:37:53,000 --> 00:37:55,519
even remember when he started, and he's probably been around

715
00:37:55,559 --> 00:37:57,519
as long as I have to be honest because his

716
00:37:57,599 --> 00:37:58,559
name is so familiar.

717
00:37:58,639 --> 00:37:59,920
Speaker 1: So go Jacob.

718
00:38:00,519 --> 00:38:03,880
Speaker 3: Absolutely, absolutely, I'm not going to try and pronounce the

719
00:38:03,880 --> 00:38:06,599
second name because it's not one that's in my remit,

720
00:38:06,639 --> 00:38:09,960
I don't think. But he goes by Jacob, so that's well,

721
00:38:10,079 --> 00:38:10,639
I'll stick with.

722
00:38:11,880 --> 00:38:14,880
Speaker 1: Somebody should send him a pizza.

723
00:38:15,679 --> 00:38:18,159
Speaker 2: What are your thoughts on the whole supply chain attack

724
00:38:18,360 --> 00:38:21,039
landscape these days? Like do you do you give advice

725
00:38:21,159 --> 00:38:24,639
to to developers that are using these tools on? Like

726
00:38:24,679 --> 00:38:26,559
what do I got to think about to make sure

727
00:38:26,599 --> 00:38:29,039
I'm not a part of a supply chain attack.

728
00:38:29,159 --> 00:38:32,159
Speaker 3: I mean, it's definitely, it is definitely an issue. Is

729
00:38:32,199 --> 00:38:36,159
prevalent with an hour, with an hour and ecosystem. It's

730
00:38:36,199 --> 00:38:40,119
something we need to be conscious of. And if you

731
00:38:40,159 --> 00:38:43,639
are using package management solutions like Chocolate or whether it's

732
00:38:43,679 --> 00:38:47,559
something else, just installing the latest and greatest is probably

733
00:38:47,599 --> 00:38:50,800
not the best advice. It would be maybe I'd carl

734
00:38:50,840 --> 00:38:53,159
kind of hinto that with the first version of that application,

735
00:38:53,559 --> 00:38:57,400
Maybe wait that thirty days or something to see whether

736
00:38:57,440 --> 00:38:59,079
there's bugs, see whether there's anything with this.

737
00:38:59,280 --> 00:39:02,320
Speaker 2: Is the ITAM mentality. Change is good. You go first,

738
00:39:02,360 --> 00:39:04,239
you go exactly exactly.

739
00:39:04,719 --> 00:39:08,239
Speaker 3: A great way of putting it. So it just just

740
00:39:08,280 --> 00:39:11,320
to be sensible, to be honest. I mean, there's what

741
00:39:11,360 --> 00:39:15,119
we offer on the community pository is any package that's

742
00:39:15,159 --> 00:39:18,400
pushed to the CCR of the Trocolate Community postry, we

743
00:39:18,519 --> 00:39:22,119
send all the related files and packages over divirus total

744
00:39:22,159 --> 00:39:24,239
to let them scan it as well, and we report

745
00:39:24,280 --> 00:39:27,599
that information on virus Total. So if there were something

746
00:39:27,639 --> 00:39:30,480
that comes through, then that information is available on the

747
00:39:30,480 --> 00:39:32,519
package page, so you'll be able to see that there's

748
00:39:32,519 --> 00:39:35,280
a there's maybe a higher rate of virus detections for

749
00:39:35,360 --> 00:39:37,800
this package version, and it might give you pause to

750
00:39:37,840 --> 00:39:40,480
think about what that's maybe not a good idea, or

751
00:39:40,519 --> 00:39:43,119
it gives you more pause to take it onto some

752
00:39:43,159 --> 00:39:47,519
sort of DMZ within your organization, install it there without

753
00:39:47,840 --> 00:39:52,199
letting it, letting it across your organization. There's mechanisms that

754
00:39:52,239 --> 00:39:57,159
you can use to prevent those potential supply chain attacks.

755
00:39:57,199 --> 00:39:59,239
But at the end of the day, I mean, it's

756
00:39:59,280 --> 00:40:01,800
it is. It's something that we all have to be

757
00:40:01,800 --> 00:40:05,440
conscious of because there's there are malicious actors out there

758
00:40:05,440 --> 00:40:10,119
that we need to be careful of. It's unfortunately as

759
00:40:10,559 --> 00:40:13,000
part of the world that we've lived in today.

760
00:40:12,800 --> 00:40:16,239
Speaker 2: Well and these recently just the past couple of years,

761
00:40:16,239 --> 00:40:21,280
we've found now long term maintainers that may have been

762
00:40:21,400 --> 00:40:25,480
plants the whole time thence quiet, you know, getting that

763
00:40:25,519 --> 00:40:28,199
maintainer of privilege that they could approve their own prs

764
00:40:29,000 --> 00:40:34,039
and adding really like crazy sneaky things like the xz

765
00:40:34,239 --> 00:40:38,639
util ones comes to mind, where literally, you know, this

766
00:40:38,679 --> 00:40:42,960
is a utility for data compression that and numerous numerous people,

767
00:40:43,119 --> 00:40:47,599
millions of people use, and this longtime maintainer slipped in

768
00:40:47,639 --> 00:40:50,199
this bit of code that was sending telemetry of everything

769
00:40:50,280 --> 00:40:54,719
being compressed to China. And the only reason it was

770
00:40:54,760 --> 00:40:58,400
detected is that there was a Microsoft guy was his

771
00:40:58,480 --> 00:41:03,039
name Andres who was doing performance testing version of version

772
00:41:03,199 --> 00:41:09,280
and the new version was five hundred milliseconds slower, and

773
00:41:09,320 --> 00:41:11,480
so he dug in like what made this slower? And

774
00:41:11,519 --> 00:41:15,119
I covered this whole thing like it's quite a story.

775
00:41:15,440 --> 00:41:19,199
Thank goodness, people like this exists. But it also speaks

776
00:41:19,199 --> 00:41:23,159
to part of our instrumentation on updated versions. It really

777
00:41:23,239 --> 00:41:25,920
is looking at the subtle changes.

778
00:41:26,159 --> 00:41:28,400
Speaker 1: I kind of think automation is a good place for

779
00:41:28,480 --> 00:41:31,280
these kinds of things to look like. GitHub has depend

780
00:41:31,280 --> 00:41:33,079
abot right, and I don't know how much of it

781
00:41:33,119 --> 00:41:36,480
is automated, but it seems like it is. And you know,

782
00:41:36,559 --> 00:41:39,960
to do automated testing of things like this, Richard that

783
00:41:40,119 --> 00:41:43,599
you know that this guy had a human had to

784
00:41:43,639 --> 00:41:47,079
find that based on some timing. But some of these

785
00:41:47,119 --> 00:41:50,559
things could be automated. I think maybe in the future

786
00:41:50,559 --> 00:41:51,519
they will be more.

787
00:41:51,360 --> 00:41:54,280
Speaker 2: Yeah, and I wonder this is what's againing well. Llm's

788
00:41:54,360 --> 00:41:57,159
working for us right, not being part of the problem

789
00:41:57,239 --> 00:42:00,599
where they to be able to assess the risk of

790
00:42:00,679 --> 00:42:04,840
data changes and maybe raise a red flag because ultimately

791
00:42:06,119 --> 00:42:09,840
that a self approved PR bad like giant red flag

792
00:42:09,960 --> 00:42:12,400
right away. But okay, so you have two people involved,

793
00:42:12,920 --> 00:42:16,360
but just having very detailed assessments of what's early in

794
00:42:16,400 --> 00:42:19,079
that PR and what and what its potential risk is.

795
00:42:19,119 --> 00:42:22,440
Like I wonder if we aren't already maturing and I

796
00:42:22,480 --> 00:42:24,920
don't have evidence, but I'll look for it. That we

797
00:42:24,960 --> 00:42:27,719
are starting to build lms. Who's specially who are going

798
00:42:27,800 --> 00:42:29,800
to be And I shouldn't say who because it's software

799
00:42:30,440 --> 00:42:36,679
that analyzed security risk on co changes constantly.

800
00:42:36,760 --> 00:42:38,679
Speaker 1: Well you mean you already have you know, things like

801
00:42:38,719 --> 00:42:39,679
gethub copilot.

802
00:42:39,800 --> 00:42:43,079
Speaker 2: Yeah, well it depends on what we'll catch like keys

803
00:42:43,159 --> 00:42:43,719
in code.

804
00:42:43,920 --> 00:42:47,760
Speaker 1: Yeah yes, but it isn't going to test right. But

805
00:42:47,800 --> 00:42:50,079
you know the thing about gethub copilot is you tell

806
00:42:50,119 --> 00:42:51,840
it to do something, it just goes off and does it.

807
00:42:52,599 --> 00:42:55,559
Or the get ub Copilot code Assistant I think it's called,

808
00:42:57,239 --> 00:43:00,280
so you know, there could be back background process he's

809
00:43:00,559 --> 00:43:03,679
running and get hub per se I mean not just there,

810
00:43:03,719 --> 00:43:08,280
but anywhere where something new is checked in. I mean

811
00:43:08,320 --> 00:43:11,280
it's just another pipeline really if you think about it.

812
00:43:10,920 --> 00:43:13,199
Speaker 2: Something that you know the same way that used to

813
00:43:13,239 --> 00:43:15,880
be so fixated on performance at SLA testing for a

814
00:43:15,920 --> 00:43:18,519
lot of software where it's like, is this still going

815
00:43:18,559 --> 00:43:20,719
to comply with the SLA or the performance levels that

816
00:43:20,719 --> 00:43:23,639
we agreed to, you know now, and I'm thinking back

817
00:43:23,639 --> 00:43:25,360
of the day where we were talking about just needing

818
00:43:25,400 --> 00:43:28,840
provision new hardware because we were running our own rigs. Right,

819
00:43:28,920 --> 00:43:30,920
it's like, hey, we added. The classic one was when

820
00:43:30,920 --> 00:43:33,000
we added the recommendation engine and brought the whole place

821
00:43:33,000 --> 00:43:35,920
of it's knees because it was so much more computationally

822
00:43:35,960 --> 00:43:39,639
intensive and so we fortunately we ab switched it, figured

823
00:43:39,679 --> 00:43:41,360
out how much more it was, and then like did

824
00:43:41,400 --> 00:43:43,079
the math and said, we have to buy this many

825
00:43:43,079 --> 00:43:45,519
more computers if we're going to be able to run

826
00:43:45,559 --> 00:43:49,400
this thing. You know, So those kinds of benchmarking, the

827
00:43:49,440 --> 00:43:51,239
fact that we're going to benchmark it to see was

828
00:43:51,320 --> 00:43:54,719
malicious code added, Like wow, this is the world we're

829
00:43:54,760 --> 00:43:57,679
living in now. It's really you know, package management ain't

830
00:43:57,719 --> 00:44:02,400
what it used to be. You've been doing this longer

831
00:44:02,400 --> 00:44:05,559
than anybody, Gary, Like, obviously the demands only get bigger.

832
00:44:06,159 --> 00:44:07,679
I mean, is it getting better?

833
00:44:08,400 --> 00:44:11,800
Speaker 3: I mean it's definitely as we continue to see more

834
00:44:11,800 --> 00:44:13,920
people using it and we continue to see more packages

835
00:44:13,960 --> 00:44:16,400
being pushed to the repostentry that we maintained. So it

836
00:44:16,519 --> 00:44:20,599
is always, it's always that all of the graphs that

837
00:44:20,639 --> 00:44:24,239
we have and that we maintain, more people are wanting

838
00:44:24,280 --> 00:44:27,000
it and more people are using it. Right, But I mean,

839
00:44:27,039 --> 00:44:29,480
I go back to where I started. I set up

840
00:44:29,480 --> 00:44:31,559
and in this game quite a long time now, But

841
00:44:31,920 --> 00:44:34,880
when I started, it was just literally I want a

842
00:44:34,960 --> 00:44:37,599
quick way of installing this thing, but it's now morphed

843
00:44:37,639 --> 00:44:40,199
into I want to bring up a whole suite of

844
00:44:40,239 --> 00:44:42,639
computers that all have different applications on them, or a

845
00:44:42,639 --> 00:44:45,559
whole different different applications on them to test these different

846
00:44:45,559 --> 00:44:49,159
scenarios as part of my CICD pipeline. So whereas before

847
00:44:49,239 --> 00:44:52,880
we would have been constrained to here's one build agent

848
00:44:53,039 --> 00:44:56,639
that's got all the stuff on it that is maintained

849
00:44:56,880 --> 00:45:01,239
in secrecy by the whole ops team, now transferred all

850
00:45:01,239 --> 00:45:05,400
of that over to vms running in the cloud that

851
00:45:05,440 --> 00:45:07,760
you can spin up on a whim, but you still

852
00:45:07,800 --> 00:45:10,119
need to do the application management over it. And that's

853
00:45:10,119 --> 00:45:12,920
where something like chocolate comes in. So it's it's a

854
00:45:12,960 --> 00:45:17,039
never changing landscape, but it's one that continues to need

855
00:45:17,119 --> 00:45:20,159
solutions like chocolate. So it's it's a very interesting space

856
00:45:20,199 --> 00:45:20,880
to be involved in.

857
00:45:21,039 --> 00:45:22,880
Speaker 1: Yeah, I bet never a dull moment.

858
00:45:23,239 --> 00:45:24,519
Speaker 3: I bet never a dull moment.

859
00:45:24,639 --> 00:45:27,880
Speaker 2: Yes, But you said pack. I think about how much

860
00:45:27,920 --> 00:45:32,119
more complicated CICD pipelines are these days, and this package

861
00:45:32,159 --> 00:45:35,960
management pipeline, including the feed in of new versions is

862
00:45:35,960 --> 00:45:38,920
going to be at least as complicated now. Absolutely, it's

863
00:45:39,000 --> 00:45:41,199
all part of the equation and it's.

864
00:45:41,119 --> 00:45:44,679
Speaker 3: It's it's the landscape is ever increasing as you start

865
00:45:44,719 --> 00:45:47,159
talking in the likes of ARM. ARM is now a

866
00:45:47,199 --> 00:45:49,519
thing that people want to build on, and file for

867
00:45:49,800 --> 00:45:53,079
and package for. So that's one of the conversations that

868
00:45:53,079 --> 00:45:55,599
we're having internally is well, what is how does chocolate

869
00:45:55,679 --> 00:45:58,679
fit into that ARM landscape and what do we need

870
00:45:58,719 --> 00:46:02,400
to do to perform it because chocolate chocolate ex Today

871
00:46:02,760 --> 00:46:05,639
runs under the emulation layer with on ARM, Right, but

872
00:46:06,239 --> 00:46:08,280
do we want or do we need? Do you want

873
00:46:08,320 --> 00:46:12,000
a native version of chocolate ex The answer to that

874
00:46:12,079 --> 00:46:15,880
is probably yes, but then eventually eventually that but then

875
00:46:15,920 --> 00:46:18,960
that causes our bills then need to change because we

876
00:46:19,039 --> 00:46:22,239
need to introduce having the ARM hardware to then build on,

877
00:46:22,360 --> 00:46:26,400
compile on, test on, package on. So it increases our

878
00:46:26,480 --> 00:46:28,599
landscape of what we need to do in order to

879
00:46:28,599 --> 00:46:31,400
provide that increase landscape for the customer.

880
00:46:31,440 --> 00:46:34,960
Speaker 2: It's my experience with the Snapdragons, the Snapdragon ultras is

881
00:46:35,000 --> 00:46:38,400
the emulator is very fast, and you'd be very happy

882
00:46:38,440 --> 00:46:40,480
with that until you just see you see how much

883
00:46:40,480 --> 00:46:44,239
faster it is running native correct, and the emulated version

884
00:46:44,280 --> 00:46:46,320
was not bad until you saw the native version went wow,

885
00:46:46,360 --> 00:46:48,000
I want that more of that.

886
00:46:48,159 --> 00:46:50,840
Speaker 3: It's just and also some of the some of the

887
00:46:50,840 --> 00:46:53,800
APIs they get lied to because of the emulation layer.

888
00:46:53,880 --> 00:46:56,159
So where we would say what are you running on,

889
00:46:56,360 --> 00:46:58,480
it will go well, I'm running on this, when actually

890
00:46:58,519 --> 00:47:02,559
it's running on this completely separate things. So there's different

891
00:47:02,559 --> 00:47:04,679
APIs that we need to call into for certain things

892
00:47:04,679 --> 00:47:07,559
to get some of that information out. So the landscape

893
00:47:07,639 --> 00:47:10,199
changes ever so slightly. But you if you're using the

894
00:47:10,199 --> 00:47:13,280
emulation layer, but if you're running natively, that's those problems

895
00:47:13,320 --> 00:47:14,119
no longer exist.

896
00:47:14,360 --> 00:47:16,519
Speaker 2: And you guys don't tend to poke into ring zero

897
00:47:16,599 --> 00:47:17,280
for any reason.

898
00:47:17,679 --> 00:47:20,000
Speaker 3: You know, no, No, that's not no.

899
00:47:20,840 --> 00:47:23,559
Speaker 2: That's and that's where the real WAMI comes for arm

900
00:47:23,679 --> 00:47:26,559
is that all of that architecture is fundamentally different. Yeah,

901
00:47:26,960 --> 00:47:28,639
as long as you're staying in the user layer. The

902
00:47:28,719 --> 00:47:30,559
user layer lies to you really efficiently.

903
00:47:31,159 --> 00:47:35,440
Speaker 3: Yes, So that's something that we're definitely looking at. It's

904
00:47:35,440 --> 00:47:37,360
the conversations are being had about what we need to

905
00:47:37,400 --> 00:47:40,360
do and what we need to do, because right now,

906
00:47:40,519 --> 00:47:43,599
for Chocolate, we will say the helper scripts that we

907
00:47:43,639 --> 00:47:46,440
have will say give me the thirty two bit installer

908
00:47:46,800 --> 00:47:48,519
or give me the sixty four bit installer, and then

909
00:47:48,599 --> 00:47:51,280
Chocolate does the right thing based on where it's running.

910
00:47:51,639 --> 00:47:53,800
But then we would need to extend that to have

911
00:47:53,920 --> 00:47:56,800
well are you on ARM and then is it ARM

912
00:47:56,880 --> 00:47:59,119
thirty two? Is ARM clutter two still a thing? Is

913
00:47:59,159 --> 00:48:02,239
it ARM sixty four? Yeah, there's all these questions here.

914
00:48:02,119 --> 00:48:04,800
Speaker 2: When it's only ARMS sixty four, like just one last thing,

915
00:48:05,000 --> 00:48:07,000
it's pretty hard. Thirty two is pretty much over.

916
00:48:07,519 --> 00:48:09,719
Speaker 3: That's it. So but I say those questions are those

917
00:48:09,800 --> 00:48:12,760
questions are being asked. Those we're trying to provide answers.

918
00:48:13,679 --> 00:48:15,719
So that that I said, that landscape is ever changing

919
00:48:15,719 --> 00:48:18,159
and we're trying to But I mean there's the other

920
00:48:18,239 --> 00:48:21,039
parts of it from a development perspective. We had this

921
00:48:21,079 --> 00:48:23,639
conversation last time where we've literally just done the switch

922
00:48:23,679 --> 00:48:26,119
from dot net four up to dot net four point

923
00:48:26,119 --> 00:48:29,320
eight we're in a similar chasm now where we're at

924
00:48:29,320 --> 00:48:32,079
four point eight, but we want to jump to dot net,

925
00:48:32,119 --> 00:48:35,639
to actual dot net. So there's conversations around what we

926
00:48:35,719 --> 00:48:39,119
do there, what do we do again? Our builds need

927
00:48:39,159 --> 00:48:41,920
to change, our testing needs to change. So there's it's

928
00:48:41,920 --> 00:48:45,159
a never ending sea of things that need to be

929
00:48:45,159 --> 00:48:46,440
thought about in conversations.

930
00:48:46,760 --> 00:48:49,400
Speaker 1: All right, you're gonna love this question, Gary, what is

931
00:48:49,440 --> 00:48:52,400
the wackiest tech support ticket you ever saw?

932
00:48:52,880 --> 00:48:53,559
Speaker 2: For chocolate?

933
00:48:54,719 --> 00:48:57,920
Speaker 3: So so the one that comes to mind is one

934
00:48:57,920 --> 00:49:00,519
that I briefly spoke about and our last meeting, but

935
00:49:00,599 --> 00:49:04,239
it was we had a customer who the customer that

936
00:49:04,280 --> 00:49:07,559
was running CCM and CCM at the time. It does

937
00:49:07,559 --> 00:49:11,719
a thing where we do deployment and it installed on

938
00:49:12,559 --> 00:49:15,599
the computer that you're running on. So this customer happened

939
00:49:15,599 --> 00:49:19,280
to be running on Windows Server twenty twelve, and the

940
00:49:19,360 --> 00:49:22,559
deployment would work the first time, and then if you

941
00:49:22,639 --> 00:49:26,280
ran it again it would fail. So there was it was.

942
00:49:26,440 --> 00:49:28,440
It was in explosive. It would always just work. So

943
00:49:28,679 --> 00:49:31,000
in our testing it always just worked. We were testing

944
00:49:31,039 --> 00:49:34,239
on not Windows Server twenty twelve. So it turns out

945
00:49:34,440 --> 00:49:37,599
that there was a problem with the SMA assembly the

946
00:49:37,599 --> 00:49:42,159
PowerShell SMA assembly had a bug, and the first deployment

947
00:49:42,239 --> 00:49:44,880
it worked just fine, and the second deployment, I think

948
00:49:44,880 --> 00:49:47,920
it was an internal array that had been set and

949
00:49:48,000 --> 00:49:52,320
therefore it didn't work the same way that it worked before. Literally,

950
00:49:52,840 --> 00:49:56,719
after literally debugging or decompiling the SMA assembly and looking

951
00:49:56,719 --> 00:50:00,079
at the generated code, I figured it out, found a

952
00:50:00,079 --> 00:50:03,719
way to reset the array on each deployment, and I

953
00:50:03,760 --> 00:50:05,679
was able to fix it for that customer. But that's

954
00:50:05,880 --> 00:50:09,360
That's one of the the fundamentals of Chocolate is that

955
00:50:09,360 --> 00:50:12,159
we try to be backwards compatible, but that end the

956
00:50:12,239 --> 00:50:14,079
end result of that is we end up with customers

957
00:50:14,159 --> 00:50:16,760
running on older operating systems that we're trying to support

958
00:50:16,800 --> 00:50:17,239
and maintain.

959
00:50:17,360 --> 00:50:19,360
Speaker 1: Yeah, and they're like, how dare you not run on

960
00:50:19,440 --> 00:50:22,559
a ten year old operating exactly exactly you guys? Do

961
00:50:22,639 --> 00:50:23,639
you freaking guys?

962
00:50:24,880 --> 00:50:26,719
Speaker 3: So that's the one that immediately springs to mind. So

963
00:50:26,760 --> 00:50:29,280
that was me splunking into the internals of the SMA

964
00:50:29,280 --> 00:50:32,679
assembly to figure out how things work.

965
00:50:32,679 --> 00:50:34,480
Speaker 2: And I mean, so there's no point in pushing to

966
00:50:34,519 --> 00:50:36,920
the PowerShell guys. They're gonna go a sorry, now, that's

967
00:50:36,960 --> 00:50:38,280
not a supported operating system.

968
00:50:38,679 --> 00:50:41,559
Speaker 3: That's exactly it, so we were able to find a solution.

969
00:50:41,639 --> 00:50:44,280
So sometimes these things happened, and that's literally there's nothing

970
00:50:44,280 --> 00:50:45,920
we can do in this suggestion as well, you need

971
00:50:45,920 --> 00:50:49,800
to upgrade to X whatever it is to upgrade. But

972
00:50:50,159 --> 00:50:52,280
we try to support because we know that people are

973
00:50:52,360 --> 00:50:56,599
running those older operating systems of older applications. So Chocolatey

974
00:50:56,639 --> 00:50:59,800
tries to be as backwards compatible as we can be.

975
00:50:59,840 --> 00:51:02,079
So we can say that we've got both the one

976
00:51:02,079 --> 00:51:04,159
point X branch of chocolate and the two point X

977
00:51:04,159 --> 00:51:06,719
branch of chocolate. Both of them are supported. So one

978
00:51:06,719 --> 00:51:09,079
point X goes all the way back to dot net four.

979
00:51:09,199 --> 00:51:13,840
If you really wanted to wow, I hope I I

980
00:51:13,840 --> 00:51:16,519
would like to think there's not many people still on

981
00:51:16,599 --> 00:51:19,639
dot net four. But yeah, stranger things have happened.

982
00:51:19,639 --> 00:51:23,599
Speaker 1: Well, but this whole story about Windows twenty twelve and

983
00:51:23,599 --> 00:51:25,599
I don't know when it happened, but it was probably

984
00:51:25,679 --> 00:51:28,079
ten years later, right that, So.

985
00:51:28,039 --> 00:51:30,400
Speaker 3: We're talking within the last three years, the last three

986
00:51:30,440 --> 00:51:31,360
years that this was that man.

987
00:51:31,519 --> 00:51:31,760
Speaker 2: But it.

988
00:51:33,280 --> 00:51:37,400
Speaker 1: Just it speaks to the point that somebody has been

989
00:51:37,519 --> 00:51:41,880
using Windows, a version of Windows for ten years, a

990
00:51:41,920 --> 00:51:44,400
server version of Windows for ten years.

991
00:51:44,159 --> 00:51:47,360
Speaker 2: Which by the way, only went out of support in

992
00:51:47,440 --> 00:51:48,320
twenty twenty two.

993
00:51:48,519 --> 00:51:50,480
Speaker 1: That speaks volumes, right.

994
00:51:50,400 --> 00:51:52,400
Speaker 2: Like Microsoft used to offer ten years.

995
00:51:52,440 --> 00:51:55,119
Speaker 1: If speaks volumes about the quality of Windows Server. I

996
00:51:55,159 --> 00:51:57,639
think it does well. It does except for that one

997
00:51:57,719 --> 00:52:02,760
stupid DLL that is the program didn't stupid initialize the array.

998
00:52:04,400 --> 00:52:07,119
Speaker 2: But also you notice not Microsoft's pushing back and starting

999
00:52:07,119 --> 00:52:11,480
to shorten those timelines to encourage upgrade. There's also some

1000
00:52:11,559 --> 00:52:14,519
vulnerabilities in twenty twelve that are really freaking serious, right,

1001
00:52:14,679 --> 00:52:18,360
like it's time to retire that.

1002
00:52:18,880 --> 00:52:21,440
Speaker 3: And it's one of those situations that yes, we know

1003
00:52:21,519 --> 00:52:23,960
people are using these systems, but we're also hoping it's

1004
00:52:23,960 --> 00:52:26,320
in some sort of air gun network that has less

1005
00:52:26,400 --> 00:52:31,239
to the Internet. Yeah, but again, stranger things well you know.

1006
00:52:31,800 --> 00:52:34,599
Speaker 2: Now, then back to my run ass hat. It's like

1007
00:52:34,679 --> 00:52:38,079
the Halfnium exploit of all of those old Exchange servers,

1008
00:52:38,280 --> 00:52:41,360
tens of thousands of them, which is sort of proof

1009
00:52:41,400 --> 00:52:44,159
that not leading people not upgrading, they are also putting

1010
00:52:44,199 --> 00:52:44,840
them on the internet.

1011
00:52:45,639 --> 00:52:47,920
Speaker 1: I told you, I think I told you many times

1012
00:52:47,960 --> 00:52:51,079
about my sister in law who just last year was

1013
00:52:51,119 --> 00:52:56,679
still running Windows Vista well on her home computer, not.

1014
00:52:56,639 --> 00:52:59,159
Speaker 2: Only running an old version of Windows, but a.

1015
00:52:59,159 --> 00:53:03,119
Speaker 1: Really bad but not only yet so, but her excuse was,

1016
00:53:03,199 --> 00:53:05,440
but I like it, and I'm like, I don't care.

1017
00:53:05,800 --> 00:53:09,280
You know what likes you, malware, that's what likes you.

1018
00:53:10,960 --> 00:53:13,559
Speaker 3: I remember, I think it was the Windows XP. I

1019
00:53:13,559 --> 00:53:15,639
remember trying to set up I think with my granny's

1020
00:53:15,639 --> 00:53:17,679
computer at the time, and I was trying to do

1021
00:53:17,800 --> 00:53:20,679
Windows updates on Windows XP and I got I remember

1022
00:53:20,679 --> 00:53:22,119
which bug it was, but it was one of those

1023
00:53:22,159 --> 00:53:24,119
bugs that in the time that it took me to

1024
00:53:24,119 --> 00:53:28,840
download the Windows updates, malware had attacked the machine. It

1025
00:53:28,880 --> 00:53:31,639
was already infected, and there was at that point there

1026
00:53:31,679 --> 00:53:36,639
was no mechanism to do downloads of Windows updates out

1027
00:53:36,679 --> 00:53:39,960
with the Windows Update interface. So it was a race

1028
00:53:40,079 --> 00:53:42,000
literally to try and get the update to fix the

1029
00:53:42,000 --> 00:53:45,440
bug before the bug got onto your machine, before.

1030
00:53:45,199 --> 00:53:46,519
Speaker 2: You got exploited through that bug.

1031
00:53:47,000 --> 00:53:47,239
Speaker 3: Yeah.

1032
00:53:47,400 --> 00:53:50,119
Speaker 2: Yeah, they those who ever looked up the half new exploit.

1033
00:53:50,239 --> 00:53:54,800
In the end, the FBI used the vulnerability to patch

1034
00:53:54,840 --> 00:53:59,760
the vulnerability. Wow, rather because people weren't fixing it. Yeah, wow,

1035
00:54:00,119 --> 00:54:00,679
is that bad?

1036
00:54:00,880 --> 00:54:02,760
Speaker 1: Halfnium? Is that what you called it?

1037
00:54:02,920 --> 00:54:06,039
Speaker 2: The coxploit? Yeah, it's a few years ago. There's a

1038
00:54:06,039 --> 00:54:07,840
whole run as on it. For those who care but

1039
00:54:07,880 --> 00:54:10,159
you know, this is all you know, this is all

1040
00:54:10,199 --> 00:54:14,519
the stuff that that the security people scare us with, right, right,

1041
00:54:14,559 --> 00:54:18,159
but these were these were crucial sort of turning point

1042
00:54:18,400 --> 00:54:21,400
of vulnerabilities. Right, it's twenty twenty one.

1043
00:54:21,519 --> 00:54:24,320
Speaker 1: Every Thursday, after I record Security this Week with Patrick

1044
00:54:24,400 --> 00:54:27,320
Hines and Duine Laflatte, Kelly sits down and says, so

1045
00:54:27,840 --> 00:54:29,519
what should I be scared about today?

1046
00:54:30,440 --> 00:54:33,360
Speaker 2: Just put the tinfoil on your head and be quiet. Right,

1047
00:54:33,440 --> 00:54:34,400
It's gonna be fine.

1048
00:54:34,800 --> 00:54:38,320
Speaker 1: Sometimes it feels like we're all screwed. It's just a

1049
00:54:38,360 --> 00:54:40,880
matter of how long it's going to be before that

1050
00:54:40,960 --> 00:54:42,280
happens somehow.

1051
00:54:42,440 --> 00:54:44,960
Speaker 2: Sometimes, well, the good news is the good The good

1052
00:54:44,960 --> 00:54:46,760
guys are smarter than the bad guys. But the good

1053
00:54:46,760 --> 00:54:48,760
guys have to be right every time they get guys

1054
00:54:48,800 --> 00:54:49,559
only have to write once.

1055
00:54:49,599 --> 00:54:51,960
Speaker 1: I don't know. The bad guys have countries behind them though,

1056
00:54:52,000 --> 00:54:55,519
So that's what bothers me. Armies of hackers. You know,

1057
00:54:56,760 --> 00:54:59,840
it's scary world out there. But as Rory said, once

1058
00:55:00,119 --> 00:55:05,440
cut off your hands, live in a box, you'll be fine.

1059
00:55:05,960 --> 00:55:07,599
Speaker 2: There's a tone for the show.

1060
00:55:10,079 --> 00:55:11,400
Speaker 1: Everything's going to be fine.

1061
00:55:11,559 --> 00:55:13,760
Speaker 2: Baggage management it's great, No, really, it's great.

1062
00:55:13,800 --> 00:55:17,239
Speaker 1: Great, No, it's fine. Gary. What's next for you? What's

1063
00:55:17,239 --> 00:55:18,000
in your inbox?

1064
00:55:19,360 --> 00:55:22,639
Speaker 3: So obviously more chocolate you work. I'm hoping to go

1065
00:55:22,719 --> 00:55:28,840
to ps COM for you in Germany in June the CONFI. Yeah,

1066
00:55:28,880 --> 00:55:32,599
so it's the EU version of the PowerShell Summit that

1067
00:55:32,679 --> 00:55:35,199
happened at State Side, so as a really good event.

1068
00:55:35,239 --> 00:55:38,199
I was there last year or sorry this year, and

1069
00:55:38,239 --> 00:55:40,639
I'm hoping to go next year as well. But yeah,

1070
00:55:40,719 --> 00:55:44,079
other than that, just being a dad, being a husband,

1071
00:55:44,280 --> 00:55:46,880
doing all the day to day stuff. It's not it's

1072
00:55:46,920 --> 00:55:49,760
not it's not exciting, but it is what it is.

1073
00:55:50,039 --> 00:55:52,840
Speaker 2: So oh, it's exciting being It's bloody rewarding is what

1074
00:55:52,880 --> 00:55:53,119
it is.

1075
00:55:54,320 --> 00:55:56,039
Speaker 3: That's very true.

1076
00:55:56,119 --> 00:55:58,400
Speaker 1: All right, Well Gary, thanks a lot. We always learn

1077
00:55:58,440 --> 00:55:59,920
a lot when we talk to you, and this was

1078
00:56:00,159 --> 00:56:03,159
no difference. So thanks than all right, We'll talk to

1079
00:56:03,199 --> 00:56:26,920
you next time on dot net rocks. Dot net rocks

1080
00:56:27,000 --> 00:56:29,719
is brought to you by Franklin's Net and produced by

1081
00:56:29,800 --> 00:56:33,800
Pop Studios, a full service audio, video and post production

1082
00:56:33,920 --> 00:56:37,880
facility located physically in New London, Connecticut, and of course

1083
00:56:37,920 --> 00:56:42,079
in the cloud online at pwop dot com.

1084
00:56:42,280 --> 00:56:44,400
Speaker 4: Visit our website at d O T N E t

1085
00:56:44,639 --> 00:56:48,679
r o c k S dot com for RSS feeds, downloads,

1086
00:56:48,840 --> 00:56:52,519
mobile apps, comments, and access to the full archives going

1087
00:56:52,559 --> 00:56:55,800
back to show number one, recorded in September two.

1088
00:56:55,599 --> 00:56:58,599
Speaker 1: Thousand and two. And make sure you check out our sponsors.

1089
00:56:58,760 --> 00:57:01,559
They keep us in business. Now go write some code,

1090
00:57:02,159 --> 00:57:06,199
see you next time. Got tad middle vans now the

1091
00:57:06,639 --> 00:57:14,079
summer time that means home. Then my Texas in line

1092
00:57:14,360 --> 00:57:14,599
read

