1
00:00:07,000 --> 00:00:07,799
Speaker 1: Hello, everybody.

2
00:00:08,000 --> 00:00:11,759
Speaker 2: This is shy Resnick from testangular dot com hosting today's

3
00:00:11,839 --> 00:00:15,720
episode of Adventures in Angelar, covering up for prost deals

4
00:00:15,839 --> 00:00:16,519
on a flight.

5
00:00:16,839 --> 00:00:17,640
Speaker 1: This very moment.

6
00:00:17,679 --> 00:00:19,399
Speaker 2: By the way, they didn't hear it, but this was

7
00:00:19,440 --> 00:00:22,760
a dog coffee. Today on our panel we have Brian Love.

8
00:00:23,199 --> 00:00:24,280
Speaker 3: Hello, how's it going?

9
00:00:24,600 --> 00:00:25,920
Speaker 1: Good? God? Good? Where are you?

10
00:00:26,399 --> 00:00:29,519
Speaker 3: We are in Cordoba, Spain, so that's about two hours

11
00:00:29,519 --> 00:00:30,320
south of Madrid.

12
00:00:30,640 --> 00:00:32,640
Speaker 1: Do you have a mustage yet?

13
00:00:32,960 --> 00:00:34,880
Speaker 3: No, not yet, but I should.

14
00:00:35,399 --> 00:00:37,200
Speaker 1: Yeah, you should. You're in Cordova, Spain.

15
00:00:37,439 --> 00:00:40,960
Speaker 3: Nice mustache and throws up at the end, exactly.

16
00:00:40,880 --> 00:00:45,159
Speaker 1: Like thinking about doing stuff but not doing it. Okay, cool.

17
00:00:45,399 --> 00:00:48,640
Speaker 2: And today we have as a guest we have Tara

18
00:00:49,240 --> 00:00:51,920
Menixick nice on the first time.

19
00:00:52,600 --> 00:00:54,679
Speaker 4: Yeah, first time.

20
00:00:54,719 --> 00:00:55,359
Speaker 1: First time.

21
00:00:55,439 --> 00:00:58,439
Speaker 2: So probably everybody already know you, but for those of

22
00:00:58,479 --> 00:01:01,439
you might not know you, give us an intro about

23
00:01:01,479 --> 00:01:03,759
you and what we're going to talk about today.

24
00:01:04,040 --> 00:01:06,840
Speaker 4: So my name, Alesha, I said, is Taram nik sic.

25
00:01:07,200 --> 00:01:11,480
I am Angular Developer Experience engineer at Netlifhi. We're working

26
00:01:11,519 --> 00:01:14,319
on the DX team, which is basically we do this

27
00:01:14,359 --> 00:01:17,640
thing where we really care about how the experiences for

28
00:01:17,840 --> 00:01:21,920
users using our product. So We basically spend the majority

29
00:01:21,920 --> 00:01:24,519
of our time just trying to build up content, get

30
00:01:24,560 --> 00:01:27,640
answers for you in the community, and help you with

31
00:01:28,040 --> 00:01:30,640
using Netlify, and then three months out of the year

32
00:01:30,640 --> 00:01:33,319
we actually integrate into the product team and help build

33
00:01:33,359 --> 00:01:37,239
the product. So just a really total dream job. Happy

34
00:01:37,239 --> 00:01:39,120
to be there. Just started there a few months ago.

35
00:01:39,760 --> 00:01:41,959
And one of the biggest things that we talk about

36
00:01:41,959 --> 00:01:45,599
at Netlify is the jam stack. So this is basically

37
00:01:46,079 --> 00:01:48,799
we can go into the whole definition in detail, but

38
00:01:48,920 --> 00:01:51,519
we're going to be talking about that today and also

39
00:01:51,719 --> 00:01:54,319
just where Angler plays a role inside of the.

40
00:01:54,359 --> 00:01:58,159
Speaker 1: Jam stack awesome. So just to tet things straight, so

41
00:01:58,319 --> 00:02:02,680
Netlifi for those so don't know what is Netlify, and

42
00:02:02,719 --> 00:02:06,680
then what is the gem stick and how they connect together,

43
00:02:06,840 --> 00:02:09,520
and then let's talk about that Angler connects to all

44
00:02:09,560 --> 00:02:09,719
of that.

45
00:02:10,280 --> 00:02:12,919
Speaker 4: So one of my favorite taglines and I use it

46
00:02:12,960 --> 00:02:15,400
all the time, no matter how cheesy it sounds, but

47
00:02:15,439 --> 00:02:17,840
it's a platform and it basically lets you go from

48
00:02:17,879 --> 00:02:21,240
local development to global deployment. I think that's such a

49
00:02:21,240 --> 00:02:22,719
good I think it's good.

50
00:02:23,319 --> 00:02:27,000
Speaker 5: It's good they should put that on the front the frontage.

51
00:02:28,120 --> 00:02:30,000
Speaker 1: I'm sorry, I didn't know.

52
00:02:31,120 --> 00:02:34,840
Speaker 4: You're brilliant, Brian. I mean you just you know, great minds.

53
00:02:34,960 --> 00:02:38,000
Speaker 1: Margin of the DX of Netliphi.

54
00:02:38,319 --> 00:02:38,840
Speaker 4: There you go.

55
00:02:40,840 --> 00:02:44,960
Speaker 1: Okay, So, so going from local development to global deployment.

56
00:02:45,080 --> 00:02:48,919
Global deployment sounds like something from an evil plan to

57
00:02:48,960 --> 00:02:49,800
take over the world.

58
00:02:50,120 --> 00:02:54,280
Speaker 4: Exactly, That's exactly what it is. We just do it

59
00:02:54,400 --> 00:02:59,039
CD and nod my CD. And so also like basically

60
00:02:59,439 --> 00:03:02,120
we have netlified build and that's what people are pretty

61
00:03:02,199 --> 00:03:05,840
used to because it's different ways to basically take your

62
00:03:05,840 --> 00:03:09,840
site and get it deployed and hosted by netlifi. And

63
00:03:10,039 --> 00:03:12,879
like it started with this thing called bit Balloon where

64
00:03:12,879 --> 00:03:14,719
you would drag and drop a file and it would

65
00:03:14,719 --> 00:03:17,039
you wouldn't have to worry about anything else. And now

66
00:03:17,080 --> 00:03:19,319
we have it where you can sign into GitHub and

67
00:03:19,439 --> 00:03:21,919
you say, for an Angular project, you're like, this is

68
00:03:21,960 --> 00:03:26,639
my repo, here's the ng build prod is my build command,

69
00:03:26,680 --> 00:03:30,280
and you're gonna find my project in like disted project name,

70
00:03:30,759 --> 00:03:33,000
and that's all the information you give. And then every

71
00:03:33,000 --> 00:03:35,199
time you want to deploy, it runs your build command

72
00:03:35,240 --> 00:03:36,879
and hosts everything that you have.

73
00:03:37,479 --> 00:03:41,120
Speaker 1: It's like gid up pages with some kind of I

74
00:03:41,159 --> 00:03:45,240
don't know, Jenkins like builder or something like that combined together.

75
00:03:45,879 --> 00:03:48,479
Speaker 4: Yeah, and like so because I know, like we get

76
00:03:48,560 --> 00:03:52,039
hub pages, Like there's even just like a process that

77
00:03:52,080 --> 00:03:53,759
you could like they know, there's a plug in for

78
00:03:53,800 --> 00:03:56,159
Angulia that you can make that into a static site

79
00:03:56,400 --> 00:03:58,439
or not a sex you can just make it a

80
00:03:58,439 --> 00:04:02,240
get hub pages is just by engineer folded from what

81
00:04:02,360 --> 00:04:05,039
is it from disk to posts.

82
00:04:04,680 --> 00:04:07,479
Speaker 1: Or I think people are using Travis most of the

83
00:04:07,520 --> 00:04:10,840
time just to it like automated.

84
00:04:11,400 --> 00:04:13,759
Speaker 3: Yes, exactly. You can use Jackle two right, which is

85
00:04:13,759 --> 00:04:16,600
a static site generator with GitHub pages and it'll actually

86
00:04:16,680 --> 00:04:19,240
run the builds for you and then kind of deploy

87
00:04:19,279 --> 00:04:19,720
it as well.

88
00:04:19,759 --> 00:04:20,040
Speaker 4: I think.

