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

2
00:00:03,080 --> 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:36,920
dot com. Hey, it's dot net rocks from build. I'm

8
00:00:37,000 --> 00:00:40,479
Carl Franklin A Richard Campbell. We're a Microsoft build in Seattle,

9
00:00:41,640 --> 00:00:44,520
and I noticed this morning when I walked in here,

10
00:00:44,880 --> 00:00:48,679
I am the only human in Seattle wearing shorts.

11
00:00:48,799 --> 00:00:52,439
Speaker 2: Yeah, of course you are. And I thought, which is

12
00:00:52,479 --> 00:00:56,439
weird because normally celebrity wear shorts, do they? Yeah, shorts,

13
00:00:56,439 --> 00:00:58,359
sandals and a gortex jacket to go together.

14
00:00:58,479 --> 00:01:01,960
Speaker 1: Yeah, I guess the Birkenstocks, right, yeah, yeah, but you know,

15
00:01:02,079 --> 00:01:05,400
because it's little rainy, I guess people put on their

16
00:01:05,400 --> 00:01:08,319
long pants. But I don't know what it feels like short.

17
00:01:08,319 --> 00:01:11,519
It's spring here, can tell. But I looked all around build,

18
00:01:11,920 --> 00:01:15,079
only one wearing shorts. Walk down to the hotel today.

19
00:01:15,280 --> 00:01:18,920
Only One'm wearing shorts, all right, he So tomorrow I'll

20
00:01:18,959 --> 00:01:22,599
be in pants and I'll be more blending in Okay,

21
00:01:22,760 --> 00:01:25,719
all right, so I'll get my shorts on. Yeah before

22
00:01:25,719 --> 00:01:28,599
we do better. No, framework, let's talk about nineteen fifty four.

23
00:01:28,719 --> 00:01:30,400
What do you want to say about nineteen fifty four? Well,

24
00:01:30,439 --> 00:01:33,480
that is the number of our show today, true, nineteen

25
00:01:33,599 --> 00:01:37,079
hundred and fifty four. Yeah, holy crap. So nineteen fifty

26
00:01:37,079 --> 00:01:41,280
four was your significant events, including the Supreme Court's Brown

27
00:01:41,400 --> 00:01:46,159
versus Board of Education decision, which ruled school segregation unconstitutional.

28
00:01:46,840 --> 00:01:49,400
Imagine that. Wow, that's all I'm going to say, nineteen

29
00:01:49,439 --> 00:01:52,760
fifty four. Yeah, other note, they were stupid in nineteen

30
00:01:52,760 --> 00:01:54,680
fifty four. What did they know? Don't think that's true?

31
00:01:54,799 --> 00:01:58,239
What did they know? All right? Other notable happenings included

32
00:01:58,280 --> 00:02:02,239
the mass vaccination of children against polio, the beginning of

33
00:02:02,280 --> 00:02:05,439
the Vietnam War, and the debut the first nuclear powered submarine,

34
00:02:05,480 --> 00:02:09,639
the USS Nautilus, which has a significance is that of

35
00:02:09,639 --> 00:02:13,240
g Yeah, that's right, Groton, Connecticut. My father worked there,

36
00:02:13,360 --> 00:02:16,400
my mother worked, my brother Jay worked at the electric boat.

37
00:02:16,439 --> 00:02:18,560
Speaker 2: They built a prototype reactor in Idaho, because that's a

38
00:02:18,560 --> 00:02:20,759
good place to put a build a reactor, you know,

39
00:02:20,919 --> 00:02:22,120
for a submarine.

40
00:02:22,319 --> 00:02:25,639
Speaker 1: In Idaho. Well, you know where my father and mother

41
00:02:25,680 --> 00:02:29,840
went on their honeymoon, Idaho. Interest that's why the reactor. Yeah,

42
00:02:30,120 --> 00:02:31,240
that's that's.

43
00:02:31,039 --> 00:02:33,680
Speaker 2: Where ricked Over was. That was where all the experiments.

44
00:02:33,319 --> 00:02:35,919
Speaker 1: Were being done. So interesting, isn't that funny?

45
00:02:36,080 --> 00:02:36,800
Speaker 2: Yeah?

46
00:02:36,960 --> 00:02:40,039
Speaker 1: So yeah, I have a little history with electric boat.

47
00:02:40,080 --> 00:02:43,360
I never worked there myself, General Dynamic electric boat. But

48
00:02:43,919 --> 00:02:46,360
because I don't know, I was kind of a little hippie.

49
00:02:46,479 --> 00:02:48,639
Speaker 2: He didn't you didn't want to be a nable architect

50
00:02:48,680 --> 00:02:49,159
like your brother.

51
00:02:49,240 --> 00:02:51,000
Speaker 1: Well it's not that. I just didn't want to contribute

52
00:02:51,000 --> 00:02:53,000
to the war machine. You know. I thought I you know,

53
00:02:53,159 --> 00:02:55,199
I thought I knew everything when I was twelve whatever.

54
00:02:57,120 --> 00:03:01,759
Speaker 2: So anyway, you must have some I mean Joseph Salk

55
00:03:01,800 --> 00:03:05,599
certainly and important, oh yes, you know. And Plio yeah yeah,

56
00:03:06,000 --> 00:03:10,039
and that was huge also the founding of CERN really yeah,

57
00:03:10,199 --> 00:03:16,039
the European Organization for Research in Nuclear Materials. Right, and

58
00:03:16,280 --> 00:03:20,919
they discovered the god particle, well they possibly they found

59
00:03:21,360 --> 00:03:24,479
in twenty twelve they found a candidate in the Bosun

60
00:03:24,520 --> 00:03:26,919
class of sufficient mass and they got what one hundred

61
00:03:26,919 --> 00:03:31,199
and twenty five GeV that would be comparable to what

62
00:03:31,599 --> 00:03:33,159
Higgs had said would should exist.

63
00:03:33,360 --> 00:03:35,599
Speaker 1: Okay, but what I remember from twenty twelve is a

64
00:03:36,319 --> 00:03:39,080
everybody lost their minds thinking these guys were going to

65
00:03:39,120 --> 00:03:39,960
blow up the world.

66
00:03:40,039 --> 00:03:42,280
Speaker 2: Well it was blown before that. That was we're going

67
00:03:42,319 --> 00:03:43,840
to make the black.

68
00:03:43,560 --> 00:03:47,400
Speaker 1: Holes right and thus blow up the world. And then

69
00:03:47,919 --> 00:03:50,840
they said they found it, they found the god part.

70
00:03:50,879 --> 00:03:52,560
It was a bit more complicated than that, but that's

71
00:03:52,599 --> 00:03:54,960
what the news reported. Yeah, they said they simplified a lot.

72
00:03:54,960 --> 00:03:57,400
They also found a bunch of other interesting things like pentaquarics,

73
00:03:57,439 --> 00:04:01,400
and the configurations didn't even make sense, even locations of supersymmetry.

74
00:04:01,520 --> 00:04:04,199
We've every thinks that only Richard Campbell would undersleeve, never

75
00:04:04,199 --> 00:04:05,800
done this. Geek out, but no way, I have a

76
00:04:05,840 --> 00:04:09,599
lot of notes. Are we talking end of twenty twenty five?

77
00:04:09,639 --> 00:04:10,000
I don't know.

78
00:04:10,039 --> 00:04:12,039
Speaker 2: Maybe it's it's a lot. It's a ton of work

79
00:04:12,039 --> 00:04:14,000
to actually put that whole story together. But all right,

80
00:04:14,039 --> 00:04:16,240
they've also got that that's the largest anti manufacturer in

81
00:04:16,240 --> 00:04:18,480
the world. If you live from any matter, that's where

82
00:04:18,480 --> 00:04:18,720
you go.

83
00:04:18,879 --> 00:04:21,959
Speaker 1: And it also spawns the novel Angels and Demons by

84
00:04:22,040 --> 00:04:25,079
Dan Brown. Okay, do you remember it? You know what

85
00:04:25,079 --> 00:04:29,959
I'm trying. Yeah, Okay, So before we introduce Debbie, let's

86
00:04:30,000 --> 00:04:34,240
get to better no framework. All right, all the music?

87
00:04:41,759 --> 00:04:44,240
What do you got? So again, I'm really into this.

88
00:04:45,560 --> 00:04:50,319
What's trending on githubb list. It's an aggregator that looks at,

89
00:04:50,360 --> 00:04:53,680
you know, the most popular GitHub repos and some of

90
00:04:53,720 --> 00:04:57,160
them are nuts, but some of them are pretty cool.

91
00:04:57,199 --> 00:05:01,639
And this one isn't development oriented. But it's YouTube music.

92
00:05:01,759 --> 00:05:03,360
Speaker 2: And it's literally YouTube music.

93
00:05:03,480 --> 00:05:09,079
Speaker 1: Well, okay, it's under the thhhh account on its YouTube

94
00:05:09,160 --> 00:05:14,079
dash music all right, thhch dot GitHub dot io slash

95
00:05:14,120 --> 00:05:17,720
YouTube dash music. Or because this is nineteen fifty four,

96
00:05:18,240 --> 00:05:20,720
you go to one ninety five to four dot pop

97
00:05:20,759 --> 00:05:25,079
dot me. So it's a YouTube music desktop app bundled

98
00:05:25,120 --> 00:05:29,720
with custom plugins and a built in AD blocker and downloader. Right,

99
00:05:29,920 --> 00:05:32,920
but this is using electron, so it's an Electron wrapper

100
00:05:33,040 --> 00:05:38,120
around YouTube music. Cool. They got all sorts of interesting

101
00:05:38,279 --> 00:05:41,360
features including you know, themes and build your own plugins

102
00:05:41,360 --> 00:05:44,519
and all that stuff, and an AD blocker and a downloader,

103
00:05:44,519 --> 00:05:51,000
which apparently has been the holy grail of spammers, you know, malware.

104
00:05:51,519 --> 00:05:53,399
Would they go out and say, hey, we have this

105
00:05:53,519 --> 00:05:56,800
YouTube download because everybody wants to download a video from YouTube, right,

106
00:05:58,040 --> 00:06:01,199
everybody has in the past to do that because they

107
00:06:01,199 --> 00:06:02,560
don't know how long it's going to be up there,

108
00:06:02,600 --> 00:06:05,079
and blah blah blah, and there's all sorts of malware

109
00:06:05,079 --> 00:06:07,199
that says they can do that and they infect your machine.

110
00:06:07,199 --> 00:06:09,399
It's terrible. I have no idea if this is malware

111
00:06:09,439 --> 00:06:12,040
or not. I did not run it. However, since it's

112
00:06:12,079 --> 00:06:16,000
trending on GitHub, I'm assuming that people like it, and

113
00:06:16,040 --> 00:06:20,800
they like it because it works, and you know, that's it.

114
00:06:20,879 --> 00:06:24,079
But the ad blocker in the downloader by itself is

115
00:06:24,120 --> 00:06:26,519
probably a good reason to check it out. Awesome, So

116
00:06:26,639 --> 00:06:28,639
there you go. Love it. Yeah, who's talking to us today?

117
00:06:28,680 --> 00:06:31,399
Richard Abdy comment off show nineteen seventeen, which you did

118
00:06:31,399 --> 00:06:33,839
back in September twenty twenty four. We've talked to one

119
00:06:33,920 --> 00:06:35,959
de Wi O'Brien. Maybe you've heard her. Yeah, yeah, And

120
00:06:36,000 --> 00:06:39,199
oddly enough, we were talking about playwright I know, shocking

121
00:06:39,319 --> 00:06:43,319
nineteen seventeen when jazz took over New Orleans something like that.

122
00:06:43,399 --> 00:06:44,879
Speaker 2: I think it was also the middle of World War One.

123
00:06:44,879 --> 00:06:46,920
But let's talk I complicated now, Okay. A ton of

124
00:06:46,959 --> 00:06:50,240
comments on that show, by the way, and Edwin Aughten

125
00:06:50,319 --> 00:06:53,399
had this commed. He says, thanks for yet another interesting show.

126
00:06:53,680 --> 00:06:56,480
Regarding the challenge. You guys discussed with Debbie about finding

127
00:06:56,560 --> 00:07:00,000
which obscure CSS file is making your element in VIE,

