WEBVTT

1
00:00:05.160 --> 00:00:09.119
<v Speaker 1>Hey, folks, welcome back to another episode of JavaScript Jabber.

2
00:00:09.519 --> 00:00:12.960
<v Speaker 1>This week, I'm your host Charles max Wood, and we

3
00:00:13.000 --> 00:00:19.920
<v Speaker 1>are here with Matthias Matts and Matthias. Do you want

4
00:00:19.920 --> 00:00:21.760
<v Speaker 1>to just let people know who are I know you're

5
00:00:21.800 --> 00:00:24.760
<v Speaker 1>the CEO at Whole Punch. You do the peer to

6
00:00:24.760 --> 00:00:27.839
<v Speaker 1>peer stuff, right, You've got some other stuff going on.

7
00:00:27.839 --> 00:00:28.879
<v Speaker 2>But who are you?

8
00:00:29.000 --> 00:00:29.079
<v Speaker 3>Like?

9
00:00:29.239 --> 00:00:31.239
<v Speaker 2>What's your story? Sure?

10
00:00:31.399 --> 00:00:33.799
<v Speaker 3>Yeah? First of all, thanks for having me. Awesome to

11
00:00:33.840 --> 00:00:37.119
<v Speaker 3>be here. I always love to talk about JavaScript basically.

12
00:00:38.000 --> 00:00:40.280
<v Speaker 4>So yeah, like I said, I'm the CEO a Whole

13
00:00:40.320 --> 00:00:42.399
<v Speaker 4>Punch not but first and foremost, I'm always like a

14
00:00:42.479 --> 00:00:47.880
<v Speaker 4>JavaScript hacker. I've been doing JavaScript for ten fifteen years now.

15
00:00:48.479 --> 00:00:51.880
<v Speaker 4>I started when I was in university. That's when I

16
00:00:51.880 --> 00:00:55.520
<v Speaker 4>started programming. We had a mandatory Java. At some point,

17
00:00:55.920 --> 00:00:58.560
<v Speaker 4>you know, I google Java and I got JavaScript and

18
00:00:58.600 --> 00:01:00.759
<v Speaker 4>I started doing that and I never looked at ever since.

19
00:01:01.799 --> 00:01:06.159
<v Speaker 4>I've been a pretty significant contributor to the no jets project.

20
00:01:06.239 --> 00:01:09.719
<v Speaker 4>I've done tons of open source modules for NPM. I

21
00:01:09.719 --> 00:01:12.239
<v Speaker 4>think I have around fifteen hundred on there now, like

22
00:01:12.319 --> 00:01:13.400
<v Speaker 4>quite a significant amount.

23
00:01:14.959 --> 00:01:15.879
<v Speaker 3>I usually say, if you.

24
00:01:15.840 --> 00:01:18.400
<v Speaker 4>Have box, I'm sorry because I've probably made some of

25
00:01:18.400 --> 00:01:27.200
<v Speaker 4>those and I am a big lover of JavaScript because

26
00:01:27.239 --> 00:01:31.200
<v Speaker 4>I think it's one of those languages that just oddly

27
00:01:31.280 --> 00:01:33.680
<v Speaker 4>enough that people use it to make things where the

28
00:01:33.719 --> 00:01:35.480
<v Speaker 4>point is not to write code, is to write things,

29
00:01:35.519 --> 00:01:37.760
<v Speaker 4>if you know what I mean. Like it's not art,

30
00:01:37.920 --> 00:01:44.799
<v Speaker 4>it's like engineering, which I can't. I used a lot

31
00:01:44.799 --> 00:01:46.040
<v Speaker 4>to do all kinds of things, like I said, fifteen

32
00:01:46.079 --> 00:01:48.400
<v Speaker 4>hundred modules, but I'm especially in love with it for

33
00:01:48.439 --> 00:01:51.239
<v Speaker 4>doing distributed systems and peer to peer because I think

34
00:01:51.239 --> 00:01:54.040
<v Speaker 4>it's a perfect candidate for that because it runs everywhere,

35
00:01:54.079 --> 00:01:56.280
<v Speaker 4>it's easy, it's very good at moving data around with

36
00:01:56.319 --> 00:01:57.079
<v Speaker 4>the abstractions.

37
00:01:57.200 --> 00:01:59.760
<v Speaker 3>So I've done a lot of that, and recently.

38
00:02:01.280 --> 00:02:04.599
<v Speaker 4>Before years ago, I started a company with a couple

39
00:02:04.599 --> 00:02:07.799
<v Speaker 4>of friends called Whole Punch that is focused around Peter

40
00:02:07.840 --> 00:02:11.520
<v Speaker 4>peer engineering with JavaScript. So it's really fun. We've been

41
00:02:11.520 --> 00:02:14.919
<v Speaker 4>going for a while with accurring a lot. Yeah, and

42
00:02:14.960 --> 00:02:16.639
<v Speaker 4>so now we're just doing all kinds of things with

43
00:02:16.719 --> 00:02:19.159
<v Speaker 4>JavaScript and native code and mixing that name with the

44
00:02:19.240 --> 00:02:23.680
<v Speaker 4>JavaScript and making like crazy Pewter peer things and yeah,

45
00:02:23.800 --> 00:02:26.240
<v Speaker 4>tons of fun and tons of really cool projects. We're

46
00:02:26.240 --> 00:02:29.039
<v Speaker 4>really trying to disrupt the status coe and it's it's

47
00:02:29.159 --> 00:02:30.360
<v Speaker 4>it's yeah, it's going quite low.

48
00:02:31.960 --> 00:02:32.439
<v Speaker 2>Awesome.

49
00:02:32.560 --> 00:02:34.280
<v Speaker 1>Yeah, I'd love to dive into some of the peer

50
00:02:34.280 --> 00:02:36.800
<v Speaker 1>to peer stuff. Are you doing like web RTC or

51
00:02:36.919 --> 00:02:39.000
<v Speaker 1>is it different than that?

52
00:02:39.400 --> 00:02:41.159
<v Speaker 4>So it's really funny because I actually think when I

53
00:02:41.159 --> 00:02:43.599
<v Speaker 4>think about my transition in JavaScript is kind of like

54
00:02:43.599 --> 00:02:47.199
<v Speaker 4>like experience in JavaScript. The more I've done JavaScript, the

55
00:02:47.240 --> 00:02:49.759
<v Speaker 4>more I moved away from the browser and more like

56
00:02:49.879 --> 00:02:53.719
<v Speaker 4>just writing JavaScript outside outside the barrows APIs, which I

57
00:02:53.759 --> 00:02:55.479
<v Speaker 4>think is a journey. There's a lot of people have

58
00:02:55.599 --> 00:02:57.879
<v Speaker 4>because the language is just really good for that. So

59
00:02:58.039 --> 00:02:59.719
<v Speaker 4>as anybody else, I've done a lot of dabbling with

60
00:03:00.120 --> 00:03:04.639
<v Speaker 4>to see and building things and then at whole punching

61
00:03:04.719 --> 00:03:08.560
<v Speaker 4>me and general I'm very into like building serious the

62
00:03:08.599 --> 00:03:11.039
<v Speaker 4>technology that is like not that repudcy isn't serious, but

63
00:03:11.080 --> 00:03:13.240
<v Speaker 4>like things where we can kind of like reporty Cy

64
00:03:13.319 --> 00:03:15.560
<v Speaker 4>is usually meant build to like tag.

65
00:03:15.439 --> 00:03:16.560
<v Speaker 3>On things to like another.

66
00:03:16.719 --> 00:03:19.120
<v Speaker 4>It's kind of like you know, uh, it has like

67
00:03:19.319 --> 00:03:21.719
<v Speaker 4>a chat video thing and stuff like that, but it's

68
00:03:21.719 --> 00:03:23.919
<v Speaker 4>not really meant to be the backbone of your applications.

69
00:03:23.960 --> 00:03:27.280
<v Speaker 4>So we're like more about building things where everything is

70
00:03:27.280 --> 00:03:29.599
<v Speaker 4>peer to peer is like as a primitive build into everything,

71
00:03:29.599 --> 00:03:31.000
<v Speaker 4>so you don't like you actually don't do.

72
00:03:31.000 --> 00:03:33.479
<v Speaker 3>HDP, you don't do TCP, you only use Pewter pre

73
00:03:33.560 --> 00:03:36.120
<v Speaker 3>data structures. But with JavaScript that do that.

74
00:03:36.199 --> 00:03:37.719
<v Speaker 4>So so we actually don't do any of that, but

75
00:03:37.759 --> 00:03:40.759
<v Speaker 4>we build a ton of primitives out for doing like

76
00:03:42.280 --> 00:03:44.280
<v Speaker 4>you know, like hope punching. That's part of our name

77
00:03:44.319 --> 00:03:47.479
<v Speaker 4>in the company that connect. That means connecting people behind firewalls,

78
00:03:47.599 --> 00:03:49.360
<v Speaker 4>like you do in webar dec but like much better

79
00:03:49.400 --> 00:03:51.960
<v Speaker 4>because the report se stuff is a bit dated there.

80
00:03:52.840 --> 00:03:55.479
<v Speaker 3>Moving terabytes all day around with that kind of stuff

81
00:03:56.360 --> 00:03:57.280
<v Speaker 3>media files.

82
00:03:57.439 --> 00:03:59.080
<v Speaker 4>And then and then, and this is my favorite thing

83
00:03:59.080 --> 00:04:02.960
<v Speaker 4>about JavaScript, presenting that to like users with some manpis

84
00:04:02.960 --> 00:04:04.960
<v Speaker 4>that are somewhat familiar with them so they can just

85
00:04:05.080 --> 00:04:07.000
<v Speaker 4>do what JavaScript is also really good at, like building

86
00:04:07.039 --> 00:04:11.840
<v Speaker 4>your eyes and plugging that data in, which is very

87
00:04:11.840 --> 00:04:13.479
<v Speaker 4>hard skilled to have. Also, and we have a lot

88
00:04:13.479 --> 00:04:16.600
<v Speaker 4>of talent people in the community obviously, so we're like

89
00:04:16.639 --> 00:04:20.759
<v Speaker 4>about like JavaScript and to end and then like allowing

90
00:04:20.800 --> 00:04:24.279
<v Speaker 4>people to build applications. Obviously there's a lot of CN

91
00:04:24.279 --> 00:04:26.120
<v Speaker 4>and C plus plus and there also to make that.

92
00:04:26.160 --> 00:04:29.040
<v Speaker 2>Stuff go right sounds good.

93
00:04:29.120 --> 00:04:32.079
<v Speaker 1>So so yeah, so you're not doing web RTC, you're

94
00:04:32.079 --> 00:04:34.279
<v Speaker 1>doing you're building BitTorrent and Dropbox.

95
00:04:35.000 --> 00:04:39.519
<v Speaker 4>Yeah, and I actually started when I first started dabbling

96
00:04:39.519 --> 00:04:42.399
<v Speaker 4>in Pewter peers. I built that peer client for for

97
00:04:42.480 --> 00:04:44.720
<v Speaker 4>bitttern because I was like, that's like a fun little

98
00:04:44.720 --> 00:04:47.519
<v Speaker 4>thing to do, and that was a.

99
00:04:46.680 --> 00:04:47.680
<v Speaker 3>Crazy cool experience.

100
00:04:47.680 --> 00:04:50.800
<v Speaker 4>I always tell this to people if you ever, it

101
00:04:50.879 --> 00:04:52.839
<v Speaker 4>is really fun because bitturn has one.

102
00:04:52.720 --> 00:04:53.480
<v Speaker 3>Of those things.

103
00:04:54.040 --> 00:04:56.199
<v Speaker 4>I did it like that was like ten fifteen years

104
00:04:56.199 --> 00:04:58.680
<v Speaker 4>ago when bittern was really really big and it was

105
00:04:58.720 --> 00:05:00.839
<v Speaker 4>everywhere and like you know, rate day was a website

106
00:05:00.839 --> 00:05:01.279
<v Speaker 4>you could go to.

107
00:05:01.319 --> 00:05:02.879
<v Speaker 3>Now I think it's probably blocked everywhere.

108
00:05:03.959 --> 00:05:07.560
<v Speaker 1>Yeah, I don't know, but yeah, not that I've ever

109
00:05:07.759 --> 00:05:10.879
<v Speaker 1>used pirate a because I would never do anything illegal.

110
00:05:12.000 --> 00:05:15.480
<v Speaker 3>It's good for donalding Linux, I heard. But it was

111
00:05:15.519 --> 00:05:17.600
<v Speaker 3>really cool. It was really cool for.

112
00:05:19.639 --> 00:05:21.399
<v Speaker 4>That whole you know experience where you just sit on

113
00:05:21.399 --> 00:05:23.160
<v Speaker 4>your laptop You're like, what should I play with? But

114
00:05:23.360 --> 00:05:25.199
<v Speaker 4>all the data is actually out there because it's distributed

115
00:05:25.199 --> 00:05:26.839
<v Speaker 4>and everywhere, so you can can't just sit there and

116
00:05:27.319 --> 00:05:29.120
<v Speaker 4>build a little program on your computer. You can go

117
00:05:29.160 --> 00:05:31.199
<v Speaker 4>to Wikipedia and just read this BAC. It was It's

118
00:05:31.240 --> 00:05:33.759
<v Speaker 4>like it's actually not very complicated once you you know,

119
00:05:33.839 --> 00:05:35.920
<v Speaker 4>understand the first bits of it. I just went a

120
00:05:35.959 --> 00:05:39.160
<v Speaker 4>couple of weekends in a row doing that. But I

121
00:05:39.240 --> 00:05:41.399
<v Speaker 4>and I've mentioned this many times on all interviews, but

122
00:05:41.480 --> 00:05:44.680
<v Speaker 4>like that whole feeling of like it's just me my computer, JavaScript,

123
00:05:44.759 --> 00:05:46.800
<v Speaker 4>everything is everywhere. Once I can just sit here and

124
00:05:46.920 --> 00:05:48.639
<v Speaker 4>write code and never have to give you anything else.

125
00:05:48.680 --> 00:05:51.360
<v Speaker 4>That was like that triggered triggered me massively to to

126
00:05:51.439 --> 00:05:54.319
<v Speaker 4>dive into this, and uh, yeah, I build a little

127
00:05:54.839 --> 00:05:56.959
<v Speaker 4>torn client from that that's still out there. Was called

128
00:05:56.959 --> 00:06:00.439
<v Speaker 4>the pure Flex pretty popular, but yeah, it was like

129
00:06:00.439 --> 00:06:02.600
<v Speaker 4>a crazy good experience and I've never looked back ever since.

130
00:06:04.000 --> 00:06:04.959
<v Speaker 2>Right makes sense.

131
00:06:05.000 --> 00:06:09.040
<v Speaker 1>So we're going to be talking about the Bear JavaScript

132
00:06:09.240 --> 00:06:14.199
<v Speaker 1>run time. But you were talking before about the pair

133
00:06:15.399 --> 00:06:16.399
<v Speaker 1>system that you have for.

134
00:06:19.680 --> 00:06:20.920
<v Speaker 2>Yeah, for peer to peer stuff.

135
00:06:20.920 --> 00:06:23.839
<v Speaker 1>And one thing that I was curious about is it

136
00:06:23.920 --> 00:06:26.040
<v Speaker 1>because I'm gonna ask you what it is, but I

137
00:06:26.079 --> 00:06:31.720
<v Speaker 1>also want to figure out what it is. And then

138
00:06:31.839 --> 00:06:35.879
<v Speaker 1>how that led to you creating another runtime because it

139
00:06:35.959 --> 00:06:39.639
<v Speaker 1>seems like, you know, we've got Node and Dino and

140
00:06:39.879 --> 00:06:42.360
<v Speaker 1>bun and so you know you're doing something maybe a

141
00:06:42.399 --> 00:06:45.879
<v Speaker 1>little different. Why does that lead you to, oh, we

142
00:06:45.920 --> 00:06:47.439
<v Speaker 1>need another one of these things?

143
00:06:48.639 --> 00:06:52.600
<v Speaker 3>Yeah? Excited? Oh yeah, Like I said, I've been doing

144
00:06:52.680 --> 00:06:55.120
<v Speaker 3>not what I love Node for a long time, and

145
00:06:55.279 --> 00:06:58.000
<v Speaker 3>we build out our high stack that's like no modules

146
00:06:58.040 --> 00:07:00.839
<v Speaker 3>like anybody else, native code of the stuff.

147
00:07:00.839 --> 00:07:03.959
<v Speaker 4>Note has a really good native language or facing with

148
00:07:04.120 --> 00:07:07.519
<v Speaker 4>C and stuff that we're big fans of. We build

149
00:07:07.560 --> 00:07:10.399
<v Speaker 4>all stuff out was great and at some point, as

150
00:07:10.399 --> 00:07:12.480
<v Speaker 4>anybody else who builds no GS apps, you want.

151
00:07:12.319 --> 00:07:14.199
<v Speaker 3>To distribute them, right, so you make an app these.

152
00:07:14.199 --> 00:07:16.920
<v Speaker 4>Project modules modules are really easy, and you want to

153
00:07:16.920 --> 00:07:20.439
<v Speaker 4>make an application, and actually, like make an application is

154
00:07:20.839 --> 00:07:23.560
<v Speaker 4>I think still surprisingly tricky. It's like where if you're

155
00:07:23.560 --> 00:07:25.680
<v Speaker 4>building a web application, there's tons of stuff out there

156
00:07:25.680 --> 00:07:27.240
<v Speaker 4>for that, Like you can you can make a little

157
00:07:27.600 --> 00:07:30.160
<v Speaker 4>app and maybe you can go and get a server

158
00:07:30.199 --> 00:07:31.639
<v Speaker 4>and you can host engine X and or whatever. But

159
00:07:31.680 --> 00:07:33.480
<v Speaker 4>if you want to make something that's like a desktop app,

160
00:07:34.240 --> 00:07:37.160
<v Speaker 4>you can use Electron. But it's it's it's it's the

161
00:07:37.199 --> 00:07:40.079
<v Speaker 4>process that once you start doing the end all the bits,

162
00:07:40.079 --> 00:07:43.439
<v Speaker 4>like you know, making the app, packaging and uh, getting

163
00:07:43.439 --> 00:07:45.160
<v Speaker 4>the stuff in there, getting the native stuff to Ron,

164
00:07:45.800 --> 00:07:48.639
<v Speaker 4>distributing and getting updates in there, getting that to Ron,

165
00:07:50.800 --> 00:07:53.000
<v Speaker 4>it's like it's not as simple as making a Note module,

166
00:07:53.040 --> 00:07:54.279
<v Speaker 4>and like it's a real investment.

167
00:07:54.360 --> 00:07:55.600
<v Speaker 3>So you end up just making one app.

168
00:07:55.600 --> 00:07:57.439
<v Speaker 4>Where I would normally make like one hundred modules, I

169
00:07:57.480 --> 00:07:59.920
<v Speaker 4>probably made like one or two apps because that that investment,

170
00:08:00.000 --> 00:08:04.439
<v Speaker 4>it's just so intense every time. So so we had

171
00:08:04.439 --> 00:08:06.160
<v Speaker 4>all the code for pew tore peers, so we decided,

172
00:08:06.199 --> 00:08:10.240
<v Speaker 4>like why not make an engine. That's what the pair