89
00:04:20,079 --> 00:04:21,600
Speaker 3: So this is similar, is what you're saying.

90
00:04:21,800 --> 00:04:25,120
Speaker 4: And you can use Jackal with Netlify so things like that.

91
00:04:25,160 --> 00:04:27,439
But then like on top of that they do the

92
00:04:28,279 --> 00:04:31,560
cic D, so they continues integration and deployment with every

93
00:04:31,560 --> 00:04:33,959
push you make to get, which is part of like

94
00:04:34,000 --> 00:04:37,160
this get workflow, and then you get things like you know,

95
00:04:37,560 --> 00:04:41,879
h GPS and you get what's encrypt and but then

96
00:04:41,920 --> 00:04:44,560
that's like one part of it. And then there's like

97
00:04:45,079 --> 00:04:48,120
you can do a local build environment and that's netlified dev.

98
00:04:48,680 --> 00:04:51,720
And then there's Netlify Edge, which I think is the

99
00:04:51,759 --> 00:04:56,000
coolest part. But it's basically like our superpower CDM.

100
00:04:56,600 --> 00:04:59,160
Speaker 1: Basically, do you have a free plan.

101
00:04:59,560 --> 00:05:03,199
Speaker 4: Yeah, there's pretty big free tier. Pricing is always my

102
00:05:03,639 --> 00:05:08,160
downfall for some reason. I've never been good at money.

103
00:05:09,519 --> 00:05:14,319
Speaker 1: Like someone person here, but you know, like I.

104
00:05:14,279 --> 00:05:17,279
Speaker 4: Never can, like for some reason, money is one of

105
00:05:17,279 --> 00:05:19,920
those things that just doesn't have a sticking power with me.

106
00:05:20,480 --> 00:05:23,959
And so like somebody's like, oh so that'll be you know,

107
00:05:24,639 --> 00:05:27,959
thirty five or like three hundred and fifty thousand dollars

108
00:05:28,000 --> 00:05:30,680
in this amount of time, and I'm like, uh huh

109
00:05:30,720 --> 00:05:31,319
it just I.

110
00:05:31,279 --> 00:05:35,519
Speaker 1: Mean, yeah, yeah, yeah, yeah, it's type of people. I'm

111
00:05:35,560 --> 00:05:38,600
the same. I'm like not motivated by money. Let me

112
00:05:38,639 --> 00:05:41,720
tell you a story next time about how I went

113
00:05:41,759 --> 00:05:48,240
to Vegas with a bunch of friends steakhouse. But that's

114
00:05:48,240 --> 00:05:48,959
for another time.

115
00:05:49,199 --> 00:05:51,279
Speaker 2: Okay, So getting back to the point, So you have

116
00:05:51,399 --> 00:05:54,720
a pretty big free tier, so people basically just use

117
00:05:54,800 --> 00:05:55,439
it as.

118
00:05:55,319 --> 00:05:59,560
Speaker 1: Gita pages and like with like more options or you know.

119
00:05:59,639 --> 00:06:05,360
Speaker 4: The so the CD that Metlifi Edge basically gives you

120
00:06:05,480 --> 00:06:08,920
like so like it's like global distribution and it's on

121
00:06:09,040 --> 00:06:13,560
multiple cloud providers, so it's like very persistent, very reliable

122
00:06:14,079 --> 00:06:16,240
how you're hosting it, which again something that we can

123
00:06:16,279 --> 00:06:19,360
dig in a little deeper is doing static content on there.

124
00:06:19,439 --> 00:06:23,600
So it's like less opportunity to exploit that information and

125
00:06:24,160 --> 00:06:27,639
you don't have to worry about the CDM caching or

126
00:06:27,800 --> 00:06:32,560
we do atomic deploys, and it's basically kind of taking

127
00:06:32,600 --> 00:06:36,920
all of that infrastructure stress away from you. So that's

128
00:06:36,959 --> 00:06:39,360
the part that I really like because I don't like

129
00:06:39,399 --> 00:06:42,480
that stress. I love infrastructure, but I don't like the

130
00:06:42,519 --> 00:06:43,079
stress of it.

131
00:06:43,759 --> 00:06:43,959
Speaker 1: Yeah.

132
00:06:45,519 --> 00:06:48,879
Speaker 3: Yeah, So how does this compare to something like serverless?

133
00:06:49,360 --> 00:06:50,879
Is it the same we're talking about the same thing

134
00:06:50,959 --> 00:06:51,959
or is this something different?

135
00:06:52,439 --> 00:06:57,360
Speaker 4: So it's actually not servers the CDN it's like so

136
00:06:58,160 --> 00:07:01,920
because servers are basically like CDM nodes are basically servers

137
00:07:01,920 --> 00:07:05,120
without the logic, without that complicated back end and everything.

138
00:07:05,199 --> 00:07:09,240
So when you say serverless, you're not talking about no servers.

139
00:07:09,319 --> 00:07:12,000
You're saying, well, I like to say serverless, worry less.

140
00:07:12,319 --> 00:07:15,959
So this is some dumb dumb came up with this

141
00:07:16,079 --> 00:07:21,800
word serverless that put in the you know, made it

142
00:07:21,879 --> 00:07:24,639
kind of seem like, oh, so we're not using servers,

143
00:07:24,680 --> 00:07:27,120
when it's actually like, oh no, this is my marketing

144
00:07:27,199 --> 00:07:30,600
scheme to make you talk about serverless because it doesn't

145
00:07:30,639 --> 00:07:33,519
make any sense. We're still using servers, just you don't

146
00:07:33,560 --> 00:07:36,040
have to worry about like the complications and the pricing

147
00:07:36,040 --> 00:07:37,240
and the scaling and everything.

148
00:07:37,560 --> 00:07:40,680
Speaker 1: Gotcha, it's snake oil, snake oil.

149
00:07:41,600 --> 00:07:44,439
Speaker 4: I've never seen snake oil in person. I've only seen

150
00:07:44,480 --> 00:07:46,879
like liquor with with snakes in it.

151
00:07:47,920 --> 00:07:52,800
Speaker 6: That's for another time, a story about its one time

152
00:07:52,879 --> 00:07:55,399
in Vegas.

153
00:07:56,800 --> 00:07:59,680
Speaker 1: Okay, serverless. By the way, I have a theory about.

154
00:07:59,439 --> 00:08:03,399
Speaker 2: Observable that they are not really observables because they hide

155
00:08:03,439 --> 00:08:06,120
the producer and you actually observe the producer and not

156
00:08:06,120 --> 00:08:07,240
the observable self.

157
00:08:07,360 --> 00:08:08,600
Speaker 1: But anyway, that's.

158
00:08:09,680 --> 00:08:12,439
Speaker 4: Man, you need a whole show on this. Just call

159
00:08:12,480 --> 00:08:14,560
it snake oil JavaScript snake oil.

160
00:08:15,959 --> 00:08:20,639
Speaker 1: Exactly. So it's kind of serverless, but it's weed servers. Okay.

161
00:08:20,759 --> 00:08:23,319
It's like you don't have to worry about the maintenance

162
00:08:23,360 --> 00:08:24,199
and all that stuff.

163
00:08:24,439 --> 00:08:26,920
Speaker 4: And the biggest, the biggest thing to remember or like

164
00:08:26,959 --> 00:08:30,439
to think about with CDN nodes is it's going faster

165
00:08:30,519 --> 00:08:33,279
because you're serving upstetic information and there's like no logic

166
00:08:33,320 --> 00:08:35,759
getting in a way to complicate it a little bit,

167
00:08:35,879 --> 00:08:39,320
there is there are small pieces of logic like redirect

168
00:08:39,639 --> 00:08:42,279
so that if it, you know, goes out to a

169
00:08:42,360 --> 00:08:45,879
node and that for some reason, like that infrastructure provider

170
00:08:45,960 --> 00:08:48,399
is down in that area, for some reason, it knows

171
00:08:48,440 --> 00:08:50,799
to redirect it to another node. But again he tries

172
00:08:50,840 --> 00:08:54,600
to figure out it's globally distributed, so who's ever requesting it?

173
00:08:55,159 --> 00:08:57,080
We're going as close as we can. This is like

174
00:08:57,200 --> 00:09:01,720
beginning of web development. Like thoughts, right, it's like a

175
00:09:01,759 --> 00:09:05,879
file that goes somewhere, that goes to a person. Right,

