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,279
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:39,320
dot com. We're back dot net rocks. That's right, nineteen

8
00:00:39,520 --> 00:00:42,960
twenty nine. I'm Carl Franklin, Robert Campbell. April Joho is

9
00:00:42,960 --> 00:00:45,119
here with us. We'll talk to her in just a minute.

10
00:00:45,679 --> 00:00:49,799
But uh, you know we're coming into the holiday season, Richard.

11
00:00:49,920 --> 00:00:52,520
Oh yes, and I'm wondering, you know, are you gonna

12
00:00:52,520 --> 00:00:53,920
you're gonna do some geek outs?

13
00:00:54,079 --> 00:00:56,200
Speaker 2: Oh? I've been right been writing my brains out.

14
00:00:56,640 --> 00:01:00,960
Speaker 1: Yeah, have you thought about any toys you might want?

15
00:01:01,359 --> 00:01:04,799
Speaker 2: We just published the Toy Show on run As Radio,

16
00:01:04,879 --> 00:01:07,599
which is like Christmas for cissid Bins. It's we've done

17
00:01:07,640 --> 00:01:10,760
at like six years in a row now because sisms

18
00:01:10,760 --> 00:01:11,879
are impossible to buy.

19
00:01:11,719 --> 00:01:12,920
Speaker 1: For right, Yeah, of course.

20
00:01:12,959 --> 00:01:16,560
Speaker 2: So it's a Joey Snow and Rick Claus because having

21
00:01:16,599 --> 00:01:19,280
claws and snow on a show about Christmas toys just

22
00:01:19,319 --> 00:01:20,159
sort of makes sense.

23
00:01:20,239 --> 00:01:23,200
Speaker 1: That's just going to be over the top, just sort.

24
00:01:23,079 --> 00:01:25,400
Speaker 2: Of worked out that way weirdly enough.

25
00:01:25,599 --> 00:01:28,359
Speaker 1: Well, I have a Christmas present for you, my friend,

26
00:01:28,560 --> 00:01:31,959
oh oh, that you are not going to believe. And

27
00:01:32,040 --> 00:01:35,079
you know you and I are very hard to buy for, yeah,

28
00:01:35,200 --> 00:01:38,079
without a doubt. And so Kelly got this gift for

29
00:01:38,239 --> 00:01:41,480
me and I was like, oh, yeah, Richard needs one

30
00:01:41,480 --> 00:01:41,799
of these.

31
00:01:42,400 --> 00:01:44,640
Speaker 2: So what have you done?

32
00:01:45,280 --> 00:01:49,959
Speaker 1: We'll wait and see after the holidays. What happened? First?

33
00:01:50,239 --> 00:01:53,519
Before we get going, let's roll the crazy music for

34
00:01:53,760 --> 00:01:56,040
better no framework possible?

35
00:02:03,799 --> 00:02:04,200
Speaker 2: All right, man?

36
00:02:04,239 --> 00:02:06,480
Speaker 1: What have got? Well, as you know, I do this

37
00:02:06,519 --> 00:02:10,960
other podcast with Patrick Hines and Duyne Laflotte called Security

38
00:02:11,000 --> 00:02:16,960
This Week, and we we basically talk about security issues

39
00:02:17,280 --> 00:02:19,840
but through the lens of current events, with a whole

40
00:02:19,879 --> 00:02:23,120
bunch of dad jokes thrown in there. So we laugh

41
00:02:23,159 --> 00:02:25,199
a lot. But you know, you have to sort of

42
00:02:25,240 --> 00:02:27,960
spice up this content because it's very dull.

43
00:02:28,719 --> 00:02:29,280
Speaker 2: It can be.

44
00:02:29,719 --> 00:02:32,599
Speaker 1: Security can be very dry, and when.

45
00:02:32,439 --> 00:02:34,120
Speaker 2: It's not dull, it's terrifying, right, Like.

46
00:02:34,120 --> 00:02:38,000
Speaker 1: That's sort of your choices, Yeah, yeah, and terrifying it is,

47
00:02:38,159 --> 00:02:40,800
and so you know, we have to laugh and that's why.

48
00:02:40,840 --> 00:02:45,479
But anyway, we decided to open a Discord channel and

49
00:02:46,000 --> 00:02:50,080
it has become very popular. Not only are people asking

50
00:02:50,159 --> 00:02:54,719
questions and interacting and stuff and giving us suggestions for stories,

51
00:02:55,439 --> 00:03:00,800
but they're also learning a lot from Attrick and Dwayne,

52
00:03:00,879 --> 00:03:04,479
Like they're going to be doing sort of training in

53
00:03:04,840 --> 00:03:09,240
Discord that you couldn't get anywhere else. You know, these

54
00:03:09,280 --> 00:03:13,080
guys are just like real pros. So I wanted to

55
00:03:13,120 --> 00:03:18,120
give you the Discord Channel. This being episode nineteen twenty nine.

56
00:03:18,319 --> 00:03:22,639
If you go to nineteen twenty nine dot pwoppwop dot me,

57
00:03:23,560 --> 00:03:26,560
that'll bring you to the Discord channel for security this week.

58
00:03:28,039 --> 00:03:31,319
And you should should you know, if you're interested in security,

59
00:03:31,439 --> 00:03:33,280
is a good thing to do. It's a good community.

60
00:03:33,560 --> 00:03:35,879
Speaker 2: Absolutely cool man.

61
00:03:36,080 --> 00:03:39,879
Speaker 1: And it being nineteen twenty nine, we can't talk about

62
00:03:39,960 --> 00:03:43,520
that year without touching on the Wall Street crash.

63
00:03:43,759 --> 00:03:44,759
Speaker 2: Yeah, that was a big one.

64
00:03:45,199 --> 00:03:47,280
Speaker 1: That was a big thing in nineteen twenty nine. What

65
00:03:47,360 --> 00:03:48,680
was what was your favorite event?

66
00:03:48,800 --> 00:03:51,599
Speaker 2: It was also the first time as Zeppelin flew around

67
00:03:51,639 --> 00:03:52,159
the world.

68
00:03:52,400 --> 00:03:55,120
Speaker 1: Wow yeah, wow, wow, bad timing. You know.

69
00:03:55,319 --> 00:03:57,479
Speaker 2: I find the titled a machine That'll fly you all

70
00:03:57,520 --> 00:03:59,800
the way around the world, and then I mean, it's

71
00:03:59,800 --> 00:04:03,680
not Mark crash was bad. It was a twelve percent drop. Yeah,

72
00:04:03,719 --> 00:04:05,439
but you know they call that the trigger of the

73
00:04:05,439 --> 00:04:08,360
Great Depression. Yep, mostly because they had a tough time

74
00:04:08,400 --> 00:04:09,599
figuring out what to do after that.

75
00:04:09,680 --> 00:04:12,240
Speaker 1: There really wasn't enough money in the system to support

76
00:04:12,240 --> 00:04:14,280
that kind of drop, right.

77
00:04:14,240 --> 00:04:17,759
Speaker 2: Yep, and it had a little cascading event. Yeah, good fun.

78
00:04:17,879 --> 00:04:18,920
Nineteen twenty nine.

79
00:04:18,879 --> 00:04:22,399
Speaker 1: Right, good fun. All right, who's talking to us today?

80
00:04:22,439 --> 00:04:25,279
Speaker 2: Richard gradukommadov a show eighteen sixty five, the one we

81
00:04:25,319 --> 00:04:28,120
did with our friend April back in September of twenty three,

82
00:04:28,279 --> 00:04:29,959
so a little over a year ago. We were talking

83
00:04:29,959 --> 00:04:32,879
about Azure and GitHub and our friend Mark wan Sall

84
00:04:32,920 --> 00:04:34,800
had this comed He said, I always love listening to

85
00:04:34,800 --> 00:04:37,160
April talking about DevOps, and now the talk is moving

86
00:04:37,160 --> 00:04:41,639
away from DevOps and towards platform engineering, which might be

87
00:04:41,639 --> 00:04:45,279
an interesting Donna Rocks Tappen's episode, Oh maybe I do

88
00:04:45,759 --> 00:04:48,680
definitely do platform engineering on run Ass Radio. A few

89
00:04:48,720 --> 00:04:52,199
years ago, Spotify donating a tool called Backstage. It's at

90
00:04:52,240 --> 00:04:55,600
backstage dot io to the Cloud Native Foundation, which builds

91
00:04:55,680 --> 00:04:59,560
developer portals. So this whole idea of being able to

92
00:05:00,000 --> 00:05:05,199
divide cloud resources to developers sort of self service with governance.

93
00:05:06,279 --> 00:05:08,560
While this looks promising from a corporate standards point of view,

94
00:05:08,560 --> 00:05:10,199
I wonder if the balance of power moves too much

95
00:05:10,240 --> 00:05:14,079
in favor of option away from developer agility. Always interesting times.

96
00:05:14,120 --> 00:05:18,639
I don't know mark giving smart Developers don't want administrator

97
00:05:18,639 --> 00:05:20,720
passwords because then it could be their fault.

98
00:05:21,000 --> 00:05:21,199
Speaker 1: Right.

99
00:05:21,319 --> 00:05:24,800
Speaker 2: The whole point about the portal approach is that if

100
00:05:24,839 --> 00:05:27,600
you do harm with what you instantiate through the portal,

101
00:05:27,839 --> 00:05:31,319
that's on the people who organize the portal, not on you.

102
00:05:31,319 --> 00:05:35,519
You have or should be living within constraints, so you

103
00:05:35,560 --> 00:05:38,439
know you should push back on what you're capable of

104
00:05:38,480 --> 00:05:41,560
doing if it's actually an impediment. But creating these sort

105
00:05:41,600 --> 00:05:44,920
of guard rails so that you control costs, like you

106
00:05:44,959 --> 00:05:48,319
limit the number of dumb things that happen. They're really important,

107
00:05:48,319 --> 00:05:50,319
and you know you don't want to find out the

108
00:05:50,399 --> 00:05:51,600
end of the month the ACCID at least been one

109
00:05:51,639 --> 00:05:53,600
hundred thousand dollars because you'll let some stuff up forgot

110
00:05:53,639 --> 00:05:56,399
to turn it off. That shouldn't be possible through these portals.

111
00:05:56,399 --> 00:05:59,160
So you know, save yourself some pain, use the portal

112
00:05:59,199 --> 00:06:00,639
and push on it. What does and do the job.

113
00:06:01,319 --> 00:06:03,360
Good advice, Richer, not that I have strong opinions about

114
00:06:03,360 --> 00:06:05,480
these things. Yeah, so Mark, thank you so much your

115
00:06:05,519 --> 00:06:07,279
comment and a copy of music Coby is on its

116
00:06:07,319 --> 00:06:08,519
way to you, and if you'd like a copy of

117
00:06:08,600 --> 00:06:10,360
music co buy. I write a comment on the website

118
00:06:10,360 --> 00:06:12,399
at don at Rocks dot com on the facebooks. We

119
00:06:12,399 --> 00:06:14,759
publish every show there, and you comment there and everybody

120
00:06:14,759 --> 00:06:16,680
in the show. We'll send your copy of music go by.

121
00:06:16,639 --> 00:06:19,680
Speaker 1: And you can further contact us on a variety of

122
00:06:19,759 --> 00:06:23,399
social media platforms other than Facebook. We've both been on

123
00:06:23,519 --> 00:06:26,000
ex Twitter for a number of years. That's what I'm

124
00:06:26,040 --> 00:06:29,600
calling it now ex Twitter. It seems like it's everybody's

125
00:06:29,639 --> 00:06:34,439
ex now used to be Twitter. But we're also on

126
00:06:34,680 --> 00:06:39,399
Blue Sky of course. I'm Carl Franklin b Sky's Social

127
00:06:39,560 --> 00:06:43,920
and that's social, and you're Rich Campbell. I'm Rich Campbell

128
00:06:44,000 --> 00:06:47,639
dot best Guide on Social and also I'm Masdon. I'm

129
00:06:47,720 --> 00:06:49,199
Carl Franklin at tech cub.

130
00:06:49,120 --> 00:06:51,279
Speaker 2: Dot Social, and I'm Rich Campbell at Master.

131
00:06:51,680 --> 00:06:54,279
Speaker 1: So there you go. So get in touch with us

132
00:06:54,560 --> 00:06:57,720
one way or another for any reason. But if you

133
00:06:58,120 --> 00:07:02,000
ask a question or have a comment and Richard reads it,

134
00:07:02,040 --> 00:07:04,040
we'll send you a copy of music to code buy

135
00:07:04,240 --> 00:07:04,639
for sure.

136
00:07:04,720 --> 00:07:07,600
Speaker 2: And by the way, I did put out on four

137
00:07:07,720 --> 00:07:10,879
on the X and the Blue Skies and the Threads

138
00:07:10,959 --> 00:07:13,079
and the Massodons that I was working on the geek

139
00:07:13,120 --> 00:07:16,480
outs last weekend. And I guess which one I got

140
00:07:16,480 --> 00:07:19,279
the most feedback on. I'm thinking Blue Sky is Blue Sky?

141
00:07:19,360 --> 00:07:22,560
Speaker 1: Yeah, yeah, yeah, I'm getting more engagement there than anywhere

142
00:07:22,560 --> 00:07:22,920
else too.

143
00:07:23,079 --> 00:07:25,079
Speaker 2: I got feedback on all of them, to be honest,

144
00:07:25,120 --> 00:07:27,319
So I'm very flattered, like that was nice. People love

145
00:07:27,360 --> 00:07:29,600
the geek out. So I got a long list of

146
00:07:29,600 --> 00:07:32,199
things you'll when we actually published a meal here, I'm

147
00:07:32,199 --> 00:07:34,560
going to mention your name if you asked a question.

148
00:07:34,759 --> 00:07:35,240
Speaker 1: Very cool.