173
00:08:10.279 --> 00:08:13.600
<v Speaker 4>system is, pair and bear we'd like like to make

174
00:08:13.600 --> 00:08:14.120
<v Speaker 4>puns on that.

175
00:08:14.160 --> 00:08:15.120
<v Speaker 3>So it's two different things.

176
00:08:15.120 --> 00:08:17.839
<v Speaker 4>But the pair pair system was like an idea to say,

177
00:08:18.279 --> 00:08:20.360
<v Speaker 4>what if we instead you could just make kind of

178
00:08:20.360 --> 00:08:21.920
<v Speaker 4>like you make a module and like a website. You

179
00:08:21.920 --> 00:08:23.360
<v Speaker 4>can just make a little thing on your computer. It

180
00:08:23.480 --> 00:08:25.279
<v Speaker 4>just has the modules. You run it through this cool

181
00:08:25.279 --> 00:08:28.639
<v Speaker 4>thing which is called pair that you can go to

182
00:08:28.720 --> 00:08:30.160
<v Speaker 4>pairs dot com and you can you can try it

183
00:08:30.160 --> 00:08:32.480
<v Speaker 4>out and it just packages up into like a little

184
00:08:32.519 --> 00:08:35.080
<v Speaker 4>app with all the tooling, and then that app is

185
00:08:35.120 --> 00:08:36.960
<v Speaker 4>distributed to peer on our PTP network.

186
00:08:37.039 --> 00:08:38.919
<v Speaker 3>So like you don't have to have any like hosting anything.

187
00:08:38.960 --> 00:08:39.919
<v Speaker 3>You can just kind of like.

188
00:08:39.919 --> 00:08:42.159
<v Speaker 4>You do with like like I said, with you know,

189
00:08:42.279 --> 00:08:44.799
<v Speaker 4>normal normal things. You just package it up, run at

190
00:08:44.799 --> 00:08:47.559
<v Speaker 4>a simple command and you get a link out and

191
00:08:47.600 --> 00:08:50.000
<v Speaker 4>that link. If anybody else has this this run time install,

192
00:08:50.039 --> 00:08:51.639
<v Speaker 4>they can just paste it and they can run the

193
00:08:51.639 --> 00:08:54.919
<v Speaker 4>ABB anywhere. And then instead of spending in tons and

194
00:08:54.919 --> 00:08:56.519
<v Speaker 4>tons of time making and you can just make them

195
00:08:56.519 --> 00:08:58.759
<v Speaker 4>as easier as you make modules. And like again no

196
00:08:58.840 --> 00:09:00.799
<v Speaker 4>hosting costs no in think because it's.

197
00:09:00.679 --> 00:09:02.919
<v Speaker 3>Just distributed putre peer like you know in bittern.

198
00:09:03.639 --> 00:09:06.679
<v Speaker 4>So so so we deep that on that quite a

199
00:09:06.679 --> 00:09:10.960
<v Speaker 4>bit and we made something really cool for that, which is,

200
00:09:11.200 --> 00:09:13.279
<v Speaker 4>like I said, called pair that does all that stuff.

201
00:09:13.399 --> 00:09:16.039
<v Speaker 3>It's super cool and.

202
00:09:15.759 --> 00:09:21.960
<v Speaker 4>As part of that journey for us, and I think

203
00:09:21.960 --> 00:09:24.080
<v Speaker 4>this is actually a huge missing step up the gaoscript,

204
00:09:24.159 --> 00:09:26.960
<v Speaker 4>We're like, it's super cool to make these apps, right,

205
00:09:27.039 --> 00:09:29.080
<v Speaker 4>So we have an app that we build that called Keat,

206
00:09:29.080 --> 00:09:30.279
<v Speaker 4>which is a chat app. We do that as a

207
00:09:30.279 --> 00:09:32.519
<v Speaker 4>puture pewer chat aup is super cool. Also, let's building

208
00:09:32.519 --> 00:09:37.279
<v Speaker 4>all this stuff as no just developers. As soon as

209
00:09:37.279 --> 00:09:38.960
<v Speaker 4>you make an app like that and you make it

210
00:09:39.000 --> 00:09:40.559
<v Speaker 4>and it's cool, looks great and it has all the

211
00:09:40.600 --> 00:09:42.039
<v Speaker 4>cool stuff, the first thing people.

212
00:09:41.759 --> 00:09:43.879
<v Speaker 3>Ask you is like, cool, when is it nonmobile?

213
00:09:47.759 --> 00:09:49.759
<v Speaker 4>The answer was always like, oh, yeah, you know, we

214
00:09:49.840 --> 00:09:51.679
<v Speaker 4>don't have a mobile team yet and I can kind

215
00:09:51.679 --> 00:09:52.919
<v Speaker 4>of scale it up. And it was like you know

216
00:09:52.960 --> 00:09:54.639
<v Speaker 4>that that whole feeling when it's like a fork in

217
00:09:54.679 --> 00:09:56.559
<v Speaker 4>the in the in the process come to a degree

218
00:09:56.639 --> 00:09:58.840
<v Speaker 4>like we have all this stuff figured out for doing

219
00:10:00.440 --> 00:10:05.039
<v Speaker 4>desktop development and make a cool notejas things for this

220
00:10:05.159 --> 00:10:07.080
<v Speaker 4>top and for servers, but like getting that stuff to

221
00:10:07.120 --> 00:10:09.480
<v Speaker 4>run our phone, just like you will find some like

222
00:10:10.159 --> 00:10:12.159
<v Speaker 4>two year old project and maybe got something to work

223
00:10:12.159 --> 00:10:13.919
<v Speaker 4>at some point and it hasn't been maintained because it

224
00:10:14.000 --> 00:10:18.399
<v Speaker 4>was an experiment and stuff like that. So and there

225
00:10:18.440 --> 00:10:20.799
<v Speaker 4>was already really good you know, UI tooling on mobile

226
00:10:20.840 --> 00:10:23.240
<v Speaker 4>like reac native is really good. All the things are

227
00:10:23.240 --> 00:10:25.440
<v Speaker 4>really good on on on on phones to make UI

228
00:10:25.519 --> 00:10:27.120
<v Speaker 4>apps kind of like react this really good on this

229
00:10:27.159 --> 00:10:28.799
<v Speaker 4>stup for making UY apps.

230
00:10:29.279 --> 00:10:31.559
<v Speaker 3>So we're really missing that part. We're like, well, what

231
00:10:31.679 --> 00:10:32.840
<v Speaker 3>about the bag end?

232
00:10:32.919 --> 00:10:34.840
<v Speaker 4>So in period, the back end runs everywhere, like you

233
00:10:34.879 --> 00:10:36.200
<v Speaker 4>don't want to run it on a server, You want

234
00:10:36.200 --> 00:10:38.600
<v Speaker 4>to run that ud the device. But the bag end

235
00:10:38.639 --> 00:10:42.279
<v Speaker 4>has much different capability needs than than a front end,

236
00:10:42.279 --> 00:10:43.799
<v Speaker 4>Like you need to be able to load native code

237
00:10:43.840 --> 00:10:45.960
<v Speaker 4>so you can like you know, do stuff like video

238
00:10:46.000 --> 00:10:47.440
<v Speaker 4>trends coding if you want to do that on the phone,

239
00:10:47.440 --> 00:10:49.159
<v Speaker 4>do stuff like native networking if you want to do that.

240
00:10:49.159 --> 00:10:50.840
<v Speaker 3>In the phone for modules.

241
00:10:51.720 --> 00:10:55.080
<v Speaker 4>So so we very quickly decided like, let's try to

242
00:10:55.080 --> 00:10:58.440
<v Speaker 4>get not jets running, and we just couldn't do it

243
00:10:58.440 --> 00:11:00.279
<v Speaker 4>because it's like it's just not made for it, and

244
00:11:00.320 --> 00:11:02.240
<v Speaker 4>the module system is not made for and like making

245
00:11:02.240 --> 00:11:05.480
<v Speaker 4>bills for like again, I totally started to understand why

246
00:11:05.519 --> 00:11:08.480
<v Speaker 4>these partics pop up and never really go anywhere because

247
00:11:08.480 --> 00:11:11.720
<v Speaker 4>there's there's too much stuff, there's too much things to fight,

248
00:11:11.879 --> 00:11:16.120
<v Speaker 4>and so instead we were like, well, actually, what is

249
00:11:16.159 --> 00:11:18.799
<v Speaker 4>the thing we want to we really love from no

250
00:11:18.919 --> 00:11:22.440
<v Speaker 4>DS And for us, that's like the module system MPM.

251
00:11:22.600 --> 00:11:25.440
<v Speaker 4>That's amazing, it works. It's like one of the most

252
00:11:25.519 --> 00:11:29.080
<v Speaker 4>well designed things ever. Uh and and the native system

253
00:11:29.159 --> 00:11:31.960
<v Speaker 4>for know like how to interface from note to see

254
00:11:31.759 --> 00:11:33.480
<v Speaker 4>the thing not not a lot of people do, but

255
00:11:33.519 --> 00:11:35.679
<v Speaker 4>when you do it, you're you know, it's it's amazingly

256
00:11:35.679 --> 00:11:39.159
<v Speaker 4>well designed. No years, so we're like, what if we

257
00:11:39.240 --> 00:11:41.200
<v Speaker 4>just made a new run time that actually didn't have

258
00:11:41.240 --> 00:11:42.720
<v Speaker 4>any of the other stuff, because all the other stuff

259
00:11:42.759 --> 00:11:43.720
<v Speaker 4>is actually what made it hard.

260
00:11:43.799 --> 00:11:44.639
<v Speaker 3>The other stuff is.

261
00:11:44.559 --> 00:11:49.240
<v Speaker 4>Like things like AGP bindings, things like fastest and bindings.

262
00:11:49.240 --> 00:11:50.960
<v Speaker 4>Even though that sounds kind of insane not to have it,

263
00:11:51.000 --> 00:11:52.679
<v Speaker 4>that's the thing that makes it really hard to port,

264
00:11:53.320 --> 00:11:56.919
<v Speaker 4>and instead just had a module system. So no APIs

265
00:11:56.919 --> 00:11:58.759
<v Speaker 4>a module system, a native system. And then it had

266
00:11:58.799 --> 00:12:01.639
<v Speaker 4>a stated goal of saying, with those two things, how

267
00:12:01.639 --> 00:12:04.559
<v Speaker 4>can we make something that actually runs everywhere, So like

268
00:12:04.679 --> 00:12:08.080
<v Speaker 4>something that you can write a module once it runs

269
00:12:08.120 --> 00:12:11.960
<v Speaker 4>on this top a mobile phone, your smart light bulb,

270
00:12:11.960 --> 00:12:17.200
<v Speaker 4>if it has to run time anywhere. And we made

271
00:12:17.200 --> 00:12:20.519
<v Speaker 4>this little thing for for our PTP engine pair and

272
00:12:20.600 --> 00:12:22.240
<v Speaker 4>at some point we were like, wow, this is actually

273
00:12:22.279 --> 00:12:25.879
<v Speaker 4>insanely cool by itself, so we decided to split it

274
00:12:25.960 --> 00:12:28.799
<v Speaker 4>up into Bear. So that's why the pair bear Plunk

275
00:12:28.840 --> 00:12:29.159
<v Speaker 4>came in.

276
00:12:29.960 --> 00:12:30.360
<v Speaker 3>So we.

277
00:12:31.840 --> 00:12:34.679
<v Speaker 4>Officially released this I think it was last week. It's

278
00:12:34.720 --> 00:12:38.080
<v Speaker 4>been really exciting, so that's that's the bear JAS run time.

279
00:12:38.679 --> 00:12:41.360
<v Speaker 4>It's bare because it does nothing but but does everything,

280
00:12:42.600 --> 00:12:44.720
<v Speaker 4>so it only ships a module system. It only ships

281
00:12:44.759 --> 00:12:46.720
<v Speaker 4>this native thing and then it just we just made

282
00:12:46.759 --> 00:12:48.559
<v Speaker 4>I think we already made like two hundred modules for it.

283
00:12:49.639 --> 00:12:52.120
<v Speaker 4>So if you want to use like file systems, you

284
00:12:52.200 --> 00:12:55.720
<v Speaker 4>just install a file system module that runs again, because

285
00:12:55.759 --> 00:13:00.039
<v Speaker 4>it's using these bindings everywhere. On mobile we use a

286
00:13:00.080 --> 00:13:03.279
<v Speaker 4>binding for doing push notifications. That's the thing you obviously

287
00:13:03.320 --> 00:13:05.120
<v Speaker 4>don't want to use that on desktop. Then on desktop

288
00:13:05.159 --> 00:13:06.600
<v Speaker 4>you want to do other things like maybe we on

289
00:13:06.600 --> 00:13:08.279
<v Speaker 4>an HTP server, you can do that. You can also

290
00:13:08.279 --> 00:13:08.879
<v Speaker 4>do it the mobile.

291
00:13:09.639 --> 00:13:10.039
<v Speaker 3>Uh.

292
00:13:10.080 --> 00:13:14.000
<v Speaker 4>And we just did this because you know, we wanted

293
00:13:14.039 --> 00:13:16.480
<v Speaker 4>to unlock our own development. I am a big believer

294
00:13:16.519 --> 00:13:19.279
<v Speaker 4>in modular design, and that's that's part of it. But

295
00:13:20.679 --> 00:13:22.639
<v Speaker 4>I was very excited when we did it because I'm like, Wow,

296
00:13:22.679 --> 00:13:25.399
<v Speaker 4>this is actually what I've been missing my entirety is career.

297
00:13:25.440 --> 00:13:29.759
<v Speaker 3>I think. So it's it's it's super cool and super.

298
00:13:31.240 --> 00:13:31.600
<v Speaker 2>Yeah.

299
00:13:31.639 --> 00:13:35.120
<v Speaker 1>So I guess what I'm curious about, just to start

300
00:13:35.159 --> 00:13:35.519
<v Speaker 1>off with.

301
00:13:35.799 --> 00:13:36.039
<v Speaker 4>Is.

302
00:13:38.840 --> 00:13:43.840
<v Speaker 1>So it it's it's a bare bones JavaScript implementation as

303
00:13:43.840 --> 00:13:48.159
<v Speaker 1>opposed to say note or bun or whatever that pulls

304
00:13:48.200 --> 00:13:50.960
<v Speaker 1>in a ton of stuff. I mean sometimes that ton

305
00:13:51.000 --> 00:13:54.320
<v Speaker 1>of stuff is nice to have, but yeah.

306
00:13:54.159 --> 00:13:56.480
<v Speaker 4>Yeah, it's basically saying it's flipping in it around a

307
00:13:56.519 --> 00:14:00.639
<v Speaker 4>little bit, saying it's just JavaScript, what anything? So like

308
00:14:00.679 --> 00:14:03.879
<v Speaker 4>JavaScript without anything, it's actually hard to define, right. I

309
00:14:03.879 --> 00:14:07.279
<v Speaker 4>don't even think like where does the specs stop and end?

310
00:14:07.279 --> 00:14:09.600
<v Speaker 4>Because you know, stuff like where the people might think

311
00:14:09.639 --> 00:14:11.679
<v Speaker 4>that's part of JavaScript because it's there in the browser,

312
00:14:11.759 --> 00:14:13.320
<v Speaker 4>but it's not really, it's something it's like a different

313
00:14:13.320 --> 00:14:15.080
<v Speaker 4>spec it's not a language thing. But then there's other

314
00:14:15.120 --> 00:14:18.759
<v Speaker 4>things where you're like something like a type the array

315
00:14:18.759 --> 00:14:20.360
<v Speaker 4>in JavaScript, you know, like you and AI that ray

316
00:14:20.519 --> 00:14:22.480
<v Speaker 4>is that part of the language, and that's that's very

317
00:14:22.480 --> 00:14:24.320
<v Speaker 4>part of the core of language. Is it's actually really

318
00:14:24.360 --> 00:14:27.039
<v Speaker 4>hard as unless you really going through like what this

319
00:14:27.159 --> 00:14:30.440
<v Speaker 4>JavaScript is. So for us, we're like, we just want

320
00:14:30.480 --> 00:14:33.120
<v Speaker 4>something that just runs the JavaScript and has the only

321
00:14:33.120 --> 00:14:35.000
<v Speaker 4>thing bigd in is like a module system. You want

322
00:14:35.000 --> 00:14:38.039
<v Speaker 4>to be able to somehow load things, so like import.

323
00:14:38.720 --> 00:14:43.840
<v Speaker 4>It's very important and clear rules about how that import works.

324
00:14:43.840 --> 00:14:46.799
<v Speaker 4>So we still follow the note note modules algorithm, which

325
00:14:46.840 --> 00:14:48.840
<v Speaker 4>means you can stall things from MPM because then you

326
00:14:48.879 --> 00:14:55.039
<v Speaker 4>get free compatit and stuff. But everything else, and this

327
00:14:55.200 --> 00:14:57.240
<v Speaker 4>might be a little bit controversial, but everything else actually

328
00:14:57.240 --> 00:14:59.600
<v Speaker 4>just makes your life harder because like if you have

329
00:14:59.639 --> 00:15:01.679
<v Speaker 4>something like a file system build in like you know

330
00:15:01.720 --> 00:15:03.840
<v Speaker 4>in NOGS you can do require f as you get

331
00:15:03.840 --> 00:15:06.679
<v Speaker 4>a file system. Right, that's something where you're like, wow,

332
00:15:06.720 --> 00:15:08.799
<v Speaker 4>that's the feature, and it is a feature. But for

333
00:15:08.879 --> 00:15:14.120
<v Speaker 4>me as a SUM as a developer, it's also a

334
00:15:15.080 --> 00:15:20.200
<v Speaker 4>what's the word liability us If you just get that

335
00:15:20.240 --> 00:15:22.360
<v Speaker 4>from the runtime if the runtimes give you that API,

336
00:15:22.759 --> 00:15:25.240
<v Speaker 4>what's the version of that API you're getting, Like, are

337
00:15:25.240 --> 00:15:28.240
<v Speaker 4>you getting the latest one? That's like in NOE twenty

338
00:15:28.240 --> 00:15:29.639
<v Speaker 4>four A, you're getting into one from No.

339
00:15:29.720 --> 00:15:30.120
<v Speaker 3>Eighteen.

340
00:15:30.799 --> 00:15:32.840
<v Speaker 4>Well you might know it because you're installed note on

341
00:15:32.840 --> 00:15:34.840
<v Speaker 4>your computer, but if you're running it on somebody else computer,

342
00:15:35.000 --> 00:15:38.879
<v Speaker 4>you don't know. As that API changes, it becomes actually

343
00:15:38.919 --> 00:15:42.399
<v Speaker 4>really hard to code against. And the only solution is

344
00:15:42.440 --> 00:15:46.080
<v Speaker 4>that that ABHI basically never changes, which is then why

345
00:15:46.120 --> 00:15:48.679
<v Speaker 4>we have a lot of this stuff in nogs will.

346
00:15:48.720 --> 00:15:51.799
<v Speaker 4>Really why is the FS module still using callbacks for

347
00:15:51.799 --> 00:15:53.759
<v Speaker 4>example as the default, Well, that's because we don't want

348
00:15:53.759 --> 00:15:58.159
<v Speaker 4>to break all stuff. If instead there is nothing built