128
00:07:00,680 --> 00:07:01,800
something we talked about.

129
00:07:02,199 --> 00:07:02,839
Speaker 1: I hate that.

130
00:07:03,160 --> 00:07:06,519
Speaker 2: Yes, well, he says, when using dev tools in Chrome

131
00:07:06,639 --> 00:07:08,759
or Edge to inspect CSS, you can go to the

132
00:07:08,839 --> 00:07:12,319
computed tab to show the values that the browser is

133
00:07:12,439 --> 00:07:15,360
actually applying on the rendered element.

134
00:07:15,560 --> 00:07:18,240
Speaker 1: But you have you still have to crawl through the

135
00:07:18,319 --> 00:07:23,120
hierarchy of CSS to find the ancestor or the one

136
00:07:24,120 --> 00:07:27,399
thing that set that that is being cascaded down. It's

137
00:07:27,639 --> 00:07:28,279
really a pain.

138
00:07:28,439 --> 00:07:30,319
Speaker 2: But in theory you should be able to hover over

139
00:07:30,360 --> 00:07:32,519
that and see all the computed values.

140
00:07:32,720 --> 00:07:33,879
Speaker 1: You see the computed bit.

141
00:07:33,839 --> 00:07:36,240
Speaker 2: And then search on that value. You might find that

142
00:07:36,279 --> 00:07:39,240
file you're not looking right, So that's the idea. So Edwin,

143
00:07:39,279 --> 00:07:40,800
thank you so much for your comment and a copy

144
00:07:40,800 --> 00:07:42,199
of music Coba. It's on its way to you. And

145
00:07:42,199 --> 00:07:43,759
if you'd like a copy of music Koba, I write

146
00:07:43,759 --> 00:07:46,120
a comment on the website at dot rocks dot com or.

147
00:07:46,120 --> 00:07:46,720
Speaker 1: On the facebooks.

148
00:07:46,720 --> 00:07:48,560
Speaker 2: We should publish every show there and even comment there,

149
00:07:48,560 --> 00:07:50,839
and everybody on the show we'll send you copy Music Koba.

150
00:07:51,040 --> 00:07:53,399
Speaker 1: Music to Code by of course still going strong. Twenty

151
00:07:53,399 --> 00:07:56,639
two episodes music to code by dot Net and you

152
00:07:56,680 --> 00:08:01,160
get the entire collection in MP three wave or flack format.

153
00:08:02,079 --> 00:08:04,720
And before we get started with Debbie, I want to

154
00:08:04,759 --> 00:08:10,199
say that Jeff Fritz and I did an episode of

155
00:08:10,600 --> 00:08:15,160
the Blazer Puzzle episode seventy yeah called Playwriter's Block. Ah,

156
00:08:15,199 --> 00:08:17,120
what a great name, which we want to know why

157
00:08:17,240 --> 00:08:20,920
simple playwright test fails in a standard Blazer server app.

158
00:08:21,759 --> 00:08:23,319
And that's all I'm going to say. You're going to

159
00:08:23,399 --> 00:08:26,439
have to go find out why and you can try

160
00:08:26,600 --> 00:08:29,079
to fix it yourself before you see the solution, okay.

161
00:08:29,720 --> 00:08:32,559
Wi O'Brien is a Principal program manager at Microsoft with

162
00:08:32,639 --> 00:08:35,879
over fifteen years of experience in front end development. She's

163
00:08:35,919 --> 00:08:38,480
worked as a tech lead and consultant for many important

164
00:08:38,480 --> 00:08:41,440
clients with various technologies and often with a strong focus

165
00:08:41,440 --> 00:08:45,919
on performance, static sites and testing. She has led teams

166
00:08:45,919 --> 00:08:48,600
both in house and remotely, as well as giving workshops

167
00:08:48,600 --> 00:08:51,679
and training. She has many years of experience as a

168
00:08:51,720 --> 00:08:56,639
mentor for online learning platforms, Treehouse and open classrooms. Debbie

169
00:08:56,679 --> 00:09:01,720
is a Google developer, experting web technologies, cloudingnir Media Developer Expert,

170
00:09:01,840 --> 00:09:05,639
and Next Ambassador, as well as a GitHub Star alumni

171
00:09:05,759 --> 00:09:13,840
and previous Microsoft most valuable professional and developer technologies to them, nothing,

172
00:09:14,039 --> 00:09:16,360
she said. When she entered the room, right, she said

173
00:09:16,440 --> 00:09:21,759
to them, welcome.

174
00:09:22,480 --> 00:09:24,480
Speaker 3: I think I need to just remove some stuff from

175
00:09:24,480 --> 00:09:25,000
that profile.

176
00:09:25,159 --> 00:09:27,799
Speaker 1: You know, I only read the first paragraph. There were three,

177
00:09:29,600 --> 00:09:32,919
there's more. It's one thing to read it.

178
00:09:32,919 --> 00:09:35,840
Speaker 2: It's you know you've done those things, no question about that.

179
00:09:36,440 --> 00:09:39,279
And but it's the other thing to rehab it all

180
00:09:39,320 --> 00:09:39,720
read to you.

181
00:09:39,919 --> 00:09:41,720
Speaker 3: Yes, that's tough, intimidating.

182
00:09:41,759 --> 00:09:45,000
Speaker 1: I appreciate that. Who is that person? Wait, it can't

183
00:09:45,039 --> 00:09:47,159
be you, but Jeff Fritz and I are a huge

184
00:09:47,159 --> 00:09:51,759
fan of playwright. Playwright of course is you know as

185
00:09:52,440 --> 00:09:55,440
a fresting tamwork. I almost said a frest where we

186
00:09:55,519 --> 00:09:59,879
going a testing framework for websites that goes out and

187
00:10:00,120 --> 00:10:05,480
actually executes against your website and you you can essentially

188
00:10:05,679 --> 00:10:10,399
write programmable scripts. It's great. Yeah, and we use it

189
00:10:10,440 --> 00:10:10,919
all the time.

190
00:10:11,039 --> 00:10:14,080
Speaker 2: If you want to scrape a website, play rights the

191
00:10:14,159 --> 00:10:14,600
way to go.

192
00:10:14,759 --> 00:10:17,879
Speaker 1: Well, thanks, that's I mean, that's the point.

193
00:10:18,480 --> 00:10:19,360
Speaker 3: That's something different.

194
00:10:19,480 --> 00:10:23,639
Speaker 1: I have. I have written scripts to scrape websites. Who hasn't,

195
00:10:23,759 --> 00:10:28,039
right obviously, and Playwright's great for that because you can

196
00:10:28,120 --> 00:10:30,440
essentially what it's for it's not what it's for, but

197
00:10:30,519 --> 00:10:31,480
it's still great for that.

198
00:10:31,720 --> 00:10:37,720
Speaker 3: Well, I mean seeing that you've opened up this and

199
00:10:37,799 --> 00:10:40,720
so yeah, obviously, like testing is the key focus of

200
00:10:40,840 --> 00:10:43,559
play right, and we all know that you shouldn't be

201
00:10:45,480 --> 00:10:47,519
you all have to be testing your applications and you

202
00:10:47,519 --> 00:10:51,600
shouldn't be spending time manually like doing the stuff that

203
00:10:51,759 --> 00:10:53,440
computers can do for you, because at the end of

204
00:10:53,480 --> 00:10:56,080
the day, that's just wasting time. And there is still

205
00:10:56,159 --> 00:10:59,519
space for manual testers and stuff. But the more you

206
00:10:59,559 --> 00:11:00,679
can owe it the better.

207
00:11:00,840 --> 00:11:02,720
Speaker 1: Yeah, but it doesn't take the place of an API.

208
00:11:06,519 --> 00:11:08,759
Speaker 3: And then coming back to your point where it's like

209
00:11:09,000 --> 00:11:12,440
basically you're talking about like scraping or browser automation. Have

210
00:11:12,559 --> 00:11:15,879
you used the play right MCP? Oh my god, all right.

211
00:11:15,919 --> 00:11:18,360
Speaker 1: So ai'd playwright we ate, Well.

212
00:11:18,120 --> 00:11:20,200
Speaker 3: We mcp'd it.

213
00:11:20,080 --> 00:11:21,919
Speaker 1: So by now, if you've been listening to the last

214
00:11:21,919 --> 00:11:23,600
two shows, people know what MCP do.

215
00:11:23,679 --> 00:11:25,480
Speaker 3: They owe amazing great, So we don't have.

216
00:11:25,480 --> 00:11:28,600
Speaker 1: To control program tron is real excellent.

217
00:11:29,279 --> 00:11:32,919
Speaker 3: So basically what you can now do is turn around

218
00:11:32,960 --> 00:11:35,679
to get up Copilot or whatever LM you're using and

219
00:11:35,759 --> 00:11:39,279
say go to a website and do X y Z.

220
00:11:39,840 --> 00:11:41,679
Speaker 1: Right, So I actually wrote a call.

221
00:11:42,360 --> 00:11:44,360
Speaker 3: Yes, I actually got it to buy a table for me.

222
00:11:44,720 --> 00:11:45,039
Speaker 1: Wow.

223
00:11:45,200 --> 00:11:47,159
Speaker 3: Yeah, I wanted to buy a table for my twins,

224
00:11:47,480 --> 00:11:50,759
so I wanted to find out the cheapest option of

225
00:11:50,879 --> 00:11:52,559
buying it, and I wanted to know how much the

226
00:11:52,559 --> 00:11:54,240
shipping cost was because I live on an island and

227
00:11:54,240 --> 00:11:55,840
they always throw on shipping costs and then it's not

228
00:11:55,919 --> 00:11:58,480
really the right price and stuff. So I asked AI

229
00:11:59,320 --> 00:12:02,080
using the MCP, I said, can you go and check

230
00:12:02,080 --> 00:12:04,519
it out? So the play Right MCP went and opened

231
00:12:04,559 --> 00:12:07,519
up a browser window. He went to the website that

232
00:12:07,559 --> 00:12:09,360
I wanted to buy the table from, the particular brand,

233
00:12:09,399 --> 00:12:14,000
the Stoke Table. It started searching for different combinations. It

234
00:12:14,039 --> 00:12:16,080
found the table plus two chairs is a cheaper option,

235
00:12:16,120 --> 00:12:17,679
and I wanted to buy two chairs anyway, so I

236
00:12:17,720 --> 00:12:18,799
buy the whole thing as a package.

237
00:12:18,799 --> 00:12:20,919
Speaker 1: I say, wait, I didn't buy it for you.

238
00:12:20,639 --> 00:12:22,600
Speaker 3: Not yet, not yet, not yet, not yet. I'm not

239
00:12:22,600 --> 00:12:26,000
there yet. It then went to the filling in the

240
00:12:26,080 --> 00:12:28,080
forum to find out the shipping detail. So made up

241
00:12:28,080 --> 00:12:30,639
an address in MAJORCA and it filled all that in

242
00:12:30,639 --> 00:12:32,559
with a dummy email address, and then it was able

243
00:12:32,600 --> 00:12:35,360
to find out the actual shipping cost. And then it

244
00:12:35,399 --> 00:12:37,440
was able to say, right this is the actual price

245
00:12:37,480 --> 00:12:40,320
of it, and then I was able to say do

246
00:12:40,399 --> 00:12:42,320
I want to purchase it or not right now? Because

247
00:12:42,360 --> 00:12:44,679
it opens up a browser and it does all the work.

248
00:12:44,759 --> 00:12:46,879
It's still just a browser, right, so I want to

249
00:12:46,879 --> 00:12:48,720
actually finish the purchasing, I could just go in and

250
00:12:48,720 --> 00:12:51,600
press click on the PayPal button and go and buy

251
00:12:51,600 --> 00:12:52,679
that table right.

252
00:12:52,679 --> 00:12:53,840
Speaker 1: After you edit your address.

253
00:12:54,200 --> 00:12:55,919
Speaker 3: Well I would have to edit the address because they

254
00:12:56,000 --> 00:12:59,200
put in a John do. But that's the power of

255
00:12:59,240 --> 00:13:02,000
the MCP. It's basically able to go and open up

256
00:13:02,000 --> 00:13:04,799
a browser, do the tasks that you could do yourself

257
00:13:04,840 --> 00:13:06,759
that you don't want to do, and then you can