149
00:07:35,759 --> 00:07:40,160
Speaker 2: But yeah, the Blue Sky response was swift and thorough excellent.

150
00:07:40,639 --> 00:07:43,680
All right, So let's bring back to dot net rocks.

151
00:07:43,720 --> 00:07:44,519
April Yoho.

152
00:07:46,160 --> 00:07:49,519
Speaker 1: So. She is a senior developer advocate and DevOps practicely

153
00:07:49,639 --> 00:07:54,240
at GitHub, specializing in application transformation and DevOps ways of working.

154
00:07:54,800 --> 00:07:57,319
Her focus is to take customers on a journey from

155
00:07:57,399 --> 00:08:01,600
legacy technology to server lists and containers where code comes first,

156
00:08:01,639 --> 00:08:04,720
while enabling them to take full advantage of DevOps practices.

157
00:08:05,319 --> 00:08:08,600
In you spare time, April spends time outdoors hiking, skiing,

158
00:08:08,680 --> 00:08:13,199
or scuba diving. That's where your nickname comes from, that

159
00:08:13,319 --> 00:08:16,279
you got when you were nine, right, and you're also

160
00:08:16,560 --> 00:08:20,720
a triathlete competing in iron Man and half iron Man triathlons.

161
00:08:22,120 --> 00:08:24,160
So if I could sum it up, don't with her,

162
00:08:25,040 --> 00:08:32,399
She'll kick your ass. Nice Welcome back, April.

163
00:08:32,159 --> 00:08:35,279
Speaker 3: Thank you, Carl. I think that's the best TLDR intro

164
00:08:35,360 --> 00:08:36,759
I've ever had in my entire life.

165
00:08:36,960 --> 00:08:41,600
Speaker 1: Very cool. Huh ForWords, that's all you need to know,

166
00:08:42,080 --> 00:08:42,799
right down to it.

167
00:08:44,320 --> 00:08:47,840
Speaker 2: That's too funny. How you doing. You've been adventuring?

168
00:08:48,039 --> 00:08:49,240
Speaker 1: Yeah, how you doing? What's going on?

169
00:08:49,600 --> 00:08:53,399
Speaker 3: I'm good. I've been traveling around the world for work.

170
00:08:53,639 --> 00:08:55,639
Some pleasure, a little bit of pleasure here and there,

171
00:08:55,799 --> 00:08:58,799
but mostly just traveling around the world going to customer events,

172
00:08:59,240 --> 00:09:01,960
first party events. We just had Get up Universe, what

173
00:09:02,000 --> 00:09:05,399
was that a month and a half ago? Get up

174
00:09:05,440 --> 00:09:09,840
Constellation in South Africa, Get Up Constellation in India. Yeah,

175
00:09:09,879 --> 00:09:11,200
it's been busy. And then we just had a night

176
00:09:11,440 --> 00:09:14,519
was that last week in Chicago? Som hm, it's been

177
00:09:14,519 --> 00:09:15,080
a busy bee.

178
00:09:15,200 --> 00:09:15,440
Speaker 2: Yeah.

179
00:09:15,519 --> 00:09:18,159
Speaker 1: I got a little story for you. So I'm working

180
00:09:18,159 --> 00:09:20,759
with a customer and we started out with a big

181
00:09:20,879 --> 00:09:24,600
GitHub repo and everything's working great, and then they say, yeah,

182
00:09:24,639 --> 00:09:26,720
we're gonna move over to Azure dev ops and I'm

183
00:09:26,720 --> 00:09:29,320
like why. They say, well, a lot of our other

184
00:09:29,440 --> 00:09:31,840
products are over there in the customers and you know,

185
00:09:31,879 --> 00:09:34,080
and this and that they want them us to move.

186
00:09:34,120 --> 00:09:38,879
So we're trying to move and it was painful, like, oh,

187
00:09:38,960 --> 00:09:41,440
I didn't know I could add a new file to

188
00:09:41,519 --> 00:09:44,840
my project and that, you know, the source control just

189
00:09:44,879 --> 00:09:49,080
wouldn't pick it up what I added it to the too,

190
00:09:49,159 --> 00:09:52,159
and I sinked and everything. No, it's just not there.

191
00:09:52,759 --> 00:09:55,519
And when we had to configure it, like by default,

192
00:09:55,559 --> 00:09:58,360
you have to configure it so that you can do that.

193
00:09:59,440 --> 00:10:02,360
So now we're moving all the way back to get hub.

194
00:10:03,159 --> 00:10:05,639
Screw that. Yeah, I don't know why you would have left.

195
00:10:05,759 --> 00:10:06,799
I wasn't my decision.

196
00:10:06,879 --> 00:10:09,720
Speaker 3: Well, you know, sometimes we have to learn by our mistakes, Carl,

197
00:10:09,799 --> 00:10:10,919
we all grow up, right.

198
00:10:11,080 --> 00:10:13,720
Speaker 1: Yeah, yeah, well just to say it wasn't my decision.

199
00:10:13,799 --> 00:10:15,559
And I'm the one that pushed them towards GitHub in

200
00:10:15,559 --> 00:10:17,679
the first place, because that's that's my home base.

201
00:10:17,960 --> 00:10:20,440
Speaker 2: Sure, welcome cloth Work.

202
00:10:20,919 --> 00:10:23,240
Speaker 3: Welcome back, Thank you. We love having you on GitHub.

203
00:10:23,320 --> 00:10:25,320
Speaker 1: It's all about the act. Oh, I have plenty of

204
00:10:25,399 --> 00:10:27,919
reposts on GitHub. It's just through this one customer.

205
00:10:28,200 --> 00:10:28,679
Speaker 3: Yes you do.

206
00:10:29,200 --> 00:10:32,519
Speaker 1: But what's new in GitHub in twenty twenty five?

207
00:10:32,840 --> 00:10:36,600
Speaker 3: What is new? Well, it's been the year of AI.

208
00:10:37,240 --> 00:10:42,360
You haven't heard. AI is everywhere, absolutely everywhere. So at

209
00:10:42,440 --> 00:10:46,960
Universe we made quite a few announcements. Do you want

210
00:10:47,000 --> 00:10:47,600
me to run through them?

211
00:10:47,759 --> 00:10:48,320
Speaker 2: Yeah? Please?

212
00:10:48,559 --> 00:10:49,279
Speaker 1: Sure? Sure?

213
00:10:49,399 --> 00:10:51,639
Speaker 3: So I think I think actually probably the good headline

214
00:10:51,639 --> 00:10:53,720
of AI. There's a couple things I think are good headlines.

215
00:10:53,799 --> 00:10:57,240
One is AI is really end to end with you

216
00:10:57,360 --> 00:11:01,159
on GitHub. Now, we're really building it into the start

217
00:11:01,240 --> 00:11:04,519
of an issue, even in discussions, into your pull requests,

218
00:11:05,000 --> 00:11:08,639
before your poll request, even in your IDEs, and then

219
00:11:09,320 --> 00:11:11,600
all the way through to remediation. So we're really seeing

220
00:11:11,799 --> 00:11:14,480
a full DevOps life cycle with AI end to end,

221
00:11:15,200 --> 00:11:17,840
not just with copilot workspace, but copilot chat and having

222
00:11:18,159 --> 00:11:21,600
get up copilt with you wherever you go. That's been

223
00:11:21,639 --> 00:11:24,399
pretty cool. The big thing that people have also shouted

224
00:11:24,440 --> 00:11:26,480
about is having the option of different models. So we've

225
00:11:26,519 --> 00:11:30,519
done a lot with multi multi modality, multi models. However

226
00:11:30,639 --> 00:11:32,639
we call it these days, there's a big fancy term.

227
00:11:32,720 --> 00:11:34,840
Speaker 2: Because your original was open AI, right, The.

228
00:11:34,840 --> 00:11:37,559
Speaker 3: Original was open ai and we still have that in place,

229
00:11:37,639 --> 00:11:39,840
but we've moved away from that to different models. So

230
00:11:39,840 --> 00:11:42,480
we announced about four or five other models, plus the

231
00:11:42,519 --> 00:11:44,879
actual GitHub model site as well. So you can choose

232
00:11:44,919 --> 00:11:46,279
your model, you can play with it, you can have

233
00:11:46,360 --> 00:11:48,000
a look and go right, what works, what doesn't work,

234
00:11:48,039 --> 00:11:51,399
how does it respond? And people really want the choice,

235
00:11:51,399 --> 00:11:53,399
so you can go shopping for models now when you're

236
00:11:53,399 --> 00:11:54,080
writing your code.

237
00:11:54,639 --> 00:11:57,360
Speaker 2: Right, I'm just surprised that they care. Does it really

238
00:11:57,399 --> 00:11:58,440
make that much of a difference.

239
00:11:58,799 --> 00:12:00,919
Speaker 3: It does, And you know, it's actually funny you say that.

240
00:12:01,000 --> 00:12:04,639
I wrote an article for the dot net blog at

241
00:12:04,679 --> 00:12:07,480
Microsoft several months ago when get hub models got released

242
00:12:07,480 --> 00:12:09,000
and they're like, yeah, we want to showcase the get

243
00:12:09,039 --> 00:12:12,399
hub models features and functionality and dot net I said, okay, great,

244
00:12:12,519 --> 00:12:14,960
it wasn't there so you could do it in c sharp,

245
00:12:15,360 --> 00:12:19,240
Python or JavaScript, and they did release capability in c

246
00:12:19,399 --> 00:12:23,519
sharp and yeah, it made a huge difference. And actually,

247
00:12:23,559 --> 00:12:25,720
if you go into getub copilot now and say what

248
00:12:25,919 --> 00:12:28,000
is the best model to use for C sharp or

249
00:12:28,559 --> 00:12:30,960
you know, even testing or whatever, it will give you

250
00:12:31,120 --> 00:12:33,480
three or four different options. And I've gone into the

251
00:12:33,519 --> 00:12:36,679
GitHub models playground and started playing with the different models

252
00:12:36,679 --> 00:12:38,679
and seeing what the outputs are like. It's a ton

253
00:12:38,720 --> 00:12:41,000
of fun. But yeah, it will definitely differ on type

254
00:12:41,000 --> 00:12:43,960
of language you're using. If you whether use an infrastructure's code,

255
00:12:44,360 --> 00:12:47,039
you know, anything C Sharp related or Go Lang, Python,

256
00:12:47,120 --> 00:12:49,240
et cetera, the models are all different. Do you want

257
00:12:49,240 --> 00:12:52,799
to use different models for visuals? Visualization? Absolutely?

258
00:12:53,120 --> 00:12:55,480
Speaker 1: One of my favorite features of large language models. It's

259
00:12:55,720 --> 00:12:59,000
is its ability to remember what we've talked about right,

260
00:12:59,639 --> 00:13:03,200
well done the context? And I'm wondering if you're if

261
00:13:03,240 --> 00:13:06,200
you have to switch models for different parts of your application,

262
00:13:07,519 --> 00:13:11,440
do they share the context or does each of them

263
00:13:11,559 --> 00:13:12,759
have their own context?

264
00:13:13,039 --> 00:13:15,559
Speaker 3: You know, I haven't because we've just released it and

265
00:13:15,639 --> 00:13:17,919
a lot of it's in preview. I haven't died deep

266
00:13:18,039 --> 00:13:19,879
enough to really answer that. So what I've done with

267
00:13:19,879 --> 00:13:22,639
the models is taken the same task and compared like

268
00:13:22,720 --> 00:13:26,159
for like's, if I ask it to write x unit

269
00:13:26,279 --> 00:13:29,159
tests in my C shark code, one model is going

270
00:13:29,200 --> 00:13:31,120
to differ from another one. Whereas if I say, write

271
00:13:31,159 --> 00:13:33,000
write some ex unit tests, or if I give another

272
00:13:33,039 --> 00:13:36,720
model the task of make my C shark code more secure,

273
00:13:36,759 --> 00:13:38,320
it's going to give you complete different answers. So I

274
00:13:38,480 --> 00:13:41,320
like doing like for like comparison, same thing. When we

275
00:13:41,440 --> 00:13:44,240
compare the usability of AI to a human. If it

276
00:13:44,320 --> 00:13:47,200
takes me five hours to write a unit test, hypothetically,

277
00:13:48,159 --> 00:13:50,840
how long does it take with copilot five minutes or less?

278
00:13:51,799 --> 00:13:54,080
Speaker 2: You guys are the ones that coin the term copilot.

279
00:13:54,759 --> 00:13:57,559
Clearly are using it differently. Now, like why are there

280
00:13:57,679 --> 00:14:01,679
multian I get multiple models because they're between Well, why

281
00:14:01,679 --> 00:14:05,240
are there multiple copilots? Like you already talked about copilot workspace,

282
00:14:05,320 --> 00:14:06,080
copilot chat.

283
00:14:06,679 --> 00:14:09,120
Speaker 3: Yeah, so when So let's back this up. So there's

284
00:14:09,120 --> 00:14:12,159
Getthub copilot, which is the original copilot, and then we

285
00:14:12,240 --> 00:14:15,000
started increasing features and functionality in it. So with that

286
00:14:15,279 --> 00:14:17,679
we started, well we being Getthub not me, I have

287
00:14:17,799 --> 00:14:21,080
nothing to do with branding, started differentiating the types of

288
00:14:21,200 --> 00:14:24,519
use cases for copilots, so copilot chat because you can

289
00:14:24,720 --> 00:14:27,360
chat with it, you can have conversation with it in

290
00:14:28,440 --> 00:14:31,679
your editor, in your ID. Then we started looking at

291
00:14:31,720 --> 00:14:33,960
copilot workspace, which is an end to end driven thing.

292
00:14:34,120 --> 00:14:35,840
I have no idea how they name these things, but

293
00:14:35,919 --> 00:14:40,360
we've basically tacked on another differentiator and copilot in its

294
00:14:40,399 --> 00:14:43,200
different use cases. And then Microsoft took Copilot and put