349
00:15:58.200 --> 00:16:00.320
<v Speaker 4>in only the javas respect which is very build around

350
00:16:00.360 --> 00:16:03.639
<v Speaker 4>never changing. And you then load modules, then modules can

351
00:16:03.679 --> 00:16:05.440
<v Speaker 4>just change. You can just kind of like React changes

352
00:16:05.679 --> 00:16:07.200
<v Speaker 4>all the time, right, You can just publish a new

353
00:16:07.240 --> 00:16:09.159
<v Speaker 4>major version and then people on the old major version

354
00:16:09.159 --> 00:16:11.679
<v Speaker 4>can just stay and now one that's fine, and then

355
00:16:11.679 --> 00:16:13.120
<v Speaker 4>people who want to get the new stuff can just

356
00:16:13.120 --> 00:16:14.679
<v Speaker 4>move a new on and you never break anything. So

357
00:16:14.720 --> 00:16:17.120
<v Speaker 4>you can just have this rapid rapid iteration of like

358
00:16:17.200 --> 00:16:21.960
<v Speaker 4>crazy designs that never break anything. In practice, The plot

359
00:16:22.039 --> 00:16:23.879
<v Speaker 4>side of that is then you also don't have to

360
00:16:23.919 --> 00:16:29.039
<v Speaker 4>ship that code around. So that's really useful for stuff

361
00:16:29.080 --> 00:16:31.000
<v Speaker 4>like mobile where you have different kind of footprints, like

362
00:16:31.000 --> 00:16:35.279
<v Speaker 4>a mobile. If you're running an application that uses JavaScript

363
00:16:35.320 --> 00:16:37.440
<v Speaker 4>on mobile, maybe you don't want to load like open

364
00:16:37.519 --> 00:16:39.279
<v Speaker 4>ass a cell from not yes because you're not using

365
00:16:39.320 --> 00:16:42.279
<v Speaker 4>and that's a big dependency and liability and also something

366
00:16:42.279 --> 00:16:43.960
<v Speaker 4>you have to get approval for in the app stores

367
00:16:43.960 --> 00:16:46.480
<v Speaker 4>and things like that. Or if note adds something else,

368
00:16:47.240 --> 00:16:48.879
<v Speaker 4>you just want to run run the JavaScript and then

369
00:16:48.919 --> 00:16:50.320
<v Speaker 4>you just want to pull in exactly what you need.

370
00:16:51.320 --> 00:16:55.360
<v Speaker 4>So that was our design goal from the beginning. And

371
00:16:55.399 --> 00:16:57.679
<v Speaker 4>for me, that's one of those things again when you

372
00:16:57.679 --> 00:17:00.759
<v Speaker 4>hear about it sounds like an empty feature, but I

373
00:17:00.759 --> 00:17:02.720
<v Speaker 4>think it's you know what I mean with the normal

374
00:17:02.759 --> 00:17:05.000
<v Speaker 4>distribution with the guy in the middle, it's kind of

375
00:17:05.000 --> 00:17:07.079
<v Speaker 4>like no modules on both ends. And the guy in

376
00:17:07.079 --> 00:17:09.319
<v Speaker 4>the middle is like, I love all the modules, Like

377
00:17:09.799 --> 00:17:11.720
<v Speaker 4>you actually want to have nothing ship with rue time.

378
00:17:12.319 --> 00:17:13.759
<v Speaker 4>You want to have nothing ship with your run time,

379
00:17:13.839 --> 00:17:18.480
<v Speaker 4>and then you just want to pull in all the things.

380
00:17:19.119 --> 00:17:23.319
<v Speaker 4>And and I'm talking a lot, but I'm excited about it.

381
00:17:23.319 --> 00:17:26.400
<v Speaker 4>But like and add the benefit of that is like again,

382
00:17:26.519 --> 00:17:28.119
<v Speaker 4>if you look at something like Bond, I think Bond

383
00:17:29.440 --> 00:17:30.839
<v Speaker 4>it changed course a little bit, but one of the

384
00:17:30.839 --> 00:17:33.759
<v Speaker 4>original things about Bond that was like a cool thing

385
00:17:34.000 --> 00:17:35.519
<v Speaker 4>was like, it's not based on V eight.

386
00:17:35.559 --> 00:17:40.079
<v Speaker 3>It's based on jobasrip core I think the one from Webcait.

387
00:17:40.720 --> 00:17:43.160
<v Speaker 4>And it has different profiles and it's very good at

388
00:17:43.160 --> 00:17:45.359
<v Speaker 4>other stuff, and like VA is better and other stuff.

389
00:17:45.839 --> 00:17:48.920
<v Speaker 3>So it's kind of like there's like a major for you,

390
00:17:49.000 --> 00:17:50.640
<v Speaker 3>Like you want to use j's core, well, the.

391
00:17:50.640 --> 00:17:52.400
<v Speaker 4>Need to probably use Bond, you want to use VAH

392
00:17:52.400 --> 00:17:56.039
<v Speaker 4>should probably use note when you do a runtime like

393
00:17:56.079 --> 00:17:59.440
<v Speaker 4>this where basically saying there's nothing in here except the

394
00:17:59.519 --> 00:18:06.319
<v Speaker 4>language and the module system, then changing jouascrip inmentations and

395
00:18:06.319 --> 00:18:07.880
<v Speaker 4>all of a sudden really easy because you're not really

396
00:18:07.960 --> 00:18:08.599
<v Speaker 4>doing much.

397
00:18:08.440 --> 00:18:08.920
<v Speaker 3>Except for that.

398
00:18:09.759 --> 00:18:13.599
<v Speaker 4>So our guys made a cooler library called lip jas,

399
00:18:14.359 --> 00:18:17.200
<v Speaker 4>which is basically just like a binding an abstraction layer

400
00:18:17.240 --> 00:18:20.359
<v Speaker 4>for any engine because that's really easy, easy to define, okay,

401
00:18:21.039 --> 00:18:24.240
<v Speaker 4>and that means that in there we can support any

402
00:18:24.319 --> 00:18:26.400
<v Speaker 4>JAS engine basically. So we already have it working on

403
00:18:26.759 --> 00:18:28.519
<v Speaker 4>MB eight because we is awesome. We have it working

404
00:18:28.559 --> 00:18:30.480
<v Speaker 4>on JavaScript core. So you know, if you want to

405
00:18:30.519 --> 00:18:32.680
<v Speaker 4>use that on iOS. It can just run that seamlessly.

406
00:18:33.799 --> 00:18:36.079
<v Speaker 4>Am Song made this really cool JavaScript engine I don't

407
00:18:36.079 --> 00:18:37.799
<v Speaker 4>know if you know what, called jerryscript, which is like

408
00:18:37.799 --> 00:18:42.839
<v Speaker 4>a JAS engine based for embedded systems, so it runs

409
00:18:42.839 --> 00:18:46.599
<v Speaker 4>in like have a Megabytom memory obviously like slower and

410
00:18:46.640 --> 00:18:48.440
<v Speaker 4>other things, but like it means that they can actually run.

411
00:18:48.279 --> 00:18:50.519
<v Speaker 3>On things like light bulbs and stuff. Bear runs with.

412
00:18:50.559 --> 00:18:52.839
<v Speaker 2>That straight up, and that's cool.

413
00:18:53.920 --> 00:18:56.519
<v Speaker 4>And you as a module offer when you write modules

414
00:18:56.559 --> 00:18:58.279
<v Speaker 4>to Bear, you don't know any of this. You just

415
00:18:58.359 --> 00:19:00.680
<v Speaker 4>run you just write JavaScript, but it just runs on

416
00:19:00.720 --> 00:19:02.400
<v Speaker 4>this straight up. So you can actually take any band

417
00:19:02.400 --> 00:19:04.720
<v Speaker 4>module out there, so you can take out we haven't

418
00:19:04.880 --> 00:19:07.519
<v Speaker 4>you know, We've made a module for five systems called Bear.

419
00:19:07.440 --> 00:19:09.000
<v Speaker 3>Affets, which is just a module you can donald.

420
00:19:09.359 --> 00:19:11.279
<v Speaker 4>So you can actually install that and run that on

421
00:19:11.359 --> 00:19:13.279
<v Speaker 4>Jerry script and run it on a light bulb. But

422
00:19:13.319 --> 00:19:15.039
<v Speaker 4>you can install that and run it on jais corn,

423
00:19:15.079 --> 00:19:16.759
<v Speaker 4>run on Iris, or you can run it on V

424
00:19:16.799 --> 00:19:19.960
<v Speaker 4>eight or whatever. And I think that's like that to

425
00:19:19.960 --> 00:19:21.680
<v Speaker 4>me was like wow, this is where this is gonna

426
00:19:21.839 --> 00:19:22.200
<v Speaker 4>you know.

427
00:19:22.160 --> 00:19:24.680
<v Speaker 3>On people. Once people realize this is like this is

428
00:19:24.680 --> 00:19:26.119
<v Speaker 3>going to be crazy.

429
00:19:28.119 --> 00:19:36.759
<v Speaker 1>That is crazy. Yeah, I'm imagining, you know, I mean

430
00:19:36.880 --> 00:19:40.039
<v Speaker 1>you kind of go nuts, you put spider Monkey on there, you.

431
00:19:40.039 --> 00:19:47.599
<v Speaker 2>Know, whatever floats your boat. That that's interesting. Yeah, So.

432
00:19:49.079 --> 00:19:51.119
<v Speaker 4>It's like just to add on that because it's almost

433
00:19:51.240 --> 00:19:53.400
<v Speaker 4>like I think it's one of those things where people

434
00:19:53.400 --> 00:19:56.319
<v Speaker 4>don't realize almost like the implications of that. But for example,

435
00:19:56.400 --> 00:19:59.319
<v Speaker 4>like if you do move Mobile development and you want

436
00:19:59.319 --> 00:20:03.359
<v Speaker 4>to run something that reacts to a push notification on iOS,

437
00:20:04.000 --> 00:20:04.920
<v Speaker 4>that's something you can do.

438
00:20:06.759 --> 00:20:07.440
<v Speaker 3>On iOS.

439
00:20:07.599 --> 00:20:09.680
<v Speaker 4>You only have like twenty megabytes of memory to do that,

440
00:20:10.240 --> 00:20:12.160
<v Speaker 4>not to be nerded, but like that's a requirement. So

441
00:20:12.200 --> 00:20:14.119
<v Speaker 4>if you run if you run V eight with that,

442
00:20:14.359 --> 00:20:17.079
<v Speaker 4>it's like V eight takes fifteen megabytes of memory. You

443
00:20:17.079 --> 00:20:20.279
<v Speaker 4>have five five megabytes of memory for application. You feel

444
00:20:20.279 --> 00:20:22.359
<v Speaker 4>like the guy who's like programming the program to go

445
00:20:22.400 --> 00:20:24.400
<v Speaker 4>to the moon, right You're sitting there optimizing every line

446
00:20:24.400 --> 00:20:26.920
<v Speaker 4>to like make it fit memory right in like twenty

447
00:20:27.119 --> 00:20:27.640
<v Speaker 4>twenty five.

448
00:20:27.680 --> 00:20:28.240
<v Speaker 3>It's insane.

449
00:20:29.160 --> 00:20:30.960
<v Speaker 4>So what we do is we just swap it out

450
00:20:31.000 --> 00:20:34.279
<v Speaker 4>for jerryscript, same code. Boom, memory goes down. It's the

451
00:20:34.319 --> 00:20:36.599
<v Speaker 4>same as writing it and the sea basically because now

452
00:20:36.640 --> 00:20:38.400
<v Speaker 4>it's like footprint is very small and Rue's slower, but

453
00:20:38.440 --> 00:20:40.920
<v Speaker 4>doesn't matter. It's in the push notification and now we

454
00:20:40.960 --> 00:20:42.680
<v Speaker 4>can do all the things, right, So it's like you

455
00:20:42.720 --> 00:20:44.359
<v Speaker 4>can pick your battles at a reason.

456
00:20:46.200 --> 00:20:50.440
<v Speaker 1>Yeah, that's that's really interesting. So let's talk about mobile

457
00:20:50.440 --> 00:20:54.680
<v Speaker 1>for a minute, because I mean we've done shows on

458
00:20:54.759 --> 00:21:00.519
<v Speaker 1>things like Capacitor or Ionic, right, and so those those

459
00:21:00.559 --> 00:21:03.000
<v Speaker 1>just use the web WebView, right, and then they connect

460
00:21:03.079 --> 00:21:11.119
<v Speaker 1>to stuff through the JavaScript core bridge on iOS and

461
00:21:11.160 --> 00:21:15.480
<v Speaker 1>you know it kind of does the things. And yeah,

462
00:21:15.599 --> 00:21:17.920
<v Speaker 1>running some of these other engines, I mean, there are

463
00:21:17.960 --> 00:21:23.200
<v Speaker 1>languages you can't run on iOS because you know it does.

464
00:21:24.200 --> 00:21:26.400
<v Speaker 1>There are various reasons. I'm not going to get into them,

465
00:21:26.400 --> 00:21:30.319
<v Speaker 1>but some of it's because it opens the gate to

466
00:21:30.559 --> 00:21:34.880
<v Speaker 1>certain security things they can't sandbox it properly. And sometimes

467
00:21:35.160 --> 00:21:37.839
<v Speaker 1>it's because, yeah, those languages just take up too much

468
00:21:38.240 --> 00:21:41.799
<v Speaker 1>in the way of resources. But when you get down

469
00:21:41.839 --> 00:21:44.480
<v Speaker 1>to other things like React Native, I mean, they work

470
00:21:44.480 --> 00:21:48.359
<v Speaker 1>almost exclusively across that JavaScript bridge, but they're still using

471
00:21:48.359 --> 00:21:51.799
<v Speaker 1>the runtime JavaScript that's built into the phone. And it

472
00:21:51.880 --> 00:21:54.240
<v Speaker 1>sounds like what you're doing here is you're actually saying, hey,

473
00:21:54.240 --> 00:21:57.240
<v Speaker 1>we've got this other JavaScript engine that you're going to

474
00:21:57.319 --> 00:21:59.640
<v Speaker 1>run as part of your app, and I'm assuming if

475
00:21:59.640 --> 00:22:01.839
<v Speaker 1>you ploy an app to the app Store, it ships

476
00:22:01.920 --> 00:22:05.160
<v Speaker 1>with the JavaScript run time embedded in the app along

477
00:22:05.200 --> 00:22:11.599
<v Speaker 1>with everything else. And so my question is you're nodding,

478
00:22:11.640 --> 00:22:17.480
<v Speaker 1>so I'm assuming I'm getting it right. My question is, yeah,

479
00:22:17.519 --> 00:22:22.039
<v Speaker 1>what kind of limitations are there to this? And then

480
00:22:22.279 --> 00:22:25.440
<v Speaker 1>the other question is is what kind of advantage does

481
00:22:25.480 --> 00:22:29.880
<v Speaker 1>it give you? Because I'm aware that some apps, depending

482
00:22:29.920 --> 00:22:33.920
<v Speaker 1>on if it's JavaScript, the iOS for example, thinks of

483
00:22:33.960 --> 00:22:36.960
<v Speaker 1>it as an as an asset, a static asset, as

484
00:22:36.960 --> 00:22:40.000
<v Speaker 1>opposed to or at least they used to as opposed

485
00:22:40.039 --> 00:22:42.440
<v Speaker 1>to you know, part of the app, and so you

486
00:22:42.440 --> 00:22:45.920
<v Speaker 1>could actually do a hot reload and things like that

487
00:22:46.000 --> 00:22:48.240
<v Speaker 1>with it. And I'm just so I'm wondering, like what

488
00:22:48.720 --> 00:22:52.279
<v Speaker 1>doors does this actually open beyond sort of performance and

489
00:22:52.319 --> 00:22:54.960
<v Speaker 1>having my app run there and on the desktop.

490
00:22:56.119 --> 00:22:59.200
<v Speaker 4>So yeah, super interesting. It's actually you're very very much

491
00:22:59.279 --> 00:23:02.640
<v Speaker 4>under my track here and in general. So so for example,

492
00:23:02.680 --> 00:23:04.960
<v Speaker 4>our app, we our chat up key, which is our

493
00:23:04.960 --> 00:23:07.440
<v Speaker 4>flagship app, will we deploy orders. It's a RAG native app,

494
00:23:08.119 --> 00:23:10.759
<v Speaker 4>and we have a bunch of reagnative developers. We're very

495
00:23:10.759 --> 00:23:12.920
<v Speaker 4>good at making stuff REACNATD. I'm big, I'm a big

496
00:23:12.920 --> 00:23:15.839
<v Speaker 4>fan of Reagnative and the way they do stuff, and

497
00:23:15.920 --> 00:23:19.480
<v Speaker 4>like it's it's it's it's a really cool project. Very

498
00:23:19.559 --> 00:23:23.200
<v Speaker 4>very still very underrated project because people just sar JavaScript

499
00:23:23.240 --> 00:23:25.000
<v Speaker 4>and sometimes you know how people are to freak out,

500
00:23:25.599 --> 00:23:30.119
<v Speaker 4>but it's like it's it's incredibly well designed. So we

501
00:23:30.200 --> 00:23:34.359
<v Speaker 4>actually run the way you describe where we run, and

502
00:23:34.400 --> 00:23:36.680
<v Speaker 4>we have a module for this with React native that

503
00:23:36.799 --> 00:23:40.680
<v Speaker 4>just integrates the runtime with reacnative, so dot the hot

504
00:23:40.720 --> 00:23:42.799
<v Speaker 4>reloadings and whenever you update the code order stuff. It

505
00:23:42.799 --> 00:23:47.480
<v Speaker 4>works like magically. World is super cool. So we run

506
00:23:47.599 --> 00:23:51.119
<v Speaker 4>the run our runtime next to the Regnative runtime, kind

507
00:23:51.119 --> 00:23:53.799
<v Speaker 4>of like you would run a back end normally, right,

508
00:23:53.839 --> 00:23:55.799
<v Speaker 4>so you have like a separate process normally runs on

509
00:23:55.799 --> 00:23:57.599
<v Speaker 4>a server. You run it on device because we use

510
00:23:57.640 --> 00:23:59.359
<v Speaker 4>it mainly for future peer but we use all kinds

511
00:23:59.359 --> 00:24:02.160
<v Speaker 4>of things where you then ship the run time with it.

512
00:24:02.160 --> 00:24:03.160
<v Speaker 3>It's it's not that big.

513
00:24:03.240 --> 00:24:08.079
<v Speaker 4>It's like I think it's like ten megabytes. The reason

514
00:24:08.079 --> 00:24:11.920
<v Speaker 4>why to do this is many many reasons. One is like, yeah,

515
00:24:11.920 --> 00:24:13.680
<v Speaker 4>like you said, you can do all kinds of performance things.

516
00:24:14.359 --> 00:24:18.400
<v Speaker 4>The runtime has a very clear defined native interface, so

517
00:24:18.440 --> 00:24:20.400
<v Speaker 4>you can you can make native modules, which is very

518
00:24:20.400 --> 00:24:23.240
<v Speaker 4>important for us. Like, for example, we just made some

519
00:24:23.279 --> 00:24:26.680
<v Speaker 4>bindings for we need our app for fmpech for doing