258
00:13:06,759 --> 00:13:08,840
still continue because it's a browser window.

259
00:13:09,559 --> 00:13:13,039
Speaker 2: Somehing magic exactly, It's just a pre filled in browser window.

260
00:13:13,440 --> 00:13:14,759
Speaker 1: I got a story for you guys, and I know

261
00:13:14,799 --> 00:13:16,720
I've told it on Dotton it Rocks before, but it's

262
00:13:16,759 --> 00:13:20,279
been years. So back in the two thousands, when you know,

263
00:13:21,320 --> 00:13:23,120
back back in the two thousands, that's all I'm going

264
00:13:23,159 --> 00:13:26,840
to say. I was courted by a member of the

265
00:13:26,919 --> 00:13:30,399
Connecticut Technology Council. Now I'm in New London, which is

266
00:13:30,440 --> 00:13:33,840
in the south eastern Connecticut, and the people in Hartford,

267
00:13:33,960 --> 00:13:37,919
they don't like New Londoners, like they're big eastnobby kind

268
00:13:37,960 --> 00:13:41,440
of insurance money people and whatever. So this you know,

269
00:13:41,480 --> 00:13:44,320
they meet in Hartford, right, So I say, okay, I

270
00:13:44,399 --> 00:13:46,559
will go to a meeting. I went to a meeting.

271
00:13:46,720 --> 00:13:49,879
I joined the Technology Council whatever, paid my three hundred

272
00:13:49,919 --> 00:13:52,240
dollars whatever, and went to one of their meetings. And

273
00:13:52,320 --> 00:13:54,559
it was just ridiculous. I mean, and the stuff that

274
00:13:54,600 --> 00:13:57,559
they were talking about was like, you know, how to

275
00:13:57,600 --> 00:14:01,759
log in? What is a cookie? Right? So, but they

276
00:14:01,799 --> 00:14:04,799
had a lot of really great members and they had

277
00:14:04,799 --> 00:14:08,279
a member's website, and they didn't have a mailing list.

278
00:14:08,639 --> 00:14:10,759
And I said, do you guys have a mailing list? No, sorry,

279
00:14:10,759 --> 00:14:13,200
we don't, but all our members are listed on the website.

280
00:14:13,440 --> 00:14:17,799
Hmmm goodness. So me being it was a kinder, gentler web.

281
00:14:18,279 --> 00:14:22,120
I used real sockets. I didn't even use an HTDP.

282
00:14:22,399 --> 00:14:25,320
There was no web client. You literally did a manual get.

283
00:14:25,440 --> 00:14:29,120
I did a get on the website, parts looked for

284
00:14:29,200 --> 00:14:32,799
the email the email tags that I wanted, logged them,

285
00:14:33,000 --> 00:14:35,879
you know, with their names, and blah blah blah. And

286
00:14:36,480 --> 00:14:38,840
I said, are you sure you don't I wrote back,

287
00:14:38,840 --> 00:14:40,639
are you sure you don't have a mailing lists. No,

288
00:14:40,720 --> 00:14:43,279
we don't have a mailing list. I'm like, would you

289
00:14:43,440 --> 00:14:47,879
like one? Because I basically scraped all of the emails

290
00:14:47,919 --> 00:14:51,799
and names from your website. It's and he said, like

291
00:14:51,919 --> 00:14:55,919
this is the best response. Well, you're obviously some cracker

292
00:14:56,080 --> 00:15:01,080
jack technology program. Like aren't you guys the Connecticut Technology Council.

293
00:15:01,360 --> 00:15:05,039
Shouldn't they be looking to you for technology solutions? What

294
00:15:05,159 --> 00:15:11,639
are you doing? That's one of my greatest superiority moments. Nice. Yeah,

295
00:15:11,679 --> 00:15:16,000
it felt very superior, very clever. But yeah they didn't.

296
00:15:16,360 --> 00:15:17,200
Speaker 3: Did they send out a mail?

297
00:15:17,320 --> 00:15:19,960
Speaker 1: No, they didn't invite, But I did send out a

298
00:15:19,960 --> 00:15:22,320
mail to all this p and I got some great responses.

299
00:15:22,360 --> 00:15:22,960
Speaker 3: It was awesome.

300
00:15:23,000 --> 00:15:23,759
Speaker 1: That's funny.

301
00:15:24,159 --> 00:15:28,200
Speaker 2: Yeah, this speaks to an interesting path for working with uh.

302
00:15:28,559 --> 00:15:31,759
You know you're a copilot of some kind to just

303
00:15:31,799 --> 00:15:34,080
be able to go fetch data from from sites through

304
00:15:34,120 --> 00:15:34,600
the m CP.

305
00:15:35,000 --> 00:15:37,440
Speaker 3: Yeah, I mean it can do whatever you want it

306
00:15:37,519 --> 00:15:39,600
to do because it is access to the browser, which

307
00:15:39,639 --> 00:15:42,840
is what was missing when it came to the l MS.

308
00:15:42,840 --> 00:15:44,240
They couldn't open a browser. Now they come.

309
00:15:44,320 --> 00:15:46,200
Speaker 1: Now they can open a browser and click, they.

310
00:15:46,120 --> 00:15:48,080
Speaker 3: Can type anything that playwright can do. What can play?

311
00:15:48,159 --> 00:15:52,960
Speaker 1: Right? Do everything. So this MP MCP is part of

312
00:15:53,000 --> 00:15:53,720
play right now?

313
00:15:53,879 --> 00:15:55,559
Speaker 3: Is that it's just it's a play right MCP.

314
00:15:56,720 --> 00:15:59,039
Speaker 1: It's open people, you get it off NPM.

315
00:15:59,240 --> 00:16:02,320
Speaker 3: Yeah, it's you can just click a button and and

316
00:16:02,360 --> 00:16:03,000
it just installs it.

317
00:16:03,039 --> 00:16:05,039
Speaker 1: I think we're done where this has been dot Net

318
00:16:05,159 --> 00:16:09,679
rocks time thinking the amount of trouble we're about to

319
00:16:09,960 --> 00:16:12,039
get it. Okay, let's trouble.

320
00:16:12,159 --> 00:16:14,399
Speaker 3: Let's turn it around, let's turn around.

321
00:16:14,480 --> 00:16:16,279
Speaker 1: How can we use these powers for good?

322
00:16:16,759 --> 00:16:18,200
Speaker 3: Well, we can test our applications.

323
00:16:18,879 --> 00:16:19,960
Speaker 1: The crazy espec.

324
00:16:22,279 --> 00:16:26,279
Speaker 3: What we can actually get it to write the test for.

325
00:16:26,559 --> 00:16:29,200
So we're here at build and I've just given a

326
00:16:29,240 --> 00:16:32,440
couple of demos live at bill showing how you can

327
00:16:33,120 --> 00:16:37,120
using natural language tell it to go to a website,

328
00:16:37,519 --> 00:16:39,519
and I did a demo of a movie application. So

329
00:16:39,600 --> 00:16:41,559
go to a movie's application, search for a movie and

330
00:16:41,759 --> 00:16:43,879
ensure that that movie is on the page, and write

331
00:16:43,879 --> 00:16:46,000
the test for it. Now, the thing is, what's the

332
00:16:46,039 --> 00:16:48,759
difference between asking COPA, let's just write a test. It

333
00:16:48,840 --> 00:16:51,559
can do it, and it guesses what the buttons are

334
00:16:51,600 --> 00:16:53,759
called unless it has access to the code, and it

335
00:16:53,840 --> 00:16:56,399
has able to then search to your code base, and

336
00:16:56,480 --> 00:16:59,960
then it can the MCP. No, the MCP actually go

337
00:17:00,159 --> 00:17:02,960
to the browser and it opens the browser page and

338
00:17:03,120 --> 00:17:06,640
then it takes a page snapshot, right, and the snapshot

339
00:17:06,720 --> 00:17:09,880
has all the context of what that page has on it.

340
00:17:10,000 --> 00:17:12,960
Speaker 1: All. Right, we're really talking MCP is the protocol. You're

341
00:17:12,960 --> 00:17:14,960
really talking about an agent? Right?

342
00:17:15,079 --> 00:17:16,960
Speaker 3: Well? Were you just using copilot here? You can use

343
00:17:17,000 --> 00:17:17,480
whatever you want.

344
00:17:17,599 --> 00:17:21,240
Speaker 2: Yeah, this is just think of it as an apik

345
00:17:21,519 --> 00:17:23,960
PI to play right, to be able to fetch information

346
00:17:24,480 --> 00:17:27,960
the CP to play right, right, which from which.

347
00:17:27,880 --> 00:17:30,200
Speaker 1: You can do you have to use an agent with

348
00:17:30,319 --> 00:17:31,839
this or can you just use it directly?

349
00:17:31,880 --> 00:17:34,200
Speaker 3: You just go to copilot. I'm using copilot. You could

350
00:17:34,279 --> 00:17:36,200
use whatever you want, but just let's, you know, go

351
00:17:36,319 --> 00:17:39,599
to copilot exactly that that supports mcps.

352
00:17:39,680 --> 00:17:41,880
Speaker 1: Yeah, that's important. That could be most of them, not

353
00:17:41,960 --> 00:17:42,680
all of them, most of.

354
00:17:42,680 --> 00:17:46,000
Speaker 3: Them, yes, And then you basically ask it what to do.

355
00:17:47,359 --> 00:17:48,720
And in my case, I was like, I want you

356
00:17:48,759 --> 00:17:51,319
to write a test, but very clearly I said, I

357
00:17:51,359 --> 00:17:53,920
don't want you to search the code base. I want

358
00:17:54,000 --> 00:17:56,799
you to run the steps. Yes, I want you to

359
00:17:56,880 --> 00:17:59,279
use the MCP, and I want you to then only

360
00:17:59,359 --> 00:18:01,720
after you've run all the steps, then create the test.

361
00:18:01,799 --> 00:18:03,480
Speaker 1: Five I don't have to test my website. Now I

362
00:18:03,519 --> 00:18:06,279
can test your website. You can, yeah, because I'm reading

363
00:18:06,319 --> 00:18:06,680
the page.

364
00:18:06,759 --> 00:18:08,039
Speaker 3: You know, it's even better if you if you went

365
00:18:08,079 --> 00:18:11,079
to Amanda's demo, you can actually say, go to this

366
00:18:11,400 --> 00:18:14,759
URL and give me some ideas of what I can test.

367
00:18:15,000 --> 00:18:16,240
Speaker 1: Wow, this is great.

368
00:18:16,359 --> 00:18:17,920
Speaker 3: And then it came up and it said, oh, so

369
00:18:18,000 --> 00:18:19,599
you have filtering on the site that could be good

370
00:18:19,640 --> 00:18:21,839
for testing, and then it went ahead and clicked around

371
00:18:21,839 --> 00:18:23,960
the filtering and then it went and created that test.

372
00:18:24,160 --> 00:18:27,039
Speaker 1: That's pretty awesome. So how specific do you have to

373
00:18:27,119 --> 00:18:29,079
be if you tell it you want to gather some

374
00:18:29,400 --> 00:18:33,839
like Okay, take my example right where you have pages

375
00:18:33,920 --> 00:18:36,799
and pages of people of companies that are in this

376
00:18:37,000 --> 00:18:39,839
particular organization, and they're all listed with their names and

377
00:18:39,880 --> 00:18:42,039
email addresses, but you have to press next and next

378
00:18:42,119 --> 00:18:45,400
and next and next. There's no search. Can it assume

379
00:18:45,920 --> 00:18:47,519
how to do that? Can it figure out how to

380
00:18:47,599 --> 00:18:47,839
do that?

381
00:18:48,039 --> 00:18:49,559
Speaker 3: Assume it actually clicks and does it.

382
00:18:49,839 --> 00:18:51,480
Speaker 1: But you don't have to tell it to do that, right,

383
00:18:51,519 --> 00:18:53,519
you know, it goes in. You could just say give

384
00:18:53,559 --> 00:18:55,400
me all the names and address of all the people.

385
00:18:55,200 --> 00:18:56,960
Speaker 3: In them, and it will find the way to do it. So,

386
00:18:57,160 --> 00:19:01,400
for example, in my app, it couldn't type the movie