295
00:14:43,240 --> 00:14:45,840
it on everything and rebranded three sixty five recently to

296
00:14:46,480 --> 00:14:47,240
copilot again.

297
00:14:47,600 --> 00:14:50,320
Speaker 2: Well, sometimes it's three sixty five copilots. Sometimes this copilot

298
00:14:50,360 --> 00:14:51,120
for three sixty five.

299
00:14:51,159 --> 00:14:57,000
Speaker 3: But yeah, it's let's take this back to the naming

300
00:14:57,080 --> 00:14:59,639
convention at Microsoft and the marketing folks like you had

301
00:14:59,679 --> 00:15:03,240
Team Foundation Server you had as your DevOps. Like the

302
00:15:03,519 --> 00:15:07,360
naming conventions and the branding. I not to comment on.

303
00:15:07,759 --> 00:15:09,600
It is tough. It's hard. There's a lot of products.

304
00:15:09,600 --> 00:15:11,679
Speaker 1: I get it. I imagine they like hire a new

305
00:15:11,759 --> 00:15:13,759
executive when they come in the first thing and say, okay,

306
00:15:14,240 --> 00:15:16,799
we're going to change the names of these things. Who's

307
00:15:16,879 --> 00:15:17,120
with me?

308
00:15:17,799 --> 00:15:20,200
Speaker 3: He's like, let's change the icons and the names. Let's

309
00:15:20,240 --> 00:15:23,559
confuse everyone because I like the pictures. I like knowing

310
00:15:23,600 --> 00:15:25,279
what does the picture look like, what's the icon that

311
00:15:25,320 --> 00:15:27,000
I'm looking for that day? And then when they change it,

312
00:15:27,320 --> 00:15:27,799
I'm lost.

313
00:15:27,919 --> 00:15:30,279
Speaker 2: Yeah right, I'm very lost. You can change the nail

314
00:15:30,279 --> 00:15:32,240
you want, but if you change the icon, we're doomed.

315
00:15:32,639 --> 00:15:34,919
Speaker 3: Yeah, exactly, exactly.

316
00:15:36,519 --> 00:15:38,240
Speaker 2: Name. We're not going to worry about. It's going to

317
00:15:38,279 --> 00:15:38,720
be fine.

318
00:15:40,000 --> 00:15:40,279
Speaker 1: Okay.

319
00:15:40,320 --> 00:15:43,840
Speaker 2: So I mean that's three different quote unquote co pilots, Right,

320
00:15:43,960 --> 00:15:46,320
but I guess they just arrive at different places for you.

321
00:15:46,720 --> 00:15:49,360
Speaker 3: Yeah, they have different features and functionality. So the copilot

322
00:15:49,480 --> 00:15:51,559
chat is the chat in your ID. So whether you're

323
00:15:51,559 --> 00:15:53,720
in VS code or this is your rubber duck, this

324
00:15:53,840 --> 00:15:55,519
is your rubber duck one thousand percent, and they're all

325
00:15:55,519 --> 00:15:57,919
your rubber ducks actually, but this is chat, This is conversational,

326
00:15:58,000 --> 00:16:01,799
giving it the context and then you know, this is

327
00:16:01,840 --> 00:16:04,879
what I probably used ninety nine point nine percent of

328
00:16:04,919 --> 00:16:05,519
my time doing.

329
00:16:06,279 --> 00:16:07,600
Speaker 2: Is is chat.

330
00:16:07,759 --> 00:16:09,639
Speaker 3: So I opened up my ID, I asked them about

331
00:16:09,639 --> 00:16:12,080
my code base, how to fix my code, Let's fix

332
00:16:12,120 --> 00:16:14,960
the legacy code. Convert code from c sharp to JavaScript.

333
00:16:14,960 --> 00:16:17,000
If you're feeling feisty that day, you know, you could

334
00:16:17,039 --> 00:16:17,639
do whatever you want.

335
00:16:18,320 --> 00:16:20,159
Speaker 2: Yeah, I would have gotten to Ruby on rails, but whatever,

336
00:16:20,799 --> 00:16:22,799
you know, Okay, you know, to each their own.

337
00:16:22,720 --> 00:16:22,960
Speaker 1: Are you.

338
00:16:25,000 --> 00:16:27,159
Speaker 2: Would have you done with my friend Richard Campbell. I

339
00:16:27,320 --> 00:16:29,440
just remember that guy sitting in the corner. Whenever we

340
00:16:29,519 --> 00:16:32,320
were battling on a problem like this, you know, we rails.

341
00:16:32,320 --> 00:16:33,879
It would have been fine. It's like, yeah, we would

342
00:16:33,879 --> 00:16:36,200
have gone away for six months and then what that was?

343
00:16:36,279 --> 00:16:38,480
Ruby Buddha, wasn't it problem?

344
00:16:39,039 --> 00:16:42,440
Speaker 1: Yeah? He was like, ah, I have the answer Ruby

345
00:16:42,480 --> 00:16:45,039
on rails every problem, every problem is solved.

346
00:16:45,440 --> 00:16:49,159
Speaker 3: Yes, It's kind of like how Kupernetti solves everything, the

347
00:16:49,240 --> 00:16:51,519
Ruby on rails for code and Kupernettes for everything else.

348
00:16:51,759 --> 00:16:51,960
Speaker 1: Yeah.

349
00:16:52,120 --> 00:16:54,080
Speaker 2: Yeah, you know the best way to know it's not

350
00:16:54,159 --> 00:16:55,759
a solve problem is just to look at how many

351
00:16:55,799 --> 00:16:59,159
products have the word Kubernetes in them. A solve problem,

352
00:16:59,200 --> 00:17:04,160
there'd be one, there's not. There's dozens, so okay.

353
00:17:04,200 --> 00:17:04,880
Speaker 3: More than that now.

354
00:17:05,599 --> 00:17:07,359
Speaker 2: Yeah. But I feel the same way about the copilots,

355
00:17:07,400 --> 00:17:10,039
like we're still feeling around for the perfect interface. Like

356
00:17:10,440 --> 00:17:14,039
I appreciate your view on chat. That's just this idea

357
00:17:14,079 --> 00:17:17,440
of this is where I come in to a project

358
00:17:17,480 --> 00:17:20,200
I haven't touched in three months, and I start with

359
00:17:20,319 --> 00:17:23,960
chat saying, okay, what the hell was I thinking? Just

360
00:17:24,519 --> 00:17:27,920
that it can start presenting some information about this code base.

361
00:17:28,240 --> 00:17:30,920
Speaker 3: And it's there to chats, there to conversation lies. I

362
00:17:30,920 --> 00:17:33,079
think with the new models as too, it's skewed the

363
00:17:33,119 --> 00:17:36,480
lines quite a bit. So copilot chat was very much

364
00:17:37,200 --> 00:17:41,119
iteration and context, and then with the new models you

365
00:17:41,160 --> 00:17:44,240
can give it full sentences and paragraphs and you can

366
00:17:44,319 --> 00:17:48,200
go from you know, the slash explain command, the slash test, command,

367
00:17:48,759 --> 00:17:53,519
slash help to how do I execute this class? And

368
00:17:53,720 --> 00:17:56,039
oh yeah, and explain it to me in Dutch and

369
00:17:56,200 --> 00:17:59,759
it will. It's pretty fantastic I have. That's been my

370
00:17:59,839 --> 00:18:02,480
new party trick is every country I've visited I've used,

371
00:18:02,559 --> 00:18:05,279
I've spoken to co pilot in whatever native language I'm mean.

372
00:18:06,359 --> 00:18:08,000
So that's been exciting because you never know how it's

373
00:18:08,000 --> 00:18:10,559
going to respond, and it's actually been it's been really good.

374
00:18:10,640 --> 00:18:11,359
It's been spot on.

375
00:18:11,720 --> 00:18:13,240
Speaker 1: You speak Dutch a.

376
00:18:13,359 --> 00:18:15,880
Speaker 3: Little bit, but I'm better in German. And please, let's

377
00:18:15,880 --> 00:18:17,160
not test. That's the end of my day to day.

378
00:18:17,200 --> 00:18:18,319
My brain cells stopped working.

379
00:18:18,480 --> 00:18:19,880
Speaker 2: Yeah, that's not nice.

380
00:18:20,640 --> 00:18:23,680
Speaker 3: That's that's not nice. I think Richard's seen me or

381
00:18:23,759 --> 00:18:26,200
heard me speak Dutch before in our life potentially.

382
00:18:26,400 --> 00:18:29,559
Speaker 1: Yeah, what we've been out and about what's Dutch for? Beer?

383
00:18:30,359 --> 00:18:37,240
Speaker 3: Beera via Germans, beer, Dutches, beak. The hard languages to

384
00:18:37,319 --> 00:18:40,119
learn at the same time because they sound similar but

385
00:18:40,319 --> 00:18:41,200
are pronounce.

386
00:18:41,240 --> 00:18:45,720
Speaker 1: It's usually where you start though, right, because beer, beer,

387
00:18:45,799 --> 00:18:53,039
donka whiskey. Yeah, all right, now that I've completely derailed

388
00:18:53,079 --> 00:18:55,799
the conversation, let's get back to give up nice.

389
00:18:57,039 --> 00:19:00,240
Speaker 2: Now it's co pilot chat, really for studio code or

390
00:19:00,400 --> 00:19:02,079
studio or does that matter?

391
00:19:02,759 --> 00:19:06,480
Speaker 3: So all the new features are coming out Visual Studio Code.

392
00:19:06,680 --> 00:19:10,440
Why it is the flagship product at Microsoft and the

393
00:19:10,559 --> 00:19:13,240
vs CO team is hot on this, and it's also

394
00:19:13,799 --> 00:19:17,440
the most widely used ID. Now for all the dot

395
00:19:17,480 --> 00:19:19,240
net community, They're going to say, well, what about us

396
00:19:19,279 --> 00:19:21,960
in Visual Studio there is development in there.

397
00:19:22,200 --> 00:19:25,680
Speaker 2: Yeah, I'm gonna grab onto that hole. Did you just

398
00:19:25,759 --> 00:19:28,920
call Visual Studio Code the code editor and ID?

399
00:19:29,279 --> 00:19:30,039
Speaker 1: Is that what she said?

400
00:19:30,319 --> 00:19:33,640
Speaker 3: I don't know what she said, probably maybe yeah.

401
00:19:34,160 --> 00:19:38,400
Speaker 1: And also the flagship ID. So I thought flagship didn't

402
00:19:38,440 --> 00:19:43,200
mean most popular but original or large, largest or whatever.

403
00:19:43,519 --> 00:19:44,839
Speaker 3: Can we totally erase all that?

404
00:19:44,960 --> 00:19:46,799
Speaker 1: And started, No, no, no, that's all right. You know,

405
00:19:47,039 --> 00:19:49,799
you know what we could define flagship is the biggest

406
00:19:49,960 --> 00:19:53,440
on disc. You know that it is Visual Studio.

407
00:19:53,720 --> 00:19:57,279
Speaker 3: It's it's definitely our leader in ID technologies out in

408
00:19:57,359 --> 00:20:00,440
the world, and the vs COD team is hot on it.

409
00:20:00,519 --> 00:20:03,759
They're very good at developing the extension. So the Visual

410
00:20:03,759 --> 00:20:06,079
Studio team develops a lot of the extensions for Visual

411
00:20:06,119 --> 00:20:09,640
Studio and then for Intelligay and all of those products.

412
00:20:10,079 --> 00:20:13,160
Those guys, those folks are responsible for the engineering behind

413
00:20:13,200 --> 00:20:15,599
that so we give them access to the APIs to

414
00:20:15,960 --> 00:20:18,200
do what they need to do, but it's on them

415
00:20:18,240 --> 00:20:20,079
to develop. But yeah, vscode is one of the most

416
00:20:20,119 --> 00:20:23,160
popular IDs, and it's open source, so there's lots of

417
00:20:23,200 --> 00:20:24,720
great things to say about it. But yes, you get

418
00:20:24,720 --> 00:20:27,200
every dot net developer that's like, well, what about visual Studio,

419
00:20:27,240 --> 00:20:30,000
and I'm like, it's there. I'll be honest, I haven't

420
00:20:30,079 --> 00:20:34,000
done the demo in visual Studio in a while. It's

421
00:20:34,039 --> 00:20:37,440
been a long time. It's a heavyweight application on my machine,

422
00:20:37,519 --> 00:20:39,039
and most of the time I'm using a get Hub

423
00:20:39,079 --> 00:20:42,559
code space, which is vs code in the cloud, in

424
00:20:42,599 --> 00:20:43,400
the secure environment.

425
00:20:43,559 --> 00:20:48,079
Speaker 2: So selfishly, yeah, yeah, no, I don't know how many

426
00:20:48,160 --> 00:20:50,559
new users coming to visual Studio, but I know there's

427
00:20:50,559 --> 00:20:52,720
a lot of existing users in the visual Studio space.

428
00:20:52,799 --> 00:20:55,119
And it's this is a recognition that it's as much

429
00:20:55,160 --> 00:20:59,240
a project management tool as it is also a coding environment,

430
00:21:00,160 --> 00:21:04,160
and and so you know, you don't move away from

431
00:21:04,240 --> 00:21:07,519
it easily, certainly, but I do seem to live in

432
00:21:07,680 --> 00:21:12,000
both certain projects I function in studio and other projects

433
00:21:12,119 --> 00:21:13,000
I function in code.

434
00:21:13,559 --> 00:21:16,519
Speaker 3: Absolutely. I think anyone that's working in visual Studio is

435
00:21:17,279 --> 00:21:20,599
crossing oader vs Code a lot, but it's you know,

436
00:21:20,680 --> 00:21:24,640
it's it's VS code is an enabler for anyone that

437
00:21:25,160 --> 00:21:29,279
is still learning to code. You have to think of

438
00:21:29,319 --> 00:21:31,319
it as you know, you have university students, they're all