520
00:24:26.759 --> 00:24:30.319
<v Speaker 4>like video conversion and stuff like that. So we write them.

521
00:24:30.400 --> 00:24:32.759
<v Speaker 4>You write a what module wants for Bear, you write

522
00:24:32.799 --> 00:24:35.000
<v Speaker 4>bind to the native language. It runs, and nodias and

523
00:24:35.079 --> 00:24:40.160
<v Speaker 4>runs and Bear. Then it also runs on the phones

524
00:24:40.160 --> 00:24:43.680
<v Speaker 4>immediately because that's by part of that contract, assuming like

525
00:24:43.720 --> 00:24:45.400
<v Speaker 4>that the phones can you know run thus that that

526
00:24:45.519 --> 00:24:50.039
<v Speaker 4>CE library, but honestly almost always they can, and you

527
00:24:50.119 --> 00:24:53.519
<v Speaker 4>never touched that code again, and it's like globally universal everywhere,

528
00:24:53.599 --> 00:24:56.119
<v Speaker 4>and that's that's the true unlock. So like we're iterating

529
00:24:56.359 --> 00:24:59.279
<v Speaker 4>so much fast now because we never really think about

530
00:24:59.319 --> 00:25:01.240
<v Speaker 4>that bridge of crossing the things. I think people are

531
00:25:01.240 --> 00:25:05.559
<v Speaker 4>overfixated on making cross platform UI things, you know kind

532
00:25:05.559 --> 00:25:07.720
<v Speaker 4>of like somebody will probably say, well, you can run

533
00:25:07.720 --> 00:25:11.400
<v Speaker 4>reagnative on the desktop also, and then you can maybe

534
00:25:11.440 --> 00:25:12.960
<v Speaker 4>do some of the same things, and like to some

535
00:25:13.039 --> 00:25:15.599
<v Speaker 4>degree that's true, but it's also like by overcoupling things

536
00:25:15.599 --> 00:25:19.160
<v Speaker 4>to U I react native visit your I framework, you're

537
00:25:19.200 --> 00:25:21.960
<v Speaker 4>not getting that like massive iteration speed that you get

538
00:25:21.960 --> 00:25:25.519
<v Speaker 4>from like making no jezz modules where no jets modules.

539
00:25:25.599 --> 00:25:27.240
<v Speaker 3>The other way is like something not nothing to do

540
00:25:27.319 --> 00:25:29.319
<v Speaker 3>at all with with UI, but.

541
00:25:29.279 --> 00:25:32.000
<v Speaker 4>It's just like making functionalities that then you know, enhance

542
00:25:32.079 --> 00:25:34.319
<v Speaker 4>your app and enhanced your back And so we do

543
00:25:34.359 --> 00:25:36.240
<v Speaker 4>the same thing with Bear modules. So you just write

544
00:25:36.240 --> 00:25:39.279
<v Speaker 4>them once they run everywhere. By composing your app logic

545
00:25:39.319 --> 00:25:42.000
<v Speaker 4>for these modules, you're actually just making an app ad

546
00:25:42.680 --> 00:25:44.759
<v Speaker 4>logic thing that does all kinds of things like image

547
00:25:44.759 --> 00:25:46.720
<v Speaker 4>scaling like I said, or like just run your engine

548
00:25:46.759 --> 00:25:48.240
<v Speaker 4>for us. It's running like a whole piece of peer

549
00:25:48.279 --> 00:25:52.119
<v Speaker 4>stack and you literally doesn't change it between desktop and

550
00:25:52.160 --> 00:25:54.599
<v Speaker 4>mobile or embedded devices, is exactly the same code you

551
00:25:54.680 --> 00:25:58.440
<v Speaker 4>run it for us. That's been like one of those

552
00:25:58.519 --> 00:26:01.960
<v Speaker 4>like wow, we went from like working you know one

553
00:26:02.119 --> 00:26:04.200
<v Speaker 4>x ten x now one hundred x faster, Like it's

554
00:26:04.279 --> 00:26:06.559
<v Speaker 4>crazy how fast we can literate now because we never think.

555
00:26:06.400 --> 00:26:08.880
<v Speaker 3>About honestly, and this is like really true, we.

556
00:26:08.839 --> 00:26:11.240
<v Speaker 4>Never think about those boundaries anymore of like where else

557
00:26:11.319 --> 00:26:13.599
<v Speaker 4>this run and we just right it and then runs everywhere.

558
00:26:14.359 --> 00:26:16.960
<v Speaker 4>And for the deployment stories and all that, it's just

559
00:26:17.039 --> 00:26:20.359
<v Speaker 4>meant that our teams are just so productive because we

560
00:26:20.519 --> 00:26:22.160
<v Speaker 4>so we have the way we start to that it's

561
00:26:22.200 --> 00:26:23.960
<v Speaker 4>like we have a mobile team they work on really

562
00:26:24.039 --> 00:26:26.319
<v Speaker 4>native that's obviously very focused on mobile. We have a

563
00:26:26.319 --> 00:26:30.640
<v Speaker 4>desktop team. They've worked more like making like webuiyes that

564
00:26:30.680 --> 00:26:33.240
<v Speaker 4>you do more on thisktop through our run time and

565
00:26:33.279 --> 00:26:35.599
<v Speaker 4>then they all share this beare code that upsets for

566
00:26:35.680 --> 00:26:37.720
<v Speaker 4>a team does that enhances all the apps with all

567
00:26:37.720 --> 00:26:41.680
<v Speaker 4>the functionality, and that's like just the best kind of

568
00:26:41.720 --> 00:26:43.960
<v Speaker 4>app development I've ever seen. And that's that's really exciting

569
00:26:43.960 --> 00:26:45.759
<v Speaker 4>to me. And it's the first time I've seen just

570
00:26:45.880 --> 00:26:50.680
<v Speaker 4>like those two prongs just accelerating that way together as

571
00:26:50.720 --> 00:26:52.680
<v Speaker 4>one team basically, and I think that's that's the true

572
00:26:52.720 --> 00:26:56.200
<v Speaker 4>unlock and that's yeah. Again, it takes a little wrapping

573
00:26:56.200 --> 00:26:57.920
<v Speaker 4>your head around, but it's like it's it's.

574
00:26:57.759 --> 00:27:02.240
<v Speaker 1>Really yeah, it it feels a little bit to me

575
00:27:02.359 --> 00:27:05.359
<v Speaker 1>almost Like so people who listen to the show know

576
00:27:05.440 --> 00:27:08.920
<v Speaker 1>that I'm primarily actually a back end developer, and I'm

577
00:27:08.960 --> 00:27:11.519
<v Speaker 1>typically working in Ruby on rails and not on a

578
00:27:11.640 --> 00:27:16.720
<v Speaker 1>JavaScript back end. But in fact that's that's what I

579
00:27:16.720 --> 00:27:18.759
<v Speaker 1>I just got a new job working doing that for

580
00:27:18.839 --> 00:27:24.119
<v Speaker 1>price Picks. But what's interesting is with this is it

581
00:27:24.200 --> 00:27:28.119
<v Speaker 1>almost feels like you're shipping it with a highly performant,

582
00:27:28.160 --> 00:27:29.559
<v Speaker 1>localized back end.

583
00:27:29.839 --> 00:27:33.759
<v Speaker 4>Yeah, exactly, And and and the cool thing is that

584
00:27:33.799 --> 00:27:36.680
<v Speaker 4>then by shipping it together like you make these kind

585
00:27:36.720 --> 00:27:37.440
<v Speaker 4>of APIs.

586
00:27:37.480 --> 00:27:38.960
<v Speaker 3>But like obviously the latency.

587
00:27:38.640 --> 00:27:41.359
<v Speaker 4>Between your applications kind of like and this you know

588
00:27:41.440 --> 00:27:43.880
<v Speaker 4>threadie running to the worker and is basically non right,

589
00:27:43.920 --> 00:27:46.720
<v Speaker 4>it's kind of like it's the same device. So so

590
00:27:46.799 --> 00:27:50.119
<v Speaker 4>those kind of overheads disappear. It's very easy to integrate.

591
00:27:50.200 --> 00:27:53.200
<v Speaker 4>And again you get this like integration of all kinds

592
00:27:53.200 --> 00:27:55.880
<v Speaker 4>of native enhancements that you want to do for your apps,

593
00:27:55.920 --> 00:27:58.319
<v Speaker 4>and it's all through JavaScript and scenes plus plus because

594
00:27:58.319 --> 00:28:04.519
<v Speaker 4>that's what you write the bindings in. And yeah, it's like, uh,

595
00:28:04.960 --> 00:28:06.880
<v Speaker 4>you know, I don't want to come up too many examples,

596
00:28:06.880 --> 00:28:09.720
<v Speaker 4>but like for example before we so no, like it's

597
00:28:09.720 --> 00:28:11.359
<v Speaker 4>a very simple thing we do in our app is

598
00:28:11.400 --> 00:28:14.039
<v Speaker 4>like somebody shares a video and we want to generate

599
00:28:14.079 --> 00:28:16.480
<v Speaker 4>a preview of that that video, and we have that

600
00:28:16.519 --> 00:28:18.079
<v Speaker 4>in our desktop ap We have that in our mobile

601
00:28:18.079 --> 00:28:21.240
<v Speaker 4>app and our mobile to use a reagnative library.

602
00:28:20.880 --> 00:28:24.279
<v Speaker 3>And on desktop to use I think some video thing

603
00:28:24.319 --> 00:28:24.839
<v Speaker 3>and whatever.

604
00:28:26.480 --> 00:28:28.519
<v Speaker 4>And the problem we always had was like you know,

605
00:28:28.559 --> 00:28:30.160
<v Speaker 4>they would be a bog where mobile did it a

606
00:28:30.200 --> 00:28:32.599
<v Speaker 4>little bit differently than this stop because there was like

607
00:28:32.640 --> 00:28:35.920
<v Speaker 4>differences in the libraries and the and the stacks, and

608
00:28:35.960 --> 00:28:37.680
<v Speaker 4>it would always come back, and we'll always come back,

609
00:28:37.720 --> 00:28:39.079
<v Speaker 4>and we'll always come back. And now we moved it

610
00:28:39.240 --> 00:28:42.200
<v Speaker 4>just to like it's in the Bear worker. It's olympic.

611
00:28:42.279 --> 00:28:44.200
<v Speaker 4>It just takes it in. It produces the same thing

612
00:28:44.240 --> 00:28:47.119
<v Speaker 4>every time. It's exactly what we want. We tested on desktop,

613
00:28:47.119 --> 00:28:48.640
<v Speaker 4>it's one hundred percent the same thing on mobile.

614
00:28:48.680 --> 00:28:49.880
<v Speaker 3>We moved on. We never looked back.

615
00:28:51.160 --> 00:28:53.279
<v Speaker 4>So it's not even like that that you know, you know,

616
00:28:53.359 --> 00:28:55.559
<v Speaker 4>anything Reagnative is doing is wrong, or anything that that

617
00:28:55.640 --> 00:28:56.640
<v Speaker 4>desktop development is.

618
00:28:56.640 --> 00:28:58.279
<v Speaker 3>Doing wrong or backing development is doing wrong.

619
00:28:58.279 --> 00:29:01.039
<v Speaker 4>It's just that difference is low you down and they

620
00:29:01.039 --> 00:29:03.039
<v Speaker 4>don't need to and I think that's what's really exciting

621
00:29:03.039 --> 00:29:03.279
<v Speaker 4>for me.

622
00:29:04.920 --> 00:29:05.359
<v Speaker 2>Awesome.

623
00:29:05.839 --> 00:29:08.119
<v Speaker 1>So I want to talk a little bit about the

624
00:29:08.160 --> 00:29:10.519
<v Speaker 1>modules for a minute, because you did mention that you

625
00:29:10.599 --> 00:29:12.559
<v Speaker 1>can for example, no JS.

626
00:29:12.599 --> 00:29:13.240
<v Speaker 2>They use.

627
00:29:14.880 --> 00:29:18.039
<v Speaker 1>V eight, but they've added other things on right because

628
00:29:18.119 --> 00:29:21.200
<v Speaker 1>V eight was originally built for Chrome and so like

629
00:29:21.240 --> 00:29:23.799
<v Speaker 1>you said, like file system for example, like V eight

630
00:29:23.920 --> 00:29:27.319
<v Speaker 1>did not need that for your browser, and so you

631
00:29:27.319 --> 00:29:30.000
<v Speaker 1>know you've got these other things bolted in. So you

632
00:29:30.160 --> 00:29:32.720
<v Speaker 1>I'm assuming you just have modules for Bear that do

633
00:29:32.799 --> 00:29:33.599
<v Speaker 1>some of those things.

634
00:29:33.640 --> 00:29:33.839
<v Speaker 2>Then.

635
00:29:34.799 --> 00:29:38.400
<v Speaker 4>Yeah, so it's pretty crazy because when you do this

636
00:29:38.480 --> 00:29:40.559
<v Speaker 4>kind of like modulo development where you kind of split

637
00:29:40.599 --> 00:29:43.240
<v Speaker 4>things onto these like piece meals, like you know, say,

638
00:29:43.759 --> 00:29:45.720
<v Speaker 4>it's kind of like you can imagine like the tickets

639
00:29:45.720 --> 00:29:48.640
<v Speaker 4>and your ticket ticket tracker, like magfs module, make mag

640
00:29:48.720 --> 00:29:52.440
<v Speaker 4>module make it. Also, it's really easy to implement actually

641
00:29:52.480 --> 00:29:55.799
<v Speaker 4>because it comes so scoped. So our team was originally

642
00:29:55.839 --> 00:29:58.519
<v Speaker 4>just two people, now three people, and those two guys

643
00:29:58.599 --> 00:30:01.960
<v Speaker 4>just went through all libraries notes and just re implement

644
00:30:02.079 --> 00:30:04.000
<v Speaker 4>them as modules. So we actually have the entire note

645
00:30:04.160 --> 00:30:06.440
<v Speaker 4>is standard library just as modules you can pick from

646
00:30:06.440 --> 00:30:10.160
<v Speaker 4>the shelf and install. But again, you just the difference

647
00:30:10.200 --> 00:30:13.200
<v Speaker 4>is that if if you make another module, so let's

648
00:30:13.200 --> 00:30:15.559
<v Speaker 4>say you made a module that's like you know, read

649
00:30:15.599 --> 00:30:19.559
<v Speaker 4>some file and converted. Instead of you asking the run

650
00:30:19.599 --> 00:30:22.160
<v Speaker 4>time for FS, you just require FS and you install

651
00:30:22.200 --> 00:30:23.240
<v Speaker 4>it like you do any other module.

652
00:30:23.240 --> 00:30:24.160
<v Speaker 3>That's the only difference.

653
00:30:26.240 --> 00:30:29.279
<v Speaker 4>So then like the standard library you use is not

654
00:30:29.319 --> 00:30:32.680
<v Speaker 4>really standard library, but like you know, is basically just

655
00:30:32.759 --> 00:30:34.960
<v Speaker 4>the union of what your dependency issues.

656
00:30:36.119 --> 00:30:38.920
<v Speaker 3>So super flexible, super easy, and yeah, so we just

657
00:30:38.960 --> 00:30:39.680
<v Speaker 3>bang through all of it.

658
00:30:39.759 --> 00:30:41.680
<v Speaker 4>We have all the noe gs once, but then because

659
00:30:41.720 --> 00:30:43.839
<v Speaker 4>it's like there's no cost to adding anything. There's no

660
00:30:44.000 --> 00:30:47.119
<v Speaker 4>like committee where we have to discuss is this worth adding?

661
00:30:47.200 --> 00:30:48.480
<v Speaker 4>Is this like going to make it to blow it?

662
00:30:48.480 --> 00:30:50.079
<v Speaker 4>We just added because you can just choose not to

663
00:30:50.160 --> 00:30:52.279
<v Speaker 4>use it. We also added all kinds of our stuff,

664
00:30:52.319 --> 00:30:55.039
<v Speaker 4>so we have for example, like you know, database bindings

665
00:30:55.039 --> 00:30:56.960
<v Speaker 4>to rocks top if you like that, we use that

666
00:30:57.000 --> 00:30:58.559
<v Speaker 4>a lot boomed on.

667
00:30:58.680 --> 00:31:00.279
<v Speaker 3>You can just import us anything else.

668
00:31:00.759 --> 00:31:02.720
<v Speaker 4>I think we have some Bluetooth stuff now also, and

669
00:31:02.759 --> 00:31:04.759
<v Speaker 4>all the things, like all kinds of things. I know

670
00:31:05.400 --> 00:31:11.920
<v Speaker 4>we're working on some USB you know, interaction libraries also

671
00:31:11.920 --> 00:31:15.240
<v Speaker 4>with USB sticks and stuff. So because there's no now

672
00:31:15.319 --> 00:31:18.160
<v Speaker 4>that as soon as that cost goes away from maintainability

673
00:31:18.160 --> 00:31:22.240
<v Speaker 4>and stuff, it's just basically all of a sudden, by doing nothing,

674
00:31:22.279 --> 00:31:24.079
<v Speaker 4>you can do more, which I think is really.

675
00:31:24.359 --> 00:31:25.160
<v Speaker 3>The key to everything.

676
00:31:26.880 --> 00:31:28.880
<v Speaker 1>Yeah, I find I find that kind of interesting just

677
00:31:28.880 --> 00:31:32.799
<v Speaker 1>from the standpoint of you know, like I said, I

678
00:31:33.119 --> 00:31:35.559
<v Speaker 1>primarily do Ruby, but you also see it with Node

679
00:31:35.599 --> 00:31:37.279
<v Speaker 1>and butN and some of these other things where yeah,

680
00:31:37.319 --> 00:31:40.400
<v Speaker 1>they have a standard library. You know, whether they think

681
00:31:40.440 --> 00:31:42.680
<v Speaker 1>about it that way or not, you do you get

682
00:31:42.720 --> 00:31:46.119
<v Speaker 1>all this functionality in the language that they've added in

683
00:31:46.160 --> 00:31:50.559
<v Speaker 1>to make it useful. But yeah, when you start really

684
00:31:50.559 --> 00:31:53.319
<v Speaker 1>thinking about a standard library, especially when the standard library

685
00:31:53.319 --> 00:31:56.559
<v Speaker 1>gets large, then that then it's okay, how does this

686
00:31:56.640 --> 00:32:00.160
<v Speaker 1>interoperate with all eight zillion other things that the the

687
00:32:00.200 --> 00:32:06.119
<v Speaker 1>system does? You know, does it add overhead to installation

688
00:32:06.720 --> 00:32:10.000
<v Speaker 1>right to the app size? Does an ad overhead to

689
00:32:10.759 --> 00:32:14.240
<v Speaker 1>the you know, running things and doing things, and do.

690
00:32:14.160 --> 00:32:15.920
<v Speaker 2>I have to check this in order to run that?

691
00:32:16.079 --> 00:32:19.559
<v Speaker 1>And so yeah, you know, just having those you know,

692
00:32:19.400 --> 00:32:22.599
<v Speaker 1>you still do that with I'm sure with your modules.

693
00:32:22.599 --> 00:32:23.640
<v Speaker 2>But the difference is is.

694
00:32:23.599 --> 00:32:27.160
<v Speaker 1>That I'm only pulling in the handful of things that