387
00:19:01,519 --> 00:19:03,720
name into the search because the search needs to be

388
00:19:03,759 --> 00:19:05,720
clicked on first. So when it went to type right,

389
00:19:05,799 --> 00:19:07,599
which was the logic of there's a search field all

390
00:19:07,680 --> 00:19:09,680
type yeah, it went, I can't type in here. It

391
00:19:09,720 --> 00:19:12,359
doesn't let me. Let me take a page snapshot. And

392
00:19:12,480 --> 00:19:14,240
then once I had the page snapshot, it said, oh,

393
00:19:14,279 --> 00:19:17,440
I see, I need to click the search icon right

394
00:19:17,640 --> 00:19:19,839
and then I can continue typing, and then it could continue.

395
00:19:19,880 --> 00:19:21,039
Speaker 1: So it actually figured it out.

396
00:19:21,039 --> 00:19:22,119
Speaker 3: By taking the page snapshot.

397
00:19:22,160 --> 00:19:25,880
Speaker 1: By taking the page snapshot, Wow, that's interesting. I'm my mind.

398
00:19:26,279 --> 00:19:29,039
You're immediately going to evil. I hear it in your vote. Yeah,

399
00:19:29,480 --> 00:19:32,559
but you know that Harvey Korman from Blazing Saddles where

400
00:19:32,559 --> 00:19:36,279
he says something like my mind is a swirling vortex

401
00:19:36,440 --> 00:19:41,279
of infinite possibilities or whatever. It was some cheesy one. Yeah,

402
00:19:41,279 --> 00:19:44,480
that's where I'm going. It's I'm not actually thinking of evil.

403
00:19:44,559 --> 00:19:47,839
Although Dwayne and Patrick were here, Dwayne would immediately tell

404
00:19:47,920 --> 00:19:49,279
me what he would use it for evil.

405
00:19:50,640 --> 00:19:53,079
Speaker 2: I'm just thinking about winning, you know, sweepstakes by filling

406
00:19:53,079 --> 00:19:53,640
in as many.

407
00:19:53,519 --> 00:19:56,359
Speaker 1: Forms as you want. Well, hopefully the website has some

408
00:19:56,559 --> 00:19:59,920
sort of you know, anti denial of search.

409
00:20:00,160 --> 00:20:03,160
Speaker 2: Well, you're claiming they're gonna find out pretty quick, aren't they.

410
00:20:05,039 --> 00:20:08,200
Speaker 1: But but what you're saying is like you could just

411
00:20:08,319 --> 00:20:12,799
basically say any website that you can't figure out, you

412
00:20:12,920 --> 00:20:16,680
can instead of asking chat GPT, Let's say, hey, how

413
00:20:16,720 --> 00:20:23,000
do I use whatever Twitter to change my profile picture? Right?

414
00:20:23,400 --> 00:20:25,160
Because I don't want to click through and figure out

415
00:20:25,160 --> 00:20:27,400
how to do that. You just say here's a picture,

416
00:20:27,559 --> 00:20:30,400
change my Twitter profile picture and it could figure it out. Right.

417
00:20:31,400 --> 00:20:34,400
Speaker 3: I would love to see that in action, but most

418
00:20:34,480 --> 00:20:36,119
likely us. I mean, you have to think about the

419
00:20:36,160 --> 00:20:37,960
login data. So you've got to decide are you going

420
00:20:38,039 --> 00:20:40,440
to log in first and then it's logged in and

421
00:20:40,559 --> 00:20:43,279
then you use the LM to continue the process. I

422
00:20:43,319 --> 00:20:45,359
would do that because you don't want to give your

423
00:20:45,440 --> 00:20:46,480
user credentials to the l.

424
00:20:46,680 --> 00:20:48,799
Speaker 1: You're right, And this is this is something that we

425
00:20:48,920 --> 00:20:51,599
brought up with the other guests that we've had so far,

426
00:20:52,119 --> 00:20:53,039
which is security.

427
00:20:55,319 --> 00:20:55,920
Speaker 3: Nothing is secure.

428
00:20:56,240 --> 00:20:58,440
Speaker 1: CP isn't very secure right now.

429
00:20:58,920 --> 00:21:02,000
Speaker 3: It depends. It depends on whose hands it's in it

430
00:21:02,119 --> 00:21:04,640
has access to. I mean, Carl, I think it's not

431
00:21:04,759 --> 00:21:08,759
secure with you, all right, tche.

432
00:21:09,279 --> 00:21:15,440
Speaker 1: All right, Carl zero WI one. But but right now,

433
00:21:16,200 --> 00:21:18,400
and Scott Hunter told us this, right now, you know,

434
00:21:18,480 --> 00:21:20,319
you have to give it access to your keys in

435
00:21:20,440 --> 00:21:22,880
a local file or something like that. But they're working

436
00:21:23,000 --> 00:21:25,480
on it, Like by this time next year they'll have

437
00:21:25,680 --> 00:21:28,519
some sort of Azure entity where all the keys are

438
00:21:28,519 --> 00:21:31,200
stored there. Nobody knows the keys but Azure. And yeah,

439
00:21:31,359 --> 00:21:32,799
the MCP probably next.

440
00:21:33,359 --> 00:21:37,119
Speaker 3: MCP is so new and everything is happening so fast

441
00:21:37,640 --> 00:21:40,079
that like even just the out protocol for the MCP

442
00:21:40,240 --> 00:21:42,440
is like not even a month old, right, So there's

443
00:21:42,680 --> 00:21:45,599
everything is just happening and everything is being improved. But

444
00:21:46,160 --> 00:21:49,640
for sure, when you're using it, be very careful of

445
00:21:49,720 --> 00:21:53,079
what you give to the LM, because you know, you

446
00:21:53,160 --> 00:21:55,480
don't want to say, here's my Twitter credentials, go in

447
00:21:55,599 --> 00:21:59,319
and and create my profile picture whenever, because you don't

448
00:21:59,319 --> 00:22:00,400
know then what happened after that.

449
00:22:01,039 --> 00:22:04,160
Speaker 1: So you can obviously use the same browser instance that

450
00:22:04,319 --> 00:22:07,480
you're using regularly, exactly because.

451
00:22:07,279 --> 00:22:10,880
Speaker 3: Of persistent browser context, you can actually just log in

452
00:22:11,400 --> 00:22:12,960
and then get the LM.

453
00:22:12,799 --> 00:22:14,359
Speaker 1: To do some of it's beautiful.

454
00:22:14,440 --> 00:22:16,240
Speaker 2: There may be a side by side play, but I know,

455
00:22:16,359 --> 00:22:19,079
I like just in your table example, so you're just

456
00:22:19,160 --> 00:22:21,039
watching it do a certain amount of work, and at

457
00:22:21,079 --> 00:22:22,160
some point you can step.

458
00:22:22,039 --> 00:22:23,240
Speaker 1: In and do what you want to do with it.

459
00:22:23,480 --> 00:22:26,039
There was a special there was a story recently about

460
00:22:26,079 --> 00:22:30,119
an agent that was created and somebody said, find the

461
00:22:30,200 --> 00:22:34,119
cheapest price on ax on Amazon and actually found what

462
00:22:34,200 --> 00:22:36,160
it thought was the cheapest price and then ordered it.

463
00:22:37,000 --> 00:22:39,559
But it didn't the person didn't tell the agent to

464
00:22:39,720 --> 00:22:42,839
order it. Not only did it order it and charge

465
00:22:42,839 --> 00:22:45,720
them in an ordering amount of money. However, it wasn't

466
00:22:45,799 --> 00:22:47,119
the cheapest price.

467
00:22:47,440 --> 00:22:49,880
Speaker 3: But that's silly because you let them go forward and

468
00:22:49,960 --> 00:22:52,440
gave it a credit card. I wouldn't give it my

469
00:22:52,480 --> 00:22:52,880
credit card.

470
00:22:52,960 --> 00:22:54,839
Speaker 1: I wouldn't either, but they did. Ye.

471
00:22:54,920 --> 00:22:57,240
Speaker 2: If you're going to let it onto Amazon where you've got.

472
00:22:57,240 --> 00:22:59,920
Speaker 3: You know, oh you're already locked in And that's right.

473
00:22:59,799 --> 00:23:03,440
Speaker 1: You're story. You've got your default credit card? Well you

474
00:23:03,559 --> 00:23:06,000
know you know you did it to yourself. Yes, yeah,

475
00:23:06,319 --> 00:23:08,160
So it's all in the prompt, isn't it? Careful what

476
00:23:08,200 --> 00:23:10,279
you play with, be careful what you tell your AI

477
00:23:11,839 --> 00:23:12,039
or not?

478
00:23:13,119 --> 00:23:15,119
Speaker 3: But no, like, let's think positive. There's a lot of

479
00:23:15,200 --> 00:23:18,799
cool things that you can do it right, and buying

480
00:23:18,880 --> 00:23:20,960
tables is one of them. I kind of like to

481
00:23:21,039 --> 00:23:23,319
think of more of what do you spend most of

482
00:23:23,400 --> 00:23:27,400
your time playing around to try and find thinking.

483
00:23:27,160 --> 00:23:29,680
Speaker 2: About thinking up good test for a web page. It's

484
00:23:29,759 --> 00:23:31,359
not a trivial problem exactly.

485
00:23:31,480 --> 00:23:33,519
Speaker 3: Really, it is you don't know what to test, you

486
00:23:33,519 --> 00:23:34,240
don't know where to start.

487
00:23:34,400 --> 00:23:37,240
Speaker 2: Yeah, just getting that list of what should I test on.

488
00:23:37,279 --> 00:23:39,400
Speaker 3: This page and you can do it. I did a

489
00:23:39,480 --> 00:23:42,279
couple of demos and you can do like just turn

490
00:23:42,359 --> 00:23:44,240
around and say, hey, go to this website and give

491
00:23:44,279 --> 00:23:46,960
me a markdown file of those, right, so then you

492
00:23:47,039 --> 00:23:48,240
now you go to a marked all file would say

493
00:23:48,240 --> 00:23:52,240
maybe seven tests, right with clear English instructions, and then

494
00:23:52,279 --> 00:23:54,359
you can decide, right, I'm going to allow use this

495
00:23:54,519 --> 00:23:56,440
again and again, so you don't have to just go

496
00:23:56,519 --> 00:23:58,759
and use the MCP to do everything. Now done, you

497
00:23:58,839 --> 00:24:01,319
can separate it out how then, right, these are now

498
00:24:01,359 --> 00:24:03,039
my marked one files and then you can use I

499
00:24:03,039 --> 00:24:04,960
don't know, you can create you can do you know,

500
00:24:05,000 --> 00:24:07,119
there's a get up MCP, So you get the get

501
00:24:07,160 --> 00:24:09,039
up MCP to create an issue for it, sure, and

502
00:24:09,119 --> 00:24:10,880
then continue to create the test and then the get

503
00:24:10,960 --> 00:24:12,640
up MCP will create the test after the play right

504
00:24:12,720 --> 00:24:15,359
MCP has done it, and you can just MCP all

505
00:24:15,440 --> 00:24:16,039
day it's.

506
00:24:16,079 --> 00:24:18,359
Speaker 1: It's clear that MCP is the future and it is

507
00:24:18,440 --> 00:24:21,039
the glue. It is going to be the soap and

508
00:24:21,359 --> 00:24:23,880
or the JSON or the rest. Like it's going to

509
00:24:23,960 --> 00:24:28,359
become the default protocol of AI agents talking to each other.

510
00:24:29,200 --> 00:24:31,640
So I'm I'm very excited about this, and I only

511
00:24:31,759 --> 00:24:32,440
learned this today.

512
00:24:32,640 --> 00:24:34,480
Speaker 3: Yeah, well a lot of people have only learned it today,

513
00:24:34,480 --> 00:24:37,000
and I think people feel like they're behind and it's

514
00:24:37,119 --> 00:24:39,880
actually not. It's just so new and it's so new,

515
00:24:39,920 --> 00:24:42,640
but everyone's talking about mcps and it is just very cool.

516
00:24:42,640 --> 00:24:44,480
Speaker 1: But the anthropic blog post is from.

517
00:24:44,440 --> 00:24:46,359
Speaker 3: November exactly, and that's the first.