176
00:09:05,919 --> 00:09:07,720
So it's just like how we used to do it

177
00:09:07,759 --> 00:09:11,480
forever ago, and then we got super convoluted and complicated

178
00:09:11,600 --> 00:09:13,639
and like yeah, muscle.

179
00:09:13,320 --> 00:09:15,919
Speaker 1: Masks, men got higher and stuff like that. But okay,

180
00:09:15,960 --> 00:09:20,639
so what is gemstick, Like how does it relates to that?

181
00:09:21,279 --> 00:09:24,799
Speaker 4: So the jam stack, the acronym for that is JavaScript

182
00:09:24,879 --> 00:09:27,919
API's markup. So all these things, you know, you've never

183
00:09:27,919 --> 00:09:31,320
heard of these things. You're like, what is JavaScript?

184
00:09:34,000 --> 00:09:37,120
Speaker 1: Is it kind of an Angular module or something like that?

185
00:09:37,679 --> 00:09:41,679
Speaker 4: Is this something that they speak? Yes, so this is

186
00:09:41,720 --> 00:09:44,919
something that we're all, you know, really familiar with. These

187
00:09:44,960 --> 00:09:47,919
are things that we've all been using forever, but this

188
00:09:47,960 --> 00:09:50,960
is a new way to kind of orchestrate those pieces together.

189
00:09:51,720 --> 00:09:55,080
The biggest thing is like you're you're trying to deliver

190
00:09:55,559 --> 00:10:00,080
things faster, safer, and make a better workflow for you

191
00:10:00,080 --> 00:10:03,240
your developers, which you know also sounds like snake oil

192
00:10:03,440 --> 00:10:04,960
because it sounds like a commercier.

193
00:10:05,039 --> 00:10:10,200
Speaker 1: Let's talk about the real problem, Like I'm as a developer, Okay,

194
00:10:10,240 --> 00:10:13,360
what is the user story here? Like what is my

195
00:10:13,480 --> 00:10:15,559
problem that I would need jemstech for.

196
00:10:16,200 --> 00:10:19,879
Speaker 4: There's a really great case study with Smashing magazine. They

197
00:10:20,039 --> 00:10:24,759
had started with WordPress to just do their general site,

198
00:10:24,799 --> 00:10:27,440
which so many people have. Right, It's a huge part

199
00:10:27,480 --> 00:10:30,679
of the Internet, especially if you look in nonprofits.

200
00:10:31,120 --> 00:10:31,840
Speaker 1: This is just like.

201
00:10:31,919 --> 00:10:38,399
Speaker 4: Anecdotal side note, I did basically this nonprofit like Volunteer

202
00:10:38,440 --> 00:10:43,000
your Time thing in Ohio, and every single nonprofit was

203
00:10:43,039 --> 00:10:48,320
on a WordPress site that everybody broke. No one was secure,

204
00:10:48,840 --> 00:10:50,000
like all the plug.

205
00:10:49,679 --> 00:10:53,879
Speaker 3: Ins were amounts of plug ins just yeah, nobody was

206
00:10:53,919 --> 00:10:55,519
maintaining nobody knew.

207
00:10:55,960 --> 00:10:58,480
Speaker 1: Sell posted or like the WordPress dot.

208
00:10:58,279 --> 00:11:01,600
Speaker 4: Com thing WordPress dot com. But mostly most of them

209
00:11:01,639 --> 00:11:03,039
were like really because.

210
00:11:02,759 --> 00:11:06,279
Speaker 1: So I thought workers dot com like update the plugins

211
00:11:06,279 --> 00:11:08,320
for you and keep it safe and all that stuff.

212
00:11:08,320 --> 00:11:10,879
Speaker 4: Now, security is one of the biggest things for plugins,

213
00:11:10,879 --> 00:11:13,639
because it's you're injecting that code into your main site.

214
00:11:14,039 --> 00:11:16,399
Like plugins just can have access to your site once,

215
00:11:16,559 --> 00:11:18,639
like sometimes can have access to your site once you

216
00:11:18,639 --> 00:11:21,000
have them. I'm not a word press po I would not.

217
00:11:21,120 --> 00:11:24,120
I did like a PHP class once in college. It

218
00:11:24,240 --> 00:11:26,080
was the best days of my life. I'm just scared.

219
00:11:29,440 --> 00:11:33,840
But so Smashing mag like started with the WordPress site,

220
00:11:33,879 --> 00:11:37,080
and then still they realized they needed, you know, a

221
00:11:37,120 --> 00:11:40,039
piece to do e commerce, so then they added a

222
00:11:40,039 --> 00:11:44,039
whole different site. And then they needed to do a

223
00:11:44,200 --> 00:11:46,519
job board, and so they added a whole different thing.

224
00:11:46,600 --> 00:11:49,639
So this became this monolithic application with all these different

225
00:11:49,720 --> 00:11:52,480
moving parts, and they're like, okay, obviously we need to

226
00:11:53,279 --> 00:11:56,080
change this up and just make it more fluid, Like

227
00:11:56,120 --> 00:12:00,399
they had different templates that would so everything. It's hard

228
00:12:00,440 --> 00:12:04,519
to make it mash up and not have too many

229
00:12:04,559 --> 00:12:08,120
things breaking when they try to fix one thing. That's

230
00:12:08,159 --> 00:12:10,679
one of the biggest things about the jam stack is

231
00:12:10,759 --> 00:12:14,559
you're trying to uncouple your front end from your back end.

232
00:12:15,000 --> 00:12:17,519
This is, you know, kind of where things like microservice

233
00:12:17,600 --> 00:12:20,879
architecture comes into place, and that's a big component of

234
00:12:21,720 --> 00:12:23,919
the jam stack. It's like some of the main things,

235
00:12:24,000 --> 00:12:27,240
is like not relying on web servers, so like not

236
00:12:28,039 --> 00:12:30,519
having to deal with that when you push and serve

237
00:12:30,559 --> 00:12:34,120
your site, but going into a microservice architecture so that

238
00:12:34,159 --> 00:12:37,399
you can fix things without breaking everything, you can maintain it,

239
00:12:37,440 --> 00:12:39,919
you can update it much easier without the cuffs on,

240
00:12:40,559 --> 00:12:45,039
and then establishing a get workflow so that with Smashing

241
00:12:45,039 --> 00:12:48,080
mag there were so the team's trying to work together,

242
00:12:48,759 --> 00:12:51,039
and there was like a barrier of entry because if

243
00:12:51,080 --> 00:12:54,039
you didn't know this certain technology, or if you didn't

244
00:12:54,080 --> 00:12:56,240
know WordPress, like the whole point of word press is

245
00:12:56,279 --> 00:13:00,320
to help people who aren't as technologically advanced person say,

246
00:13:00,799 --> 00:13:03,200
to be able to add content to the site, and

247
00:13:03,279 --> 00:13:06,759
that just wasn't existing in their current workflow. I'll pause

248
00:13:06,799 --> 00:13:09,159
here to breathe and see if you have any questions.

249
00:13:10,159 --> 00:13:12,679
Speaker 3: Did they then choose to go with jam stack.

250
00:13:13,639 --> 00:13:15,120
Speaker 4: Oh no, I'm just kidding.

251
00:13:15,840 --> 00:13:25,440
Speaker 5: Okay, Yeah, it was that core. It was solved everything

252
00:13:25,879 --> 00:13:31,480
asp just visual basic sex.

253
00:13:33,879 --> 00:13:36,960
Speaker 4: Yeah. So they moved to jamsack and so basically they

254
00:13:37,000 --> 00:13:40,919
were able to one of the biggest things was taking

255
00:13:41,440 --> 00:13:44,879
their huge amount of blog posts and pre rendering them

256
00:13:45,159 --> 00:13:47,759
to be able to serve up that static content so

257
00:13:47,799 --> 00:13:50,720
that it was a faster delivery, and I'm pretty sure

258
00:13:50,960 --> 00:13:54,720
I have the Yeah, Smashing mag went six times faster,

259
00:13:55,399 --> 00:13:58,440
so that their first load went from eight hundred milliseconds

260
00:13:58,480 --> 00:13:59,399
to eighty milliseconds.

261
00:13:59,600 --> 00:13:59,960
Speaker 2: Oh wow.

262
00:14:00,120 --> 00:14:04,200
Speaker 4: And this was the process of basically doing the pre rendering,

263
00:14:04,759 --> 00:14:10,000
hooking up different things, like they had specific like APIs