695
00:32:27.200 --> 00:32:28.720
<v Speaker 1>I need, and so those are the only things I

696
00:32:28.720 --> 00:32:31.119
<v Speaker 1>really have to worry about. And then it keeps my

697
00:32:31.200 --> 00:32:34.160
<v Speaker 1>app size small right when it bundles the app and

698
00:32:34.200 --> 00:32:38.319
<v Speaker 1>all those things, And so I can imagine that, Yeah,

699
00:32:38.359 --> 00:32:43.000
<v Speaker 1>that it definitely has its payoffs. And to me at least,

700
00:32:43.039 --> 00:32:45.200
<v Speaker 1>the thing that stands out here is what we're discussing

701
00:32:45.319 --> 00:32:46.799
<v Speaker 1>is not should you.

702
00:32:46.960 --> 00:32:49.240
<v Speaker 2>Use bear all the time?

703
00:32:49.440 --> 00:32:53.039
<v Speaker 1>It's hey, where does this really come in and brings

704
00:32:53.200 --> 00:32:57.240
<v Speaker 1>a host of benefits and where maybe you still want

705
00:32:57.279 --> 00:33:01.759
<v Speaker 1>to use node or bun or something else that kind

706
00:33:01.759 --> 00:33:04.039
<v Speaker 1>of has the fully functional thing or in the case

707
00:33:04.079 --> 00:33:06.240
<v Speaker 1>of like React Native, right, You're you're going to do

708
00:33:06.279 --> 00:33:08.839
<v Speaker 1>a whole bunch of the UI stuff in React Native,

709
00:33:09.319 --> 00:33:11.440
<v Speaker 1>and then you're going to hand off the things that

710
00:33:11.519 --> 00:33:14.680
<v Speaker 1>make sense to to pair or to bear sorry, and

711
00:33:14.720 --> 00:33:17.759
<v Speaker 1>then you're you're also probably going to be working through

712
00:33:17.799 --> 00:33:19.720
<v Speaker 1>some of like the API calls and stuff that you

713
00:33:19.720 --> 00:33:22.839
<v Speaker 1>typically do on a mobile app anyway, and probably keep

714
00:33:22.880 --> 00:33:24.799
<v Speaker 1>all of that and React Native and so as it

715
00:33:24.799 --> 00:33:25.960
<v Speaker 1>comes together, it makes sense.

716
00:33:27.240 --> 00:33:27.839
<v Speaker 3>Yeah, exactly.

717
00:33:27.880 --> 00:33:30.480
<v Speaker 4>And I think actually it's interesting to think about you

718
00:33:30.480 --> 00:33:33.680
<v Speaker 4>said read Native. I think UI development it's almost like

719
00:33:33.720 --> 00:33:34.960
<v Speaker 4>the complete opposite of what I said.

720
00:33:35.000 --> 00:33:36.279
<v Speaker 3>I think in the UI development you want to.

721
00:33:36.279 --> 00:33:38.000
<v Speaker 4>Have a lot of stuff being given to you because

722
00:33:38.200 --> 00:33:41.839
<v Speaker 4>UI is really stateful by the time, like you know

723
00:33:41.960 --> 00:33:44.480
<v Speaker 4>that spots and stuff. You want to not style those.

724
00:33:44.599 --> 00:33:46.720
<v Speaker 4>You know, you want things to look based on the device.

725
00:33:46.759 --> 00:33:48.119
<v Speaker 4>You want to have that give into you. It's a

726
00:33:48.119 --> 00:33:52.359
<v Speaker 4>whole different thing. But this this model really really shines

727
00:33:52.440 --> 00:33:54.880
<v Speaker 4>for like, like you said, classic bag and development. It

728
00:33:54.920 --> 00:33:56.720
<v Speaker 4>shows that we do we don't We kind of like

729
00:33:57.000 --> 00:33:58.480
<v Speaker 4>just want to get a bit of the definition of

730
00:33:58.480 --> 00:34:00.480
<v Speaker 4>BAG in development just say, well, it's like a worker.

731
00:34:00.519 --> 00:34:06.079
<v Speaker 4>It's like how you do your application logic always something

732
00:34:06.160 --> 00:34:09.679
<v Speaker 4>interesting about thinking about Chrome, Like you said, they're also

733
00:34:09.719 --> 00:34:11.840
<v Speaker 4>I think because Chrome to some degree does the same thing,

734
00:34:11.920 --> 00:34:14.480
<v Speaker 4>right because Chrome, sure ships will wear part to see

735
00:34:14.480 --> 00:34:16.480
<v Speaker 4>in these things, but the ship it's pretty minimal. Still

736
00:34:16.519 --> 00:34:18.360
<v Speaker 4>like there's some stuff in there, but it's pretty minimal.

737
00:34:18.400 --> 00:34:20.840
<v Speaker 4>It's very like it doesn't change a lot. It's a

738
00:34:20.840 --> 00:34:21.840
<v Speaker 4>big process to change it.

739
00:34:23.920 --> 00:34:24.239
<v Speaker 3>When you.

740
00:34:27.400 --> 00:34:30.960
<v Speaker 4>Update your browser, Chrome doesn't ask you, It just updates it.

741
00:34:31.519 --> 00:34:34.519
<v Speaker 4>Because Chrome comes with it comes with a guarantee that

742
00:34:34.519 --> 00:34:37.679
<v Speaker 4>that doesn't matter. They're not going to break things going forward.

743
00:34:38.280 --> 00:34:41.159
<v Speaker 4>The reason they can do that is because of that contract.

744
00:34:42.320 --> 00:34:44.800
<v Speaker 4>Ask anybody who has ever upgraded on no jazz per program,

745
00:34:44.880 --> 00:34:46.360
<v Speaker 4>and again this is not your no jets at fault.

746
00:34:46.360 --> 00:34:49.360
<v Speaker 4>It's just like something that happens for software. That's every

747
00:34:49.360 --> 00:34:52.199
<v Speaker 4>time you upgrade a major is like incredibly anxious because

748
00:34:52.199 --> 00:34:56.119
<v Speaker 4>you're like, you know, it's probably gonna break at that

749
00:34:56.199 --> 00:34:59.639
<v Speaker 4>worst possible time because something that that API I used

750
00:34:59.639 --> 00:35:04.079
<v Speaker 4>has change slightly. Right if you instead say, well, the

751
00:35:04.159 --> 00:35:07.239
<v Speaker 4>run time's come with nothing, it's free jog wade because

752
00:35:07.239 --> 00:35:08.400
<v Speaker 4>it's the same as the comium.

753
00:35:08.400 --> 00:35:09.440
<v Speaker 3>It's never going to break anything.

754
00:35:10.039 --> 00:35:14.079
<v Speaker 4>So we aggressively upgrade our bare run time every day

755
00:35:14.599 --> 00:35:16.400
<v Speaker 4>just to get that latest V eight, get those latest

756
00:35:16.440 --> 00:35:18.880
<v Speaker 4>things in because those guys are insane, they're shipping things

757
00:35:18.920 --> 00:35:21.079
<v Speaker 4>all the time. So we are always on the latest,

758
00:35:21.159 --> 00:35:22.840
<v Speaker 4>latest V eight because there's no cost to that. It's

759
00:35:22.840 --> 00:35:25.039
<v Speaker 4>not going to break anything like those they have contract

760
00:35:25.119 --> 00:35:31.440
<v Speaker 4>nailed down. That just means that you can again also

761
00:35:31.519 --> 00:35:33.440
<v Speaker 4>just ship things fast to iterate fast, so you're not

762
00:35:33.480 --> 00:35:36.079
<v Speaker 4>stuck in that upgrade anxiety. You can kind of park

763
00:35:36.159 --> 00:35:38.920
<v Speaker 4>old code just as being old and just bump those majors.

764
00:35:38.920 --> 00:35:40.199
<v Speaker 4>So if we want to, if we want to make

765
00:35:40.199 --> 00:35:42.760
<v Speaker 4>a better design for fast systems like only support promises,

766
00:35:42.800 --> 00:35:46.760
<v Speaker 4>we just do that. We don't think about it. Uh

767
00:35:46.840 --> 00:35:48.920
<v Speaker 4>and and just and just finally, like you said there, Yeah,

768
00:35:48.920 --> 00:35:50.760
<v Speaker 4>I'm a big you know again, big fan of no js,

769
00:35:50.800 --> 00:35:52.559
<v Speaker 4>A right tons of no js. I think no JAZ

770
00:35:52.679 --> 00:35:55.199
<v Speaker 4>has a big place in the world always. I haven't

771
00:35:55.239 --> 00:35:57.639
<v Speaker 4>used much of JR ones because I'm I'm a classic person,

772
00:36:00.280 --> 00:36:03.039
<v Speaker 4>but I do think, like even saying that, I think

773
00:36:03.119 --> 00:36:04.360
<v Speaker 4>the entire in.

774
00:36:04.320 --> 00:36:05.239
<v Speaker 3>My opinion.

775
00:36:06.719 --> 00:36:09.239
<v Speaker 4>Back in development can't go towards this like small core model.

776
00:36:09.239 --> 00:36:10.800
<v Speaker 4>I think that is the future. It's a little bit

777
00:36:10.800 --> 00:36:13.719
<v Speaker 4>harder to market it's harder to talk about, but the

778
00:36:13.760 --> 00:36:17.320
<v Speaker 4>benefits just greatly outweigh the disciplines.

779
00:36:18.880 --> 00:36:19.079
<v Speaker 2>Right.

780
00:36:19.880 --> 00:36:23.719
<v Speaker 1>So you we've kind of talked about mobile, and I

781
00:36:23.760 --> 00:36:26.719
<v Speaker 1>think that back end story is pretty well understood because

782
00:36:27.800 --> 00:36:29.679
<v Speaker 1>you know, if you're writing note or something else for

783
00:36:29.719 --> 00:36:33.400
<v Speaker 1>your back end, you know that this can sit in there,

784
00:36:33.840 --> 00:36:38.480
<v Speaker 1>next to it, or in place of it. My question

785
00:36:38.559 --> 00:36:41.000
<v Speaker 1>is you also mentioned desktop, So what does this look

786
00:36:41.079 --> 00:36:41.840
<v Speaker 1>like on the desktop.

787
00:36:43.159 --> 00:36:45.239
<v Speaker 4>So, so the cool thing is it's the code always

788
00:36:45.239 --> 00:36:47.039
<v Speaker 4>looks the same because it's just Bear code we have

789
00:36:47.119 --> 00:36:49.519
<v Speaker 4>on desktop. We have and if you go to our

790
00:36:49.559 --> 00:36:54.800
<v Speaker 4>website bearpairs dot com, we have an installable CLI. That

791
00:36:54.880 --> 00:36:58.880
<v Speaker 4>installable c cli is actually just our compilation of bears

792
00:36:59.039 --> 00:37:02.000
<v Speaker 4>is just like a basically kind of like as minimum

793
00:37:02.039 --> 00:37:03.440
<v Speaker 4>of a bill of v age you can get with

794
00:37:03.559 --> 00:37:04.440
<v Speaker 4>this module system.

795
00:37:04.840 --> 00:37:05.719
<v Speaker 3>So that's the Bear thing.

796
00:37:06.199 --> 00:37:08.960
<v Speaker 2>And Bear is b A R E like naked, not

797
00:37:09.159 --> 00:37:10.079
<v Speaker 2>b E a R like.

798
00:37:10.679 --> 00:37:12.280
<v Speaker 3>Somebody called it the bear naked one time.

799
00:37:12.280 --> 00:37:12.840
<v Speaker 1>I kind of like that.

800
00:37:17.320 --> 00:37:24.559
<v Speaker 4>So, and our logo is a bear like a ror

801
00:37:24.679 --> 00:37:26.679
<v Speaker 4>or bear. Just to make everything more confusing, we like

802
00:37:26.719 --> 00:37:31.559
<v Speaker 4>we like to to be smart ass. So you stall

803
00:37:31.599 --> 00:37:33.679
<v Speaker 4>that one again, you just you can just install it

804
00:37:33.679 --> 00:37:35.360
<v Speaker 4>every day, get the neatest one because nothing will ever

805
00:37:35.400 --> 00:37:40.320
<v Speaker 4>break and it's really good, really powerful. And the cool

806
00:37:40.360 --> 00:37:42.599
<v Speaker 4>thing is then if when you want to like package

807
00:37:42.599 --> 00:37:46.119
<v Speaker 4>your app, because this is all self contained like that,

808
00:37:46.159 --> 00:37:50.159
<v Speaker 4>you can you can even do stuff like compile it,

809
00:37:50.320 --> 00:37:53.159
<v Speaker 4>compile this into a single binary because when there's no

810
00:37:53.159 --> 00:37:55.079
<v Speaker 4>standard library and there's nothing in that.

811
00:37:55.079 --> 00:37:55.760
<v Speaker 3>Becomes really easy.

812
00:37:55.760 --> 00:37:57.519
<v Speaker 4>If we have some examples and that on the website

813
00:37:57.920 --> 00:38:00.400
<v Speaker 4>for how to to compile it yourself. Just get a

814
00:38:00.400 --> 00:38:02.079
<v Speaker 4>binary art like you would go so you can have

815
00:38:02.119 --> 00:38:06.760
<v Speaker 4>your entire program and one thing, or you can embed

816
00:38:06.840 --> 00:38:08.800
<v Speaker 4>it in other things. For our peer to peer run

817
00:38:08.880 --> 00:38:12.599
<v Speaker 4>time pair, we actually ship our version of pair which

818
00:38:12.679 --> 00:38:14.880
<v Speaker 4>is just the same thing just embedded into another thing,

819
00:38:14.880 --> 00:38:16.840
<v Speaker 4>because you don't want to ship like many binaries that

820
00:38:16.840 --> 00:38:20.400
<v Speaker 4>it's really hard, and that just becomes really easy, and

821
00:38:20.440 --> 00:38:23.679
<v Speaker 4>you can even do things like so it's like it's minimal.

822
00:38:23.719 --> 00:38:25.519
<v Speaker 4>It doesn't support typescript because of minimal, but you can

823
00:38:25.559 --> 00:38:28.119
<v Speaker 4>easily just go in and make your own distribution that

824
00:38:28.199 --> 00:38:30.840
<v Speaker 4>just supports typescript by adding that in into the into

825
00:38:30.880 --> 00:38:35.679
<v Speaker 4>the into the thing. So it's really really flexible and

826
00:38:36.239 --> 00:38:37.679
<v Speaker 4>it sounds really good, and it sounds too good.

827
00:38:37.679 --> 00:38:38.159
<v Speaker 3>To be true.

828
00:38:38.400 --> 00:38:40.440
<v Speaker 4>The only reason is too good. Only reason that that

829
00:38:40.519 --> 00:38:42.159
<v Speaker 4>is the case is because it does nothing. So it's

830
00:38:42.239 --> 00:38:44.440
<v Speaker 4>very to support all the things when we do nothing,

831
00:38:44.760 --> 00:38:48.039
<v Speaker 4>it's very hard to do anything, do anything. Just all

832
00:38:48.079 --> 00:38:50.480
<v Speaker 4>at least to do is support those like what you're loading,

833
00:38:50.760 --> 00:38:52.559
<v Speaker 4>which is again is a hard problem, but at least

834
00:38:52.599 --> 00:38:55.800
<v Speaker 4>it's like much easier than doing all kinds.

835
00:38:55.639 --> 00:38:59.800
<v Speaker 1>Of Right, So if if I were to I guess

836
00:38:59.840 --> 00:39:03.000
<v Speaker 1>the question I'm wondering about, because yeah, it sounds like

837
00:39:03.039 --> 00:39:05.440
<v Speaker 1>you distribute it mostly the same way. Right, you embed

838
00:39:05.480 --> 00:39:08.400
<v Speaker 1>the run time in whatever it is you're shipping, and

839
00:39:08.440 --> 00:39:09.800
<v Speaker 1>then it right.

840
00:39:09.679 --> 00:39:13.400
<v Speaker 2>It just runs, it does what it does, or it does.

841
00:39:13.239 --> 00:39:15.480
<v Speaker 1>What you loaded in on a module and then called

842
00:39:16.960 --> 00:39:20.840
<v Speaker 1>so on a desktop app, what what kind of UIs

843
00:39:20.880 --> 00:39:21.920
<v Speaker 1>can people put on it?

844
00:39:21.960 --> 00:39:25.599
<v Speaker 2>Because sure, I mean yeah, so.

845
00:39:25.960 --> 00:39:27.639
<v Speaker 4>On a desktop ap if you want. It's kind of

846
00:39:27.679 --> 00:39:29.920
<v Speaker 4>like the same story on desktop in general. As like

847
00:39:29.960 --> 00:39:31.559
<v Speaker 4>something like no, it's like it's not it's not a

848
00:39:31.639 --> 00:39:33.599
<v Speaker 4>r I framework. You can we actually have a native

849
00:39:33.599 --> 00:39:36.599
<v Speaker 4>EI framework we build that just binds to like native UI,

850
00:39:37.119 --> 00:39:38.920
<v Speaker 4>but our just to do an experiment. It's not something

851
00:39:38.920 --> 00:39:40.800
<v Speaker 4>people should do just to see. Can you actually make

852
00:39:40.920 --> 00:39:47.440
<v Speaker 4>adiplication that just would load things, so you would if

853
00:39:47.440 --> 00:39:49.079
<v Speaker 4>you wanted to make like an actual desktop app, you

854
00:39:49.079 --> 00:39:52.039
<v Speaker 4>would probably use our Pair framework for making Peter peer

855
00:39:52.039 --> 00:39:53.880
<v Speaker 4>apps because that's actually what it does. It actually just

856
00:39:53.880 --> 00:39:59.559
<v Speaker 4>embeds bear as UI libraries and uses bare to load.

857
00:39:59.400 --> 00:40:00.920
<v Speaker 3>Peter Pier things. But you can do whatever you want.

858
00:40:02.119 --> 00:40:04.639
<v Speaker 4>It's basically similar in a flow to like making an

859
00:40:04.679 --> 00:40:06.719
<v Speaker 4>electron app if if you know that, but you can

860
00:40:06.719 --> 00:40:09.239
<v Speaker 4>also make native apps with that. You can also do

861
00:40:09.280 --> 00:40:11.000
<v Speaker 4>the same tricks. I don't know if our tooling works

862
00:40:11.000 --> 00:40:13.159
<v Speaker 4>with yet, but that's definitely on our roadmap to do

863
00:40:13.280 --> 00:40:16.519
<v Speaker 4>like a desktop rag native app that uses Bair. Also,

864
00:40:16.559 --> 00:40:18.480
<v Speaker 4>like we wanted to, it's very easy to invest if

865
00:40:18.480 --> 00:40:20.760
<v Speaker 4>we want to embed it everywhere. Like I said, we

866
00:40:20.800 --> 00:40:24.000
<v Speaker 4>launched it last week, right, so so we have a

867
00:40:24.039 --> 00:40:27.239
<v Speaker 4>long road map. But again by doing very little, we

868
00:40:27.280 --> 00:40:28.519
<v Speaker 4>have a lot of time to do a lot of

869
00:40:28.519 --> 00:40:31.199
<v Speaker 4>other stuff. And like this project is moving crazy fast