439
00:21:31,559 --> 00:21:34,519
most of the university kids are learning Python. The kids

440
00:21:34,559 --> 00:21:36,960
they're adults, but most kids in school, eight nine, ten

441
00:21:37,039 --> 00:21:39,359
year olds are learning Python. People learning Python for research

442
00:21:39,400 --> 00:21:41,839
and data in school. So VS code is a great

443
00:21:41,920 --> 00:21:44,559
enabler as an ID. And I still have customers that

444
00:21:44,640 --> 00:21:47,359
don't use anything other than Notepad plus plus and I

445
00:21:47,359 --> 00:21:48,920
only want to start that argument.

446
00:21:50,599 --> 00:21:54,559
Speaker 2: But too many features in Visual Studio code apparently, well.

447
00:21:54,480 --> 00:21:56,720
Speaker 3: It's not enterprise level apparently, is what they've said.

448
00:21:57,559 --> 00:21:59,000
Speaker 2: And no Pad plus plus is.

449
00:21:59,680 --> 00:22:02,079
Speaker 3: Yes, that was a great That was a great argument

450
00:22:02,160 --> 00:22:04,759
we had with their security team. When you know, you

451
00:22:04,799 --> 00:22:06,960
want to talk about developer productivity, don't let them use

452
00:22:07,000 --> 00:22:10,200
NOE pad plus plus. They just didn't want to take

453
00:22:10,200 --> 00:22:12,279
the time to procure and go through that process of

454
00:22:12,640 --> 00:22:16,079
vetting the product. And a free product, yes, and if

455
00:22:16,119 --> 00:22:17,200
it yeah, that's yes.

456
00:22:17,640 --> 00:22:20,079
Speaker 1: Yes, I don't think money was the issue there. No,

457
00:22:21,160 --> 00:22:22,000
it was not money.

458
00:22:22,079 --> 00:22:27,079
Speaker 2: The learning curve, yes, such as that actually is. But

459
00:22:27,160 --> 00:22:29,119
in reality, of course, is that chat shows up in

460
00:22:29,160 --> 00:22:32,559
either place. There's plugins for both. Like wherever you work,

461
00:22:32,640 --> 00:22:34,400
these tools are going to come to you yes and

462
00:22:34,640 --> 00:22:37,960
again conversations about code, which is really interesting because half

463
00:22:38,000 --> 00:22:40,559
the time we're still formulating what the heck we're thinking

464
00:22:40,599 --> 00:22:43,599
about our code, and just to rubber duck, it helps.

465
00:22:43,880 --> 00:22:46,240
Speaker 3: It is and the single paint of glass experience that

466
00:22:46,319 --> 00:22:49,119
you get in Visual Studio code is hands down my

467
00:22:49,240 --> 00:22:53,119
favorite experience. And when I say single paint of glass experience,

468
00:22:53,240 --> 00:22:56,200
when you start using the other GitHub extensions like poor

469
00:22:56,240 --> 00:22:59,720
requests and actions, you can see all of your automation.

470
00:23:00,279 --> 00:23:02,319
With a poor request, you can use the code review

471
00:23:02,480 --> 00:23:05,720
feature that we've just released at Universe, so it's part

472
00:23:05,759 --> 00:23:10,920
of copilot. Before you even stage your changes in your ID,

473
00:23:12,039 --> 00:23:15,880
you can use code review with copilot. So is that

474
00:23:16,039 --> 00:23:18,519
is one hundred percent of rubberduct scenario, or your junior

475
00:23:18,559 --> 00:23:20,799
developer want to understand how to write better code, or

476
00:23:20,920 --> 00:23:24,319
you're like me, I live and work somewhere separate from

477
00:23:24,319 --> 00:23:26,319
the rest of my team, so I'm working my morning

478
00:23:26,400 --> 00:23:29,079
time nine am ten am. I can check my own

479
00:23:29,200 --> 00:23:31,720
poor request with co Pilot, and then you can also

480
00:23:31,880 --> 00:23:34,200
check it on stage changes, and then you can do

481
00:23:34,279 --> 00:23:36,960
a code review once you've submitted your poor request. So

482
00:23:37,000 --> 00:23:40,039
there's kind of three different places. Well, i'd say too,

483
00:23:40,240 --> 00:23:43,400
before the poor request and then after the poor request,

484
00:23:43,519 --> 00:23:46,240
and that helps improve code quality massively.

485
00:23:46,400 --> 00:23:46,640
Speaker 1: Great.

486
00:23:46,720 --> 00:23:48,839
Speaker 2: Now, I mean it's still traditional code reviews too, but

487
00:23:48,920 --> 00:23:52,039
this sounds like the code review I do before sitting

488
00:23:52,160 --> 00:23:55,160
with a senior to go through a review, just get

489
00:23:55,200 --> 00:23:56,160
yourself into shape.

490
00:23:56,279 --> 00:23:57,920
Speaker 3: Yeah, and I think it's also a great way to

491
00:23:58,039 --> 00:24:01,359
just check yourself because so often and we're rushed, we

492
00:24:01,559 --> 00:24:04,839
are frustrated, or it's again it's a context switch. You

493
00:24:04,839 --> 00:24:06,759
get pulled out of your ID into a meeting, or

494
00:24:07,160 --> 00:24:09,200
somebody taps on your shoulder, or the dog needs to

495
00:24:09,240 --> 00:24:11,079
go out, or you have screaming kids at home, or

496
00:24:11,119 --> 00:24:14,839
whatever the scenario is. You get stopped from whatever it

497
00:24:14,920 --> 00:24:17,359
is you're doing. You lose your flow, and then you know,

498
00:24:17,640 --> 00:24:20,359
you scape your code and honestly code that you're talking about.

499
00:24:20,920 --> 00:24:22,559
Any kind of repoll you pulled up three months ago,

500
00:24:22,680 --> 00:24:24,240
Why did I write something the way I did three

501
00:24:24,279 --> 00:24:27,559
months ago? Yeah, no idea, no clue, not sure what

502
00:24:27,599 --> 00:24:29,200
my brain cells were thinking at that time. So the

503
00:24:29,279 --> 00:24:33,319
ability to review what I did before I submitted is great.

504
00:24:33,359 --> 00:24:35,440
Also helps me from making just stupid, silly mistakes. The

505
00:24:35,519 --> 00:24:39,400
humans are the problems, right, Yeah, we like to put

506
00:24:39,440 --> 00:24:41,640
passwords in places that shouldn't be there, and we like

507
00:24:41,680 --> 00:24:44,440
to push buttons and misspell things and do.

508
00:24:44,519 --> 00:24:47,079
Speaker 2: Silly things, and so the review might catch a few

509
00:24:47,160 --> 00:24:47,839
more of those.

510
00:24:48,400 --> 00:24:49,759
Speaker 3: It has caught all of mine today.

511
00:24:53,799 --> 00:24:57,400
Speaker 1: Well, the name co pilot really applies to that, because

512
00:24:57,559 --> 00:25:00,359
that is like having someone looking over your shoulder and yeah,

513
00:25:00,400 --> 00:25:02,839
you know, before you commit this, you might want to

514
00:25:02,920 --> 00:25:05,880
look at these little issues here. Yeah. I like that.

515
00:25:06,279 --> 00:25:08,480
Speaker 2: Now, that's separate from the tool that helps write the

516
00:25:08,599 --> 00:25:11,960
pr right, that actually summarizes the poll requests and stuff like.

517
00:25:12,160 --> 00:25:12,359
Speaker 1: That's.

518
00:25:12,559 --> 00:25:15,720
Speaker 3: Yes, it's still part of the copilot licensing, but it's

519
00:25:15,759 --> 00:25:20,880
a separate, different step in in the development process.

520
00:25:20,839 --> 00:25:23,960
Speaker 2: Right, But I just appreciate it writes far better polar

521
00:25:24,000 --> 00:25:25,200
request statements than I do.

522
00:25:25,599 --> 00:25:29,079
Speaker 3: Oh absolutely well. It actually lists out the files for you. Yeah,

523
00:25:29,359 --> 00:25:32,000
it lists out the files, references them, and summarizes them.

524
00:25:32,160 --> 00:25:34,920
And you know, often I'll put up a pull request

525
00:25:34,960 --> 00:25:38,079
out of sheer frustration, be like, please, God work, you know,

526
00:25:38,440 --> 00:25:41,759
it's it's pretty ugly. My commits are really ugly sometimes.

527
00:25:41,839 --> 00:25:45,720
But you're rush, You're frustrated. It's your like eightieth attempt

528
00:25:45,759 --> 00:25:47,400
at getting this thing to work.

529
00:25:48,640 --> 00:25:51,240
Speaker 1: I got to admit I've put in commits with the

530
00:25:51,319 --> 00:25:54,640
comment was fixed a few things that didn't work before.

531
00:25:56,599 --> 00:26:00,440
Speaker 2: Yeah, oh great, and then I finally find in this

532
00:26:00,640 --> 00:26:02,880
four of those in a row, follows by half af

533
00:26:02,960 --> 00:26:09,599
ass right like yes, yes, yeah, help help by doom right,

534
00:26:09,839 --> 00:26:12,920
tried this again. I think the big one is you're

535
00:26:12,960 --> 00:26:15,799
often you're flailing around with a problem and you're just hack.

536
00:26:15,880 --> 00:26:18,440
You know, your your fence posting, your hacking it cod

537
00:26:18,480 --> 00:26:20,640
in different places. And one of the things I like

538
00:26:20,680 --> 00:26:22,880
about that summarizer is it shows me all those like

539
00:26:22,960 --> 00:26:26,039
why is there a file change in that file? Oh right, yeah,

540
00:26:26,119 --> 00:26:29,759
when I was flailing at that thing, maybe that change shouldn't.

541
00:26:29,400 --> 00:26:33,200
Speaker 3: Stay revert revert revert. And you know, it's also things

542
00:26:33,319 --> 00:26:38,519
like we talked about DevOps right, and you know what's

543
00:26:38,559 --> 00:26:40,799
the phrase, gosh, I wish my brain sales would work tonight.

544
00:26:42,200 --> 00:26:46,960
Short lived feature branches right, commit early and often. Yeah,

545
00:26:47,039 --> 00:26:48,880
and that's a good way to make sure you're committing

546
00:26:48,960 --> 00:26:51,440
the right size pull request for your features.

547
00:26:51,680 --> 00:26:54,880
Speaker 2: Yeah, don't stay over in that branch too long. Short

548
00:26:54,920 --> 00:26:57,839
lived branch like, don't also, just.

549
00:26:59,319 --> 00:27:03,079
Speaker 1: Right, I'm working with another developer on this project, and

550
00:27:03,200 --> 00:27:05,720
he's working in a totally different space than I'm working

551
00:27:05,799 --> 00:27:09,720
on and you know, we don't branch. We just you know,

552
00:27:09,839 --> 00:27:12,119
haven't needed to, haven't needed to, and if you don't

553
00:27:12,200 --> 00:27:13,000
need to, don't.

554
00:27:13,359 --> 00:27:15,720
Speaker 3: Yeah, I disagree with you, Carl, because what if you

555
00:27:15,799 --> 00:27:18,480
screw something up, You're screwing up your your single source

556
00:27:18,519 --> 00:27:18,839
of truth.

557
00:27:19,079 --> 00:27:21,839
Speaker 1: Well yeah, well I just roll back for that. You are,

558
00:27:22,160 --> 00:27:23,519
if I screw something up.

559
00:27:23,480 --> 00:27:25,319
Speaker 3: Then it won't build your buddy.

560
00:27:25,400 --> 00:27:27,799
Speaker 1: But right, but I'm working on my code, he's working

561
00:27:27,880 --> 00:27:31,599
on his, and we don't overlap. So if I screw

562
00:27:31,720 --> 00:27:33,960
up my code and if I break the build, I'm

563
00:27:34,000 --> 00:27:34,440
a jerk.

564
00:27:34,519 --> 00:27:36,400
Speaker 3: But but what if you bring in a third person?

565
00:27:36,960 --> 00:27:38,720
Speaker 2: Yeah, the real problem is when you roll back, and

566
00:27:38,839 --> 00:27:42,319
so you got to push back his work. Yeah, yes,

567
00:27:42,759 --> 00:27:44,119
but then he can haven't had to do that.

568
00:27:44,319 --> 00:27:48,319
Speaker 1: But you know what, though, it's a very probably a rare,

569
00:27:48,680 --> 00:27:51,240
more rare scenario the way I'm working with this particular

570
00:27:51,839 --> 00:27:54,240
you're hit the magic number two. Yeah. Any more than

571
00:27:54,279 --> 00:27:58,039
that we would have to be branching and merging probably, definitely.

572
00:27:58,680 --> 00:28:00,480
Speaker 2: It's all a question of chance of collision.

573
00:28:00,559 --> 00:28:03,519
Speaker 1: We also you know, text each other, right, So if

574
00:28:03,559 --> 00:28:06,039
he's going to make a change, he says, hey, I'm

575
00:28:06,319 --> 00:28:08,680
I'm going to make a change. Just have him out

576
00:28:08,720 --> 00:28:12,000
for an hour. Okay, no problem. So so we avoid

577
00:28:12,119 --> 00:28:13,640
we avoid merged conflicts like.

578
00:28:13,680 --> 00:28:14,839
Speaker 2: The plague nice.

579
00:28:15,039 --> 00:28:19,119
Speaker 3: You know, there's a great gitub feature for that, merge

580
00:28:19,200 --> 00:28:23,839
Cues's say, I'm sure how to avoid a merge bomb?

581
00:28:23,920 --> 00:28:24,599
Use a mergeque.

582
00:28:24,839 --> 00:28:27,880
Speaker 1: Well, you know, an SMS is working just fine for

583
00:28:28,000 --> 00:28:30,799
the two of us. Just one kind of mergequeue.