518
00:24:47,480 --> 00:24:49,079
Speaker 2: I don't even know they'd implement at that point. It's

519
00:24:49,119 --> 00:24:50,559
just that is the blog post.

520
00:24:50,880 --> 00:24:56,240
Speaker 1: Yes, so it's clear that with playwright testing with the

521
00:24:56,440 --> 00:25:00,680
MCP is the obvious choice. Because who likes to write tests?

522
00:25:01,079 --> 00:25:03,960
Speaker 3: Nobody, as much as we want them all, do you.

523
00:25:05,440 --> 00:25:07,400
I like to press the green button and see it

524
00:25:07,480 --> 00:25:08,359
running and it's playing.

525
00:25:08,599 --> 00:25:08,680
Speaker 1: Now.

526
00:25:08,720 --> 00:25:13,799
Speaker 3: I don't mind writing tests, but there's too much to

527
00:25:14,000 --> 00:25:17,119
do that. I want to actually do more creative stuff,

528
00:25:17,799 --> 00:25:19,720
so I want my app to work. I know we're

529
00:25:19,720 --> 00:25:21,119
all vibe coding, right.

530
00:25:21,200 --> 00:25:22,920
Speaker 1: I don't know about you, but I'm not vibe coding.

531
00:25:23,079 --> 00:25:25,799
Speaker 3: Oh Carl, you're missing out. No, no, no, you're missing out.

532
00:25:25,839 --> 00:25:28,200
It's so much fun. So you're just vibe coding away

533
00:25:28,279 --> 00:25:30,519
and you're like, yeah, that looks good, looks.

534
00:25:31,480 --> 00:25:34,279
Speaker 1: I can't let this go. Vibe coding is a pejorative.

535
00:25:34,880 --> 00:25:36,720
That's that's like when some of you doesn't know what

536
00:25:36,759 --> 00:25:41,240
you're doing, talks to an AI. No, no, no, Now,

537
00:25:41,400 --> 00:25:43,799
I use AI to help me write things.

538
00:25:44,079 --> 00:25:45,599
Speaker 3: Maybe your vibe coding and you don't know it.

539
00:25:45,759 --> 00:25:47,960
Speaker 1: Well, maybe our definition of vibe coding is different.

540
00:25:48,440 --> 00:25:50,640
Speaker 3: I'm just a fun person. I like the vibes. So

541
00:25:51,079 --> 00:25:53,559
I'm vibe coding along and I'm like, you know, I'm

542
00:25:53,640 --> 00:25:56,160
doing stuff faster and I'm getting the agent to kind

543
00:25:56,200 --> 00:25:57,880
of do it, and I'm going with the vibe. I'm like, yeah,

544
00:25:57,920 --> 00:26:00,160
this looks good. Yeah, keep going, keep going, keep going. Now,

545
00:26:00,200 --> 00:26:02,799
got this application. But I really have not written the

546
00:26:02,880 --> 00:26:05,039
majority of the code, and that is their new reality.

547
00:26:05,240 --> 00:26:07,000
A lot of people out there are not writing all

548
00:26:07,039 --> 00:26:09,200
the code themselves. Therefore, can they trust the code that

549
00:26:09,240 --> 00:26:11,680
they've written that they haven't even written? And that's where

550
00:26:11,759 --> 00:26:12,640
testing is really.

551
00:26:13,480 --> 00:26:16,279
Speaker 2: Was just talking about this idea of do an experiment

552
00:26:16,880 --> 00:26:19,880
where you write them. You write a prompt for code

553
00:26:20,440 --> 00:26:23,400
and don't check the code, just run it and keep

554
00:26:23,480 --> 00:26:26,119
iterating and asking more questions so you get to a place.

555
00:26:26,200 --> 00:26:29,440
It's for experimentation. He wasn't aiming it at the world.

556
00:26:29,480 --> 00:26:30,720
He was aiming at developers.

557
00:26:30,920 --> 00:26:32,960
Speaker 1: Yeah, and he was aiming it at a way to

558
00:26:33,119 --> 00:26:35,359
experiment with a new tool or a new environment and

559
00:26:35,480 --> 00:26:37,880
a new idea. But it has become a pejorative to

560
00:26:38,200 --> 00:26:40,319
about well, people who don't know what they're doing. People

561
00:26:40,359 --> 00:26:44,960
indevitably abuse it. Yeah, right, but how many times over

562
00:26:45,079 --> 00:26:50,240
the decades has your prototype been shipped? Well, you're asking me, this.

563
00:26:50,359 --> 00:26:52,759
Speaker 2: Is what I'm saying, like, and what are you doing

564
00:26:52,799 --> 00:26:55,319
when you're doing vibe coding? But you're playing with prototype.

565
00:26:55,640 --> 00:26:59,880
Prototypes never shipped, but certainly they went on to become

566
00:27:00,079 --> 00:27:02,880
reading implications. And thereon lies this alien point, which is

567
00:27:03,200 --> 00:27:06,720
because it's a relatively painless, like afternoon experiment, you don't

568
00:27:06,720 --> 00:27:09,599
mind chucking it out either, but it changes your thinking.

569
00:27:09,920 --> 00:27:12,200
You now have seen some ideas and seen them things,

570
00:27:12,279 --> 00:27:14,400
and you might come at it again from a different angle.

571
00:27:15,000 --> 00:27:17,720
So I just wish it hadn't been soiled, you know. Yeah,

572
00:27:18,000 --> 00:27:20,119
And we need a better term car party worked really

573
00:27:20,160 --> 00:27:23,400
hard to make this idea come true. Like he tried

574
00:27:23,440 --> 00:27:25,440
a few different names he's I think at one point

575
00:27:25,480 --> 00:27:28,519
he was talking about I'm coding in English like, but

576
00:27:28,640 --> 00:27:30,319
it was vibe coding was the one that memed up

577
00:27:30,359 --> 00:27:31,079
and took off.

578
00:27:31,200 --> 00:27:35,279
Speaker 1: Yeah sounds cool, So it does, but it's been soiled.

579
00:27:36,160 --> 00:27:39,000
Well I think if it's abuse, it's.

580
00:27:39,240 --> 00:27:44,200
Speaker 3: Not going to go away. No, all right, stop vibing if.

581
00:27:44,160 --> 00:27:45,039
Speaker 1: You say so, Debbie.

582
00:27:45,079 --> 00:27:47,440
Speaker 2: Yeah, but just don't do exactly what he said they

583
00:27:48,279 --> 00:27:50,279
the responsibility element still exists.

584
00:27:50,480 --> 00:27:52,480
Speaker 1: Yeah, all right, And with that, we're going to take

585
00:27:52,480 --> 00:27:55,039
a little break and we'll be back after these very

586
00:27:55,079 --> 00:27:59,680
important messages don't go away. Did you know that you

587
00:27:59,759 --> 00:28:04,720
can work with AWS directly from your ide AWS provides

588
00:28:04,799 --> 00:28:08,960
toolkits for visual Studio, visual Studio code, and jet Brains

589
00:28:09,039 --> 00:28:13,799
rider Learn more at AWS dot Amazon dot com, slash net,

590
00:28:14,079 --> 00:28:18,799
slash tools. And we're back. It's Dot in a Rocks.

591
00:28:18,799 --> 00:28:21,680
I'm Carl Franklin. That's my friend Richard Campbell, and that's

592
00:28:21,799 --> 00:28:25,039
our friend w O'Brien, and she's an advocate for Playwright,

593
00:28:25,839 --> 00:28:29,559
the testing framework for dot Net for web applications, and

594
00:28:29,640 --> 00:28:33,960
we're talking about how playwright has embraced AI and now

595
00:28:34,079 --> 00:28:37,799
you can use a MCP. Did you work on the MCP?

596
00:28:38,119 --> 00:28:39,759
I automated, worked.

597
00:28:39,599 --> 00:28:43,440
Speaker 3: On the actual advocacy for it and ensuring it happened

598
00:28:44,039 --> 00:28:46,680
in the sense I wanted this. I was pushing them.

599
00:28:46,799 --> 00:28:50,759
They're like, you know this to be a thing. Yeah,

600
00:28:50,839 --> 00:28:53,839
because it was so early days. It was like the

601
00:28:53,839 --> 00:28:56,400
first one I did was the Blender one. I played

602
00:28:56,400 --> 00:28:58,400
around the Blender MCP and I just I had made

603
00:28:58,440 --> 00:28:59,880
a leprechaun at a Blend.

604
00:29:00,799 --> 00:29:03,079
Speaker 1: This is not cliche at all to me. I can't imagine, Like,

605
00:29:03,119 --> 00:29:03,319
what do.

606
00:29:03,279 --> 00:29:05,759
Speaker 3: You mean thinking I needed to go back to the

607
00:29:05,799 --> 00:29:08,000
team and prove that I did something so nobody else.

608
00:29:07,920 --> 00:29:10,359
Speaker 1: Is going to do. You did an MCP for Blender.

609
00:29:10,400 --> 00:29:14,440
Does that mean you have mcps? Are there mcps for

610
00:29:14,559 --> 00:29:17,279
say CSS out there in general? No?

611
00:29:17,759 --> 00:29:20,359
Speaker 3: No, no, But for a Blenders a tool, and I

612
00:29:20,359 --> 00:29:21,599
don't know how to use the tool. I don't know

613
00:29:21,599 --> 00:29:23,400
how to use Blender, but I was able to. I

614
00:29:23,519 --> 00:29:25,960
was able to blend a leprechorn together by using the MCP,

615
00:29:26,279 --> 00:29:28,440
and that's the power of the MCP. But you don't

616
00:29:28,480 --> 00:29:30,400
have to have the knowledge to be able to use things.

617
00:29:31,559 --> 00:29:33,519
So then I played around with a load of stuff

618
00:29:33,519 --> 00:29:34,920
and you know, brought that back to the team and

619
00:29:35,000 --> 00:29:37,440
kind of said, hey, guys, I don't know how.

620
00:29:37,359 --> 00:29:38,720
Speaker 1: To use this tool, but I was able to get

621
00:29:38,720 --> 00:29:40,359
this tool to do this white.

622
00:29:41,079 --> 00:29:42,559
Speaker 3: Yeah, why don't we have a Playwright one?

623
00:29:43,079 --> 00:29:46,079
Speaker 2: Back to you know, you put on your product, manage

624
00:29:46,079 --> 00:29:48,200
your hat, and it's like, I want more people to

625
00:29:48,279 --> 00:29:51,000
use my product. Why wouldn't I make it easier for

626
00:29:51,119 --> 00:29:52,400
more people to use my product?

627
00:29:52,519 --> 00:29:52,680
Speaker 1: Yes?

628
00:29:52,759 --> 00:29:55,960
Speaker 3: Well, also there were other third party mcps by Playwright

629
00:29:56,440 --> 00:29:59,319
wow right, which we're doing really good stuff, and I

630
00:29:59,519 --> 00:30:02,079
was like pressed by what they had done, and why

631
00:30:02,119 --> 00:30:04,200
do we have an official one? Because we can then

632
00:30:04,279 --> 00:30:06,279
tailor it to what people's needs are. But you know

633
00:30:06,799 --> 00:30:09,039
a lot of clients were using the third party ones

634
00:30:09,079 --> 00:30:11,000
and asking us do we not have an official one?

635
00:30:11,279 --> 00:30:12,759
So all this was like, you know, pressure.

636
00:30:14,519 --> 00:30:17,839
Speaker 1: So how did those third party repo managers feel about

637
00:30:18,200 --> 00:30:19,920
Microsoft doing an official one?

638
00:30:20,680 --> 00:30:23,200
Speaker 3: I don't know. I think because it's open source, we

639
00:30:23,279 --> 00:30:24,720
were able to build stuff, they were able to learn

640
00:30:24,759 --> 00:30:25,680
from that, we learned from them.

641
00:30:25,759 --> 00:30:28,839
Speaker 1: I think it's like, you know, the way everybody's great,

642
00:30:28,880 --> 00:30:30,680
you don't make these things for fun. You make it

643
00:30:30,680 --> 00:30:32,720
because you're trying to get something done. You just took

644
00:30:32,759 --> 00:30:33,720
a bunch of work off their play.

645
00:30:33,799 --> 00:30:34,559
Speaker 3: We're improving things.