870
00:40:31.199 --> 00:40:33.000
<v Speaker 4>every day, so it's super cool.

871
00:40:34.440 --> 00:40:39.000
<v Speaker 1>Right So I can install Pair and it has UI

872
00:40:39.079 --> 00:40:41.199
<v Speaker 1>libraries that I can use that probably what do they

873
00:40:41.239 --> 00:40:42.519
<v Speaker 1>bind into native?

874
00:40:44.519 --> 00:40:47.159
<v Speaker 4>They do so you can bin into anything if you

875
00:40:47.199 --> 00:40:49.719
<v Speaker 4>wanted to. For modules, the modules we have right now

876
00:40:49.800 --> 00:40:52.719
<v Speaker 4>just because that's easy, Like, so it's kind of like

877
00:40:52.719 --> 00:40:53.960
<v Speaker 4>an electron like experience.

878
00:40:54.079 --> 00:40:56.239
<v Speaker 2>I got you. So I can bind to Nome or Katie.

879
00:40:56.719 --> 00:40:58.159
<v Speaker 2>For Linux, I can bind too.

880
00:40:58.440 --> 00:41:03.519
<v Speaker 3>I don't think there is binding for mac os exactly,

881
00:41:04.960 --> 00:41:05.960
<v Speaker 3>and like.

882
00:41:05.920 --> 00:41:08.039
<v Speaker 4>Probably a lot of those bindings have to be made

883
00:41:08.159 --> 00:41:10.199
<v Speaker 4>for Bear like I like you have to make like Gluco.

884
00:41:10.320 --> 00:41:11.280
<v Speaker 3>That's something we're working on.

885
00:41:11.360 --> 00:41:14.639
<v Speaker 4>But like the program myself supports that we have something

886
00:41:14.639 --> 00:41:17.480
<v Speaker 4>that the loads like just an electronic review because that's

887
00:41:17.559 --> 00:41:18.480
<v Speaker 4>easy and that's what.

888
00:41:18.880 --> 00:41:22.039
<v Speaker 1>Okay, that makes sense, and so then it plays the

889
00:41:22.119 --> 00:41:25.000
<v Speaker 1>role of the back end for the electron exactly happen

890
00:41:25.119 --> 00:41:25.880
<v Speaker 1>kind of the same way.

891
00:41:26.000 --> 00:41:27.000
<v Speaker 3>That makes sense exactly.

892
00:41:27.679 --> 00:41:30.199
<v Speaker 4>But we want to take this to the full scale,

893
00:41:30.360 --> 00:41:33.960
<v Speaker 4>like you know, either write those bindings ourselves or the

894
00:41:33.960 --> 00:41:36.760
<v Speaker 4>community can do it. But the foundations is there for now,

895
00:41:36.800 --> 00:41:41.000
<v Speaker 4>and I think, uh, like I said in the beginning,

896
00:41:41.000 --> 00:41:43.400
<v Speaker 4>I think for me, like the most exciting future for

897
00:41:43.639 --> 00:41:46.360
<v Speaker 4>JavaScript in general is like actually that it doesn't really

898
00:41:46.440 --> 00:41:48.400
<v Speaker 4>run the UI anymore, but it just runs all.

899
00:41:48.280 --> 00:41:48.719
<v Speaker 3>The bag ends.

900
00:41:48.760 --> 00:41:53.119
<v Speaker 4>Because I think that's for JavaScript ironically really shines. It's

901
00:41:53.159 --> 00:41:55.119
<v Speaker 4>also good for front end, but it's especially good for.

902
00:41:55.000 --> 00:42:00.199
<v Speaker 1>BEG yeah, it kind of started out doing the front

903
00:42:00.280 --> 00:42:04.719
<v Speaker 1>end work, but it was almost a utility to make

904
00:42:04.760 --> 00:42:07.840
<v Speaker 1>the front end do what you wanted. And so yeah,

905
00:42:07.840 --> 00:42:09.400
<v Speaker 1>I can kind of see that and I can definitely

906
00:42:09.400 --> 00:42:14.280
<v Speaker 1>see where it shines on the back end. So so

907
00:42:14.280 --> 00:42:16.280
<v Speaker 1>so what's next for for bear.

908
00:42:18.360 --> 00:42:20.840
<v Speaker 4>Just honestly, just let me just turn on the light

909
00:42:20.880 --> 00:42:23.239
<v Speaker 4>you because see it gets come and the mind.

910
00:42:23.039 --> 00:42:30.800
<v Speaker 3>And gets.

911
00:42:28.760 --> 00:42:31.880
<v Speaker 4>So next for us is it's actually really simple because

912
00:42:32.079 --> 00:42:34.079
<v Speaker 4>we have the the API now right.

913
00:42:33.960 --> 00:42:34.920
<v Speaker 3>It is the module system.

914
00:42:35.039 --> 00:42:37.679
<v Speaker 4>So for us, every time we shift something, we're just

915
00:42:37.679 --> 00:42:42.360
<v Speaker 4>making it faster and better, making more modules. For example,

916
00:42:42.400 --> 00:42:45.920
<v Speaker 4>I think a really cool success. Sorry to how to

917
00:42:46.000 --> 00:42:48.360
<v Speaker 4>under stand this stuff is like this is a little

918
00:42:48.360 --> 00:42:50.840
<v Speaker 4>bit nerdy maybe, but like when you write things like

919
00:42:50.960 --> 00:42:53.639
<v Speaker 4>native add ons in with V eight and we use

920
00:42:53.880 --> 00:42:56.000
<v Speaker 4>VA mostly. Again, we can run on any engine, but

921
00:42:56.039 --> 00:42:57.480
<v Speaker 4>we'd like to use the eight because it's just a

922
00:42:57.480 --> 00:43:01.800
<v Speaker 4>good engine. For sample, if you wanted to do some cryptography,

923
00:43:01.880 --> 00:43:05.079
<v Speaker 4>you usually make bindings for a cryptolibrary because you don't

924
00:43:05.079 --> 00:43:08.280
<v Speaker 4>want to do that JavaScript you call. Those people don't

925
00:43:08.280 --> 00:43:11.159
<v Speaker 4>realize that calling from JavaScript normally in these engines into

926
00:43:11.199 --> 00:43:13.360
<v Speaker 4>like a native library has a cost, Like there's a

927
00:43:13.360 --> 00:43:16.000
<v Speaker 4>transaction cost here because it has to Google between engines,

928
00:43:17.639 --> 00:43:21.800
<v Speaker 4>and that cost means that it's actually harder to program

929
00:43:21.880 --> 00:43:23.639
<v Speaker 4>for it, because it means that native code you call

930
00:43:23.719 --> 00:43:25.239
<v Speaker 4>has to do more stuff to be worth it.

931
00:43:25.280 --> 00:43:27.480
<v Speaker 3>So if like you can imagine if you just made a.

932
00:43:27.440 --> 00:43:31.000
<v Speaker 4>C program that just added two numbers, if that cost

933
00:43:31.400 --> 00:43:33.119
<v Speaker 4>is high, then it's not worth it, and then you're like,

934
00:43:33.159 --> 00:43:36.079
<v Speaker 4>I need to do more. I don't like those limitations

935
00:43:36.119 --> 00:43:39.039
<v Speaker 4>because it messes with how you think about programming. It's

936
00:43:39.119 --> 00:43:45.800
<v Speaker 4>like you have like premature opianizations stuff. The engine that

937
00:43:45.880 --> 00:43:49.400
<v Speaker 4>Google makes made a really cool solution for this called

938
00:43:49.639 --> 00:43:51.760
<v Speaker 4>fast calls, which is like they have this API where

939
00:43:51.840 --> 00:43:55.800
<v Speaker 4>you can do some native stuff and.

940
00:43:54.400 --> 00:43:57.599
<v Speaker 3>Then you can actually make this basically free. That was

941
00:43:57.679 --> 00:43:58.639
<v Speaker 3>very recently added.

942
00:43:59.320 --> 00:44:03.920
<v Speaker 4>But because Bear does nothing else except this, the guys

943
00:44:03.960 --> 00:44:06.239
<v Speaker 4>just decided to let's just write buying for this next

944
00:44:06.239 --> 00:44:09.280
<v Speaker 4>post that through the module system, because again it's like

945
00:44:09.320 --> 00:44:11.159
<v Speaker 4>super flexible, you can do it. And we just added

946
00:44:11.199 --> 00:44:14.679
<v Speaker 4>that and that was all the in our app key,

947
00:44:14.800 --> 00:44:16.639
<v Speaker 4>which is like using a bunch of these calls to

948
00:44:16.639 --> 00:44:19.280
<v Speaker 4>do ciography because Pewter pew uses a lot of photography,

949
00:44:19.920 --> 00:44:21.679
<v Speaker 4>Like all those calls became I think it was like

950
00:44:21.719 --> 00:44:24.039
<v Speaker 4>the three X faster, but just like you know, shipping

951
00:44:24.039 --> 00:44:26.880
<v Speaker 4>that one pathing, like no code changed, right, just like

952
00:44:27.519 --> 00:44:30.039
<v Speaker 4>because the guys can just focus on this engine part.

953
00:44:30.519 --> 00:44:33.000
<v Speaker 4>Every time you make the engine faster, everything becomes faster.

954
00:44:33.639 --> 00:44:36.800
<v Speaker 4>So so for us, it's just about iterating even more

955
00:44:36.800 --> 00:44:39.159
<v Speaker 4>and more of that stuff, like pushing all those bits

956
00:44:39.159 --> 00:44:41.519
<v Speaker 4>out of these engines to make everything as fast as possible,

957
00:44:41.559 --> 00:44:44.360
<v Speaker 4>stay on the very late as eights and then just

958
00:44:44.480 --> 00:44:48.079
<v Speaker 4>like like I said before, expanding the module scope so

959
00:44:48.119 --> 00:44:50.000
<v Speaker 4>we have more and more modules. We want to basically

960
00:44:50.000 --> 00:44:53.400
<v Speaker 4>bind to everything we want to get like bindings for

961
00:44:53.400 --> 00:44:56.320
<v Speaker 4>for like all those like cool eye libraryes you just mentioned.

962
00:44:56.360 --> 00:44:58.079
<v Speaker 4>That's the cool project. We want to get that done

963
00:44:58.679 --> 00:45:01.360
<v Speaker 4>and just help people build, then help people expand, and

964
00:45:01.400 --> 00:45:05.519
<v Speaker 4>also at the same time like uh yeah, just make

965
00:45:05.559 --> 00:45:08.039
<v Speaker 4>it run. And then we're very very serious abound actually

966
00:45:08.079 --> 00:45:09.960
<v Speaker 4>deploying the stuff like two light bulbs and stuff in

967
00:45:10.000 --> 00:45:12.239
<v Speaker 4>the future. I think that's like you know, we do

968
00:45:12.320 --> 00:45:15.039
<v Speaker 4>peer to peer and peter peer means like connecting things directly.

969
00:45:15.159 --> 00:45:17.440
<v Speaker 4>If you think about like smart homes and stuff like that.

970
00:45:17.320 --> 00:45:20.119
<v Speaker 4>That's where that stuff is brilliant because you don't want

971
00:45:20.159 --> 00:45:22.960
<v Speaker 4>to send all the data to Google or whatever, so

972
00:45:23.079 --> 00:45:25.719
<v Speaker 4>running out and all your devices Peter peer stack. That's

973
00:45:25.840 --> 00:45:28.960
<v Speaker 4>like the perfect worldface. So so we're pushing in all

974
00:45:29.000 --> 00:45:33.079
<v Speaker 4>consideraction on this. But it's just really easy because it's

975
00:45:33.119 --> 00:45:34.280
<v Speaker 4>it's so coop.

976
00:45:34.519 --> 00:45:41.519
<v Speaker 1>So it's awesome, Right, I had another question, but I

977
00:45:41.559 --> 00:45:44.480
<v Speaker 1>get so tied into what what do you do with this?

978
00:45:45.280 --> 00:45:46.519
<v Speaker 2>I forgot where it was going with it.

979
00:45:47.760 --> 00:45:50.920
<v Speaker 1>You said, hey, you can pull in these modules typically

980
00:45:51.000 --> 00:45:52.880
<v Speaker 1>have to do like an NPM install in order to

981
00:45:52.920 --> 00:45:55.440
<v Speaker 1>get those things. And you said that you can use

982
00:45:55.559 --> 00:45:58.960
<v Speaker 1>NPM to get some of them, but for sort of

983
00:45:58.960 --> 00:46:04.119
<v Speaker 1>the fundamental modules that kind of do the basic stuff,

984
00:46:04.159 --> 00:46:08.159
<v Speaker 1>like the node level stuff, right, the file system, you know,

985
00:46:08.800 --> 00:46:11.880
<v Speaker 1>whatever other things it has to do. How do those

986
00:46:11.920 --> 00:46:13.760
<v Speaker 1>come in? Do you have a separate app store or

987
00:46:13.840 --> 00:46:16.519
<v Speaker 1>they just you pull them in via NPM? Is there

988
00:46:16.519 --> 00:46:17.440
<v Speaker 1>some other way or what?

989
00:46:18.440 --> 00:46:21.719
<v Speaker 4>So, because we just so our module system again, I

990
00:46:21.719 --> 00:46:23.480
<v Speaker 4>don't want to get tunerated, but our module system just

991
00:46:23.480 --> 00:46:27.880
<v Speaker 4>follows the same contracts as the no modules. Because there's

992
00:46:27.880 --> 00:46:30.960
<v Speaker 4>so many no modules, right, it's like amazing. It's I

993
00:46:30.960 --> 00:46:32.440
<v Speaker 4>don't know if it is the biggest, but at least

994
00:46:32.440 --> 00:46:35.360
<v Speaker 4>it's one of the biggest ecosystems and modules. So we decided,

995
00:46:35.400 --> 00:46:40.559
<v Speaker 4>like why why we relivent that it's perfect or at

996
00:46:40.599 --> 00:46:43.119
<v Speaker 4>least like the things that are not perfect. It's like Liverpool,

997
00:46:43.800 --> 00:46:45.679
<v Speaker 4>So we just replemented the same thing, which means that

998
00:46:46.760 --> 00:46:49.599
<v Speaker 4>if you install something from an MPM it normally works.

999
00:46:49.639 --> 00:46:51.280
<v Speaker 3>The only real time it doesn't work.

1000
00:46:51.199 --> 00:46:54.039
<v Speaker 4>Is if it's like if that module is obviously requiring

1001
00:46:54.039 --> 00:46:54.880
<v Speaker 4>like the standard.

1002
00:46:54.599 --> 00:46:58.039
<v Speaker 3>Library like FS. But then you can we have this

1003
00:46:58.079 --> 00:46:58.599
<v Speaker 3>on our website.

1004
00:46:58.639 --> 00:47:02.280
<v Speaker 4>You can use a trick to have MPM map FS

1005
00:47:02.519 --> 00:47:05.159
<v Speaker 4>to our FS which is compatible on APIs right now,

1006
00:47:05.760 --> 00:47:08.760
<v Speaker 4>and then you can make things work. So our website

1007
00:47:08.840 --> 00:47:15.000
<v Speaker 4>has a list of all of our mirrored packages of

1008
00:47:15.039 --> 00:47:17.119
<v Speaker 4>standard libraries like you know f S and Node means

1009
00:47:17.159 --> 00:47:19.760
<v Speaker 4>disn't bear, but it's all just MPM modules. You just

1010
00:47:19.760 --> 00:47:22.119
<v Speaker 4>install them from MPM. You would add them to your

1011
00:47:22.119 --> 00:47:25.719
<v Speaker 4>package Jason. And then I think a really cool thing

1012
00:47:26.360 --> 00:47:29.920
<v Speaker 4>is that I think this is an AGMAS standard, but

1013
00:47:29.960 --> 00:47:31.840
<v Speaker 4>I'm not sure, but like the important map stuff in

1014
00:47:31.880 --> 00:47:34.320
<v Speaker 4>Node recently in package Jason, where you can kind of

1015
00:47:34.320 --> 00:47:37.039
<v Speaker 4>like describe I think this was added for Barser's originally,

1016
00:47:37.079 --> 00:47:39.639
<v Speaker 4>so we can say in this environment, load this packages

1017
00:47:39.679 --> 00:47:43.440
<v Speaker 4>and stuff like that that makes engineering for multiple run

1018
00:47:43.480 --> 00:47:47.159
<v Speaker 4>times really easy with NPM. And also note just so

1019
00:47:47.199 --> 00:47:50.760
<v Speaker 4>you can really easily describe in bear when loading this

1020
00:47:50.800 --> 00:47:53.960
<v Speaker 4>thing from bear load bear fs, but in nodeload fs,

1021
00:47:53.960 --> 00:47:57.760
<v Speaker 4>and then your program just becomes very runtime neutral, which

1022
00:47:57.800 --> 00:47:59.719
<v Speaker 4>is at least like the work on node end bear,

1023
00:48:00.239 --> 00:48:05.119
<v Speaker 4>which is like how you want to run things. So

1024
00:48:05.119 --> 00:48:08.400
<v Speaker 4>so yeah, so we just reuse all the existing infrastructure

1025
00:48:08.440 --> 00:48:10.239
<v Speaker 4>for that, because why not, it's awesome.

1026
00:48:10.280 --> 00:48:11.000
<v Speaker 3>There's a lot of it.

1027
00:48:12.400 --> 00:48:13.960
<v Speaker 1>Right, So if I want to use like the f

1028
00:48:14.039 --> 00:48:17.320
<v Speaker 1>S module, like just NPM install what bear fs, bear

1029
00:48:17.400 --> 00:48:18.960
<v Speaker 1>dash fs or something like that.

1030
00:48:19.159 --> 00:48:23.519
<v Speaker 4>Yeah, exactly exactly that, and then that's just like an

1031
00:48:23.559 --> 00:48:25.880
<v Speaker 4>open source library and like you know, it aims to

1032
00:48:25.880 --> 00:48:28.159
<v Speaker 4>be under pretend compared I'm sure there's slight differences here

1033
00:48:28.159 --> 00:48:32.000
<v Speaker 4>and there, but like and if you want to use

1034
00:48:32.039 --> 00:48:34.199
<v Speaker 4>like streams, we have the streams in limitation if you

1035
00:48:34.239 --> 00:48:36.639
<v Speaker 4>want to use et cetera, et cetera. So yeah, it's

1036
00:48:36.760 --> 00:48:38.719
<v Speaker 4>like again it's like, you know, there's a little hurdle

1037
00:48:38.800 --> 00:48:41.400
<v Speaker 4>that that's the cost of like doing like small core

1038
00:48:41.440 --> 00:48:43.800
<v Speaker 4>development like you have as the first step, and this

1039
00:48:43.960 --> 00:48:45.480
<v Speaker 4>is why people don't do it, because it's harder to

1040
00:48:45.519 --> 00:48:48.320
<v Speaker 4>market you have like that marketing piece that's first step

1041
00:48:48.400 --> 00:48:51.920
<v Speaker 4>is annoying, but that's how you get the flexibility. And

1042
00:48:51.960 --> 00:48:53.639
<v Speaker 4>we don't care about marketing. We just make this because

1043
00:48:53.639 --> 00:48:58.119
<v Speaker 4>it's really cool. So so yeah, so that's how we