264
00:14:10,360 --> 00:14:14,039
that they would call to you for their dynamic parts of

265
00:14:14,039 --> 00:14:17,480
their application, which kind of brings me back to I

266
00:14:17,480 --> 00:14:21,240
should probably explain a little more about what jam stack is. Yes,

267
00:14:23,960 --> 00:14:26,480
we jumped right in, but but that kind of gave

268
00:14:26,519 --> 00:14:30,360
you a little overview of like the benefits of jam stack.

269
00:14:30,759 --> 00:14:33,159
We can we can say that, so.

270
00:14:34,360 --> 00:14:38,840
Speaker 1: I have like a picture in my mind of like, okay,

271
00:14:38,879 --> 00:14:43,840
they're going from work press to this serviles or micro

272
00:14:43,919 --> 00:14:48,600
services kind of architecture where they you said they're pre

273
00:14:48,720 --> 00:14:53,559
render their pages. So it's kind of still kind of

274
00:14:53,720 --> 00:14:57,960
vague to me, Like if you can go and shed

275
00:14:58,120 --> 00:14:59,639
more light on that, and.

276
00:14:59,759 --> 00:15:03,240
Speaker 4: Yeah, this isn't the lampstack, I can't give you too

277
00:15:03,320 --> 00:15:05,320
much like anyway.

278
00:15:08,240 --> 00:15:08,759
Speaker 7: Is my.

279
00:15:10,200 --> 00:15:15,720
Speaker 4: Okay, so let me give you an overview of what

280
00:15:15,759 --> 00:15:18,799
the acronym piece is going for and then I'll tell

281
00:15:18,840 --> 00:15:21,639
you kind of the what it looks like from top

282
00:15:21,679 --> 00:15:23,799
to bottom of like doing a procedure of the jam

283
00:15:23,879 --> 00:15:27,720
stack or like doing development jamsack development. So JavaScript, this

284
00:15:27,799 --> 00:15:30,600
is basically covering your dynamic parts of your app during

285
00:15:30,639 --> 00:15:34,120
the request response cycles, so it's running entirely on the

286
00:15:34,159 --> 00:15:37,440
client side, and so like this is where you would

287
00:15:37,480 --> 00:15:41,559
be using any JavaScript framework like Anguler, and then to

288
00:15:41,960 --> 00:15:46,159
add the dynamic parts, this is where the a APIs

289
00:15:46,240 --> 00:15:49,600
come in. But it's basically like using any API services,

290
00:15:49,639 --> 00:15:55,200
third party libraries, and any custom like serveralist functions, Lambda functions,

291
00:15:55,240 --> 00:15:59,399
netliky functions, and this is like you would add if

292
00:15:59,399 --> 00:16:02,440
you wanted to do you payment, you would do stripes

293
00:16:02,480 --> 00:16:07,000
API or e comments. You could use shopifys API. Algolia

294
00:16:07,200 --> 00:16:09,919
is a static search for your site.

295
00:16:10,039 --> 00:16:10,440
Speaker 7: Very good.

296
00:16:10,559 --> 00:16:12,559
Speaker 4: Yeah, they just got huge funding.

297
00:16:12,840 --> 00:16:13,399
Speaker 2: I saw that.

298
00:16:13,759 --> 00:16:16,720
Speaker 4: Yeah, it's like what again an amount of money that

299
00:16:16,799 --> 00:16:21,000
I don't understand. And then there's M for markup and

300
00:16:21,039 --> 00:16:23,480
this is again like your pre rendered markup. So this

301
00:16:23,559 --> 00:16:26,960
is what really makes delivering everything super fast and again

302
00:16:27,039 --> 00:16:29,159
safe because you can't really inject in things that are

303
00:16:29,200 --> 00:16:31,200
pre rendered and you're just serving them up.

304
00:16:31,600 --> 00:16:33,960
Speaker 3: Can you explain a little bit maybe for the listeners,

305
00:16:34,000 --> 00:16:36,639
like what are you like pre rendering the content. So

306
00:16:36,679 --> 00:16:40,559
am I taking like markdown files and building some sort

307
00:16:40,600 --> 00:16:42,759
of like through like a build pipeline like web pack

308
00:16:42,879 --> 00:16:44,440
or something or what does that kind of look like?

309
00:16:44,919 --> 00:16:48,360
Speaker 4: Yes, all other things. So there are like multiple ways

310
00:16:48,399 --> 00:16:50,879
to like, there are a bunch of static site generators

311
00:16:51,120 --> 00:16:54,600
and actually, like when when you do just like engine

312
00:16:54,600 --> 00:16:57,559
new and create a new application, it's compiling on a

313
00:16:57,679 --> 00:16:59,879
client site to make your HTML files that are so

314
00:17:00,399 --> 00:17:02,759
up a bunch of JavaScript files and those are like

315
00:17:02,759 --> 00:17:07,480
your polyfills and just like different parts to make it

316
00:17:07,519 --> 00:17:10,839
all compiled down to try and deliver it faster. But

317
00:17:11,000 --> 00:17:14,599
even going further from that, you can make your site

318
00:17:14,640 --> 00:17:18,480
really SEO friendly and faster by pre rendering into HTML

319
00:17:18,519 --> 00:17:22,759
pages that are easier to crawl. And Angular Universal can

320
00:17:22,799 --> 00:17:25,039
do this with just a pre render command on like

321
00:17:25,119 --> 00:17:30,440
your sit like NG build colon pre render I'm pretty sure,

322
00:17:30,720 --> 00:17:32,359
And so this will give you a bunch of HTML

323
00:17:32,440 --> 00:17:35,680
files and then that's like the pre rendered static content

324
00:17:35,720 --> 00:17:39,160
that you see. So again that's like to the basics

325
00:17:39,200 --> 00:17:43,240
of HTML files that can be like and search engines

326
00:17:43,279 --> 00:17:46,480
can look at them and like they're more human readable

327
00:17:46,559 --> 00:17:49,559
in repos as well, which is pretty nice. But I

328
00:17:49,559 --> 00:17:53,960
have wanted real quick disclaimer. Jam stick The name was

329
00:17:54,000 --> 00:17:58,359
created basically so we had like a header to talk

330
00:17:58,400 --> 00:18:02,519
about a way to like not rely and not have

331
00:18:02,559 --> 00:18:05,200
to deal with web servers and distribute from CDNs and

332
00:18:05,240 --> 00:18:08,400
static content and things, you know, to try and make

333
00:18:08,680 --> 00:18:11,799
better performance from your web applications because there are so

334
00:18:11,839 --> 00:18:15,680
many different things talking about, like static websites are not

335
00:18:15,759 --> 00:18:18,480
really static anymore, you know, how do we talk about that?

336
00:18:18,960 --> 00:18:21,680
So because of that, like all these other tech words,

337
00:18:21,880 --> 00:18:24,400
you don't have to use all of these technologies. You

338
00:18:24,440 --> 00:18:28,160
don't have to use JavaScript, APIs and markup. So again,

339
00:18:28,200 --> 00:18:30,000
it's one of those names where it's like this is

340
00:18:30,039 --> 00:18:32,720
like best practices of what the jam stack is, but

341
00:18:32,759 --> 00:18:34,799
you don't have to use all of those things. But

342
00:18:34,920 --> 00:18:36,079
boy does it sound cool.

343
00:18:38,079 --> 00:18:38,599
Speaker 5: That's cool?

344
00:18:38,880 --> 00:18:42,720
Speaker 1: So okay, So JavaScript is the logic, of course. I

345
00:18:43,559 --> 00:18:47,400
probably it sits in some kind of I don't know,

346
00:18:47,640 --> 00:18:52,279
like lambda function or something like that on the server's side,

347
00:18:52,400 --> 00:18:55,880
not on the I think on the maybe you develop

348
00:18:55,960 --> 00:18:58,480
them in a local like in the git in your

349
00:18:58,480 --> 00:19:03,519
git repository files and it gets uploaded to the service. Right, Yeah,

350
00:19:03,799 --> 00:19:08,759
API is all the third parties you said.

351
00:19:09,519 --> 00:19:12,039
Speaker 4: It can be if it helps. So this is like

352
00:19:12,119 --> 00:19:14,759
kind of this like one sentence thing that I do

353
00:19:15,000 --> 00:19:17,839
for like how the process works. It's like deliver your