646
00:30:34,720 --> 00:30:36,720
Speaker 2: Yeah, that's and he probably too accused from them because

647
00:30:36,720 --> 00:30:37,319
they'd already come.

648
00:30:37,279 --> 00:30:37,640
Speaker 1: Up with something.

649
00:30:37,680 --> 00:30:38,759
Speaker 3: They've done some amazing stuff.

650
00:30:38,920 --> 00:30:39,119
Speaker 1: Yeah.

651
00:30:39,559 --> 00:30:41,319
Speaker 2: And in the end, it's better for there to be

652
00:30:41,440 --> 00:30:44,200
one comprehensive one that does every everything that everybody wants.

653
00:30:44,400 --> 00:30:47,400
Speaker 3: I think as well, people want to trust that this

654
00:30:48,160 --> 00:30:49,759
yes trustworthy.

655
00:30:49,880 --> 00:30:52,079
Speaker 1: You guys aren't planting malware on my machine exactly, I'm

656
00:30:52,079 --> 00:30:54,880
pretty sure. I think in general, I think in general,

657
00:30:55,039 --> 00:30:59,119
Microsoft is kind of late to the agent game, and

658
00:30:59,559 --> 00:31:01,880
I think that they're finally coming around to it. Why

659
00:31:01,960 --> 00:31:05,720
they relate probably because you know, things are changing so fast,

660
00:31:06,400 --> 00:31:09,640
But I really want them to succeed at this. I

661
00:31:09,680 --> 00:31:12,440
don't think anything within a year is late of anything. No, no, no,

662
00:31:12,599 --> 00:31:15,720
But they were there as certainly other things popping up

663
00:31:15,759 --> 00:31:17,519
in the last couple of years, a year and a

664
00:31:17,559 --> 00:31:23,279
half that you know, people are glombing onto and especially

665
00:31:23,319 --> 00:31:27,160
people in FVNX. You know they're early adopters, but they're

666
00:31:27,279 --> 00:31:29,720
they're all in agreement that they want to see Microsoft

667
00:31:30,720 --> 00:31:34,039
kick this thing right. We want them to be the

668
00:31:34,599 --> 00:31:36,200
dominant force. Yeah, I don't know.

669
00:31:36,920 --> 00:31:40,160
Speaker 2: I like how open everything has been so far. Yes,

670
00:31:40,640 --> 00:31:43,880
you know, arguably except for weights. But for the most

671
00:31:43,880 --> 00:31:46,000
part the weights that people are protecting don't seem to

672
00:31:46,119 --> 00:31:48,240
be all that valuable anyway.

673
00:31:48,359 --> 00:31:49,559
Speaker 1: Can you explain what you mean by that?

674
00:31:49,680 --> 00:31:55,039
Speaker 2: Yeah, So when I say weights, well, the values inside

675
00:31:55,079 --> 00:31:56,920
of the neural net that make it perform the way

676
00:31:56,960 --> 00:31:59,119
it does. So, you know actor value that they talk

677
00:31:59,160 --> 00:32:02,559
about CLAW being open source. Sure, the code's open source,

678
00:32:02,640 --> 00:32:05,279
but the cloud that you're using actually has a training

679
00:32:05,359 --> 00:32:08,079
set in it, and those sets of values, those weights

680
00:32:08,519 --> 00:32:12,119
are in theory, that's the asset. Those aren't public, and

681
00:32:12,279 --> 00:32:15,240
so you don't you're not literally sitting on the set

682
00:32:15,279 --> 00:32:16,960
of you're sitting on the code where you can do

683
00:32:17,079 --> 00:32:19,559
your own training set to make a cloud like thing

684
00:32:19,839 --> 00:32:22,480
which you don't have their training set, and you don't

685
00:32:22,519 --> 00:32:23,519
have the results of that.

686
00:32:23,599 --> 00:32:24,680
Speaker 1: It's about the training data.

687
00:32:25,039 --> 00:32:26,400
Speaker 2: And one of the ways it was explained to me

688
00:32:26,480 --> 00:32:31,039
the other day that really amused me is that these ms,

689
00:32:31,079 --> 00:32:34,880
these neural nets, they are the jpegging of data. They

690
00:32:34,920 --> 00:32:38,279
are a lossy compression format for a large quantity of data.

691
00:32:38,559 --> 00:32:41,400
Right cool, you tokenize it, you turn it into a

692
00:32:41,480 --> 00:32:44,440
set of symbols that you can then compress into a

693
00:32:44,599 --> 00:32:48,079
model that then you can pull images from. But it's

694
00:32:48,119 --> 00:32:50,519
a lossy format, so you're trying to lose the things

695
00:32:50,559 --> 00:32:53,839
that aren't important and hope for the best. But and

696
00:32:53,960 --> 00:32:56,799
it's opaque, like the only thing you can't do from

697
00:32:56,839 --> 00:32:59,680
a JPEG is get the original image. The loss is

698
00:32:59,720 --> 00:33:04,720
the law us unlike FLACK, which is an audio format,

699
00:33:04,759 --> 00:33:06,960
and if you want a flack of the Internet, use

700
00:33:07,000 --> 00:33:11,039
the Internet or ZIP is a better example, right, Yeah, yeah,

701
00:33:11,519 --> 00:33:14,440
a non lossy formula on this. So I mean, we're

702
00:33:14,720 --> 00:33:19,039
playing in this space where we have this language model

703
00:33:19,119 --> 00:33:21,559
and now we're figuring. You know, in some ways the

704
00:33:21,599 --> 00:33:24,880
science is over. This is all engineering, and the engineering

705
00:33:24,960 --> 00:33:26,759
we're doing is how do we couple this to things

706
00:33:26,799 --> 00:33:30,119
that are valuable. And that's where MCP just emerges and

707
00:33:30,240 --> 00:33:32,880
grabs on so quickly. You know what it reminds me

708
00:33:32,920 --> 00:33:38,240
of typescript, Yeah, because when typescript templates like typescript was

709
00:33:38,440 --> 00:33:43,799
an interesting idea until everybody made a template for everything

710
00:33:44,000 --> 00:33:46,640
for it, right, And what you're seeing with MCPS is

711
00:33:46,680 --> 00:33:49,039
same effect that all of a sudden, all of these

712
00:33:49,160 --> 00:33:52,680
tools that are especially part time tools, like tools you

713
00:33:52,680 --> 00:33:53,960
don't use all the time, You're never going to be

714
00:33:54,039 --> 00:33:57,119
good at that. Suddenly you gave them a prompt interface

715
00:33:58,000 --> 00:33:59,519
and it makes it a lot easier to do those.

716
00:33:59,799 --> 00:34:03,880
Speaker 1: So how long has the Playwright MCP been available? Minutes?

717
00:34:04,759 --> 00:34:10,360
Speaker 3: No months? Which is an entirety in AI. I think

718
00:34:10,440 --> 00:34:14,519
we were about January February when we released it and

719
00:34:14,639 --> 00:34:15,039
that time.

720
00:34:15,119 --> 00:34:18,119
Speaker 1: Have you seen people using it for? Interesting ideas? Can

721
00:34:18,199 --> 00:34:20,159
you give us some of those things that people used

722
00:34:20,159 --> 00:34:20,320
it for?

723
00:34:22,039 --> 00:34:25,400
Speaker 3: No, I don't think I'm looking on I'm looking on

724
00:34:26,159 --> 00:34:29,440
tables when I use it. No, obviously we do. We

725
00:34:29,480 --> 00:34:32,039
have a lot of people using and for testing, especially

726
00:34:32,159 --> 00:34:34,679
inside Microsoft. That's what it should be for, and that's

727
00:34:34,679 --> 00:34:36,039
what should be for, and there are other people using

728
00:34:36,079 --> 00:34:37,800
it for other things. There are many things you can

729
00:34:37,880 --> 00:34:42,079
use it for. But yeah, it's a good question. I'd

730
00:34:42,119 --> 00:34:44,519
love to hear from. We are the number one playwright

731
00:34:44,719 --> 00:34:47,599
or the number one MCP server. So, no kidding, It

732
00:34:47,719 --> 00:34:50,159
is insane because of the capabilities it can do. And

733
00:34:50,239 --> 00:34:52,400
it's not just it's not just about testing, it's about

734
00:34:52,480 --> 00:34:53,639
browser automation.

735
00:34:53,400 --> 00:34:56,760
Speaker 1: MCP to the Web. What could be better? Yeah? Yeah, really,

736
00:34:56,920 --> 00:35:05,199
you've got ten thousand and stars already, ten thousand stars.

737
00:35:05,320 --> 00:35:09,920
Heypesky website doesn't have an MPI and API. Don't worry,

738
00:35:10,000 --> 00:35:10,400
don't worry.

739
00:35:10,599 --> 00:35:12,480
Speaker 3: We've got it cover and we don't even have a

740
00:35:12,519 --> 00:35:16,960
documentation page website. We have literally just to get up thirty.

741
00:35:17,800 --> 00:35:18,280
It's crazy.

742
00:35:18,280 --> 00:35:21,199
Speaker 1: Wow, that's great, It's madness, it's awesome.

743
00:35:21,440 --> 00:35:23,239
Speaker 3: I put a video out on Thursday and has twenty

744
00:35:23,280 --> 00:35:24,199
eight kve yews.

745
00:35:24,239 --> 00:35:25,280
Speaker 1: That holy crap.

746
00:35:25,400 --> 00:35:28,559
Speaker 2: No, no, it's this is a very very powerful one

747
00:35:28,920 --> 00:35:31,960
and a bunch of people know it like they've figured

748
00:35:31,960 --> 00:35:32,239
it out.

749
00:35:32,400 --> 00:35:34,719
Speaker 3: What I'm wondering is, you know, you probably heard the

750
00:35:35,159 --> 00:35:39,199
keynote from Satya and we've got Windows as an MVP. Yes,

751
00:35:39,559 --> 00:35:42,920
how could we leverage playwright into the Windows MCP?

752
00:35:43,320 --> 00:35:45,800
Speaker 1: Okay, this show's the first check in is March fifteenth,

753
00:35:45,960 --> 00:35:49,440
twenty twenty five. This is two months old?

754
00:35:49,840 --> 00:35:52,000
Speaker 3: Is that all I told you? Months?

755
00:35:52,159 --> 00:35:55,239
Speaker 1: Two months? All right? So here's the thing. Ten thousand stars,

756
00:35:55,440 --> 00:35:55,840
two months.

757
00:35:56,159 --> 00:35:57,760
Speaker 3: I think we got the first five k in like

758
00:35:58,119 --> 00:36:01,239
three days or something. Literally, yeah, I literally slept and

759
00:36:01,280 --> 00:36:02,840
then I wake up and it was like another two

760
00:36:03,039 --> 00:36:04,119
k stars. It was insane.

761
00:36:04,280 --> 00:36:06,400
Speaker 1: Is this going to be the new phone app? In

762
00:36:06,519 --> 00:36:10,199
other words, is MCP is going to be Starbucks going

763
00:36:10,239 --> 00:36:14,000
to have a Starbucks MCP where you can just to

764
00:36:14,159 --> 00:36:17,360
order a coffee. To order a coffee, it's McDonald It's

765
00:36:17,400 --> 00:36:19,599
going to have a McDonald's instead of going to go

766
00:36:19,599 --> 00:36:21,599
to the drive through? Are using the mobile app? Are

767
00:36:21,639 --> 00:36:23,199
they going to say, are using the MCP.

768
00:36:23,480 --> 00:36:24,880
Speaker 2: I don't think they're going to ask. I think what's

769
00:36:24,920 --> 00:36:26,440
going to happen is you're going to be able to

770
00:36:27,000 --> 00:36:30,280
You're going to ask you a perplexity from your phone

771
00:36:30,559 --> 00:36:33,039
to order from Starbucks, and it's going to tap the

772
00:36:33,119 --> 00:36:35,159
m CP. Get here's a wonderful.

773
00:36:34,760 --> 00:36:36,800
Speaker 1: Thing about Starbucks. You go up, they say may I help,

774
00:36:36,880 --> 00:36:39,320
and you say yes, I want X, and they give

775
00:36:39,400 --> 00:36:41,360
it to you as opposed to you drive it to Starbucks.