584
00:28:31,559 --> 00:28:36,079
Speaker 3: Yes, yes, have you ever been on a merge train?

585
00:28:36,960 --> 00:28:40,440
Speaker 1: Yeah? I took one to New Jersey once from and.

586
00:28:42,480 --> 00:28:44,720
Speaker 3: So this is this is before my GitHub days. And

587
00:28:44,799 --> 00:28:47,599
actually in getthub you can use the mergeque feature and

588
00:28:47,640 --> 00:28:50,039
a lot of our customers absolutely love it because they're like,

589
00:28:50,359 --> 00:28:52,079
you get merge bombs all the time, how do we

590
00:28:52,119 --> 00:28:53,720
prevent it? Yeah, look at merge cues. I'm like, oh,

591
00:28:53,759 --> 00:28:56,039
this is great. I was actually working in Azure dev

592
00:28:56,079 --> 00:28:59,799
ops on a customer project and we were on a

593
00:29:00,599 --> 00:29:03,400
mission as a team to close as many prs as possible,

594
00:29:03,480 --> 00:29:06,279
and we had some merge bomb issues. So we put

595
00:29:06,319 --> 00:29:09,680
an a merged train in Azure DevOps and it was

596
00:29:09,799 --> 00:29:15,039
probably the most fun slash hysterical slash frustrating moment of

597
00:29:15,240 --> 00:29:19,519
poll requests going through at once. But yeah, merge bombs

598
00:29:19,519 --> 00:29:19,960
are no fun.

599
00:29:20,400 --> 00:29:22,440
Speaker 1: So tell me about merged cues.

600
00:29:22,880 --> 00:29:25,720
Speaker 3: Well, I think I just summed to that you can

601
00:29:25,839 --> 00:29:31,200
set it up so that being said, with policy and so.

602
00:29:31,279 --> 00:29:33,920
Speaker 1: Basically multiple merges can happen in the right order.

603
00:29:34,079 --> 00:29:38,200
Speaker 3: Correct, you can or you can prioritize them. Pretty fancy stuff, isn't.

604
00:29:38,000 --> 00:29:40,279
Speaker 2: There also ability to sort of detect this might be

605
00:29:40,359 --> 00:29:42,400
a collision here, so let's pull it off onto a

606
00:29:42,519 --> 00:29:46,440
branch like So just a way to like branching policies.

607
00:29:47,000 --> 00:29:50,000
Speaker 3: Yeah, yeah, that's another feature for carl.

608
00:29:50,920 --> 00:29:53,680
Speaker 1: You know, when I get into my next project that

609
00:29:53,759 --> 00:29:56,400
has more than two developers, I would be definitely using

610
00:29:56,480 --> 00:29:56,920
this stuff.

611
00:29:57,279 --> 00:30:00,519
Speaker 3: Well you know, it's so I'm gonna something that might

612
00:30:00,640 --> 00:30:02,759
rock the boat with people that are out there listening.

613
00:30:02,839 --> 00:30:04,400
And I'm going to say this to you, Carla's my

614
00:30:04,519 --> 00:30:09,160
friendly sage advice for my many years doing demos. When

615
00:30:09,400 --> 00:30:13,279
when we as business as tech professionals are doing a demo,

616
00:30:13,480 --> 00:30:17,400
we should always use best practice. Here's why, because someone

617
00:30:17,440 --> 00:30:19,799
in the audience will do exactly as we did and

618
00:30:19,839 --> 00:30:22,480
it'll be simple, and that's why we like teaper demo simple,

619
00:30:22,559 --> 00:30:25,000
and they will pick up that bad habit. And so

620
00:30:25,200 --> 00:30:28,039
often I've been with someone in the industry it's like, oh,

621
00:30:28,079 --> 00:30:29,759
this is just a demo, it doesn't matter. Like well,

622
00:30:29,799 --> 00:30:34,000
people are learning from us, it does matter. And I

623
00:30:35,079 --> 00:30:37,240
was working on a very simple it was literally a

624
00:30:37,319 --> 00:30:40,640
vanilla website. It was for Microsoft, and someone had put

625
00:30:40,640 --> 00:30:44,079
a YAMO file at the They exposed the yamo file

626
00:30:44,160 --> 00:30:47,279
externally and they're like, yeah, can you not put this

627
00:30:47,400 --> 00:30:49,839
in your blog? And I'm like, so I didn't. I

628
00:30:49,920 --> 00:30:53,240
had to like kindly call out best practices about calling

629
00:30:53,319 --> 00:30:56,559
out that team or that person. But it's those things

630
00:30:56,599 --> 00:30:59,039
that are super critical when we're doing demos. Always use

631
00:30:59,079 --> 00:31:01,880
best practices because someone to greed up on that, or

632
00:31:02,079 --> 00:31:04,759
someone will go, oh, wow, what's emerge cue or wow,

633
00:31:05,000 --> 00:31:06,839
what kind of policies can be put in place? Because

634
00:31:07,079 --> 00:31:10,279
a two person projects quickly becomes a three person ten

635
00:31:10,359 --> 00:31:14,400
person and using the and then you know even better,

636
00:31:14,519 --> 00:31:16,559
template all your reposts so you don't have to think

637
00:31:16,599 --> 00:31:18,880
about this. You can figure it, create a template so

638
00:31:19,000 --> 00:31:21,960
every repository has all the best practices built in, and

639
00:31:22,079 --> 00:31:24,519
then you can do better. And then you're showing people

640
00:31:24,599 --> 00:31:26,440
to do better and you're making a difference.

641
00:31:26,160 --> 00:31:26,599
Speaker 2: In this world.

642
00:31:26,720 --> 00:31:29,559
Speaker 3: I totally agree, one pull request at a time.

643
00:31:29,640 --> 00:31:33,079
Speaker 1: Yes, where should break? Yeah, let's take a break. We'll

644
00:31:33,079 --> 00:31:35,240
be right back after these very important messages. And as

645
00:31:35,279 --> 00:31:37,519
a reminder, if you don't want to hear these messages,

646
00:31:37,839 --> 00:31:40,559
you can get an ad free feed by becoming a

647
00:31:40,599 --> 00:31:43,599
patron and Patreon dot dot and Rocks dot com. It's

648
00:31:43,640 --> 00:31:49,839
only five bucks a month. We'll be right back, and

649
00:31:50,039 --> 00:31:52,960
we're back. It's dotting at Rocks. I'm Carl Franklin, Averagar

650
00:31:53,039 --> 00:31:56,160
Cambell and that's April Yoho, and we're talking GitHub and

651
00:31:57,079 --> 00:31:59,480
went down a little rabbit hole about best practices and

652
00:32:00,119 --> 00:32:01,400
shame on you if you're not using him.

653
00:32:01,759 --> 00:32:04,039
Speaker 2: Should we talk about GitHub Spark because that was another

654
00:32:04,079 --> 00:32:07,000
one of the announcements out of Universe this year. Right,

655
00:32:07,559 --> 00:32:08,079
this is cool.

656
00:32:08,160 --> 00:32:11,799
Speaker 3: You should talk about Spark. Spark is awesome. I did

657
00:32:12,119 --> 00:32:16,559
a session yesterday for getub Winterfest and I was showing

658
00:32:16,599 --> 00:32:18,200
off the new stuff we announced at Universe, and I

659
00:32:18,319 --> 00:32:20,880
was like, oh, I'll build something with Spark. So Spark

660
00:32:21,119 --> 00:32:24,720
is very simply when you go to it now, it's

661
00:32:24,759 --> 00:32:30,519
in previews, you explain what you want to do, and again,

662
00:32:30,680 --> 00:32:34,200
giving the AI as much context as possible is ideal.

663
00:32:34,519 --> 00:32:37,920
So I actually built two apps without writing one bit

664
00:32:38,039 --> 00:32:41,279
of code. So the first app, I wanted to build

665
00:32:41,440 --> 00:32:44,200
a pac Man game, and I told it what colors

666
00:32:44,200 --> 00:32:45,960
I want to use, how many levels I wanted to have,

667
00:32:46,559 --> 00:32:48,640
and then it spat out something that kind of almost

668
00:32:48,680 --> 00:32:51,319
vaguely looked like a pac Man game. I could iterate it,

669
00:32:51,480 --> 00:32:53,160
and then it spat out a different version and it

670
00:32:53,279 --> 00:32:56,519
was much better. I built another app that just gave

671
00:32:56,599 --> 00:32:59,799
me a dashboard of my metrics on GitHub, so actions usage,

672
00:33:00,279 --> 00:33:02,680
copilot usage, and it was really simple. But I just

673
00:33:02,720 --> 00:33:05,400
told it what I wanted in a paragraph with some detail,

674
00:33:05,480 --> 00:33:07,079
and it's spat it out in a couple of minutes.

675
00:33:07,119 --> 00:33:09,799
So it's given people that are non developers the ability

676
00:33:09,799 --> 00:33:10,720
to write applications.

677
00:33:11,240 --> 00:33:13,119
Speaker 2: Is HUE mean, none of the hood. It's writing code, right,

678
00:33:13,400 --> 00:33:15,279
So I mean, do you have access to that code

679
00:33:15,319 --> 00:33:17,240
if you want to learn you know.

680
00:33:17,319 --> 00:33:19,359
Speaker 3: Funnily enough, I haven't played that far into it yet,

681
00:33:19,519 --> 00:33:21,359
but you could. It's it's pretty much on the surface

682
00:33:21,400 --> 00:33:24,000
at the moment. So the aim is you're not a

683
00:33:24,039 --> 00:33:26,440
developer or you're not very technical, you could be a teacher,

684
00:33:26,720 --> 00:33:30,319
or you could be in business somewhere and you need

685
00:33:30,400 --> 00:33:32,720
to do a thing and you want a dashboard. Spark

686
00:33:32,720 --> 00:33:35,240
will build it for you. Look get into repositories. It

687
00:33:35,640 --> 00:33:39,079
is really meant to be I'm not a coding type

688
00:33:39,319 --> 00:33:42,880
programmer and i need to do a thing, and it's

689
00:33:42,920 --> 00:33:44,039
pretty cool like that. That's good.

690
00:33:44,079 --> 00:33:46,240
Speaker 2: So it's a no code solution exactly.

691
00:33:46,680 --> 00:33:50,039
Speaker 3: It goes beyond power apps, beyond low code. It is

692
00:33:50,200 --> 00:33:51,920
no code. I haven't actually looked to see if you

693
00:33:51,920 --> 00:33:54,000
can see the source code. I think you can. I

694
00:33:54,039 --> 00:33:57,160
think you can modify it. I think. However, because I'm

695
00:33:57,200 --> 00:33:59,319
on preview access, I don't want to. I don't know

696
00:33:59,640 --> 00:34:02,279
it right the early days, I'm literally just playing with

697
00:34:02,359 --> 00:34:04,519
it and just learning how to give it the context

698
00:34:04,599 --> 00:34:06,279
and give it that example of what I want, and

699
00:34:06,319 --> 00:34:08,559
then I go to iterate it and yeah, it's just

700
00:34:08,639 --> 00:34:10,679
fun to spit out games and build stuff without writing

701
00:34:10,679 --> 00:34:12,119
any code, just to see what would happen.

702
00:34:12,599 --> 00:34:16,239
Speaker 2: Yeah, writing better prompts. And somehow it's sort of evolved

703
00:34:16,280 --> 00:34:18,760
with gethub models as well. I don't know that we've

704
00:34:18,800 --> 00:34:20,360
talked about gethub models at all.

705
00:34:20,599 --> 00:34:22,840
Speaker 3: It is a little bit tied into gehub Models. We

706
00:34:22,960 --> 00:34:25,920
haven't gone too far into that publicly in terms of

707
00:34:27,199 --> 00:34:30,280
what we're doing that get hub Models, let's call it

708
00:34:30,320 --> 00:34:33,119
a different aspect at the moment. So it is using

709
00:34:33,559 --> 00:34:35,440
some model selection on the back end, so you do

710
00:34:35,559 --> 00:34:38,559
get to choose your different models, but it's still really

711
00:34:38,639 --> 00:34:42,400
really limited early doors. Whereas gethub Models gives you and

712
00:34:42,559 --> 00:34:45,119
I want to say, thirty models to play with and

713
00:34:45,239 --> 00:34:49,159
you can compare them. And that's a very very different

714
00:34:49,199 --> 00:34:52,360
scenario because you can ask it programming questions. You can

715
00:34:53,639 --> 00:34:56,440
ask it for almost any technical question, or you can

716
00:34:56,480 --> 00:34:58,559
give it some code and it will process it and

717
00:34:58,639 --> 00:35:00,800
you compare two different models next to each other. So,

718
00:35:00,880 --> 00:35:04,079
like I was talking about the dot net reference earlier,

719
00:35:04,320 --> 00:35:07,400
it didn't support dot net initially. It does now, and

720
00:35:07,920 --> 00:35:09,880
that is definitely a lot more of a technical solution

721
00:35:10,000 --> 00:35:12,480
because you can hook into the API and get access

722
00:35:12,559 --> 00:35:15,199
and have secure area to play with it, whereas Spark

723
00:35:15,280 --> 00:35:17,920
is very much like you're using plain English or plain

724
00:35:18,000 --> 00:35:20,199
language to tell the model what you want and it

725
00:35:20,239 --> 00:35:20,960
will build it for you.

726
00:35:21,280 --> 00:35:25,199
Speaker 2: Okay to me. So get up Models female almost feels

727
00:35:25,280 --> 00:35:27,280
like AI studio, and that sends that this is a

728
00:35:27,360 --> 00:35:32,519
place to build generative apps. Spark leans on Models for

729
00:35:32,639 --> 00:35:35,480
some of that language part, but it's generating different code there.

730
00:35:36,559 --> 00:35:38,360
Models is interesting under its own. I think it's more

731
00:35:38,440 --> 00:35:40,280
mature than Spark. Spark is kind of brand new.