354
00:19:17,880 --> 00:19:23,440
content using globally distributed using CDNs globally distributed CDNs nodes

355
00:19:23,480 --> 00:19:27,400
and CMSs for holding your content and delivering it easier.

356
00:19:27,759 --> 00:19:31,079
And then you use API, serveralist functions and web hooks

357
00:19:31,119 --> 00:19:34,599
to make your site dynamic. Then establish it get workflow

358
00:19:34,839 --> 00:19:38,799
for a continuous, immutable and atomic deployment process. Then it's

359
00:19:38,799 --> 00:19:41,640
a lot of like super silly buzzwords.

360
00:19:41,519 --> 00:19:43,960
Speaker 1: But buzzword friendly.

361
00:19:46,519 --> 00:19:50,240
Speaker 4: But it's like I mean it's hard to attack, Like yeah,

362
00:19:50,359 --> 00:19:52,519
like those words are could in place like atomic, Like

363
00:19:52,519 --> 00:19:55,000
how would I explain atomic to place in like two

364
00:19:55,079 --> 00:19:55,960
words or less?

365
00:19:56,240 --> 00:19:59,480
Speaker 1: Atomic is when something can go wrong in the process,

366
00:19:59,559 --> 00:20:02,440
but you have some files copied to the server and

367
00:20:02,480 --> 00:20:05,640
some files aren't because something went wrong, and then you

368
00:20:05,720 --> 00:20:08,440
need to figure out what should be replaced and all

369
00:20:08,480 --> 00:20:12,880
that stuff, where like with ab deployments or doctor and

370
00:20:12,880 --> 00:20:14,839
stuff like that, you can just point to the new

371
00:20:14,880 --> 00:20:17,599
server and then you don't have to deal with like

372
00:20:17,759 --> 00:20:20,480
you know this kind of stuff. That's what I know about.

373
00:20:20,759 --> 00:20:24,160
Speaker 4: Like yeah, so atomic deployments are are the remedy for that.

374
00:20:24,559 --> 00:20:28,480
So timic deployments are all or nothing, so they wipe

375
00:20:28,519 --> 00:20:31,200
everything out and put everything in new and won't serve

376
00:20:31,279 --> 00:20:34,519
until every file is up, so there is no incongruency

377
00:20:34,599 --> 00:20:37,400
between what you have up or not, which has been

378
00:20:37,440 --> 00:20:41,319
a problem for deployment processes for a while before years. Yeah, yeah,

379
00:20:41,359 --> 00:20:44,720
so that helps that it's just like blow it all up. Okay,

380
00:20:44,720 --> 00:20:45,160
here's a.

381
00:20:45,119 --> 00:20:47,759
Speaker 3: New one and everything's fresh.

382
00:20:48,279 --> 00:20:50,519
Speaker 4: And that's the same with like invalidating cash, which is

383
00:20:50,559 --> 00:20:55,000
another process that is the best practice of jam stack

384
00:20:55,119 --> 00:20:57,480
is basically like once you have the information your cash

385
00:20:57,480 --> 00:20:59,960
gets completely wiped out, then you should rely on yoursel

386
00:21:00,240 --> 00:21:01,559
and to do that so you don't have to worry

387
00:21:01,559 --> 00:21:01,920
about it.

388
00:21:02,359 --> 00:21:06,400
Speaker 1: So what is the markup part of junderstand?

389
00:21:06,920 --> 00:21:11,200
Speaker 4: So this is the template pre rendered stuff. So this

390
00:21:11,319 --> 00:21:14,880
is like your content that is like made by that

391
00:21:15,000 --> 00:21:17,880
JavaScript part, by whatever job script framework you Yeah, so

392
00:21:18,079 --> 00:21:20,359
this is like what we'd be doing with like when

393
00:21:20,359 --> 00:21:23,480
you end build, whatever you have is compiled the ready

394
00:21:23,519 --> 00:21:26,720
on client side, that would technically be like your markup

395
00:21:27,200 --> 00:21:28,279
m I think.

396
00:21:28,319 --> 00:21:31,119
Speaker 1: So to take it to Angular terms what you said before,

397
00:21:31,240 --> 00:21:35,440
you can use Angular Universal, which basically gets you the

398
00:21:36,079 --> 00:21:40,160
pre rendered content for SEO and stuff and also like

399
00:21:40,319 --> 00:21:44,400
pre viewing images or stuff like that to Twitter and

400
00:21:44,440 --> 00:21:47,920
stuff like that. And sorry, I was.

401
00:21:47,960 --> 00:21:50,960
Speaker 4: Gonna say, I just wanted to interrupt you to see

402
00:21:50,960 --> 00:21:51,759
how you would react.

403
00:21:52,599 --> 00:21:55,119
Speaker 1: I'm exkiddy. How did they How did they do?

404
00:21:56,400 --> 00:21:58,720
Speaker 4: You were great? You were so calm and it's like

405
00:21:59,200 --> 00:22:04,640
very cordial. Was great, It's like a perfect host. Thank you.

406
00:22:05,160 --> 00:22:05,480
Speaker 1: Okay.

407
00:22:07,319 --> 00:22:12,200
Speaker 4: There's actually Christoph Gutenan guten Din I always hope I

408
00:22:12,200 --> 00:22:15,720
get his name right. But he made a library Angular

409
00:22:15,759 --> 00:22:19,519
pre render to try and make this a little easier

410
00:22:19,680 --> 00:22:23,440
for taking out like basically you're carrying out your service

411
00:22:23,440 --> 00:22:26,759
side rendering and then merging that output into static content.

412
00:22:27,279 --> 00:22:29,960
So because a lot of people were asking for a better,

413
00:22:30,000 --> 00:22:32,720
easier way to do pre rendering with the Angular But

414
00:22:32,839 --> 00:22:35,960
on top of that, there's actually an open pool request

415
00:22:36,519 --> 00:22:40,559
for Angular Universal for pre rendering scripts and schematics. So

416
00:22:41,039 --> 00:22:44,000
this is like, I mean, Uri did a talk about

417
00:22:44,039 --> 00:22:48,200
this in like twenty sixteen. Well obviously he's ahead of

418
00:22:48,240 --> 00:22:55,119
times as always Jesus or shick head okay, sorry, ahead

419
00:22:55,160 --> 00:22:56,960
of times Uri future.

420
00:22:56,759 --> 00:23:02,240
Speaker 6: Uri Okay, but yeah, so he was talking about this,

421
00:23:02,319 --> 00:23:05,839
I think it was n GB and he did a

422
00:23:05,920 --> 00:23:09,359
talk about like the benefits of doing static Angular sites,

423
00:23:09,400 --> 00:23:11,880
and so people have been wanting this for a while

424
00:23:11,920 --> 00:23:13,759
and it's starting to catching even more with talk of

425
00:23:13,759 --> 00:23:14,440
the jam stacks.

426
00:23:14,480 --> 00:23:17,200
Speaker 4: So the Angle universal is trying to like keep up

427
00:23:17,200 --> 00:23:20,000
with that, and hopefully the Angular Cli will start to

428
00:23:20,039 --> 00:23:20,960
do more things as well.

429
00:23:21,400 --> 00:23:24,160
Speaker 3: That'll be cool because I mean, so in the React

430
00:23:24,200 --> 00:23:26,720
space that you know, Gatsby I think is the one

431
00:23:26,759 --> 00:23:29,279
that is the probably the most popular kind of pre

432
00:23:29,319 --> 00:23:33,599
rendering jam stack client suite if you will, is that right.

433
00:23:34,039 --> 00:23:36,759
Speaker 4: Yeah, And they also got a bunch of funding recently.

434
00:23:39,440 --> 00:23:40,920
Speaker 1: Yeah.

435
00:23:41,160 --> 00:23:43,680
Speaker 4: Yeah, So Gatsby is huge in the React space, and

436
00:23:43,759 --> 00:23:47,400
so we do a lot with like Netlify and React

437
00:23:47,759 --> 00:23:51,000
and gas By. And it's funny. I think that this

438
00:23:51,160 --> 00:23:54,400
is like the time that the jam stack is catching

439
00:23:54,440 --> 00:23:58,720
on more in the Angular scene because everything is, everything's

440
00:23:58,839 --> 00:24:03,440
getting quite inflated and huge and hard to serve up.

441
00:24:03,519 --> 00:24:05,480
And like you see, like with Ivy, we're trying to