776
00:36:41,440 --> 00:36:45,199
Speaker 2: Go, my name is Carl. Here's your bag. Yeah, it's

777
00:36:45,199 --> 00:36:47,480
already done, but I don't want it already done. I

778
00:36:47,559 --> 00:36:48,400
want it done fresh.

779
00:36:48,440 --> 00:36:51,760
Speaker 1: While I wait, No, it was done. Adget I'm the

780
00:36:52,039 --> 00:36:55,440
I'm the the Luddite tear and we've done fresh. On

781
00:36:55,599 --> 00:36:58,639
your way there. Richard's the guy who wants Wi Fi

782
00:36:58,880 --> 00:37:02,119
in your refrigerator because he wants your refrigerator to phone

783
00:37:02,159 --> 00:37:03,519
the grocery store in order milk.

784
00:37:04,400 --> 00:37:05,639
Speaker 3: I want, I want that done too.

785
00:37:05,840 --> 00:37:08,159
Speaker 1: I think. I think that's what And the answer is

786
00:37:08,920 --> 00:37:12,519
the ultrasonic sensor in the cape down into the bottle

787
00:37:12,599 --> 00:37:15,639
that much milk is licked and break. That's how it works.

788
00:37:16,000 --> 00:37:19,480
It's really brilliant. You know what's awesome going to the

789
00:37:19,559 --> 00:37:24,039
grocery store with a list and shopping. I have seeing

790
00:37:24,119 --> 00:37:27,440
what's fresh. I have stuff to do, but I have

791
00:37:27,519 --> 00:37:29,360
to be clear shopping.

792
00:37:30,159 --> 00:37:32,239
Speaker 3: Try shopping shopping trolley.

793
00:37:32,079 --> 00:37:34,840
Speaker 1: Twins not a thing, all right. I want things to

794
00:37:34,920 --> 00:37:35,280
be easy.

795
00:37:35,320 --> 00:37:36,320
Speaker 3: I want things to be fast.

796
00:37:36,599 --> 00:37:39,840
Speaker 1: Why, by the way, I'm not a lute I am.

797
00:37:40,079 --> 00:37:42,320
I am like very technological. If you understand, if you

798
00:37:42,400 --> 00:37:44,760
listen to Dot it Rocks, you know I do so

799
00:37:44,960 --> 00:37:47,400
much with technologist day. You're just trying to be a contrary.

800
00:37:47,480 --> 00:37:49,400
I am trying to be a contrary. It isn't working,

801
00:37:49,480 --> 00:37:50,320
but you're trying. Okay.

802
00:37:53,719 --> 00:37:56,639
Speaker 2: My my family in New Zealand owns a dairy farm.

803
00:37:57,039 --> 00:37:59,480
So I was just down there my cousin and we

804
00:37:59,599 --> 00:38:02,320
had to go shopping, yes, and we had and we

805
00:38:02,400 --> 00:38:05,840
had to buy milk. Oh no, And I'm like, I

806
00:38:06,000 --> 00:38:08,239
find it hilarious that you're buying milk. She goes, Oh,

807
00:38:08,320 --> 00:38:10,679
you don't even know the half of it. We're in

808
00:38:10,760 --> 00:38:13,719
the one half of one percent of the best milk

809
00:38:13,760 --> 00:38:16,039
produced in New Zealand, and my milk is in this

810
00:38:16,159 --> 00:38:20,039
bottle somewhere, mixed in with everybody else's back because I

811
00:38:20,159 --> 00:38:24,599
can't buy my milk. Listen to the big country by

812
00:38:24,679 --> 00:38:28,400
talking heads. It's like on the plane and he's looking down,

813
00:38:28,480 --> 00:38:31,199
he's look at that kitchen and all that food. They

814
00:38:31,320 --> 00:38:33,519
go to the grocery store and they put it in

815
00:38:33,599 --> 00:38:36,199
their car trunks and they bring it back home, bring

816
00:38:36,280 --> 00:38:36,840
it to the point.

817
00:38:37,039 --> 00:38:39,639
Speaker 1: I don't know, it's crazy, It is crazy, but you

818
00:38:39,679 --> 00:38:41,000
know that's what happens, all right.

819
00:38:41,039 --> 00:38:43,639
Speaker 2: Well, I mean with the interesting truth about the playwright.

820
00:38:43,800 --> 00:38:46,199
MCP is not just I can do better testing on

821
00:38:46,239 --> 00:38:48,360
my website with less effort, without a doubt, but also

822
00:38:48,800 --> 00:38:52,119
this is a remarkable tool for fetching information off the web. Yes,

823
00:38:52,480 --> 00:38:56,639
full stop web scraping with AI. Yeah, except you're not

824
00:38:56,679 --> 00:39:00,360
even thinking about scrape anymore. You're just getting information exactly.

825
00:39:00,400 --> 00:39:03,840
Speaker 3: I think webscraping sounds makes it sound is a derogatory. Yeah,

826
00:39:04,519 --> 00:39:07,559
it's about giving the LLM the power to open a

827
00:39:07,639 --> 00:39:09,519
browser and do whatever you need to do.

828
00:39:09,760 --> 00:39:13,360
Speaker 2: Yeah, and move from there, and that play right, but

829
00:39:13,400 --> 00:39:14,320
then save.

830
00:39:14,199 --> 00:39:16,559
Speaker 3: It in its memory and then do something with whatever

831
00:39:16,679 --> 00:39:18,599
that is, be it read a buck to you or

832
00:39:18,679 --> 00:39:19,440
create a test for it.

833
00:39:20,039 --> 00:39:23,039
Speaker 1: So so you can tell chat gpt, you know, you

834
00:39:23,119 --> 00:39:25,360
can ask it to you know. What is the is

835
00:39:25,800 --> 00:39:27,960
when I ask chat ept about a problem that I'm

836
00:39:28,000 --> 00:39:29,559
having and it says, well, I don't know, you know,

837
00:39:29,760 --> 00:39:32,480
or here's something that doesn't work. I say, is anybody

838
00:39:32,519 --> 00:39:34,800
else on the internet having this problem? This is a

839
00:39:34,840 --> 00:39:37,199
great prompt for chat ChiPT and it will go search

840
00:39:37,679 --> 00:39:40,440
and sometimes it will find yes. On stack overflow, I

841
00:39:40,519 --> 00:39:44,280
found this. This particular user said do this. This particular

842
00:39:44,360 --> 00:39:48,480
user said do that. You wouldn't necessarily have to do

843
00:39:48,639 --> 00:39:53,079
that anymore. Like, is chat gpt using something like that

844
00:39:53,320 --> 00:39:58,159
to scrape websites? Using Google searches and then looking at

845
00:39:58,199 --> 00:40:02,639
the websites? And it's yeah, of course it's different. It

846
00:40:02,719 --> 00:40:03,760
doesn't have play right.

847
00:40:03,719 --> 00:40:04,880
Speaker 3: It's not opening the browser.

848
00:40:05,199 --> 00:40:11,079
Speaker 1: It's using an HDP client kind of thing. Yeah, it's interesting.

849
00:40:11,239 --> 00:40:13,760
Speaker 2: I just like that pattern of what tests should be

850
00:40:13,800 --> 00:40:16,199
written for this web page? Why don't you write those

851
00:40:16,239 --> 00:40:16,719
tests for me?

852
00:40:16,840 --> 00:40:17,559
Speaker 1: Yes, it's great.

853
00:40:17,719 --> 00:40:19,280
Speaker 3: Continue to keep going, keep going.

854
00:40:19,320 --> 00:40:21,880
Speaker 1: It's like, why are you waiting? Keep going.

855
00:40:22,719 --> 00:40:25,599
Speaker 3: It's very powerful. We're only in the early days. Like

856
00:40:25,960 --> 00:40:31,280
literally you mons, I know, it's so cool and there's

857
00:40:31,320 --> 00:40:32,920
so much more, and that we have some really cool

858
00:40:32,960 --> 00:40:35,360
ideas that we want to try and work with to

859
00:40:35,519 --> 00:40:41,880
improve the whole testing scenario in the MCP world. Improve it,

860
00:40:42,000 --> 00:40:44,199
make it better, give it access to more things. What

861
00:40:44,320 --> 00:40:45,960
can we what else can we let it have?

862
00:40:46,199 --> 00:40:47,639
Speaker 2: Yeah, well you hit on the point of now you

863
00:40:47,719 --> 00:40:49,920
plug the GitHub MCP into this as well, and so

864
00:40:50,039 --> 00:40:53,320
now you're pushing issues for tests to fail, right, instead

865
00:40:53,360 --> 00:40:55,760
of fatting around with anything else. Just to automate that

866
00:40:55,880 --> 00:40:57,760
whole problem, that entire workflow.

867
00:40:58,000 --> 00:41:01,119
Speaker 3: Just talk to the LM, the whole timelilet this.

868
00:41:02,719 --> 00:41:05,199
Speaker 2: Feed that engine over there, because you know the other

869
00:41:05,840 --> 00:41:09,960
remember when get hubs you sort of claim to fame

870
00:41:09,960 --> 00:41:12,400
its the scriptor was social coding, right, it was the

871
00:41:12,519 --> 00:41:13,960
social media for coding.

872
00:41:14,480 --> 00:41:15,440
Speaker 1: This flow of.

873
00:41:15,960 --> 00:41:18,800
Speaker 2: Creating issues and then resulting in pull requests and so

874
00:41:18,960 --> 00:41:22,920
forth is about a documentation chain of how an app evolved.

875
00:41:22,960 --> 00:41:25,599
The fact that we're going to insert these tools into

876
00:41:25,639 --> 00:41:27,760
the process, they should contribute the documentation.

877
00:41:27,920 --> 00:41:28,599
Speaker 1: They write better.

878
00:41:28,559 --> 00:41:31,159
Speaker 3: Documentation, and we do anyway better English than my house.

879
00:41:32,119 --> 00:41:36,039
Speaker 2: Right and thorough the number of times now that I've

880
00:41:36,039 --> 00:41:38,280
turned to get hub Copilot after tinkering with some co

881
00:41:38,400 --> 00:41:41,199
for a while and said, what have I changed? And

882
00:41:41,360 --> 00:41:44,639
it's batback stuff I've completely forgotten about already. It's like,

883
00:41:44,679 --> 00:41:47,360
here are all the changes you did, so, I mean

884
00:41:47,440 --> 00:41:50,840
it just speaks to all of those you know, those

885
00:41:50,960 --> 00:41:54,400
things singing together means we have a far better picture

886
00:41:54,400 --> 00:41:58,000
of how software can be evolved and and different tools

887
00:41:58,079 --> 00:42:02,320
to evolve it. Because of course this show and we've

888
00:42:02,360 --> 00:42:06,159
now done podcasts leading into our conversation about this agenic

889
00:42:06,280 --> 00:42:09,119
AI role helping us write code.

890
00:42:09,719 --> 00:42:13,239
Speaker 3: It's further reality. Yeah, it's not even the future, it's yeah,

891
00:42:13,320 --> 00:42:14,039
it's reality.

892
00:42:13,880 --> 00:42:16,400
Speaker 1: Right, it's right now, right now. Yeah. I guess your

893
00:42:16,440 --> 00:42:18,119
next question is like, how would you make this web

894
00:42:18,159 --> 00:42:21,159
page better? How would you make it faster? I gotta

895
00:42:21,199 --> 00:42:23,199
tell you something I don't know about you, Richard, but

896
00:42:23,280 --> 00:42:23,960
I'm getting.

897
00:42:23,800 --> 00:42:27,159
Speaker 3: Vibes you see, you see your vibe coding already.

898
00:42:27,280 --> 00:42:31,280
Speaker 1: I'm getting vibes like when we did a show with

899
00:42:31,440 --> 00:42:36,920
Miguel da Casa after Microsoft bought them about Zamoran, about Zamorin,

900
00:42:37,119 --> 00:42:41,239
and you realize the future and how it was going

901
00:42:41,320 --> 00:42:44,400
to change, and it turned into done at Core. Right,

902
00:42:45,239 --> 00:42:47,679
Core was already well underway. Bye, But I mean it really,

903
00:42:47,840 --> 00:42:49,679
I mean they got it. They got it really rolling

904
00:42:50,599 --> 00:42:54,159
you think about we signed to Miguel in twenty eleven, yeah, right,