732
00:35:40,679 --> 00:35:42,880
Speaker 3: Spark is absolutely brand new. Models has been out for

733
00:35:43,039 --> 00:35:45,800
several months, and it's more language based, so you can

734
00:35:45,880 --> 00:35:48,039
customize it to the language you work with. Where's Spark is?

735
00:35:49,159 --> 00:35:51,039
You know the two things.

736
00:35:51,079 --> 00:35:51,960
Speaker 2: I'd pretty much under that.

737
00:35:52,079 --> 00:35:53,760
Speaker 3: It's all under the hood. You know, I could probably

738
00:35:53,800 --> 00:35:55,400
pull up what I built yesterday and have a look

739
00:35:55,440 --> 00:35:58,159
at I haven't. I just wanted to show I've used

740
00:35:58,199 --> 00:36:01,400
plain English and built a thing. I didn't get into

741
00:36:01,440 --> 00:36:02,880
the details yet, and I haven't, to be honest, I

742
00:36:02,920 --> 00:36:04,920
haven't really had a chance to play with Spark enough.

743
00:36:05,559 --> 00:36:06,400
Speaker 2: It's only been a month.

744
00:36:07,000 --> 00:36:09,079
Speaker 3: It's only been a month, and you know, so only

745
00:36:09,159 --> 00:36:10,480
so many hours in the day, and so we need

746
00:36:10,559 --> 00:36:11,360
choice to play.

747
00:36:11,199 --> 00:36:13,079
Speaker 2: With well, and it's one thing to make a pack

748
00:36:13,159 --> 00:36:14,960
band game. How does it do with forms over data?

749
00:36:15,320 --> 00:36:15,440
Speaker 1: Right?

750
00:36:15,800 --> 00:36:18,440
Speaker 2: Like just whipping out a quick It pulled.

751
00:36:18,239 --> 00:36:19,719
Speaker 3: Some of the data for my repo out and gave

752
00:36:19,800 --> 00:36:22,880
me a little dashboard and I say a little dashboard.

753
00:36:22,880 --> 00:36:24,880
It was It was nice. It gave me some basic

754
00:36:24,960 --> 00:36:27,880
metrics and it was pretty cool, but I want to

755
00:36:27,880 --> 00:36:29,800
actually play with it and get more of a deep

756
00:36:29,880 --> 00:36:31,760
dive into it. I just need I think that's what

757
00:36:31,840 --> 00:36:33,679
Christmas is going to be for for me. I play

758
00:36:33,679 --> 00:36:34,440
your spark a lot.

759
00:36:34,400 --> 00:36:37,679
Speaker 2: More GitHub sweaters and gethub models.

760
00:36:37,880 --> 00:36:42,920
Speaker 1: You Yes, that's my sweater is awesome. Yeah. If you

761
00:36:42,960 --> 00:36:43,880
don't know what, thank you.

762
00:36:44,119 --> 00:36:46,480
Speaker 3: It's the latest from you know, you know.

763
00:36:46,480 --> 00:36:50,039
Speaker 1: We're talking about. Go see April's bio on the dot

764
00:36:50,159 --> 00:36:52,039
net rocks website and there's a picture we're in the

765
00:36:52,079 --> 00:36:53,039
GitHub sweater.

766
00:36:54,360 --> 00:36:58,000
Speaker 2: Christmas sweater. All right, we have AI just nod out

767
00:36:58,039 --> 00:37:00,880
of this conversation. Are there other aspects that have been

768
00:37:00,920 --> 00:37:03,480
evolving at getthub? I mean, once upon a time it

769
00:37:03,559 --> 00:37:06,400
was about source control? Hotel still does that.

770
00:37:07,639 --> 00:37:10,679
Speaker 3: Actually, there's there's two things that I'm excited about. I

771
00:37:10,679 --> 00:37:13,400
think the biggest thing, and I would say it's probably

772
00:37:13,440 --> 00:37:15,960
bigger than AI in a lot of ways, is we've

773
00:37:16,039 --> 00:37:21,320
just released data residency for the EU. That that's a

774
00:37:21,400 --> 00:37:23,559
huge one. We have more regions that are going to

775
00:37:23,559 --> 00:37:25,960
be coming down the pipeline at some point, but the

776
00:37:26,039 --> 00:37:29,320
EU has been the most highly requested region to get

777
00:37:29,440 --> 00:37:32,920
data residency one EU law. Second, here in the UK

778
00:37:33,079 --> 00:37:34,880
we have Brexit issues, so I like to call them.

779
00:37:35,280 --> 00:37:38,079
So data residency is a hot topic for US, which

780
00:37:38,079 --> 00:37:42,719
has prevented a lot of people from consuming gethub just

781
00:37:42,760 --> 00:37:46,760
because we're what EU contracts are really specific around data residency,

782
00:37:47,239 --> 00:37:50,280
so it's it's very much a data protected environment and

783
00:37:50,679 --> 00:37:57,480
it brings in the authentication and EMU process for end

784
00:37:57,599 --> 00:38:00,920
user access into that, so it's it's given people what

785
00:38:01,000 --> 00:38:02,920
they've wanted. So that's a pretty big step for US.

786
00:38:03,559 --> 00:38:07,400
Speaker 2: And with more regions coming. And when you say EU,

787
00:38:07,559 --> 00:38:10,480
is that mean, I'm guessing it's like the Asia Azure

788
00:38:10,559 --> 00:38:13,599
data center in Ireland just as a guess.

789
00:38:14,000 --> 00:38:17,760
Speaker 3: Yeah, it'll be Europe, so it will cover off. I

790
00:38:17,920 --> 00:38:20,199
don't know how they've actually well I kind of know

791
00:38:20,239 --> 00:38:22,559
how they've carved up the data. But the Amsterdam region,

792
00:38:22,599 --> 00:38:25,199
which is Europe West, is the primary data center region

793
00:38:25,239 --> 00:38:28,400
in Azure, and then North Europe is Dublin. It's a

794
00:38:28,440 --> 00:38:31,039
secondary one technically, right, but those are the two major ones.

795
00:38:31,079 --> 00:38:33,679
And then there are other countries that have data centers

796
00:38:33,719 --> 00:38:37,159
in Azure, but the primary Europe regions are Europe West

797
00:38:37,199 --> 00:38:37,840
in Europe.

798
00:38:37,679 --> 00:38:39,440
Speaker 2: So far, yeah, I know, I know that Microsoft went

799
00:38:39,480 --> 00:38:44,440
to the trouble abuilding the Germany a specific one for them, France.

800
00:38:44,480 --> 00:38:48,440
Speaker 3: And Switzerland even though, but Switzerland's literally Switzerland on their own.

801
00:38:49,159 --> 00:38:52,760
The UK has their own, but yeah, it's a lot

802
00:38:52,800 --> 00:38:55,320
of the countries are getting their own data centers just

803
00:38:55,400 --> 00:38:56,280
because of residency.

804
00:38:57,199 --> 00:38:59,880
Speaker 2: Anything to you know, keep the customers happy, you need.

805
00:38:59,800 --> 00:39:03,480
Speaker 3: To do absolutely absolutely. I know that in the UK

806
00:39:03,639 --> 00:39:07,960
they've invested millions and millions of pounds to skill up

807
00:39:07,960 --> 00:39:09,760
the tech industry here in the UK, and they're doing

808
00:39:09,800 --> 00:39:11,480
something similar in the other countries where they put in

809
00:39:11,559 --> 00:39:14,719
data centers. There's also a major AI skilling initiative. So

810
00:39:15,519 --> 00:39:17,960
the EU data residency thing is a hot topic for

811
00:39:18,079 --> 00:39:21,840
us and for us to release that, that's great. That

812
00:39:21,920 --> 00:39:25,440
will just keep evolving over time. And the other thing

813
00:39:25,480 --> 00:39:29,639
I've really enjoyed that we released our actions performance metrics.

814
00:39:29,880 --> 00:39:33,159
So as a DevOps person, we like observability, we like

815
00:39:33,320 --> 00:39:35,960
knowing how to improve things for the next cycle. So

816
00:39:36,079 --> 00:39:38,280
it's great, we build a thing, but how is it impacting?

817
00:39:38,480 --> 00:39:40,880
Is it being utilized? Are we you know? Are we

818
00:39:41,119 --> 00:39:43,920
you know Carl likes to break his build with his

819
00:39:44,000 --> 00:39:48,880
buddy over there, But how much compute is I mean, yeah,

820
00:39:49,000 --> 00:39:49,760
we all break builds.

821
00:39:49,840 --> 00:39:50,239
Speaker 1: There we go.

822
00:39:51,079 --> 00:39:53,159
Speaker 3: I'm just picking on Carl today. It's been a while,

823
00:39:53,320 --> 00:39:56,159
so I thought i'd pick on him. But seriously, like,

824
00:39:56,440 --> 00:39:59,079
if Karl's working on this project with his friend, how

825
00:39:59,159 --> 00:40:01,599
much consumption using in GitHub actions are they?

826
00:40:02,239 --> 00:40:02,400
Speaker 1: You know?

827
00:40:02,480 --> 00:40:05,440
Speaker 3: And often when we are using CICD to deploy things,

828
00:40:05,599 --> 00:40:08,639
we have very inefficient pipelines, Our tests are running too long,

829
00:40:08,920 --> 00:40:12,440
or stuff is just you know, if his buddy has

830
00:40:12,480 --> 00:40:14,480
to wait an hour for the pipeline to run, why

831
00:40:14,599 --> 00:40:16,760
can we get that down to twenty minutes fifteen minutes?

832
00:40:17,679 --> 00:40:19,079
So the action's performance measures.

833
00:40:19,199 --> 00:40:21,840
Speaker 2: Yeah, analyzing that stuff is a nuisance, right, It's not

834
00:40:21,920 --> 00:40:25,079
like it is doable, but it is kind of go

835
00:40:25,239 --> 00:40:27,320
to a log, show what step it was on and

836
00:40:27,400 --> 00:40:28,880
how long it's spent. It like you've got to do

837
00:40:28,920 --> 00:40:31,239
a lot of mining to find that where were we

838
00:40:31,320 --> 00:40:31,960
spending our time?

839
00:40:32,119 --> 00:40:34,840
Speaker 3: Well you did, and actually the new performance metrics makes

840
00:40:34,880 --> 00:40:36,800
it easier. So it gives you a dashboard, gives you

841
00:40:36,840 --> 00:40:38,719
some high level metrics, and then you can sift through

842
00:40:38,760 --> 00:40:40,760
the data and go, right, well, this one's taking an

843
00:40:40,840 --> 00:40:42,960
hour to run. What's our runtime over? You know an hour?

844
00:40:44,119 --> 00:40:46,440
Carl and his and his buddy can go look at

845
00:40:46,480 --> 00:40:48,679
that data and then drill into it, so it's a

846
00:40:48,719 --> 00:40:50,760
lot more apparent from the surface from the ten thousand

847
00:40:50,800 --> 00:40:51,199
foot view.

848
00:40:51,360 --> 00:40:53,440
Speaker 2: Well, I noticed you blame testing right off the bat,

849
00:40:53,519 --> 00:40:54,079
so that's fair.

850
00:40:54,840 --> 00:40:58,360
Speaker 3: Testing does take a while sometimes you know it's worth it.

851
00:40:58,480 --> 00:41:01,360
Speaker 2: But I'm with you, and definitely it was one of

852
00:41:01,400 --> 00:41:03,719
the things I put a lot of energy into, you know,

853
00:41:03,840 --> 00:41:06,719
splitting a set of web tests across multiple instances so

854
00:41:06,880 --> 00:41:10,239
they ran simultaneously to shorten that cycle down. But it's

855
00:41:10,280 --> 00:41:12,079
not and that's not trivial to do, but you know,

856
00:41:12,119 --> 00:41:13,599
you only do it when we were at a point

857
00:41:13,599 --> 00:41:15,760
where it's like it was a weekend and we wanted

858
00:41:15,760 --> 00:41:18,519
to get it down to fifteen minutes, and we got

859
00:41:18,559 --> 00:41:20,360
it down to the idea was you had enough time

860
00:41:20,400 --> 00:41:22,239
to go and get a coffee and by the time

861
00:41:22,320 --> 00:41:27,559
you got back all of yours right, yeah, well so

862
00:41:27,679 --> 00:41:29,679
that your head was still in the game, right, like

863
00:41:29,760 --> 00:41:32,079
you hadn't started on something else. That's you got the

864
00:41:32,119 --> 00:41:32,960
feedback or delay.

865
00:41:32,960 --> 00:41:35,760
Speaker 1: The rest of the big theme in our discussions is

866
00:41:35,960 --> 00:41:39,119
you know, if you if the time between you know,

867
00:41:39,280 --> 00:41:43,360
builds or or whatever it is, c ICD publishing is

868
00:41:43,440 --> 00:41:46,119
too long you you're thinking about something else and you've

869
00:41:46,199 --> 00:41:46,519
moved on.

870
00:41:47,039 --> 00:41:50,679
Speaker 2: Yeah, and you know the classic one literally was this

871
00:41:50,800 --> 00:41:52,519
is strangely but it was a weekend. It's like you

872
00:41:52,559 --> 00:41:54,440
did the push on Friday. On Monday, I got the

873
00:41:54,519 --> 00:41:56,199
report and you could get it to anybody because you

874
00:41:56,280 --> 00:41:58,599
had no clue. Like at that point it didn't matter.

875
00:41:58,719 --> 00:42:00,960
Anybody had to pick it up again. But yeah, getting

876
00:42:01,000 --> 00:42:04,639
it down to fifteen minutes with that sort of magic number,

877
00:42:04,719 --> 00:42:07,000
but it meant harnessing a lot of hardware. You know,

878
00:42:07,599 --> 00:42:10,559
the productivity went through the roof because people didn't get

879
00:42:10,639 --> 00:42:14,360
off the thread. You very quar The remediations were really