442
00:24:05,519 --> 00:24:09,519
make steps towards making Angular more light weight because we

443
00:24:09,559 --> 00:24:12,759
want to deliver things faster. Like you know, you're you're

444
00:24:12,799 --> 00:24:15,960
losing users every time your site takes more than like

445
00:24:16,680 --> 00:24:17,880
what what is it now, like.

446
00:24:18,279 --> 00:24:22,240
Speaker 3: Three points like three seconds yeah, something like that.

447
00:24:22,359 --> 00:24:24,839
Speaker 4: But you don't have the point point what three, I don't.

448
00:24:24,599 --> 00:24:25,240
Speaker 3: Know what it is.

449
00:24:25,559 --> 00:24:26,400
Speaker 4: I don't know what it is.

450
00:24:26,440 --> 00:24:29,319
Speaker 1: I'm sorry, you got me and it's gone.

451
00:24:30,799 --> 00:24:32,640
Speaker 3: Right after the point. As soon as you get to

452
00:24:32,920 --> 00:24:38,920
zero anything, anything, one, then that's it. I'm out.

453
00:24:37,640 --> 00:24:44,359
Speaker 4: But I'm really excited. I know that. Of course it

454
00:24:44,440 --> 00:24:47,920
sounds so pitchy, but like, I really liked this stuff

455
00:24:47,960 --> 00:24:52,160
before they started giving me a paycheck. So because it's

456
00:24:52,160 --> 00:24:54,200
basically like my favorite thing, and I know we didn't

457
00:24:54,200 --> 00:24:56,680
talk about it too much, but is the get workflow

458
00:24:56,720 --> 00:25:00,839
process because obviously we want better perform ormans and like

459
00:25:00,920 --> 00:25:05,279
doing you know, serving upstatic content using things like CMS

460
00:25:05,400 --> 00:25:08,680
is to deliver content without having, you know, to have

461
00:25:08,759 --> 00:25:11,559
it on your stuff. They're all really great things to

462
00:25:11,599 --> 00:25:14,880
make your site perform better, and we want that. Most

463
00:25:14,920 --> 00:25:17,759
of my time is being is developing the thing, so

464
00:25:18,039 --> 00:25:21,079
I want there to be a really awesome process and

465
00:25:21,119 --> 00:25:24,079
I work with it all the time, mostly because I

466
00:25:24,160 --> 00:25:27,160
like mess things up constantly and have to like revert.

467
00:25:27,720 --> 00:25:31,559
The whole process in general makes it so that you

468
00:25:31,680 --> 00:25:37,079
have more freedom to push changes. Because you have immutable deployees,

469
00:25:37,200 --> 00:25:39,400
you have a place where you can roll back. So

470
00:25:39,519 --> 00:25:42,359
if you push something out and you're like that broke everything,

471
00:25:42,599 --> 00:25:45,319
you just roll back. So it's not as scary because

472
00:25:45,319 --> 00:25:48,880
I've definitely like pushed things that broke everything.

473
00:25:49,559 --> 00:25:54,519
Speaker 1: So even with like databases and stuff like sometimes you

474
00:25:55,480 --> 00:25:58,559
run migrations and you have like data and stuff like that,

475
00:25:58,680 --> 00:26:01,480
even for those cases, it's like you can roll back

476
00:26:01,519 --> 00:26:02,400
and everything's good.

477
00:26:03,559 --> 00:26:06,839
Speaker 4: So databases in particular are like aren't handled by that

478
00:26:06,960 --> 00:26:09,799
jam stack, which sounds like, oh, it's not our it's

479
00:26:09,839 --> 00:26:13,039
not on us, which it kind of is like not

480
00:26:13,200 --> 00:26:16,359
on us, which makes it nice. So you're like database

481
00:26:16,400 --> 00:26:19,799
procedurals can be handled by a third party, so that

482
00:26:19,880 --> 00:26:22,960
you're delegating that of like are you backing everything up?

483
00:26:23,000 --> 00:26:26,160
Are you making it very performant? Like performance? I got

484
00:26:26,160 --> 00:26:27,839
to stop using that word, since it's not a word.

485
00:26:28,279 --> 00:26:31,279
Speaker 1: This is a safe place keep going.

486
00:26:33,200 --> 00:26:37,440
Speaker 4: I immediately get like five at tz Mannex, like how

487
00:26:37,519 --> 00:26:43,880
dare you? But basically it's another area where there's you know,

488
00:26:44,039 --> 00:26:47,519
so much that can be done to make that work

489
00:26:47,559 --> 00:26:49,319
really well for you that you don't have to worry about.

490
00:26:49,319 --> 00:26:52,480
It's another thing that you're offloading from your developers onto

491
00:26:52,519 --> 00:26:54,079
a team who can specialize in it.

492
00:26:54,440 --> 00:26:57,200
Speaker 1: I say, so, it's another like a third party service

493
00:26:57,200 --> 00:26:58,240
that you can use for.

494
00:26:58,119 --> 00:27:01,880
Speaker 3: That API is to get at that data. Right, So

495
00:27:01,920 --> 00:27:04,079
that's basically what if I hear you correctly, It's like,

496
00:27:04,359 --> 00:27:07,119
as a front end development team, you know, we're focused

497
00:27:07,160 --> 00:27:09,680
on this, and we have APIs that are driven either

498
00:27:09,680 --> 00:27:12,519
by micro services or cloud functions or lamb to functions

499
00:27:12,599 --> 00:27:15,079
or whatever it is. That's all happening. All I need

500
00:27:15,119 --> 00:27:17,400
to know is how to use that API, consume the

501
00:27:17,480 --> 00:27:20,920
data and or modify the data as necessary, and then

502
00:27:20,920 --> 00:27:24,400
that's just taken care of for me by whatever it is.

503
00:27:24,920 --> 00:27:27,960
Speaker 4: Yeah, and it's really cool. Like again, like with Smashing Magazine,

504
00:27:28,480 --> 00:27:33,480
when they wanted to do comments, they basically made a

505
00:27:33,839 --> 00:27:36,519
web hook that was like a comment would come in

506
00:27:37,200 --> 00:27:40,680
and it would pack to a function that they had

507
00:27:40,799 --> 00:27:43,839
that said, okay, take this comment and add it to

508
00:27:44,200 --> 00:27:49,000
our GitHub repo markdown things, and then that would trigger

509
00:27:49,039 --> 00:27:51,440
a rebuild of this site and that would come up

510
00:27:51,680 --> 00:27:54,079
as their new content. So again it's like you still

511
00:27:54,160 --> 00:27:56,799
kind of static rendering this information, but you have these

512
00:27:56,799 --> 00:27:59,240
webooks in place that take care of that. And again

513
00:27:59,279 --> 00:28:03,319
that's part of the get workflow so that you basically

514
00:28:03,920 --> 00:28:06,400
don't have to you know, do a whole build process.

515
00:28:06,599 --> 00:28:09,119
The build is triggered, that stuff's going on there, and

516
00:28:09,119 --> 00:28:11,000
it's automated. You don't have to worry about it.

517
00:28:11,279 --> 00:28:13,960
Speaker 1: So it sounds like a cool side project could be

518
00:28:14,039 --> 00:28:17,799
like taking a personal blog and trying to run it

519
00:28:17,920 --> 00:28:20,759
with that and see how it goes. To check it

520
00:28:20,799 --> 00:28:24,000
out and to see the deployment and the atomic atomic

521
00:28:24,079 --> 00:28:27,440
deployments and the key to workflow and all that stuff,

522
00:28:27,480 --> 00:28:30,680
to check it out further more cool. So we're reaching

523
00:28:30,759 --> 00:28:35,039
the end of our episode. Do you have any more question? Right?

524
00:28:35,400 --> 00:28:37,519
Speaker 3: Yeah, I'm just curious for our listeners who maybe they

525
00:28:37,519 --> 00:28:39,960
work in a large enterprise and they're hearing this, going

526
00:28:40,319 --> 00:28:42,839
this is cool. But is this for me? Or is

527
00:28:42,880 --> 00:28:45,799
this just for a blog like I mentioned, there's some

528
00:28:45,839 --> 00:28:48,160
sort of side project, or what about a you know,

529
00:28:48,240 --> 00:28:49,400
Fortune one hundred company?

530
00:28:49,400 --> 00:28:49,960
Speaker 1: How do they?