1044
00:48:58.159 --> 00:48:59.679
<v Speaker 4>do it. And the cool thing is then if you

1045
00:48:59.679 --> 00:49:01.840
<v Speaker 4>want to install instead of some of the noticest of

1046
00:49:01.840 --> 00:49:04.000
<v Speaker 4>if you wanted to install a cool puture peer module,

1047
00:49:04.360 --> 00:49:06.280
<v Speaker 4>it's the same flow. So you learn this flow once

1048
00:49:06.679 --> 00:49:08.719
<v Speaker 4>and that's how you do everything. So how do you

1049
00:49:08.760 --> 00:49:10.599
<v Speaker 4>get like puter peer modules? How do you get it's

1050
00:49:10.639 --> 00:49:13.239
<v Speaker 4>per modules? How do you get whatever modules do you want?

1051
00:49:15.320 --> 00:49:16.639
<v Speaker 2>Awesome? All right, so.

1052
00:49:20.280 --> 00:49:22.639
<v Speaker 1>Yeah, I guess the last question I have before we

1053
00:49:22.679 --> 00:49:26.079
<v Speaker 1>do picks is if people want to learn more or

1054
00:49:26.239 --> 00:49:28.559
<v Speaker 1>they want to connect with you, or I mean maybe

1055
00:49:28.559 --> 00:49:31.840
<v Speaker 1>there's somebody out there who's like this sounds really great,

1056
00:49:32.199 --> 00:49:33.760
<v Speaker 1>sounds like you know what you're doing. I want to

1057
00:49:33.840 --> 00:49:36.119
<v Speaker 1>hire a whole punch to make my peer to peer

1058
00:49:36.159 --> 00:49:37.760
<v Speaker 1>app and I'm not going to do it myself.

1059
00:49:38.280 --> 00:49:40.280
<v Speaker 2>How do people get connected with you? For any ear

1060
00:49:40.320 --> 00:49:40.920
<v Speaker 2>and all of that?

1061
00:49:41.719 --> 00:49:44.480
<v Speaker 4>So if you go to the website, bear the pair

1062
00:49:44.480 --> 00:49:46.000
<v Speaker 4>of the com and I think maybe we can share

1063
00:49:46.079 --> 00:49:48.440
<v Speaker 4>that on the on the podcast and as a link.

1064
00:49:48.880 --> 00:49:52.920
<v Speaker 4>People don't hear my mumbling. But there's all kinds of

1065
00:49:52.960 --> 00:49:55.800
<v Speaker 4>contacts then there we we do we have so all

1066
00:49:56.039 --> 00:49:59.880
<v Speaker 4>so it's all open source misid licensing. We do everything

1067
00:50:00.079 --> 00:50:03.480
<v Speaker 4>they open on this in general. We have our chat

1068
00:50:03.559 --> 00:50:07.639
<v Speaker 4>up key where we do all our chats about implementing

1069
00:50:07.679 --> 00:50:10.440
<v Speaker 4>Bear and open their's links on the on the website

1070
00:50:10.480 --> 00:50:12.199
<v Speaker 4>to join those. You can actually just follow it in

1071
00:50:12.239 --> 00:50:14.760
<v Speaker 4>real time. I don't think you should hire us to

1072
00:50:14.760 --> 00:50:16.599
<v Speaker 4>make that. I think we should hire people to work

1073
00:50:16.639 --> 00:50:20.320
<v Speaker 4>on Bear so and on Peter Peers. Maybe that's going

1074
00:50:20.360 --> 00:50:22.559
<v Speaker 4>into your pick session, but like, please reach out if

1075
00:50:22.599 --> 00:50:24.519
<v Speaker 4>you're interested in working with this stuff. That's a very

1076
00:50:24.559 --> 00:50:29.239
<v Speaker 4>cool ecosystem. That's very viprant stuff going on. But yeah,

1077
00:50:29.400 --> 00:50:32.239
<v Speaker 4>join all the things there. We have a website there.

1078
00:50:32.599 --> 00:50:35.119
<v Speaker 4>The documentation is very light because it doesn't do much.

1079
00:50:35.599 --> 00:50:38.000
<v Speaker 4>We have a very active help and a small team.

1080
00:50:38.199 --> 00:50:39.960
<v Speaker 4>Cool thing about having a small team is that when

1081
00:50:40.000 --> 00:50:42.599
<v Speaker 4>you talk to somebody, it's like the pizza problem. You

1082
00:50:42.599 --> 00:50:44.159
<v Speaker 4>you can eat a pizza and the entire team can

1083
00:50:44.199 --> 00:50:48.639
<v Speaker 4>be in the room. So so when you talk to somebody,

1084
00:50:48.639 --> 00:50:51.440
<v Speaker 4>they probably know everything about it.

1085
00:50:51.760 --> 00:50:56.079
<v Speaker 1>Awesome, all right, Well I'm going to push us into picks. Now,

1086
00:50:56.199 --> 00:50:58.320
<v Speaker 1>if you not listen to the show, Picks is just

1087
00:50:58.360 --> 00:51:02.079
<v Speaker 1>shout out about stuff we like. I think most of

1088
00:51:02.119 --> 00:51:05.880
<v Speaker 1>the time it's not technology related, but that doesn't keep

1089
00:51:06.000 --> 00:51:08.360
<v Speaker 1>us from picking technology stuff when we like it. So

1090
00:51:09.480 --> 00:51:12.000
<v Speaker 1>I'm going to jump in and do a handful of

1091
00:51:12.039 --> 00:51:16.440
<v Speaker 1>picks here. My first pick is almost always a board game.

1092
00:51:17.800 --> 00:51:20.039
<v Speaker 1>And my friends and I last week we played a

1093
00:51:20.079 --> 00:51:24.239
<v Speaker 1>game called Colt Express and what it is is it

1094
00:51:24.280 --> 00:51:28.800
<v Speaker 1>actually has a train with cars that it's set up

1095
00:51:29.679 --> 00:51:32.559
<v Speaker 1>so it's like a three D train that sits on

1096
00:51:32.599 --> 00:51:37.079
<v Speaker 1>the table, and so you've got the locomotive and then

1097
00:51:37.119 --> 00:51:41.480
<v Speaker 1>you've got however many players there are basically put that

1098
00:51:41.559 --> 00:51:44.800
<v Speaker 1>many cars on the train. And then there's loot on

1099
00:51:44.880 --> 00:51:47.119
<v Speaker 1>the train, right, so there are little gems, there are

1100
00:51:47.119 --> 00:51:50.800
<v Speaker 1>bags of money, and there's a lock box in the locomotive,

1101
00:51:50.800 --> 00:51:51.199
<v Speaker 1>which is.

1102
00:51:51.119 --> 00:51:52.119
<v Speaker 2>Where the sheriff starts.

1103
00:51:52.920 --> 00:51:55.559
<v Speaker 1>And then what you do is you can move from

1104
00:51:55.719 --> 00:51:59.159
<v Speaker 1>the car you're into the roof. You can move laterally

1105
00:51:59.400 --> 00:52:05.960
<v Speaker 1>from one car to another. You can punch another player

1106
00:52:06.000 --> 00:52:10.400
<v Speaker 1>because all the players are robbers train rubbers. You can

1107
00:52:10.400 --> 00:52:13.039
<v Speaker 1>punch another player and that makes them drop loot, or

1108
00:52:13.079 --> 00:52:15.760
<v Speaker 1>you can shoot another player, and what when you shoot them,

1109
00:52:15.800 --> 00:52:18.199
<v Speaker 1>you add a bullet card to their deck of cards,

1110
00:52:18.760 --> 00:52:22.719
<v Speaker 1>And bullet cards are basically blanks, right, so they don't

1111
00:52:22.760 --> 00:52:25.239
<v Speaker 1>have an action associated with them. And when you take

1112
00:52:25.280 --> 00:52:27.519
<v Speaker 1>any of the other actions, you've played the card. And

1113
00:52:27.559 --> 00:52:29.480
<v Speaker 1>so when you draw a hand, if you've been shot

1114
00:52:29.519 --> 00:52:31.239
<v Speaker 1>a lot and you get a whole bunch of bullets,

1115
00:52:31.400 --> 00:52:33.599
<v Speaker 1>you just don't have as many options, and so you

1116
00:52:33.639 --> 00:52:35.960
<v Speaker 1>may wind up spending one of your actions to draw

1117
00:52:36.039 --> 00:52:37.840
<v Speaker 1>more cards to try and get the card you want.

1118
00:52:39.159 --> 00:52:41.639
<v Speaker 1>And the way it works is you go around the

1119
00:52:41.639 --> 00:52:45.400
<v Speaker 1>circle and everybody plays a card and there are different

1120
00:52:46.079 --> 00:52:49.199
<v Speaker 1>sequences that you can play that maybe they allow you

1121
00:52:49.280 --> 00:52:51.880
<v Speaker 1>to play two cards in a row instead of just one,

1122
00:52:52.639 --> 00:52:55.199
<v Speaker 1>or you know, they allow you to place it face

1123
00:52:55.280 --> 00:52:57.880
<v Speaker 1>down instead of face up, right, because if everyone's playing

1124
00:52:57.920 --> 00:53:02.199
<v Speaker 1>face up, you can sort of plan for what's coming, right.

1125
00:53:02.280 --> 00:53:03.079
<v Speaker 2>It's like, Okay, I.

1126
00:53:03.039 --> 00:53:04.639
<v Speaker 1>Know they're gonna move here, so i'm gonna move there

1127
00:53:04.679 --> 00:53:07.039
<v Speaker 1>and I'm gonna punch them kind of thing.

1128
00:53:07.159 --> 00:53:07.360
<v Speaker 2>Right.

1129
00:53:08.039 --> 00:53:11.239
<v Speaker 1>So, but if you're playing face down, right, then you

1130
00:53:11.239 --> 00:53:14.239
<v Speaker 1>have an advantage because it's it's anonymous. Of course, everybody

1131
00:53:14.239 --> 00:53:17.400
<v Speaker 1>else plays face down anyway, So then what you do

1132
00:53:17.519 --> 00:53:22.800
<v Speaker 1>is once everybody's played for the whole round. So there's

1133
00:53:22.880 --> 00:53:25.639
<v Speaker 1>usually you go around the circle like three or four times,

1134
00:53:26.800 --> 00:53:28.760
<v Speaker 1>then you flip them over and you just play it out.

1135
00:53:28.920 --> 00:53:31.119
<v Speaker 1>So you know, you play my card and I move,

1136
00:53:31.159 --> 00:53:32.960
<v Speaker 1>You play his card and he shoots, you play his

1137
00:53:33.039 --> 00:53:35.920
<v Speaker 1>card and right, and so anyway, it's a lot of

1138
00:53:35.960 --> 00:53:39.639
<v Speaker 1>fun board game. Geek waits it at one point eight three.

1139
00:53:41.400 --> 00:53:44.480
<v Speaker 1>I tell people that two is about as complicated as

1140
00:53:44.519 --> 00:53:47.840
<v Speaker 1>the casual gamers really get, sometimes a little bit more,

1141
00:53:49.880 --> 00:53:52.719
<v Speaker 1>but two is about where it has enough complexity to

1142
00:53:52.760 --> 00:53:57.039
<v Speaker 1>make it fun, but it's not so complex that that

1143
00:53:57.119 --> 00:53:59.719
<v Speaker 1>the people who aren't avid gamers are not gonna want

1144
00:53:59.719 --> 00:54:03.360
<v Speaker 1>to play it. So anyway, so this was a one

1145
00:54:03.400 --> 00:54:08.840
<v Speaker 1>point eighty three so it's reasonably simple game. But yeah, oh, also,

1146
00:54:09.000 --> 00:54:11.719
<v Speaker 1>the each player has a character that they're playing, and

1147
00:54:11.760 --> 00:54:16.039
<v Speaker 1>those characters have special abilities. Right, So the one I played,

1148
00:54:16.039 --> 00:54:18.119
<v Speaker 1>when you punch somebody and make them drop loot, you

1149
00:54:18.159 --> 00:54:20.360
<v Speaker 1>can catch it, right.

1150
00:54:20.440 --> 00:54:22.760
<v Speaker 2>You don't have to spend an action to pick it up,

1151
00:54:23.000 --> 00:54:24.960
<v Speaker 2>you know, on your next for your next move.

1152
00:54:26.400 --> 00:54:30.039
<v Speaker 1>Other people like one guy had such a powerful shot

1153
00:54:30.119 --> 00:54:33.440
<v Speaker 1>that it moved a person back a train car or

1154
00:54:33.519 --> 00:54:34.559
<v Speaker 1>I mean all kinds of stuff.

1155
00:54:34.599 --> 00:54:37.679
<v Speaker 2>So anyway, lots of fun. My buddy had the.

1156
00:54:39.199 --> 00:54:41.599
<v Speaker 1>What was it, like a super box or something, and

1157
00:54:41.639 --> 00:54:44.320
<v Speaker 1>so I had two expansions in it, and the expansions

1158
00:54:44.360 --> 00:54:47.039
<v Speaker 1>allow you to play this is typically two to six players.

1159
00:54:47.400 --> 00:54:50.039
<v Speaker 1>His expansion would allow you to play up to nine players.

1160
00:54:50.599 --> 00:54:55.719
<v Speaker 1>So anyway, way, fun game. Highly highly recommend it. It

1161
00:54:55.760 --> 00:54:57.719
<v Speaker 1>came out in twenty fourteen, so it's not a new

1162
00:54:57.800 --> 00:55:01.679
<v Speaker 1>game by any means. But anyway, really really enjoyed that.

1163
00:55:05.159 --> 00:55:10.639
<v Speaker 1>As far as other picks go. Finished in nineteen twenty three,

1164
00:55:11.119 --> 00:55:15.920
<v Speaker 1>it's the Yellowstone spin off. I really liked Yellowstone, so

1165
00:55:15.960 --> 00:55:18.320
<v Speaker 1>I watched eighteen eighty three, which was the first spin off,

1166
00:55:18.360 --> 00:55:21.320
<v Speaker 1>right kind of the origin story of the family, I

1167
00:55:21.360 --> 00:55:21.840
<v Speaker 1>have to say.

1168
00:55:21.880 --> 00:55:23.519
<v Speaker 2>And it was Tim McGraw and Faith Hill.

1169
00:55:23.480 --> 00:55:26.000
<v Speaker 1>Where the parents of that one, which you know, I

1170
00:55:26.039 --> 00:55:28.440
<v Speaker 1>grew up listening to country music. So I enjoyed that too.

1171
00:55:29.719 --> 00:55:33.679
<v Speaker 1>Eighteen eighty three was terrific. E twenty three was even better,

1172
00:55:35.599 --> 00:55:38.159
<v Speaker 1>and they're both better than Yellowstone. And I really really

1173
00:55:38.199 --> 00:55:42.079
<v Speaker 1>really like Yellowstone. So if you're looking for something to watch,

1174
00:55:42.159 --> 00:55:44.400
<v Speaker 1>some Paramount Plus and so I'm going to pick that.

1175
00:55:45.519 --> 00:55:47.559
<v Speaker 1>Speaking of Paramount Plus, one other thing I just figured

1176
00:55:47.599 --> 00:55:50.960
<v Speaker 1>out is that I didn't realize that Champions League in

1177
00:55:50.960 --> 00:55:55.119
<v Speaker 1>Europe was running, and so then I was asking questions

1178
00:55:55.199 --> 00:55:57.960
<v Speaker 1>like how do I watch it? And apparently those are

1179
00:55:58.000 --> 00:56:01.280
<v Speaker 1>on Paramount Plus in the US. I'm gonna go watch

1180
00:56:01.320 --> 00:56:04.039
<v Speaker 1>the finals whenever those are on.

1181
00:56:04.239 --> 00:56:04.800
<v Speaker 2>And then.

1182
00:56:06.280 --> 00:56:10.280
<v Speaker 1>They also carry Serie A soccer from Italy, so I'm

1183
00:56:10.320 --> 00:56:11.280
<v Speaker 1>excited about that too.

1184
00:56:11.480 --> 00:56:15.679
<v Speaker 2>So I think.

1185
00:56:15.760 --> 00:56:19.480
<v Speaker 1>That's mostly all I've got, So Matthias, why don't you

1186
00:56:19.519 --> 00:56:20.519
<v Speaker 1>go ahead and give us some picks?

1187
00:56:21.199 --> 00:56:21.440
<v Speaker 3>Cool?

1188
00:56:21.559 --> 00:56:23.519
<v Speaker 4>I was actually looking at that Yellowstone show because I

1189
00:56:23.599 --> 00:56:25.639
<v Speaker 4>haven't I don't get a lot of time to watch

1190
00:56:25.840 --> 00:56:28.079
<v Speaker 4>shows anymore, but I thought that one and I was like,

1191
00:56:28.239 --> 00:56:28.920
<v Speaker 4>that's interesting.

1192
00:56:31.440 --> 00:56:33.440
<v Speaker 3>Kind of what kind of genre is that? Actually? Is

1193
00:56:33.480 --> 00:56:34.199
<v Speaker 3>that like sci fi?

1194
00:56:34.400 --> 00:56:38.079
<v Speaker 1>Or it's a Western? But it's a modern Western. So

1195
00:56:39.119 --> 00:56:44.519
<v Speaker 1>the premise of the show is there's there's a ranch

1196
00:56:44.639 --> 00:56:48.239
<v Speaker 1>that takes up like half of Paradise Valley in Montana,

1197
00:56:49.079 --> 00:56:51.320
<v Speaker 1>and it's all owned by one family and it's been

1198
00:56:51.320 --> 00:56:57.800
<v Speaker 1>owned for like one hundred and something years, and there

1199
00:56:57.800 --> 00:56:59.440
<v Speaker 1>are all these people who are trying to get a

1200
00:56:59.440 --> 00:57:03.360
<v Speaker 1>piece of it right, so that the Native American tribe

1201
00:57:03.400 --> 00:57:06.800
<v Speaker 1>that's there right, they do all this stuff to like

1202
00:57:07.760 --> 00:57:12.239
<v Speaker 1>steal cattle in a way that's you know, semi legal

1203
00:57:13.159 --> 00:57:19.360
<v Speaker 1>from the ranch. There's they're like developers that want to

1204
00:57:19.360 --> 00:57:26.119
<v Speaker 1>build stuff and that affects the ranch. At one point,

1205
00:57:26.199 --> 00:57:29.920
<v Speaker 1>eminent domain is claimed and so they actually take some

1206
00:57:30.000 --> 00:57:32.679
<v Speaker 1>of the land to build an airport, right, and so

1207
00:57:32.719 --> 00:57:36.119
<v Speaker 1>they're trying to fight back to keep their ranch. And

1208
00:57:36.199 --> 00:57:39.199
<v Speaker 1>so I'll warn you it does get a little bit violent.

1209
00:57:39.519 --> 00:57:44.920
<v Speaker 1>Sometimes there's definitely language, there's a little bit of nudity.

1210
00:57:45.480 --> 00:57:47.599
<v Speaker 1>If none of that's going to bother you or turn

1211
00:57:47.679 --> 00:57:52.320
<v Speaker 1>you off, then it is a terrific show. Some of

1212
00:57:52.360 --> 00:57:54.320
<v Speaker 1>that does bother me, and I kind of wish that

1213
00:57:54.360 --> 00:57:57.119
<v Speaker 1>it was on vid Angel. I think some of the