880
00:42:14,480 --> 00:42:17,199
fast when it was that short. It paid for itself

881
00:42:17,239 --> 00:42:17,800
pretty fast.

882
00:42:18,000 --> 00:42:20,719
Speaker 3: Absolutely, And I think as we see customers consuming a

883
00:42:20,800 --> 00:42:23,400
lot of actions and if you automate the life out

884
00:42:23,440 --> 00:42:26,079
of your repository, and not just with CICD, but you know,

885
00:42:26,320 --> 00:42:27,920
when you open up an issue kicks off a bunch

886
00:42:27,960 --> 00:42:30,679
of actions, et cetera, and tasks and automation, you have

887
00:42:30,880 --> 00:42:33,599
to be efficient with how you utilize them. Otherwise you're

888
00:42:34,000 --> 00:42:36,039
not saving any time. And yeah, you do, you do

889
00:42:36,159 --> 00:42:40,519
increase your billy. So with any process, observability and reporting

890
00:42:40,639 --> 00:42:42,360
is crucial, but it's such a pain in the butt. However,

891
00:42:42,440 --> 00:42:45,840
the new performance metrics feature is really cool. So I'm

892
00:42:45,880 --> 00:42:48,519
biased because I love actions, but it's cool feature. So yeah,

893
00:42:48,519 --> 00:42:50,920
that's those are those are the most notable things. There's

894
00:42:50,920 --> 00:42:55,199
been other things around enterprise capability as well. Huge push

895
00:42:55,239 --> 00:42:57,599
on enterprise, so not just source control anymore.

896
00:42:57,320 --> 00:42:59,920
Speaker 2: Because you don't think of gethub as enterprise product, right,

897
00:43:00,039 --> 00:43:02,599
It's always been that scrappy upstart that's sort of a

898
00:43:02,679 --> 00:43:07,239
happy place for open source to live. But let's face it,

899
00:43:07,440 --> 00:43:10,679
nights because a few enterprises that use GitHub these days.

900
00:43:10,760 --> 00:43:13,280
One of them Nay, Microsoft, Yes, they.

901
00:43:13,360 --> 00:43:15,559
Speaker 3: Well they don't all eat well, they're not entirely on guble.

902
00:43:15,559 --> 00:43:17,320
They still use Azure develops a bit, but we won't.

903
00:43:17,920 --> 00:43:21,079
Speaker 1: Oh sure, yeah, but is gethub running an Azure?

904
00:43:22,039 --> 00:43:26,159
Speaker 3: Is Gethub running an Azure? Well we have runners in Azure,

905
00:43:26,800 --> 00:43:29,840
code spaces sits in Azure. But no, we have stuff

906
00:43:29,920 --> 00:43:33,559
in different places. I'm pretty sure we have that documented somewhere.

907
00:43:33,599 --> 00:43:34,599
So I entirely an Azure.

908
00:43:34,800 --> 00:43:36,079
Speaker 2: Sure it's more complicated than that.

909
00:43:36,639 --> 00:43:38,239
Speaker 3: Yeah, that's above my pay grade.

910
00:43:38,679 --> 00:43:41,079
Speaker 2: What is the explanation for enterprise cloud?

911
00:43:41,199 --> 00:43:43,400
Speaker 3: What is that? What do you mean the explanation like

912
00:43:43,519 --> 00:43:44,159
why we have it?

913
00:43:44,519 --> 00:43:46,639
Speaker 1: Explain yourselves? What is it?

914
00:43:48,239 --> 00:43:49,960
Speaker 2: I think I'm thinking a lot of folks that listen

915
00:43:50,000 --> 00:43:51,800
to the show have been using gihub in a very

916
00:43:51,840 --> 00:43:54,320
traditional way, the way that it has always been, and

917
00:43:54,800 --> 00:43:57,880
maybe haven't been and maybe it's throughout their organization now,

918
00:43:58,000 --> 00:44:01,320
but again it's kind of piecemeal. Does Enterprise Cloud kind

919
00:44:01,320 --> 00:44:04,360
of organize things for them? Does it lift that up?

920
00:44:04,559 --> 00:44:06,239
Give us a little more governance?

921
00:44:06,639 --> 00:44:08,760
Speaker 3: It gives us a lot of governance. There is quite

922
00:44:08,760 --> 00:44:10,480
a bit of governments built into the platform. I think

923
00:44:10,599 --> 00:44:12,480
the one thing you have to think about when using GitHub,

924
00:44:12,679 --> 00:44:15,719
if you've been using azur DevOps or get lab, you

925
00:44:15,960 --> 00:44:20,800
can't always think of where you've come from. So often

926
00:44:20,840 --> 00:44:22,280
I'll work with people like, yeah, we came from get

927
00:44:22,320 --> 00:44:25,079
lab and I can't find how to do X. So

928
00:44:25,480 --> 00:44:27,320
often it's there, just in a very different place, in

929
00:44:27,360 --> 00:44:28,920
a different way. And that was a big change I

930
00:44:28,960 --> 00:44:30,559
had to make when I was working purely with az

931
00:44:30,559 --> 00:44:33,119
your DevOps was how to do things a little differently.

932
00:44:33,159 --> 00:44:35,000
But yeah, we have a huge push on governance and

933
00:44:35,719 --> 00:44:38,159
we want our customers to scale, whether they're startups or

934
00:44:38,280 --> 00:44:42,199
large enterprises, and there's a huge amount of time and effort.

935
00:44:42,199 --> 00:44:44,599
And that's where the EU Data residency came in because

936
00:44:44,599 --> 00:44:48,199
our enterprise customers are screaming for it. You know, I

937
00:44:48,360 --> 00:44:50,519
don't have the existing stat but at one point they're

938
00:44:50,559 --> 00:44:53,800
over seventy thousand enterprise customers using GitHub. That was probably

939
00:44:53,800 --> 00:44:55,400
a year, year and a half ago, so it's probably

940
00:44:56,199 --> 00:44:58,440
more now eighty ninety thousand or one hundred thousand or

941
00:44:58,880 --> 00:45:04,400
some insane number. But you know, enterprises also help drive features,

942
00:45:04,480 --> 00:45:08,280
We'll be honest, that help open source projects and help

943
00:45:08,440 --> 00:45:15,119
community projects, right because you know, enterprises can help, you know,

944
00:45:15,199 --> 00:45:17,400
put in the requests and they utilize it, and sometimes

945
00:45:17,440 --> 00:45:20,320
there are biggest users of the new features as well

946
00:45:20,440 --> 00:45:21,119
to give feedback.

947
00:45:21,199 --> 00:45:23,880
Speaker 2: Yeah, help push you guys forward too. And you know,

948
00:45:23,960 --> 00:45:27,679
we've had an ongoing conversation here about enterprises playing well

949
00:45:27,719 --> 00:45:30,880
in the open source community. I still feel like it's

950
00:45:30,960 --> 00:45:34,199
too hard for an enterprise to even know what open

951
00:45:34,239 --> 00:45:36,719
source libraries they're dependent on and how dependent they are

952
00:45:36,760 --> 00:45:40,039
on them. I spent enough time with CFOs and I've

953
00:45:40,119 --> 00:45:44,639
always resisted being one to know they would write a

954
00:45:44,840 --> 00:45:49,039
check a year for this stuff, just spend it.

955
00:45:49,159 --> 00:45:49,360
Speaker 1: Well.

956
00:45:49,960 --> 00:45:52,000
Speaker 2: What they don't want to do is have one hundred

957
00:45:52,039 --> 00:45:54,639
requests or a thousand requests to support different projects that

958
00:45:54,639 --> 00:45:57,000
they're not interested in that And I've never seen a

959
00:45:57,159 --> 00:46:00,719
dashboard at an enterprise level that said, given we allocated

960
00:46:00,760 --> 00:46:03,360
ten thousand dollars for this, what projects should we spend?

961
00:46:03,760 --> 00:46:05,880
Speaker 1: S Bomb dependency graphs?

962
00:46:05,920 --> 00:46:08,199
Speaker 2: Yeah, yeah, I mean it's I still feel like the

963
00:46:08,239 --> 00:46:08,639
ass bomb.

964
00:46:09,039 --> 00:46:10,719
Speaker 1: You need a graph. You need to see the better

965
00:46:10,800 --> 00:46:13,199
right as bombs cloud or something.

966
00:46:13,360 --> 00:46:17,559
Speaker 2: Yeah, well on graph just from a security perspective of, Hey,

967
00:46:18,000 --> 00:46:20,159
this project's got to meet you know this owens. Our

968
00:46:20,440 --> 00:46:22,760
project's got a major exploit in it? How many of

969
00:46:22,880 --> 00:46:23,880
our apps used that?

970
00:46:24,239 --> 00:46:24,280
Speaker 3: Like?

971
00:46:24,480 --> 00:46:26,840
Speaker 2: That's not It's still not an easy question to answer.

972
00:46:26,679 --> 00:46:29,039
Speaker 1: But it's screaming for an AI solution, isn't it?

973
00:46:29,840 --> 00:46:30,000
Speaker 2: Well?

974
00:46:30,199 --> 00:46:31,880
Speaker 3: You know, funnily enough, we have a solution for that

975
00:46:33,679 --> 00:46:35,880
that courtse we do, right, But no, we do have

976
00:46:35,960 --> 00:46:38,400
dependent on in one of our security features of GitHub

977
00:46:38,400 --> 00:46:42,159
Advanced Security, and it does scan all the dependencies in

978
00:46:42,239 --> 00:46:44,840
your repository and gives you report opens a poor request

979
00:46:44,880 --> 00:46:46,679
and gives you a suggestive fix and gives you the

980
00:46:46,760 --> 00:46:51,159
information because managing those things is terrible. I have worked

981
00:46:51,199 --> 00:46:52,920
with a lot of customers that use the s bomb

982
00:46:52,960 --> 00:46:55,760
feature to export and know what they're consuming, how they're

983
00:46:55,760 --> 00:46:58,320
consuming it, and they've made it part of their development

984
00:46:58,400 --> 00:47:02,039
cycle to remediate now and it's easier and less time

985
00:47:02,079 --> 00:47:03,760
consuming to remediate those dependencies.

986
00:47:03,960 --> 00:47:04,119
Speaker 2: Right.

987
00:47:04,840 --> 00:47:08,159
Speaker 3: And there are some great customers consuming I mean most

988
00:47:08,199 --> 00:47:10,679
customers are consuming open source. I have not spoken to

989
00:47:10,760 --> 00:47:13,320
one enterprise customer that does not consume any form of

990
00:47:13,400 --> 00:47:13,840
open source.

991
00:47:14,480 --> 00:47:16,800
Speaker 2: If you're not consuming open source, you're lying to yourself

992
00:47:16,880 --> 00:47:19,360
like it's there, you're just not paying attention to it.

993
00:47:19,440 --> 00:47:24,880
But I'm getting putting the enterprise architect hat on where Okay,

994
00:47:25,079 --> 00:47:27,360
we have a dependency on this library. We don't know

995
00:47:27,400 --> 00:47:29,960
exactly how many projects use it, Like we're going to

996
00:47:30,000 --> 00:47:31,679
figure out a way to fix this and then want

997
00:47:31,679 --> 00:47:33,920
to propagate it across all of them, like I need

998
00:47:34,079 --> 00:47:37,840
that macroscopic view. I've hung out with enough of these

999
00:47:37,880 --> 00:47:42,320
folks to know they've got a thousand apps and they're like, okay,

1000
00:47:42,599 --> 00:47:44,880
give me the landscape. How many of these have this

1001
00:47:45,000 --> 00:47:47,239
dependency and how are they different? Can we roll them

1002
00:47:47,239 --> 00:47:49,280
across all of them quickly? We don't have to light

1003
00:47:49,480 --> 00:47:52,119
each team up. You know half those apps have no

1004
00:47:52,320 --> 00:47:53,000
team anymore.

1005
00:47:53,119 --> 00:47:54,480
Speaker 3: Yeah, very true, very true.

1006
00:47:54,599 --> 00:47:56,360
Speaker 2: You know, how do we rehabilitate all that. So I'm

1007
00:47:56,360 --> 00:47:58,599
hoping that that there is that higher level view like

1008
00:47:58,719 --> 00:48:00,719
I get. I look at dependent on a project by

1009
00:48:00,760 --> 00:48:03,000
project basis, and it does a good job from.

1010
00:48:02,920 --> 00:48:05,639
Speaker 3: The from the enterprise management side, there's a huge there's

1011
00:48:05,639 --> 00:48:07,079
a way to export the s BAWM mount from the

1012
00:48:07,159 --> 00:48:10,440
organization side. So if you haven't managed at your organizational level,

1013
00:48:11,199 --> 00:48:13,159
you can pull that s BAM out and get that

1014
00:48:13,280 --> 00:48:16,480
reporting out if you want. And actually another good way

1015
00:48:16,519 --> 00:48:18,960
to do it at the organizational level is export out

1016
00:48:18,960 --> 00:48:22,199
to a dashboard which you can get within githup. But

1017
00:48:22,239 --> 00:48:23,960
I have a lot of people doing it through power BI.

1018
00:48:24,719 --> 00:48:26,480
So if you have good data skills there you.

1019
00:48:26,519 --> 00:48:28,679
Speaker 2: Go all right, so you just export it out do

1020
00:48:28,760 --> 00:48:29,599
your own analysis.

1021
00:48:30,079 --> 00:48:31,679
Speaker 3: Yeah, yeah, if you want to.

1022
00:48:32,159 --> 00:48:33,079
Speaker 2: Yeah, no, it's a solution.

1023
00:48:33,159 --> 00:48:35,559
Speaker 3: And then but we do have we do have some dashboards,

1024
00:48:35,639 --> 00:48:36,679
we do have some dashbouds.

1025
00:48:36,840 --> 00:48:38,440
Speaker 2: But then it's and then it's to put you. Of course,