531
00:28:50,480 --> 00:28:53,880
Speaker 3: I know you mentioned like Smashing magazine, but like, how

532
00:28:53,880 --> 00:28:56,000
do if I've got an enterprise application it's a line

533
00:28:56,000 --> 00:28:58,720
of business application, how does the gem start kind of

534
00:28:58,720 --> 00:29:00,880
come into play for me in that scenario?

535
00:29:01,079 --> 00:29:04,279
Speaker 1: Yeah, and if you're not comfortable with money, so don't

536
00:29:04,319 --> 00:29:06,160
think about it, that's Fortune one hundred.

537
00:29:06,799 --> 00:29:09,519
Speaker 5: Yeah, I'm just a big a quote big I'm doing.

538
00:29:09,440 --> 00:29:12,640
Speaker 7: Air Quot's a big company, big.

539
00:29:12,759 --> 00:29:15,279
Speaker 5: Big company, you've never heard of whatever.

540
00:29:15,440 --> 00:29:17,359
Speaker 4: Yeah, you all can't see this, but Brian just picked

541
00:29:17,400 --> 00:29:20,160
up satchels of money that he's throwing over his shoulders.

542
00:29:20,279 --> 00:29:24,759
Speaker 5: Yeah, solid bricks.

543
00:29:25,519 --> 00:29:26,000
Speaker 1: So this is.

544
00:29:26,000 --> 00:29:29,079
Speaker 4: Actually like really great for enterprise applications because a lot

545
00:29:29,119 --> 00:29:31,759
of enterprise have gone monolithic and it has made the

546
00:29:31,799 --> 00:29:36,000
development process and delivering new content and especially upgrading to

547
00:29:36,119 --> 00:29:39,359
new technology is extremely difficult because it's all tied in together.

548
00:29:39,920 --> 00:29:42,920
Nobody knows where all the variables have been spread across

549
00:29:42,960 --> 00:29:45,680
all the different parts of there. So everybody you know

550
00:29:45,799 --> 00:29:49,480
wants to go to a microservice architecture. Well I'm so biased,

551
00:29:49,519 --> 00:29:52,359
and not everybody may want to go to the microservice architecture,

552
00:29:52,400 --> 00:29:55,559
but it really helps your you know, the the health

553
00:29:55,559 --> 00:29:58,759
and maintenance of your applications, and this is a great

554
00:29:58,839 --> 00:30:02,200
way to tackle that because it is everything you know,

555
00:30:02,279 --> 00:30:04,960
has a place for every part of your monolithic application,

556
00:30:05,599 --> 00:30:09,039
and it really helps like enterprise wise, as like training

557
00:30:09,039 --> 00:30:12,319
your team. So we have a get CMS and netlifi

558
00:30:12,480 --> 00:30:16,640
which is basically if you're not as comfortable using GET,

559
00:30:17,000 --> 00:30:20,880
you use the CMS UI and when you make changes,

560
00:30:21,039 --> 00:30:24,319
it triggers. It's all part of like webhooks to get hub.

561
00:30:24,480 --> 00:30:26,119
So like you make a post and it creates an

562
00:30:26,119 --> 00:30:29,039
issue with all the information in there, and then you

563
00:30:29,160 --> 00:30:31,880
hit like in review and it makes a PR and

564
00:30:31,920 --> 00:30:34,319
then you hit published and it publishes it to the site.

565
00:30:34,359 --> 00:30:36,960
It merges that information and it builds your site. So

566
00:30:37,480 --> 00:30:39,519
if you're a developer, you could be working and get

567
00:30:39,559 --> 00:30:42,119
if you're not a developer, which like a lot of

568
00:30:42,640 --> 00:30:45,440
companies have to have both parts of that team right

569
00:30:45,920 --> 00:30:47,640
so they can all still work together on the same

570
00:30:47,720 --> 00:30:51,319
code base. As example, PayPal had a monolithic site and

571
00:30:51,319 --> 00:30:53,759
they moved over to the JAM stack four times their

572
00:30:53,759 --> 00:30:58,319
site speed increased. Citrix had massive documentation that they moved

573
00:30:58,359 --> 00:31:02,799
over to jams and they had sixty five percent less expenses.

574
00:31:03,400 --> 00:31:07,160
Their average server connection time increased by sixty five percent,

575
00:31:07,440 --> 00:31:10,920
Like sixty five percent. It's like that's a huge street number.

576
00:31:11,200 --> 00:31:13,519
Speaker 3: And I have to imagine also like for enterprise users,

577
00:31:13,519 --> 00:31:15,839
like the scalability of this has got to be something

578
00:31:15,880 --> 00:31:18,599
that's just push button I won't say push button, but

579
00:31:19,279 --> 00:31:21,240
much easier than what they're used to right.

580
00:31:21,160 --> 00:31:23,759
Speaker 4: Yeah, there are no buttons to push since the servers

581
00:31:23,799 --> 00:31:27,160
are being handled by like the CDNs, you're globally distributed,

582
00:31:27,599 --> 00:31:30,359
so there are no butstions to push. You're just automatically scaled,

583
00:31:30,839 --> 00:31:33,000
you know, around the globe, and you're delivering on edge

584
00:31:33,039 --> 00:31:35,240
nodes in the CDN to be closest to the person

585
00:31:35,279 --> 00:31:38,480
that's asking for that information. So yeah, scaling is just

586
00:31:38,559 --> 00:31:40,319
I mean a complete breeze.

587
00:31:40,839 --> 00:31:43,000
Speaker 1: That's awesome. Now what does it mean to.

588
00:31:42,880 --> 00:31:45,880
Speaker 4: Be a breeze? That's weird? Is it just because breezes come.

589
00:31:45,880 --> 00:31:50,599
Speaker 1: It's gout of nowhere? It's like performance, Yeah, why, what's

590
00:31:50,680 --> 00:31:51,039
what's it?

591
00:31:51,160 --> 00:31:51,599
Speaker 4: I don't know.

592
00:31:52,200 --> 00:31:54,440
Speaker 7: Google, Google will help us.

593
00:31:55,119 --> 00:31:58,240
Speaker 8: Okay, Google, what is exactly?

594
00:31:58,799 --> 00:32:00,880
Speaker 3: Sometimes I say that the steer and it's like I've

595
00:32:00,920 --> 00:32:02,680
got three web results for you that.

596
00:32:06,079 --> 00:32:07,279
Speaker 2: For you exactly?

597
00:32:08,319 --> 00:32:12,240
Speaker 1: That is so good. Thanks so much. We're gonna go

598
00:32:12,319 --> 00:32:15,640
and do some picks now. But just to summarize what

599
00:32:15,839 --> 00:32:16,599
we talked about.

600
00:32:16,960 --> 00:32:21,599
Speaker 2: Basically, for Angular developers, you have if you want to

601
00:32:21,640 --> 00:32:25,079
render your site for se O, you can use Angular

602
00:32:25,200 --> 00:32:30,799
Universal and you might want to check this architecture out.

603
00:32:30,480 --> 00:32:35,440
Speaker 1: Gemstack to see if you can go serverless with functions

604
00:32:35,480 --> 00:32:39,079
like the serverless functions and all the bug words. It

605
00:32:39,200 --> 00:32:42,720
sounds super cool and as I said, like for a

606
00:32:42,880 --> 00:32:46,480
side project. I will probably test my new blog that

607
00:32:46,519 --> 00:32:49,359
I want to create with that and see how it goes.

608
00:32:49,759 --> 00:32:53,559
Speaker 4: And then your enterprise when you create the Shy.

609
00:32:53,480 --> 00:32:58,559
Speaker 1: Enterprise enterprises in then I will right for that. But

610
00:32:58,559 --> 00:33:00,759
but if you have an enterprise, it out as well.

611
00:33:01,400 --> 00:33:03,519
So let's start with the picks, Brian, do you have

612
00:33:03,559 --> 00:33:04,240
any picks?

613
00:33:04,400 --> 00:33:04,720
Speaker 6: I do?

614
00:33:05,079 --> 00:33:06,480
Speaker 1: I just one this week.

615
00:33:06,559 --> 00:33:10,279
Speaker 3: So I just finished Living with Yourself by Paul Rod

616
00:33:10,359 --> 00:33:12,319
on Netflix and it's pretty good.

617
00:33:13,880 --> 00:33:14,640
Speaker 4: Pretty sucked.

618
00:33:15,720 --> 00:33:17,960
Speaker 3: I thought it was good, okay, so I mean, don't