905
00:42:54,239 --> 00:42:56,199
which is when Andrews had left to see sh our

906
00:42:56,239 --> 00:42:57,320
team was going to typescript.

907
00:42:57,559 --> 00:43:00,840
Speaker 2: Yeah, and like we were worried about about C sharp,

908
00:43:00,880 --> 00:43:02,519
we were. We didn't know what was typescript. We just

909
00:43:02,559 --> 00:43:08,880
knew he left and suddenly the that Miguel came and

910
00:43:08,960 --> 00:43:10,280
talked to us. And I think I said on the

911
00:43:10,320 --> 00:43:12,400
show at that time, I think the keeper of C

912
00:43:12,559 --> 00:43:15,280
sharp doesn't work for Microsoft. It's Miguel dia Cap absolutely,

913
00:43:15,320 --> 00:43:17,679
because he was pretting C sharp into iPhone and Android,

914
00:43:17,719 --> 00:43:22,039
which was craziness, right, and that completely I think Miguelda

915
00:43:22,119 --> 00:43:25,880
Causes saved. Yeah, I wonder if that's true. I think

916
00:43:25,920 --> 00:43:28,239
it was gonna be saved anyway, but he certainly proved

917
00:43:28,280 --> 00:43:29,440
it had more potential than.

918
00:43:29,360 --> 00:43:31,800
Speaker 1: Anybody had thought of yeah or believed it. Yeah. And

919
00:43:31,920 --> 00:43:34,000
without his work on Mono and everything, it would have

920
00:43:34,039 --> 00:43:37,239
taken a lot longer to dot necor what it is today.

921
00:43:37,760 --> 00:43:40,880
So I'm getting the same vibe right now with you, Debbie,

922
00:43:41,599 --> 00:43:42,719
with playwright.

923
00:43:42,400 --> 00:43:43,400
Speaker 3: You all the world.

924
00:43:43,559 --> 00:43:48,760
Speaker 1: You are the new media because MCP and MCP. I'm sorry,

925
00:43:48,840 --> 00:43:56,360
but an AI interface to the web generally is full stop,

926
00:43:56,679 --> 00:44:00,559
full stop the future. I'm I mean, you can have

927
00:44:00,719 --> 00:44:04,280
an MCP to GitHub into Azure and all that stuff,

928
00:44:04,320 --> 00:44:07,199
and that's all great for your resources, but for the

929
00:44:07,360 --> 00:44:10,400
web click type the bit of stuff on the web.

930
00:44:10,719 --> 00:44:12,239
I don't know if you've noticed, there's some stuff. There's

931
00:44:12,280 --> 00:44:14,559
some stuff. I think some of it's horrible. Some of

932
00:44:14,639 --> 00:44:18,639
it is horrible. You should not click Google there if

933
00:44:18,679 --> 00:44:20,320
you get a link in an email that says, hey

934
00:44:20,440 --> 00:44:22,760
click this, don't click it, don't do that, don't do that.

935
00:44:23,000 --> 00:44:25,639
But I think this is one of those times right

936
00:44:25,719 --> 00:44:28,760
now today where we will look back and I think

937
00:44:28,800 --> 00:44:30,480
we're probably going to be doing this in twenty years.

938
00:44:30,599 --> 00:44:32,920
Oh good lord, I think so. I think, all right,

939
00:44:33,000 --> 00:44:34,119
ten years from now, we're going.

940
00:44:34,119 --> 00:44:38,280
Speaker 2: To years you know what, two years that we're talking

941
00:44:38,320 --> 00:44:41,519
about show three thousands, right, ten years from now, we're

942
00:44:41,559 --> 00:44:42,559
going to look back and see.

943
00:44:42,400 --> 00:44:44,559
Speaker 1: Remember that show we did with w O'Brian on playwright

944
00:44:45,159 --> 00:44:49,039
that changed the world. I'm literally thinking that this is

945
00:44:49,159 --> 00:44:49,599
that moment.

946
00:44:49,679 --> 00:44:50,840
Speaker 3: I always want to change the world.

947
00:44:51,039 --> 00:44:54,639
Speaker 2: Wall blame you, Yeah, well, it's all your fault. Supposed

948
00:44:54,639 --> 00:44:55,920
to be a nice little show.

949
00:44:55,920 --> 00:44:58,960
Speaker 1: What have you done? Look, we've all been around for

950
00:44:59,079 --> 00:45:02,519
a long time. We can recognize big change when we

951
00:45:02,559 --> 00:45:03,599
see it. And this is big.

952
00:45:03,800 --> 00:45:04,360
Speaker 3: Now, this is big.

953
00:45:04,960 --> 00:45:06,880
Speaker 2: You're really running out of excuses not to write tests,

954
00:45:07,159 --> 00:45:08,239
really really running out of it.

955
00:45:08,360 --> 00:45:09,239
Speaker 1: Yes, the test.

956
00:45:09,480 --> 00:45:12,119
Speaker 3: Yeah, they're literally saying like, we've got no time, we've

957
00:45:12,119 --> 00:45:13,039
got no money, we've.

958
00:45:12,880 --> 00:45:15,440
Speaker 2: Got no this that's okay, this is free. And all

959
00:45:15,440 --> 00:45:17,840
you can do is write a prompt and then say yes.

960
00:45:18,119 --> 00:45:20,559
Speaker 3: And you can write a reusable prompt that you can

961
00:45:20,599 --> 00:45:22,960
save into your get a prompts folder. That's right, that

962
00:45:23,119 --> 00:45:24,920
therefore you and after the work once.

963
00:45:24,960 --> 00:45:27,800
Speaker 1: Prompt libraries, yeah, Hunter told me about this at lunch.

964
00:45:28,440 --> 00:45:32,039
Prompt libraries, like you have code libraries. Now there's prompt libraries.

965
00:45:32,119 --> 00:45:35,079
Speaker 2: Yeah, obviously, right, a well crafted prompt that will really

966
00:45:35,199 --> 00:45:37,320
have that will walk through all the steps of writing

967
00:45:37,400 --> 00:45:38,800
out an entire test plan.

968
00:45:38,719 --> 00:45:41,440
Speaker 1: For our new website. Forget about substacks, subscribe to my

969
00:45:41,599 --> 00:45:48,079
prompt library, right, anything else you want to talk about

970
00:45:48,119 --> 00:45:49,679
before we end this world changing?

971
00:45:51,079 --> 00:45:53,519
Speaker 2: Everything's done. Now remember your life before.

972
00:45:55,719 --> 00:45:59,760
Speaker 3: No, it's all mtps, I would say, I would say,

973
00:45:59,800 --> 00:46:02,519
still people are still testing, and that's also fine that

974
00:46:02,599 --> 00:46:03,639
this is not taking over.

975
00:46:03,840 --> 00:46:05,840
Speaker 2: Oh no, this show is called changing testing with play

976
00:46:05,920 --> 00:46:07,880
right MCP Okay, that's what this is called.

977
00:46:07,960 --> 00:46:09,599
Speaker 3: Okay, But you can still write test if you want to.

978
00:46:09,679 --> 00:46:12,519
Speaker 1: You can write that never went away. But I'm what

979
00:46:12,639 --> 00:46:15,119
I'm doing is taking weeks not to write test exactly.

980
00:46:15,360 --> 00:46:18,159
Speaker 3: So still write your test still, you know, when you're developing.

981
00:46:18,239 --> 00:46:20,719
But if you have a website out there, you're a URL.

982
00:46:21,159 --> 00:46:23,519
You just want help. You don't have an idea what

983
00:46:23,639 --> 00:46:26,000
a test. Let the AI do it for you.

984
00:46:26,639 --> 00:46:29,039
Speaker 2: Let it guide you down the path. I mean, in

985
00:46:29,119 --> 00:46:31,039
the end, you're still going to agree with what it did.

986
00:46:31,920 --> 00:46:34,800
Speaker 1: But it's got good ideas, definitely good ideas.

987
00:46:34,599 --> 00:46:36,440
Speaker 2: Which is mostly just scraped from the internet.

988
00:46:36,239 --> 00:46:38,400
Speaker 3: Anyway, right exactly someone else has done not.

989
00:46:38,440 --> 00:46:41,079
Speaker 2: Thinking any originally. But you're basically you've now found a

990
00:46:41,159 --> 00:46:44,840
mechanism to tap the best thinking and testing to give

991
00:46:44,960 --> 00:46:47,679
you ideas on how to test your site thoroughly.

992
00:46:47,840 --> 00:46:49,599
Speaker 3: But it's a little bit different because you were asking

993
00:46:49,679 --> 00:46:51,679
it to give ideas based on someone else's ideas. This

994
00:46:51,760 --> 00:46:54,360
is actually the MDP going to the website and saying,

995
00:46:54,559 --> 00:46:56,039
oh look, I see a button here. I'm going to

996
00:46:56,079 --> 00:46:58,039
click it, right. So it's kind of like what would

997
00:46:58,079 --> 00:46:59,599
a user do when it first sees a website. It

998
00:46:59,639 --> 00:47:01,960
starts picking buttons, and that's what this is doing. It

999
00:47:02,000 --> 00:47:04,559
starts clicking buttons and then seeing, Oh I see this

1000
00:47:04,719 --> 00:47:06,119
is a filter existance. Oh I see this is this

1001
00:47:06,239 --> 00:47:08,519
because it has access to that page not shut.

1002
00:47:09,559 --> 00:47:11,239
Speaker 1: So, Debbie, how long have you been in town?

1003
00:47:12,039 --> 00:47:12,519
Speaker 3: Two days?

1004
00:47:12,559 --> 00:47:15,599
Speaker 1: Maybe? Have you been to the Elephant in Castle? Irish pub?

1005
00:47:15,679 --> 00:47:18,360
A British pub? No, it's good if you're if you're

1006
00:47:18,440 --> 00:47:21,079
hankering for a pub, good goods and chips.

1007
00:47:20,920 --> 00:47:22,639
Speaker 2: Yeah you don't, hankers are here.

1008
00:47:22,880 --> 00:47:25,800
Speaker 1: Yeah, you brought the fam. Yeah, like cold and wet.

1009
00:47:26,199 --> 00:47:31,239
Speaker 3: It's my garden, that's true. How old are they seventeen months?

1010
00:47:31,280 --> 00:47:34,119
Speaker 1: Oh? My goods, they're not eating fish and chips yet.

1011
00:47:34,320 --> 00:47:35,119
Speaker 3: Oh they're reading everything.

1012
00:47:35,159 --> 00:47:40,239
Speaker 1: Oh yeah, Well give them some mushy peas. He'll be happy. Yeah, okay,

1013
00:47:40,320 --> 00:47:43,920
it's fantastic. All right, Well, this is a life changing

1014
00:47:43,960 --> 00:47:46,440
moment for me and I hope I hope everybody else too.

1015
00:47:46,519 --> 00:47:48,840
Speaker 2: So if you're excited because cool things are happening.

1016
00:47:48,599 --> 00:47:50,800
Speaker 1: We are very excited, and we'll talk to you next time.

1017
00:47:50,920 --> 00:48:15,639
Dear listener. Dot net rocks. Dot net rocks is brought

1018
00:48:15,639 --> 00:48:19,039
to you by Franklin's Net and produced by Pop Studios,

1019
00:48:19,480 --> 00:48:23,440
a full service audio, video and post production facility located

1020
00:48:23,519 --> 00:48:26,400
physically in New London, Connecticut, and of course in the

1021
00:48:26,480 --> 00:48:31,559
cloud online at pwop dot com. Visit our website at

1022
00:48:31,639 --> 00:48:33,480
d O T N E t R O c k

1023
00:48:33,719 --> 00:48:38,480
S dot com for RSS feeds, downloads, mobile apps, comments,

1024
00:48:38,840 --> 00:48:41,360
and access to the full archives going back to show

1025
00:48:41,440 --> 00:48:45,159
number one, recorded in September two thousand and two. And

1026
00:48:45,280 --> 00:48:47,639
make sure you check out our sponsors. They keep us

1027
00:48:47,719 --> 00:48:51,159
in business. Now go write some code. See you next time.

1028
00:48:52,079 --> 00:49:10,320
You got Javans Then of Texas a reading h