1026
00:48:38,519 --> 00:48:40,039
you'd know if you had a high dependency in this,

1027
00:48:40,119 --> 00:48:42,280
because every project would line up with depend about it

1028
00:48:42,320 --> 00:48:44,119
once exactly.

1029
00:48:44,440 --> 00:48:47,239
Speaker 3: It's like a Christmas street. It's literally red, yellow, green.

1030
00:48:47,519 --> 00:48:50,440
Speaker 2: Yeah, big explosion of red all over the place.

1031
00:48:50,480 --> 00:48:52,920
Speaker 3: Exactly exactly, well, at least it's Christmas.

1032
00:48:52,599 --> 00:48:55,679
Speaker 2: Themed, although often with those it has a remediation already,

1033
00:48:56,239 --> 00:48:56,519
it does.

1034
00:48:56,719 --> 00:48:57,960
Speaker 3: They have a remediation. They give you the.

1035
00:48:57,960 --> 00:49:03,480
Speaker 2: Poorest, accept the pr and let the builds run and

1036
00:49:03,599 --> 00:49:07,039
hope nothing breaks. But I, you know, again and at

1037
00:49:07,079 --> 00:49:09,880
a senior level, when this came down, I would want

1038
00:49:09,920 --> 00:49:14,159
to lock everything, try one, like, there's other way. This

1039
00:49:14,320 --> 00:49:18,079
remediation fails. We just broke a hundred apps, right, I

1040
00:49:18,119 --> 00:49:20,840
would rather be vulnerable with ninety nine of them while

1041
00:49:20,880 --> 00:49:22,920
we're trying to fix one and when we got to

1042
00:49:22,920 --> 00:49:24,119
fix and fix the rest.

1043
00:49:24,599 --> 00:49:26,679
Speaker 3: Yes, what you can do, you can granuarize that.

1044
00:49:26,880 --> 00:49:30,320
Speaker 1: There's another problem that is maybe a little harder to detect,

1045
00:49:30,400 --> 00:49:34,119
and that is if you're using a tool or something

1046
00:49:34,280 --> 00:49:38,360
that works and it compiles, but then there's an exploit

1047
00:49:38,519 --> 00:49:42,840
posted and a CVE against it, you know, and you

1048
00:49:43,079 --> 00:49:47,159
might not know that just just looking at it, but

1049
00:49:47,400 --> 00:49:50,800
that means that needs to be updated. So you know,

1050
00:49:50,960 --> 00:49:56,239
getting current versions of things is a constant whack a mole, right,

1051
00:49:57,480 --> 00:50:00,760
yeah it is. And so does the depend about sort

1052
00:50:00,800 --> 00:50:04,960
of look at those, does it look for cvees against.

1053
00:50:04,880 --> 00:50:08,440
Speaker 3: Yes, so it pulls out the latest CVE updates, and

1054
00:50:08,519 --> 00:50:12,039
then there's one that if there's an exploit that you know,

1055
00:50:12,119 --> 00:50:14,039
we work with security experts across the globe, you they

1056
00:50:14,039 --> 00:50:17,119
can also report them in to us. But there the

1057
00:50:17,239 --> 00:50:21,760
updates are pretty good, pretty well up to date, I've

1058
00:50:22,639 --> 00:50:25,280
not seen very many missed to be honest with you,

1059
00:50:25,480 --> 00:50:28,440
it's been a really solid product. It's been. It picks

1060
00:50:28,519 --> 00:50:30,039
up a lot of stuff that I didn't even know existed,

1061
00:50:30,280 --> 00:50:33,400
even in like one of my top debo repositories, really

1062
00:50:33,400 --> 00:50:37,960
simple code. It must have twelve thirteen depends.

1063
00:50:37,639 --> 00:50:42,679
Speaker 1: On word press plug chance. This week, word press plug

1064
00:50:42,760 --> 00:50:47,039
ins seem to I'll find out be attacked the most

1065
00:50:47,679 --> 00:50:49,320
from just bad developers.

1066
00:50:49,440 --> 00:50:52,119
Speaker 2: Well, you know, word press is the Internet explorer of

1067
00:50:52,280 --> 00:50:54,960
this age, right Like it's the most hacked thing because

1068
00:50:54,960 --> 00:50:56,960
it's used in so many places.

1069
00:50:57,159 --> 00:50:59,360
Speaker 1: It's the plugins that are the problem. That word Press

1070
00:50:59,400 --> 00:51:02,280
itself is and it's pretty pretty good, but pretty robotic.

1071
00:51:02,320 --> 00:51:05,199
But people write these plugins for stupid stuff and then

1072
00:51:05,239 --> 00:51:08,639
they just don't understand security and they leave holes.

1073
00:51:08,840 --> 00:51:11,079
Speaker 2: Well, they think they're living in a happy little community,

1074
00:51:11,119 --> 00:51:13,559
and then that happy little community gets invaded by black

1075
00:51:13,639 --> 00:51:19,519
hats and it's not so happy. Anymore. I still still

1076
00:51:19,559 --> 00:51:21,360
want to get back to this contribution side of things.

1077
00:51:21,480 --> 00:51:25,119
I think these tools would be awesome, like if I

1078
00:51:25,159 --> 00:51:28,480
could keep track of the pull requests that my team

1079
00:51:28,639 --> 00:51:31,320
had made into those open source librarries. So it's you know,

1080
00:51:31,480 --> 00:51:36,599
part of our overall corporate giving structure is, hey, we're

1081
00:51:36,760 --> 00:51:39,320
we allocate a day a month for you to contribute

1082
00:51:39,320 --> 00:51:42,320
to these open source projects on our dime. Right, we'll

1083
00:51:42,360 --> 00:51:45,320
pay you keep working, but you know, automating all that

1084
00:51:45,440 --> 00:51:47,760
capability to go. One of the ways we contributed is

1085
00:51:47,800 --> 00:51:51,599
we all we have resources onto those projects too, as

1086
00:51:51,679 --> 00:51:54,679
well as hopefully some cash for the other for the

1087
00:51:55,400 --> 00:51:58,119
those maintainers that then often don't get a lot of love.

1088
00:51:58,360 --> 00:51:59,599
Speaker 3: There's money involved in this hold on.

1089
00:51:59,639 --> 00:52:00,400
Speaker 1: I'm going to check.

1090
00:52:02,159 --> 00:52:05,039
Speaker 2: Not that much money. Goodness knows, no, I think you know.

1091
00:52:05,119 --> 00:52:09,039
Speaker 3: It's it's something that I don't I'll be honest. I

1092
00:52:09,079 --> 00:52:11,840
work with enterprise licensing so much. I'm pretty sure we

1093
00:52:11,920 --> 00:52:15,960
open up de pendabot for open source projects right and

1094
00:52:16,159 --> 00:52:19,880
under the advanced security piece for public repositories. I'm ninety

1095
00:52:19,960 --> 00:52:22,440
nine point nine percent sure of that. However, someone can

1096
00:52:22,480 --> 00:52:25,400
correct me if I'm wrong. But we we wanted to

1097
00:52:25,480 --> 00:52:28,400
help the open source community a lot with that and

1098
00:52:29,079 --> 00:52:33,320
that credibility. But I think it's the private repositories where

1099
00:52:33,320 --> 00:52:35,400
it's a paid for option. I don't touch money. That's

1100
00:52:35,440 --> 00:52:37,719
really like the summer, you're better off.

1101
00:52:37,960 --> 00:52:40,039
Speaker 2: It's a whole other conversation to have. And when we

1102
00:52:40,119 --> 00:52:42,400
can't have today, Oh shucks.

1103
00:52:44,000 --> 00:52:46,199
Speaker 1: So what's next for you? What's in your inbox?

1104
00:52:47,239 --> 00:52:47,400
Speaker 3: Uh?

1105
00:52:47,920 --> 00:52:53,440
Speaker 2: Yeah, we're keeping you sleeping upon us.

1106
00:52:53,639 --> 00:52:57,760
Speaker 3: Yeah yeah, no. I actually it's content development right now.

1107
00:52:57,880 --> 00:53:02,320
I'm I'm home for a little bit. It's getting content out.

1108
00:53:02,440 --> 00:53:04,440
We have a lot of people and you know, we've

1109
00:53:04,480 --> 00:53:07,159
talked about it today. All the co pilot features, all

1110
00:53:07,199 --> 00:53:10,239
the enterprise features, people just are not aware of and

1111
00:53:10,840 --> 00:53:12,639
to us, you know, when you're doing it day and

1112
00:53:12,719 --> 00:53:16,480
day out, it seems like we're quite transparent with these features.

1113
00:53:16,519 --> 00:53:18,679
But the reality is we don't have enough repeating content.

1114
00:53:18,840 --> 00:53:21,639
So you guys were talking about all the social platforms earlier.

1115
00:53:21,679 --> 00:53:24,559
So it's a lot of litmus testing with Instagram, TikTok

1116
00:53:24,639 --> 00:53:28,559
and blue sky Now and LinkedIn, And for me, it's

1117
00:53:28,559 --> 00:53:30,760
going to be some content creation on how to use

1118
00:53:30,800 --> 00:53:33,320
this stuff, and then I don't know, we'll see what

1119
00:53:33,360 --> 00:53:36,039
happens in twenty twenty five. I'm just you know, I'm

1120
00:53:36,159 --> 00:53:39,599
just enjoying being in one country for a few weeks.

1121
00:53:39,960 --> 00:53:40,239
Speaker 2: Weird.

1122
00:53:41,320 --> 00:53:45,119
Speaker 1: Yeah, right, is there? Where do you go scuba diving

1123
00:53:45,159 --> 00:53:45,639
in the UK?

1124
00:53:47,239 --> 00:53:51,239
Speaker 3: Well, it depends either I go up to Scotland or

1125
00:53:51,320 --> 00:53:54,079
I go down to the south coast or the northeast.

1126
00:53:54,159 --> 00:53:57,280
Speaker 2: Right now, still, that's still all dry suit, right. That

1127
00:53:57,360 --> 00:53:58,000
water's cold.

1128
00:53:58,079 --> 00:54:00,039
Speaker 3: Oh, it's I don't I don't dive in anything but

1129
00:54:00,159 --> 00:54:03,320
a drysuit. It's cold. I think water temperature a few

1130
00:54:03,360 --> 00:54:07,199
weeks ago in the UK was like seven degrees in

1131
00:54:07,239 --> 00:54:08,199
one of the quarries I was in.

1132
00:54:08,599 --> 00:54:08,840
Speaker 2: Wow.

1133
00:54:09,119 --> 00:54:13,360
Speaker 3: Ouch, Yeah, it's it's it's spring fed, so it's always

1134
00:54:13,440 --> 00:54:14,159
cold at the bottom.

1135
00:54:14,400 --> 00:54:17,400
Speaker 2: Yeah. So I'm living by the ocean here. This is

1136
00:54:17,440 --> 00:54:19,280
the ocean I grew up near, and it's ten degrees

1137
00:54:19,320 --> 00:54:21,599
pretty much all year round. You have a few minutes

1138
00:54:22,360 --> 00:54:24,039
before you start to lose coordination.

1139
00:54:24,280 --> 00:54:27,159
Speaker 1: Coldest water I ever felt was the Saint Lawrence River

1140
00:54:28,119 --> 00:54:29,280
and it was summertime.

1141
00:54:29,320 --> 00:54:29,800
Speaker 2: That's cold.

1142
00:54:29,920 --> 00:54:32,360
Speaker 1: And I waded out into the Saint Lawrence. After about

1143
00:54:32,400 --> 00:54:37,719
ten seconds my bones froze. Yeah, it's basically what I

1144
00:54:37,760 --> 00:54:40,320
thought was happening. Yeah, all right.

1145
00:54:40,920 --> 00:54:45,039
Speaker 3: Yeah, it's been in four degree water, which is thirty

1146
00:54:45,800 --> 00:54:49,400
thirty nine forty degrees fahrenheit, and that is yeah, soul crushing,

1147
00:54:50,000 --> 00:54:50,519
soul crushing.

1148
00:54:50,679 --> 00:54:52,559
Speaker 1: All right, April, I'm sure there's a lot more we

1149
00:54:52,599 --> 00:54:54,360
could talk about, but will you come back when you

1150
00:54:54,440 --> 00:54:55,039
have more to say?

1151
00:54:55,760 --> 00:54:57,119
Speaker 3: I will absolutely come back for you.

1152
00:54:57,199 --> 00:55:00,679
Speaker 1: Guys. Well, thank you again, thank you, thank you for listening,

1153
00:55:00,760 --> 00:55:02,880
and we'll see you next time on dot net rocks.

1154
00:55:18,880 --> 00:55:26,320
Speaker 4: Dot net Rocks is brought to you by Franklin's Net

1155
00:55:26,599 --> 00:55:30,519
and produced by Pop Studios, a full service audio, video

1156
00:55:30,639 --> 00:55:34,639
and post production facility located physically in New London, Connecticut,

1157
00:55:34,960 --> 00:55:39,159
and of course in the cloud online at pwop dot com.

1158
00:55:39,960 --> 00:55:42,000
Visit our website at d O T N E t

1159
00:55:42,320 --> 00:55:46,320
R O c k S dot com for RSS feeds, downloads,

1160
00:55:46,519 --> 00:55:50,159
mobile apps, comments, and access to the full archives going

1161
00:55:50,239 --> 00:55:53,599
back to show number one, recorded in September two thousand

1162
00:55:53,639 --> 00:55:56,239
and two, and make sure you check out our sponsors.

1163
00:55:56,440 --> 00:55:59,239
Speaker 1: They keep us in business. Now, go write some code.

1164
00:55:59,760 --> 00:56:00,519
See you next time.

1165
00:56:01,880 --> 00:56:09,559
Speaker 4: Tree Middle Vans Day, summer time that means home.

1166
00:56:10,039 --> 00:56:12,280
Speaker 1: Then my Texas in line read