619
00:33:18,039 --> 00:33:18,480
judge me.

620
00:33:18,960 --> 00:33:21,240
Speaker 4: Okay, I'm very excited that you say that because I

621
00:33:21,279 --> 00:33:23,039
was full of doubt and I love Paul Red, so

622
00:33:23,119 --> 00:33:24,319
I am extremely I do too.

623
00:33:24,839 --> 00:33:25,440
Speaker 5: It was good.

624
00:33:25,640 --> 00:33:27,440
Speaker 3: I think we finished it in like less than a week,

625
00:33:27,519 --> 00:33:29,519
so I mean it was good. So I would definitely

626
00:33:29,559 --> 00:33:32,039
go check it out. It's basically well, I don't want

627
00:33:32,039 --> 00:33:32,559
to give it away.

628
00:33:32,640 --> 00:33:33,200
Speaker 4: Just check it.

629
00:33:33,400 --> 00:33:34,079
Speaker 1: Don't give it away.

630
00:33:34,359 --> 00:33:38,240
Speaker 7: No spoilers, no spoilers. Okay, I'll go next, So I

631
00:33:38,279 --> 00:33:41,079
have two picks. First is a blog post that I

632
00:33:41,119 --> 00:33:44,680
wrote last week, I think, and it's angular testing tape,

633
00:33:45,000 --> 00:33:47,880
the easiest way to start your test. I would put

634
00:33:47,880 --> 00:33:50,440
a link to it. In the show note, so cool

635
00:33:50,480 --> 00:33:53,359
trick for those of you who kind of get stuck

636
00:33:53,480 --> 00:33:56,079
when they try to test their angular code.

637
00:33:56,480 --> 00:33:59,799
Speaker 1: Check it out. It's very short and helpful. And then

638
00:34:00,079 --> 00:34:04,279
next pick is the movie Joker, which I want to see,

639
00:34:04,960 --> 00:34:08,440
and it's freaking amazing, So going.

640
00:34:08,280 --> 00:34:10,000
Speaker 4: Does it mess up their head though? Like, are you

641
00:34:10,079 --> 00:34:12,679
still thinking about it? Now? That's what I'm nervous about.

642
00:34:12,880 --> 00:34:15,519
Speaker 1: So I'm not still thinking. I can feel the movie.

643
00:34:15,719 --> 00:34:19,239
I can feel the vibe still. It's very like in

644
00:34:19,320 --> 00:34:19,880
a good.

645
00:34:19,639 --> 00:34:23,239
Speaker 5: Way, in a good way, Okay, I was wondering, in

646
00:34:23,280 --> 00:34:23,800
a good way.

647
00:34:23,840 --> 00:34:24,559
Speaker 1: I can feel it.

648
00:34:24,599 --> 00:34:30,000
Speaker 8: Like it's such a beautiful cinema photography and music, and

649
00:34:30,880 --> 00:34:34,280
like the story and the acting and everything about it

650
00:34:34,320 --> 00:34:37,119
is and the plot and very good movie in my

651
00:34:37,599 --> 00:34:38,480
my taste.

652
00:34:38,800 --> 00:34:41,840
Speaker 1: So yeah, definitely check it out. Don't expect like the

653
00:34:42,400 --> 00:34:44,239
normal comics.

654
00:34:44,719 --> 00:34:47,679
Speaker 4: My coworker is like, this is a character development movie.

655
00:34:47,760 --> 00:34:49,320
Don't expect an action movie.

656
00:34:49,480 --> 00:34:51,840
Speaker 1: Yeah, it's not like Batman Beginns and stuff like that.

657
00:34:51,920 --> 00:34:55,440
It's more dramatic and stuff like that. But I really

658
00:34:55,519 --> 00:34:58,440
loved it. This is the second big Terra What are

659
00:34:58,519 --> 00:34:59,400
your Pigs?

660
00:35:00,440 --> 00:35:02,960
Speaker 4: Because Brian talked about that, I wanted to make sure

661
00:35:02,960 --> 00:35:08,000
that everybody and their mothers have watched Fleabag, because it

662
00:35:08,119 --> 00:35:10,840
is one of the best shows I've seen on TV

663
00:35:10,960 --> 00:35:13,199
in a really long time, and it's like the second

664
00:35:13,199 --> 00:35:15,960
season just got way better than the first season. So

665
00:35:16,400 --> 00:35:20,039
I highly recommend Fleabag if only I remembered what streaming

666
00:35:20,039 --> 00:35:21,840
service it was on, but we don't need to. You're

667
00:35:21,840 --> 00:35:24,000
not sponsored by any streaming services, so I don't want

668
00:35:24,079 --> 00:35:24,400
to do this.

669
00:35:26,440 --> 00:35:30,960
Speaker 3: Yes, it's so good.

670
00:35:31,079 --> 00:35:34,360
Speaker 4: I highly recommend it. I love that show. And then

671
00:35:34,559 --> 00:35:38,039
my second is it is like two things. So actually

672
00:35:38,079 --> 00:35:41,159
it's like two A and B because one is my

673
00:35:41,239 --> 00:35:44,280
coworker just did a free code camp video switch. It's

674
00:35:44,280 --> 00:35:48,079
like a like three and a half hour long netfi tutorial,

675
00:35:48,159 --> 00:35:53,119
which sounds intimidating, but it covers everything and it's so good.

676
00:35:53,159 --> 00:35:55,679
Like that's like my Netlifi pick. And then my jam

677
00:35:55,719 --> 00:35:59,360
Stack pick is I'm doing a workshop angular in the

678
00:35:59,440 --> 00:36:04,159
jam Stack at Ergie comp just the best. Yeah, yeah,

679
00:36:05,480 --> 00:36:09,880
and I'm very excited because you two will be there obviously, right, Oh.

680
00:36:09,880 --> 00:36:11,719
Speaker 3: Yeah, definitely, Yeah, I'm doing a workshop too.

681
00:36:12,000 --> 00:36:12,679
Speaker 1: Are you doing one?

682
00:36:12,719 --> 00:36:14,599
Speaker 3: Is it a one day workshop or a two day workshop?

683
00:36:17,679 --> 00:36:21,639
Speaker 1: She's hold on ERGI dash dot Org.

684
00:36:23,440 --> 00:36:26,320
Speaker 4: It's a one day you know how punny I tend

685
00:36:26,320 --> 00:36:29,199
to be. It's like Anglander Jamstack from I don't know

686
00:36:29,320 --> 00:36:34,239
to pro nice. So yeah, it's very fun. And I mean,

687
00:36:34,320 --> 00:36:37,800
like just in general, if you go like the usually

688
00:36:37,840 --> 00:36:41,760
three day conferences are pretty intimidating, but Ergie Comp, I

689
00:36:41,760 --> 00:36:44,039
feel like, are one of those ones that you don't

690
00:36:44,239 --> 00:36:46,760
want to end. And that's why, you know, like Shy

691
00:36:46,840 --> 00:36:50,199
extens his Energie comp experience with trips to Vegas.

692
00:36:52,480 --> 00:36:55,559
Speaker 1: Yeah, which we'll talk about separate.

693
00:36:56,880 --> 00:36:57,400
Speaker 4: Next week.

694
00:36:58,519 --> 00:37:03,320
Speaker 1: Next week, my Angular story, it's very.

695
00:37:03,280 --> 00:37:06,199
Speaker 4: Unfitting for adventures in Angular to have a story about

696
00:37:06,239 --> 00:37:07,320
your Vegas.

697
00:37:07,039 --> 00:37:14,280
Speaker 1: Venture, my Vegas adventures in a yeah, but that's for offline.

698
00:37:14,719 --> 00:37:17,599
Speaker 4: Doing workshops helps you like have your whole week at

699
00:37:17,679 --> 00:37:21,599
energy Comp. And it's like everybody hangs out after workshops too.

700
00:37:21,599 --> 00:37:26,000
It's really fun. So highly recommend it. Anybody's not just mine.

701
00:37:26,440 --> 00:37:27,199
Speaker 5: That's right there.

702
00:37:27,239 --> 00:37:31,719
Speaker 1: You do, Okay, awesome, Thank you very much. Was also

703
00:37:31,719 --> 00:37:37,159
an episode than thank you Brian as well, and we'll

704
00:37:37,159 --> 00:37:41,639
see you all next episode. Bye bye bye