1214
00:57:57.159 --> 00:58:00.400
<v Speaker 1>older seasons are vid Angel will actually let you, like

1215
00:58:00.440 --> 00:58:02.639
<v Speaker 1>you can say, don't show me any of the nudity,

1216
00:58:02.760 --> 00:58:06.199
<v Speaker 1>or you know, it'll cut the sound for the words

1217
00:58:06.199 --> 00:58:08.679
<v Speaker 1>you don't want to hear the curse words. But anyway,

1218
00:58:08.719 --> 00:58:10.280
<v Speaker 1>it's it's a really really good series.

1219
00:58:10.320 --> 00:58:11.159
<v Speaker 2>I really enjoyed it.

1220
00:58:11.559 --> 00:58:13.480
<v Speaker 4>Nice I check it out. I actually I love watching

1221
00:58:13.480 --> 00:58:17.920
<v Speaker 4>a good Western. I watched what's that show Darkwoard or

1222
00:58:17.960 --> 00:58:20.199
<v Speaker 4>something I can't remember that's like this, let's not call that.

1223
00:58:20.280 --> 00:58:20.599
<v Speaker 3>There's this.

1224
00:58:22.159 --> 00:58:24.320
<v Speaker 4>Big famous Western series. I watched them. I think I

1225
00:58:24.360 --> 00:58:25.519
<v Speaker 4>was in Netflix a while ago.

1226
00:58:26.159 --> 00:58:31.079
<v Speaker 1>But yeah, yeah, so most Westerns are like Old West Westerns,

1227
00:58:31.440 --> 00:58:35.199
<v Speaker 1>and this one gets into like state politics and yeah,

1228
00:58:35.199 --> 00:58:40.119
<v Speaker 1>there's plenty of shooting and horseback riding and wrangling cows

1229
00:58:40.119 --> 00:58:40.719
<v Speaker 1>and all that too.

1230
00:58:40.800 --> 00:58:46.920
<v Speaker 3>But yeah, anyway, nice, Yeah, I don't, like I said,

1231
00:58:46.960 --> 00:58:47.280
<v Speaker 3>I don't.

1232
00:58:47.599 --> 00:58:49.599
<v Speaker 4>Unfortunately, I don't get to watch a lot of TV

1233
00:58:49.880 --> 00:58:52.480
<v Speaker 4>right now, but because I've been working really hard on

1234
00:58:52.480 --> 00:58:55.119
<v Speaker 4>this kind of stuff. But I do when I had

1235
00:58:55.159 --> 00:58:58.639
<v Speaker 4>some down sign So I'm a huge history buff and

1236
00:58:58.679 --> 00:59:01.119
<v Speaker 4>anybody who knows me were really tired of the fact

1237
00:59:01.119 --> 00:59:05.760
<v Speaker 4>that I'm very, very big medieval history nerd. I read

1238
00:59:05.800 --> 00:59:09.239
<v Speaker 4>everything from my year one thousand to like twelve hundred.

1239
00:59:09.239 --> 00:59:11.159
<v Speaker 4>I don't know why this triggers me in a nice

1240
00:59:11.159 --> 00:59:14.119
<v Speaker 4>way of because it's like a if you don't know

1241
00:59:14.159 --> 00:59:16.119
<v Speaker 4>about history, it's kind of like we basically don't know.

1242
00:59:16.400 --> 00:59:18.360
<v Speaker 4>We know about the Roman and paranoia stuff, and then

1243
00:59:18.400 --> 00:59:21.119
<v Speaker 4>there's like a basically there's like a gap because of

1244
00:59:21.159 --> 00:59:24.679
<v Speaker 4>all the the changes in times, and then around year

1245
00:59:24.719 --> 00:59:27.400
<v Speaker 4>thousands when things actually start getting getting done against it

1246
00:59:27.400 --> 00:59:30.320
<v Speaker 4>as good good records around that, and I recently this

1247
00:59:30.440 --> 00:59:33.679
<v Speaker 4>is super nerdy. But I recently went on like a

1248
00:59:33.719 --> 00:59:38.239
<v Speaker 4>deep dive on on Southern Italy medieval history and I

1249
00:59:38.320 --> 00:59:41.360
<v Speaker 4>read a really really good book series by I think

1250
00:59:41.360 --> 00:59:47.400
<v Speaker 4>it's an English author, John Julius Norwich, and it's very

1251
00:59:47.400 --> 00:59:50.119
<v Speaker 4>old books from like the sixties, but he writes this

1252
00:59:50.199 --> 00:59:53.519
<v Speaker 4>amazing trilogy about like Sicilian history in the Middle Ages,

1253
00:59:53.559 --> 00:59:57.039
<v Speaker 4>and it's it's interesting if you're very nerdly and you're

1254
00:59:57.039 --> 00:59:58.920
<v Speaker 4>into that kind of stuff. For me, so I don't

1255
00:59:58.960 --> 01:00:00.760
<v Speaker 4>read a lot, but that the kind of book where

1256
01:00:00.760 --> 01:00:04.320
<v Speaker 4>I just started reading. I couldn't stop and I ended

1257
01:00:04.360 --> 01:00:06.719
<v Speaker 4>up actually just almost buying everything that I made because

1258
01:00:06.719 --> 01:00:09.400
<v Speaker 4>it's really good. I don't know, hopefully he's not controversial

1259
01:00:09.480 --> 01:00:11.280
<v Speaker 4>or something because I just I just read the books,

1260
01:00:11.280 --> 01:00:19.440
<v Speaker 4>but really really good stuff, and it's it's like from

1261
01:00:19.440 --> 01:00:22.039
<v Speaker 4>a point in time where you know people move from

1262
01:00:22.039 --> 01:00:27.000
<v Speaker 4>different countries. Today we're very like like what is also

1263
01:00:27.079 --> 01:00:28.960
<v Speaker 4>to be mean to be American? What does it mean

1264
01:00:29.000 --> 01:00:32.159
<v Speaker 4>to be European? But basically in the Middle Ages, and

1265
01:00:32.239 --> 01:00:34.400
<v Speaker 4>this is like a communist conception, people actually just travel

1266
01:00:34.400 --> 01:00:36.280
<v Speaker 4>a lot and move from many places to many places,

1267
01:00:36.280 --> 01:00:39.960
<v Speaker 4>and people's from other places to all the places like

1268
01:00:40.079 --> 01:00:43.559
<v Speaker 4>southern Italy for me, as I'm from the Norrix, like

1269
01:00:43.599 --> 01:00:46.280
<v Speaker 4>it has like a history of like vikings and kings

1270
01:00:46.360 --> 01:00:51.599
<v Speaker 4>settling and like the Roman Empire's history and the Eastern

1271
01:00:51.639 --> 01:00:54.000
<v Speaker 4>Roman and all that clashing in like the Middle Ages

1272
01:00:54.000 --> 01:00:56.800
<v Speaker 4>and all those culturist mixtion and the Arabs and like

1273
01:00:57.559 --> 01:00:59.760
<v Speaker 4>becoming like a half of everything. And obviously you have

1274
01:00:59.800 --> 01:01:02.519
<v Speaker 4>the Sage, which is like has a bunch of history,

1275
01:01:02.519 --> 01:01:04.039
<v Speaker 4>but like that all went through there, so like it's

1276
01:01:04.119 --> 01:01:08.119
<v Speaker 4>just like that period for me is insanely interesting to

1277
01:01:08.159 --> 01:01:09.280
<v Speaker 4>read about because it's just like.

1278
01:01:09.280 --> 01:01:10.280
<v Speaker 3>Everything happening at once.

1279
01:01:10.400 --> 01:01:12.320
<v Speaker 4>And and yeah, you should check out that book series

1280
01:01:12.480 --> 01:01:13.639
<v Speaker 4>by the offer if you're into that.

1281
01:01:13.639 --> 01:01:15.280
<v Speaker 3>That's probably like one person out there that's gonna be like,

1282
01:01:15.320 --> 01:01:17.239
<v Speaker 3>that's awesome a lot to do that.

1283
01:01:19.599 --> 01:01:21.599
<v Speaker 4>And if you then if you're into that, just google

1284
01:01:21.679 --> 01:01:23.280
<v Speaker 4>those the stuff from that and you'll find all this

1285
01:01:23.440 --> 01:01:25.639
<v Speaker 4>like really nerdly really good YouTube content that people made

1286
01:01:25.679 --> 01:01:28.719
<v Speaker 4>on that about the history of like in Italy.

1287
01:01:28.800 --> 01:01:29.679
<v Speaker 3>So that's my.

1288
01:01:29.719 --> 01:01:34.840
<v Speaker 4>Minority pick for today. I'm I'm and if somebody has

1289
01:01:34.880 --> 01:01:37.039
<v Speaker 4>good recommendations of any kind of like other deep dies

1290
01:01:37.079 --> 01:01:38.039
<v Speaker 4>on that, I'm very interested on.

1291
01:01:38.239 --> 01:01:41.559
<v Speaker 3>That's my period. I'm very fixated on very very.

1292
01:01:41.400 --> 01:01:43.239
<v Speaker 2>Cool stuff, very cool. Yeah.

1293
01:01:43.280 --> 01:01:45.159
<v Speaker 1>I lived in Italy for a couple of years, and

1294
01:01:45.360 --> 01:01:50.280
<v Speaker 1>really which part of it, Mostly in the north actually,

1295
01:01:50.320 --> 01:01:52.679
<v Speaker 1>so you're you're talking about areas that I didn't see,

1296
01:01:52.719 --> 01:01:54.119
<v Speaker 1>but I live.

1297
01:01:54.039 --> 01:01:55.760
<v Speaker 3>In I live in the south of Switzerland.

1298
01:01:55.800 --> 01:01:59.039
<v Speaker 4>I live I live very close to to nominatally obviously,

1299
01:01:59.039 --> 01:02:00.920
<v Speaker 4>it's like ten minut rights.

1300
01:02:02.760 --> 01:02:07.480
<v Speaker 1>Yeah, so I I was a missionary there the furthest

1301
01:02:07.519 --> 01:02:12.199
<v Speaker 1>north I got was Portanone and Verona.

1302
01:02:12.480 --> 01:02:12.639
<v Speaker 2>But.

1303
01:02:14.159 --> 01:02:16.360
<v Speaker 1>Where I actually lived, but I mean we went up

1304
01:02:16.360 --> 01:02:20.360
<v Speaker 1>into Trento and Bolzano and some of those that are

1305
01:02:20.400 --> 01:02:21.119
<v Speaker 1>kind of up that way.

1306
01:02:21.239 --> 01:02:25.840
<v Speaker 4>So yeah, it's like that area obviously, you know, but

1307
01:02:25.880 --> 01:02:28.280
<v Speaker 4>like that's just so rich of all kinds of history

1308
01:02:28.360 --> 01:02:32.320
<v Speaker 4>or all places like the church and like the the

1309
01:02:32.360 --> 01:02:34.440
<v Speaker 4>peoples and you know different.

1310
01:02:34.639 --> 01:02:36.480
<v Speaker 2>Yeah, that stuff is all so fascinating.

1311
01:02:37.199 --> 01:02:37.400
<v Speaker 3>Yeah.

1312
01:02:38.440 --> 01:02:41.400
<v Speaker 1>Well, and you get into the eighteen hundreds when Italy

1313
01:02:42.119 --> 01:02:44.920
<v Speaker 1>formed as a country as we know it now. I

1314
01:02:44.960 --> 01:02:47.239
<v Speaker 1>mean again, there were still there were like three or

1315
01:02:47.239 --> 01:02:51.639
<v Speaker 1>four kingdoms, and you know, I mean all all of

1316
01:02:51.679 --> 01:02:55.360
<v Speaker 1>the different fact factors that went into it. Yeah, there

1317
01:02:55.360 --> 01:02:57.960
<v Speaker 1>were people from the Church that played a pretty major

1318
01:02:58.079 --> 01:03:01.199
<v Speaker 1>role in Italy coming together as a country. Yeah, it's

1319
01:03:01.239 --> 01:03:02.480
<v Speaker 1>it's really really interesting.

1320
01:03:03.599 --> 01:03:05.119
<v Speaker 4>Yeah, it's kind of like again if you like, if

1321
01:03:05.119 --> 01:03:08.360
<v Speaker 4>you know, I think people like to you know, like

1322
01:03:08.480 --> 01:03:10.400
<v Speaker 4>you know, you read about the Romans and that kind

1323
01:03:10.400 --> 01:03:12.039
<v Speaker 4>of stuff, but it's like you can just you can

1324
01:03:12.119 --> 01:03:13.719
<v Speaker 4>keep diving and you can get more and more niche

1325
01:03:13.719 --> 01:03:16.280
<v Speaker 4>and like it's all these areas and yeah, and like

1326
01:03:16.360 --> 01:03:18.400
<v Speaker 4>with the Popes and also like the history of the

1327
01:03:18.480 --> 01:03:20.639
<v Speaker 4>South that's like a huge interlapt there and like with

1328
01:03:20.760 --> 01:03:25.119
<v Speaker 4>different massively important events that's basically shaped the entire history

1329
01:03:25.119 --> 01:03:25.920
<v Speaker 4>of the Western world.

1330
01:03:25.960 --> 01:03:27.960
<v Speaker 3>I think that's like insanely fascinating.

1331
01:03:28.800 --> 01:03:32.000
<v Speaker 1>So yeah, yeah, I don't I don't think people know that,

1332
01:03:32.039 --> 01:03:34.480
<v Speaker 1>like the popes had their own kingdoms down there for.

1333
01:03:36.079 --> 01:03:42.599
<v Speaker 2>Centuries. Yeah yeah, yeah, so very very interesting.

1334
01:03:42.639 --> 01:03:46.440
<v Speaker 1>And yeah, southern Italy especially Yeah, like you said, I

1335
01:03:46.480 --> 01:03:51.760
<v Speaker 1>mean they got invaded by everybody on the Mediterranean and

1336
01:03:51.800 --> 01:03:54.400
<v Speaker 1>some outside the Mediterranean, like you mentioned the Vikings.

1337
01:03:54.440 --> 01:03:56.920
<v Speaker 2>So I mean it's.

1338
01:03:56.599 --> 01:03:59.280
<v Speaker 1>It's interesting too because people from the from southern Italy

1339
01:03:59.320 --> 01:04:02.320
<v Speaker 1>actually look different from people from northern Italy.

1340
01:04:03.599 --> 01:04:06.480
<v Speaker 4>Yeah, it's like when you travel in Italy also, it's

1341
01:04:06.519 --> 01:04:08.280
<v Speaker 4>kind of like you can kind of food of food,

1342
01:04:08.360 --> 01:04:11.400
<v Speaker 4>you can sense when those boundaries, Like the food is

1343
01:04:11.480 --> 01:04:16.000
<v Speaker 4>very different than an Orthern food and like that's and

1344
01:04:16.079 --> 01:04:18.840
<v Speaker 4>like the Arabic culture in Sicily and like they have

1345
01:04:18.880 --> 01:04:22.039
<v Speaker 4>amazing you know, Arabic chocolate and things like that lighted. Yes,

1346
01:04:22.239 --> 01:04:26.519
<v Speaker 4>it's a crazy beautiful place and like, yeah, rich in

1347
01:04:26.599 --> 01:04:27.119
<v Speaker 4>history almost.

1348
01:04:27.239 --> 01:04:32.920
<v Speaker 1>Yeah, in some ways some of the stuff is homogeneous, right,

1349
01:04:33.000 --> 01:04:36.960
<v Speaker 1>So you know there are things that are generally true

1350
01:04:36.960 --> 01:04:41.079
<v Speaker 1>of Italy, you know, including within the food, but then

1351
01:04:41.119 --> 01:04:44.880
<v Speaker 1>every region has their own take on a lot of

1352
01:04:44.880 --> 01:04:47.800
<v Speaker 1>that stuff too, and so then it's it's okay, well,

1353
01:04:48.199 --> 01:04:52.119
<v Speaker 1>you know, they're they're making kind of the same dish,

1354
01:04:52.519 --> 01:04:55.079
<v Speaker 1>but they've got their own flair, right they put a

1355
01:04:55.119 --> 01:04:57.320
<v Speaker 1>different meat or spice or something else in it, or

1356
01:04:57.639 --> 01:04:59.599
<v Speaker 1>they eat it with a different kind of bread or

1357
01:05:00.960 --> 01:05:03.360
<v Speaker 1>you know. I mean anyway, it's it's really really fun

1358
01:05:03.360 --> 01:05:07.719
<v Speaker 1>and fascinating to get into the dialects very widely across

1359
01:05:07.719 --> 01:05:11.159
<v Speaker 1>the country. I mean, it's it's really really yeah, it's fun.

1360
01:05:11.840 --> 01:05:14.119
<v Speaker 4>If anybody's watching this, probably not, but like this, and

1361
01:05:14.239 --> 01:05:16.519
<v Speaker 4>like an executive producer and the Netflix or something, please

1362
01:05:16.519 --> 01:05:19.000
<v Speaker 4>make a show about that whole region about like those

1363
01:05:19.159 --> 01:05:23.039
<v Speaker 4>time periods. I'll watch all of it, right, right, yeah,

1364
01:05:23.239 --> 01:05:25.280
<v Speaker 4>it's really missing. It's a huge missing gap. And like

1365
01:05:25.320 --> 01:05:30.159
<v Speaker 4>this overproduction of all things, Like there's so many intense,

1366
01:05:30.440 --> 01:05:34.280
<v Speaker 4>you know, straight to TV movie amazing stories about us

1367
01:05:34.320 --> 01:05:36.400
<v Speaker 4>we like with the Pope and all that stuff, and

1368
01:05:36.400 --> 01:05:37.719
<v Speaker 4>at least somebody needs to make that.

1369
01:05:38.159 --> 01:05:43.880
<v Speaker 1>I think, yeah, absolutely, all right, well I'm gonna go

1370
01:05:43.920 --> 01:05:46.119
<v Speaker 1>ahead and wrap us up. But this was fun and

1371
01:05:46.159 --> 01:05:50.800
<v Speaker 1>I I I kind of love the meandering historical discussion

1372
01:05:50.800 --> 01:05:54.559
<v Speaker 1>that we it's I'm I mean, but I'm totally in this,

1373
01:05:54.760 --> 01:05:57.800
<v Speaker 1>not just for the technology, but for the people and

1374
01:05:57.840 --> 01:06:00.119
<v Speaker 1>the interests and and I feel like a lot of

1375
01:06:00.159 --> 01:06:04.000
<v Speaker 1>times we kind of forget to go beyond the technology

1376
01:06:04.079 --> 01:06:07.559
<v Speaker 1>into what makes the you know, the people in.

1377
01:06:07.519 --> 01:06:10.079
<v Speaker 2>The ecosystem just so interesting.

1378
01:06:10.119 --> 01:06:12.559
<v Speaker 1>So so yeah, so thanks for opening up on the

1379
01:06:12.559 --> 01:06:15.199
<v Speaker 1>stuff that you're interested in beyond tech, because that's fun.

1380
01:06:15.760 --> 01:06:18.800
<v Speaker 1>And uh yeah, we'll wrap up here until next time, folks,

1381
01:06:19.320 --> 01:06:20.199
<v Speaker 1>Max Max out
