WEBVTT

1
00:00:06.320 --> 00:00:09.880
<v Speaker 1>Hello, and welcome to today's episode of alex Er. Miss.

2
00:00:10.000 --> 00:00:14.359
<v Speaker 1>I am joined as always by our wonderful panel of hosts,

3
00:00:14.400 --> 00:00:20.239
<v Speaker 1>including Bruce Kate. Hi everybody, Hey Bruce, We've got Josh Adams, Hello, Hi, Josh,

4
00:00:20.519 --> 00:00:23.399
<v Speaker 1>Lars Vikmann what.

5
00:00:23.239 --> 00:00:24.839
<v Speaker 2>Was that colloquial Swedish?

6
00:00:25.039 --> 00:00:25.399
<v Speaker 1>Very nice?

7
00:00:25.399 --> 00:00:25.640
<v Speaker 2>Hello?

8
00:00:25.679 --> 00:00:25.920
<v Speaker 3>Hello?

9
00:00:26.519 --> 00:00:27.719
<v Speaker 1>Hello? Hello, very cool?

10
00:00:28.160 --> 00:00:32.479
<v Speaker 4>And Steven Nias helloes all.

11
00:00:32.399 --> 00:00:34.359
<v Speaker 1>Our something Yeah, I think you do have to he

12
00:00:35.640 --> 00:00:39.159
<v Speaker 1>out there perfect and joining us as a guest. We

13
00:00:39.240 --> 00:00:42.600
<v Speaker 1>are very lucky to have an also netto who is

14
00:00:42.640 --> 00:00:45.159
<v Speaker 1>a professor of computer science and he's also very active

15
00:00:45.159 --> 00:00:48.759
<v Speaker 1>in the Elixir community, especially with regards to Elixir education.

16
00:00:49.039 --> 00:00:50.880
<v Speaker 1>I am super happy that you could join us today

17
00:00:50.880 --> 00:00:53.240
<v Speaker 1>because these are really some of my favorite topics, education

18
00:00:53.359 --> 00:00:56.399
<v Speaker 1>and Elixer. You wouldn't mind go ahead and introduce yourself.

19
00:00:56.439 --> 00:00:57.399
<v Speaker 2>Thank you very much.

20
00:00:57.840 --> 00:01:00.600
<v Speaker 5>My name is Ago From, a professor or at the

21
00:01:00.640 --> 00:01:02.439
<v Speaker 5>Federal University of Technology.

22
00:01:02.520 --> 00:01:05.400
<v Speaker 2>But now which is it's here.

23
00:01:05.159 --> 00:01:09.200
<v Speaker 5>In Critiba, Brazil, and I teach lodge for computer science

24
00:01:09.359 --> 00:01:13.840
<v Speaker 5>and also an introduction to Functional Programming course. And I

25
00:01:14.120 --> 00:01:17.760
<v Speaker 5>got interested in Elixir because it was created by a Brazilian.

26
00:01:17.879 --> 00:01:21.200
<v Speaker 2>I have to say that because that was attracted me to.

27
00:01:21.200 --> 00:01:25.280
<v Speaker 5>The language at first, but now I admire the language

28
00:01:25.359 --> 00:01:27.000
<v Speaker 5>and also it's community.

29
00:01:27.200 --> 00:01:31.879
<v Speaker 6>So do you actually get to teach elixure at your university.

30
00:01:31.959 --> 00:01:37.760
<v Speaker 5>Yes, I don't have many students, least offering I had

31
00:01:37.920 --> 00:01:42.040
<v Speaker 5>for students only because it's an optional course. It's you

32
00:01:42.079 --> 00:01:46.599
<v Speaker 5>don't have to take this course to graduate in computer science.

33
00:01:46.640 --> 00:01:49.680
<v Speaker 5>So actually we don't have computer science here. It's computer

34
00:01:49.799 --> 00:01:54.480
<v Speaker 5>engineering and information systems, but it's it's an optional. For instance,

35
00:01:54.680 --> 00:01:58.680
<v Speaker 5>I have an agual methods classes to class to and

36
00:01:59.000 --> 00:02:03.599
<v Speaker 5>it's it has much more students because it attracts more

37
00:02:03.719 --> 00:02:07.439
<v Speaker 5>interest for it. It's more interesting for the students to

38
00:02:07.560 --> 00:02:12.080
<v Speaker 5>learn what's screamed than elixir. But I hope that as

39
00:02:12.120 --> 00:02:14.840
<v Speaker 5>the time passes, more of the students are going to

40
00:02:14.840 --> 00:02:17.439
<v Speaker 5>get interested in this class.

41
00:02:17.560 --> 00:02:19.599
<v Speaker 6>It's interesting. We've gotten to spend a little bit of

42
00:02:19.599 --> 00:02:22.479
<v Speaker 6>time together. For those who don't know, I have a

43
00:02:22.599 --> 00:02:26.080
<v Speaker 6>metroing group and Adolfo shows up as I don't know

44
00:02:26.159 --> 00:02:28.680
<v Speaker 6>something between a metro and amitee, which is kind of

45
00:02:28.680 --> 00:02:31.080
<v Speaker 6>great for my students. But I have some questions. Do

46
00:02:31.120 --> 00:02:34.280
<v Speaker 6>you have any techniques that you can throw my way

47
00:02:34.439 --> 00:02:36.319
<v Speaker 6>or are there anythings that we do that you're going

48
00:02:36.360 --> 00:02:38.199
<v Speaker 6>to take with you in your teaching approaches.

49
00:02:38.599 --> 00:02:42.680
<v Speaker 5>Actually, I think I'm learning more with you than the

50
00:02:42.759 --> 00:02:48.000
<v Speaker 5>opposite because be for this introduction to functional Programming course,

51
00:02:48.199 --> 00:02:52.560
<v Speaker 5>I only taught and laudnge for computer science, so it

52
00:02:53.000 --> 00:02:57.039
<v Speaker 5>was not an introduction to programming. I'm still trying to

53
00:02:57.120 --> 00:03:00.879
<v Speaker 5>learn which is the best approach to teach programming. And

54
00:03:01.919 --> 00:03:05.280
<v Speaker 5>what I try to do is teach them how to

55
00:03:05.479 --> 00:03:09.719
<v Speaker 5>write a program in Elixir, but also the fundamentals and

56
00:03:10.280 --> 00:03:14.719
<v Speaker 5>papers about the actor model, and so it's kind of

57
00:03:14.879 --> 00:03:18.960
<v Speaker 5>makes There is also this academic approach that I think

58
00:03:19.000 --> 00:03:22.520
<v Speaker 5>that's what's different from your approach with your main keys.

59
00:03:22.840 --> 00:03:26.280
<v Speaker 6>Yeah, it's been fun to actually have smaller classes where

60
00:03:26.319 --> 00:03:28.080
<v Speaker 6>we can flip the keyboard, and I think that that

61
00:03:28.719 --> 00:03:31.039
<v Speaker 6>has been an eye opener for me. Do you get

62
00:03:31.080 --> 00:03:35.120
<v Speaker 6>a chance to actually invite the key is to get

63
00:03:35.199 --> 00:03:36.360
<v Speaker 6>up in code ever?

64
00:03:36.719 --> 00:03:38.639
<v Speaker 2>I know I never had that in my pression.

65
00:03:39.120 --> 00:03:42.680
<v Speaker 5>Yes, yes, because I'm also a big fan of the

66
00:03:42.800 --> 00:03:47.120
<v Speaker 5>coding those who technique. I have written some papers about it,

67
00:03:47.400 --> 00:03:51.199
<v Speaker 5>and whenever I can, I invite my students to do

68
00:03:51.240 --> 00:03:55.039
<v Speaker 5>a coding those with whole class, and every five to

69
00:03:55.159 --> 00:03:58.960
<v Speaker 5>seven minutes they first they do pre programming. So there's

70
00:03:59.159 --> 00:04:03.560
<v Speaker 5>two persons on using the computer, and one of them

71
00:04:03.800 --> 00:04:07.159
<v Speaker 5>is the driver and the other is the audiency. I

72
00:04:07.280 --> 00:04:12.520
<v Speaker 5>don't remember the name, but the one that's observing and navigator, yes, navigator,

73
00:04:13.280 --> 00:04:16.959
<v Speaker 5>And after some time the navigators becomes a driver. The

74
00:04:17.120 --> 00:04:21.360
<v Speaker 5>drives go back to his seat, and another students takes

75
00:04:21.399 --> 00:04:24.439
<v Speaker 5>the place of the navigator. You have to be always

76
00:04:24.920 --> 00:04:28.480
<v Speaker 5>paying attention to what's happening to be able to write

77
00:04:28.560 --> 00:04:31.199
<v Speaker 5>some code in front of the class. That's something that

78
00:04:31.439 --> 00:04:34.839
<v Speaker 5>I really like. I had a Master's student who wrote,

79
00:04:35.279 --> 00:04:39.160
<v Speaker 5>actually the two masters students, they wrote their thesis on

80
00:04:39.399 --> 00:04:42.319
<v Speaker 5>coding those who so I tried to practice these with

81
00:04:42.519 --> 00:04:43.199
<v Speaker 5>my students.

82
00:04:43.480 --> 00:04:46.360
<v Speaker 1>It's interesting that you mentioned giving your students I think

83
00:04:46.399 --> 00:04:48.879
<v Speaker 1>you mentioned some papers on like the actor model to

84
00:04:48.959 --> 00:04:53.120
<v Speaker 1>read and that made me realize that when I was

85
00:04:53.399 --> 00:04:57.199
<v Speaker 1>learning a lexur, I didn't really know what that was

86
00:04:57.600 --> 00:04:59.800
<v Speaker 1>or even have an opportunity to think too much about it.

87
00:05:00.480 --> 00:05:04.079
<v Speaker 1>And so maybe almost like a year into you know,

88
00:05:04.199 --> 00:05:06.959
<v Speaker 1>writing a lecture professionally, and I have an oh oh background,

89
00:05:07.000 --> 00:05:09.120
<v Speaker 1>Like I learned Ruby first, I was a real developer,

90
00:05:09.639 --> 00:05:11.839
<v Speaker 1>and so a lot of my journey into Alix was

91
00:05:11.920 --> 00:05:15.000
<v Speaker 1>characterized by like writing a lot of really messy sort

92
00:05:15.040 --> 00:05:18.480
<v Speaker 1>of oh oh inflected Elixer code. And so one of

93
00:05:18.519 --> 00:05:20.439
<v Speaker 1>the things I'm always curious about is, you know, what

94
00:05:20.600 --> 00:05:24.040
<v Speaker 1>is it like to teach and learn something functional first,

95
00:05:24.240 --> 00:05:26.600
<v Speaker 1>as opposed to learning oh and then like trying to

96
00:05:26.680 --> 00:05:29.480
<v Speaker 1>sort of fight your way into a functional way of thinking.

97
00:05:30.120 --> 00:05:31.720
<v Speaker 1>I don't know if you've taught oh oh as well

98
00:05:31.759 --> 00:05:33.959
<v Speaker 1>as functional or you know how you think about these

99
00:05:34.040 --> 00:05:36.879
<v Speaker 1>different totally different frameworks and mental models.

100
00:05:37.240 --> 00:05:41.040
<v Speaker 5>Yes, the problem is that my students, when they come

101
00:05:41.160 --> 00:05:45.160
<v Speaker 5>to this optional course, they already know how to problem.

102
00:05:45.279 --> 00:05:48.439
<v Speaker 5>So I don't know how it is to teach functional

103
00:05:48.560 --> 00:05:52.680
<v Speaker 5>programming first because they already The problem that they have

104
00:05:53.120 --> 00:05:56.560
<v Speaker 5>is in that I tweeted a few days ago, was

105
00:05:56.639 --> 00:06:00.560
<v Speaker 5>that they do what you said, They know how to

106
00:06:00.680 --> 00:06:03.439
<v Speaker 5>do objective or in the program, and they try to

107
00:06:03.519 --> 00:06:06.759
<v Speaker 5>do something like that with Elixir and they have it's

108
00:06:06.920 --> 00:06:10.720
<v Speaker 5>really difficult for them. For the few students that I had,

109
00:06:10.920 --> 00:06:14.519
<v Speaker 5>tried to write some more ideomatic codes, some code that

110
00:06:14.680 --> 00:06:18.399
<v Speaker 5>looks like Elixure that makes use of pattern matching and

111
00:06:18.879 --> 00:06:22.639
<v Speaker 5>small functions and lots of things that you can do

112
00:06:22.959 --> 00:06:26.319
<v Speaker 5>in Elixir you can do in functional programming language, and

113
00:06:26.519 --> 00:06:29.639
<v Speaker 5>it makes the code more readable, but you can't do it.

114
00:06:29.800 --> 00:06:29.839
<v Speaker 2>Know.

115
00:06:30.000 --> 00:06:33.079
<v Speaker 5>Also, at first, I'm not a professional programmer, so I

116
00:06:33.399 --> 00:06:37.279
<v Speaker 5>program whenever I can. But I did my phdtas is

117
00:06:37.399 --> 00:06:39.920
<v Speaker 5>used in Java, so I can say that I could

118
00:06:40.040 --> 00:06:44.560
<v Speaker 5>write some reasonably good Java codes. And when I started

119
00:06:44.759 --> 00:06:48.680
<v Speaker 5>Elixir now and before Alix, I started closure, and it

120
00:06:49.000 --> 00:06:50.240
<v Speaker 5>was difficult to say.

121
00:06:50.160 --> 00:06:52.240
<v Speaker 2>Now, how do I do that? How do I do

122
00:06:52.360 --> 00:06:53.279
<v Speaker 2>a for loop? Here?

123
00:06:54.160 --> 00:06:56.879
<v Speaker 5>There's no for loops, so I had to try to

124
00:06:57.399 --> 00:07:01.759
<v Speaker 5>do things differently. So it's problem that I still don't have.

125
00:07:02.040 --> 00:07:05.480
<v Speaker 5>But I want to have one of my projects. I

126
00:07:05.560 --> 00:07:09.480
<v Speaker 5>have many projects, not all of them I put them

127
00:07:09.639 --> 00:07:12.399
<v Speaker 5>in practice, But one of them was to create a

128
00:07:12.639 --> 00:07:17.040
<v Speaker 5>programming chorse or even write a book for complete beginners,

129
00:07:17.120 --> 00:07:20.639
<v Speaker 5>people that can't program in any language, and say oh now,

130
00:07:20.839 --> 00:07:24.680
<v Speaker 5>let's learn Elixir without the telling them that it's Elixir.

131
00:07:25.439 --> 00:07:26.879
<v Speaker 2>Let's because there are.

132
00:07:26.879 --> 00:07:31.360
<v Speaker 5>Many productory books about Elixir that, for for example, my

133
00:07:31.519 --> 00:07:33.639
<v Speaker 5>friends Police is all made that he wrote a great

134
00:07:33.720 --> 00:07:38.199
<v Speaker 5>book about learning functional programming and with Elixir, but he

135
00:07:38.439 --> 00:07:42.079
<v Speaker 5>kind of expects that people already know how to program

136
00:07:42.240 --> 00:07:43.759
<v Speaker 5>with some other language.

137
00:07:43.800 --> 00:07:46.120
<v Speaker 2>I believe Dave Thomas's book.

138
00:07:46.360 --> 00:07:51.000
<v Speaker 5>Also expects even more such a uric book, So there's

139
00:07:51.120 --> 00:07:55.759
<v Speaker 5>no program no programming book or that teaches functional programming

140
00:07:55.879 --> 00:07:58.160
<v Speaker 5>with Elixir for complete beginners.

141
00:07:58.360 --> 00:08:01.800
<v Speaker 6>As far as yes, such books do exist for the

142
00:08:01.879 --> 00:08:06.120
<v Speaker 6>Haskell language, which is kind of a big step, right

143
00:08:06.199 --> 00:08:10.240
<v Speaker 6>because you're you're not just grappling with the paradigm of

144
00:08:10.600 --> 00:08:12.519
<v Speaker 6>you know, with an object and things, but you're also

145
00:08:13.319 --> 00:08:17.480
<v Speaker 6>working into a completely different kind of type theory. And

146
00:08:18.279 --> 00:08:21.839
<v Speaker 6>these these concepts are just pretty stunning to me. So

147
00:08:21.920 --> 00:08:24.639
<v Speaker 6>another professor that that I really like is a man

148
00:08:24.720 --> 00:08:27.879
<v Speaker 6>named John Hughes, one of the creators of Pascal, and

149
00:08:28.120 --> 00:08:32.320
<v Speaker 6>he came to Chattanooga to attend our conference and I

150
00:08:32.440 --> 00:08:34.720
<v Speaker 6>was fortunate to spend another couple of days with them.

151
00:08:35.120 --> 00:08:41.559
<v Speaker 6>But he regularly taught students without any kind of mental corruption, right,

152
00:08:41.960 --> 00:08:45.759
<v Speaker 6>and these are computer science students. So what's interesting to

153
00:08:45.879 --> 00:08:48.240
<v Speaker 6>me is the students that I get that that are

154
00:08:48.279 --> 00:08:51.480
<v Speaker 6>starting to proscritch are normally professionals that have tried to

155
00:08:52.720 --> 00:08:55.919
<v Speaker 6>make a go in something else, right, So they they

156
00:08:56.120 --> 00:08:59.200
<v Speaker 6>have the benefit of not having some of the baggage

157
00:08:59.639 --> 00:09:02.240
<v Speaker 6>of a for programming paradigm that we have to deconstruct,

158
00:09:03.039 --> 00:09:07.000
<v Speaker 6>but they also don't have the experience with the tools

159
00:09:07.159 --> 00:09:09.879
<v Speaker 6>that they need for basic fluency, how to navigate the

160
00:09:09.919 --> 00:09:13.240
<v Speaker 6>command line, how to use source control, how to do

161
00:09:13.440 --> 00:09:17.440
<v Speaker 6>things like that, and and that's that is a tremendous obstacle.

162
00:09:17.759 --> 00:09:20.399
<v Speaker 6>So you find the same thing teaching at university.

163
00:09:20.679 --> 00:09:21.120
<v Speaker 2>You mean the.

164
00:09:23.240 --> 00:09:26.919
<v Speaker 6>Basically a fluency with with the basic tools, you know,

165
00:09:27.399 --> 00:09:31.559
<v Speaker 6>source control, editors, navigation of the command line, things like that.

166
00:09:31.879 --> 00:09:36.039
<v Speaker 5>Yes, the first year students here at the Universe, some

167
00:09:36.240 --> 00:09:39.320
<v Speaker 5>of them don't have any fluence, so they learn. See

168
00:09:39.799 --> 00:09:43.320
<v Speaker 5>the teachers that teach them in the first semester they

169
00:09:43.799 --> 00:09:46.399
<v Speaker 5>teach them. See, so they learned their basically in the

170
00:09:46.480 --> 00:09:49.759
<v Speaker 5>first semesters. When they arrive in my class, they or

171
00:09:49.799 --> 00:09:52.000
<v Speaker 5>I don't know how to do that, but I see

172
00:09:52.200 --> 00:09:54.639
<v Speaker 5>what I mean. In there there are some.

173
00:09:55.039 --> 00:10:00.320
<v Speaker 2>Online ideas like rep I don't know rip those do

174
00:10:00.600 --> 00:10:01.519
<v Speaker 2>it and.

175
00:10:01.639 --> 00:10:04.279
<v Speaker 5>Also win the box where you don't have to learn

176
00:10:04.559 --> 00:10:08.639
<v Speaker 5>everything that create a file and all those things to

177
00:10:09.080 --> 00:10:12.200
<v Speaker 5>be able to write some basic programs in ELIKSU.

178
00:10:12.639 --> 00:10:17.039
<v Speaker 4>Yeah, on the subject of just teaching absolute beginners, one

179
00:10:17.080 --> 00:10:19.120
<v Speaker 4>of the best books I ever found for this was

180
00:10:19.440 --> 00:10:23.480
<v Speaker 4>Chris Pines Learned a Program which is in Ruby. I

181
00:10:23.559 --> 00:10:27.799
<v Speaker 4>have a friend who was sort of modely technically competent.

182
00:10:27.960 --> 00:10:30.600
<v Speaker 4>He learned the program Ruby using that book. He's the CTEO.

183
00:10:30.720 --> 00:10:31.440
<v Speaker 4>Now have a startup.

184
00:10:31.519 --> 00:10:33.919
<v Speaker 1>Really fun to watch that that actually can work. That's

185
00:10:34.000 --> 00:10:37.000
<v Speaker 1>not a testimonial for chris Pine's book. I really don't

186
00:10:37.080 --> 00:10:38.960
<v Speaker 1>know what it is. Yeah, it's really interesting to think

187
00:10:38.960 --> 00:10:42.000
<v Speaker 1>about how to teach absolute beginners. And that's something that

188
00:10:42.440 --> 00:10:44.840
<v Speaker 1>when Steven and I were teaching together at the Finer School,

189
00:10:44.879 --> 00:10:47.200
<v Speaker 1>that's exactly what we did and what we were teaching

190
00:10:47.399 --> 00:10:49.080
<v Speaker 1>was Ruby. And I think, at least at the time

191
00:10:49.120 --> 00:10:51.200
<v Speaker 1>when I was a student there, which I was for

192
00:10:51.399 --> 00:10:53.840
<v Speaker 1>being a teacher there, Chris Pine's book was I don't

193
00:10:53.840 --> 00:10:55.360
<v Speaker 1>know if it was required, but it was sort of

194
00:10:55.480 --> 00:10:58.480
<v Speaker 1>recommended pre reading of starting the course. And I think

195
00:10:58.519 --> 00:11:01.200
<v Speaker 1>one of the things that I loved about teaching Ruby

196
00:11:01.399 --> 00:11:03.720
<v Speaker 1>to absolute beginners, and one of the reasons why the

197
00:11:03.759 --> 00:11:06.279
<v Speaker 1>school kind of touted it at such a great language

198
00:11:06.279 --> 00:11:09.080
<v Speaker 1>for beginners is because it's easy to see how it

199
00:11:09.200 --> 00:11:12.279
<v Speaker 1>models the real world. Right. There's an early assignment, I think,

200
00:11:12.320 --> 00:11:14.919
<v Speaker 1>where we have students build out like a pet store

201
00:11:15.000 --> 00:11:16.679
<v Speaker 1>or something, right, and you have a dog and the

202
00:11:16.799 --> 00:11:19.480
<v Speaker 1>characteristics of a dog, and then you hadstantia dog objects

203
00:11:19.480 --> 00:11:21.600
<v Speaker 1>and you know, take them to the vet or something

204
00:11:21.720 --> 00:11:23.879
<v Speaker 1>like that. And for a while I was really just

205
00:11:24.039 --> 00:11:27.399
<v Speaker 1>totally sold on oh oh models the real world, like

206
00:11:27.600 --> 00:11:31.080
<v Speaker 1>that is the mental model for writing code that models

207
00:11:31.120 --> 00:11:34.080
<v Speaker 1>the world. But now that I'm working with Elixir and

208
00:11:34.200 --> 00:11:36.519
<v Speaker 1>thinking about things more functionally, I'm kind of thinking like,

209
00:11:36.919 --> 00:11:39.960
<v Speaker 1>does it isn't it that message passing models the world?

210
00:11:40.279 --> 00:11:42.559
<v Speaker 1>And that's certainly what Joe Armstrong, you know, would argue,

211
00:11:42.679 --> 00:11:45.120
<v Speaker 1>And isn't it that the actor model really models the world?

212
00:11:45.240 --> 00:11:48.159
<v Speaker 1>So it still feels like these things are at odds,

213
00:11:48.200 --> 00:11:51.080
<v Speaker 1>like can they both be accurate representations of the way

214
00:11:51.200 --> 00:11:53.720
<v Speaker 1>that you know, people and objects move through the world.

215
00:11:54.000 --> 00:11:55.039
<v Speaker 2>Well, I think that.

216
00:11:56.200 --> 00:11:58.759
<v Speaker 5>As I said, I came from a large in computer

217
00:11:59.000 --> 00:12:04.559
<v Speaker 5>science background, and there is one thing that's it's real

218
00:12:05.039 --> 00:12:08.360
<v Speaker 5>large even before in program is that there are many

219
00:12:08.559 --> 00:12:12.320
<v Speaker 5>many models of the world. There is, for instance, loge.

220
00:12:12.399 --> 00:12:17.240
<v Speaker 5>There is a classical propositional logic that we use mostly

221
00:12:17.360 --> 00:12:21.919
<v Speaker 5>on programming is only one loge. There is multi valued loge.

222
00:12:22.159 --> 00:12:27.039
<v Speaker 5>There is relevant lodge into an KI logic, there's minilarge.

223
00:12:27.480 --> 00:12:31.240
<v Speaker 5>I believe that depending on the problem, one model is

224
00:12:31.320 --> 00:12:34.480
<v Speaker 5>going to be the best. For other problems, there are

225
00:12:34.559 --> 00:12:38.039
<v Speaker 5>two possible models, and you can choose so I don't

226
00:12:38.080 --> 00:12:42.639
<v Speaker 5>think that's the problem. Maybe this book that teaches an

227
00:12:42.639 --> 00:12:45.559
<v Speaker 5>absolute beginner how to program in Ruby is good for

228
00:12:45.879 --> 00:12:49.399
<v Speaker 5>a person, and this other book that teaches how to

229
00:12:49.519 --> 00:12:54.120
<v Speaker 5>program in Haskell is good for a mathematically inclined person,

230
00:12:54.480 --> 00:12:57.679
<v Speaker 5>And so there there. I think that the great thing

231
00:12:57.799 --> 00:13:01.519
<v Speaker 5>about all these programming languages there are many options. So

232
00:13:02.120 --> 00:13:06.039
<v Speaker 5>I know people love closure. I know people hate closure

233
00:13:06.200 --> 00:13:10.559
<v Speaker 5>because there is so many parentheses, and closure is even

234
00:13:11.240 --> 00:13:13.679
<v Speaker 5>has less apparences than LESP.

235
00:13:14.080 --> 00:13:19.200
<v Speaker 2>There's everything. It's made with perencies. So I don't think

236
00:13:19.200 --> 00:13:21.200
<v Speaker 2>it's a problem. But I think here is that we

237
00:13:21.360 --> 00:13:23.159
<v Speaker 2>have to provide options, and the.

238
00:13:24.080 --> 00:13:28.240
<v Speaker 5>Students, the users, the persons, the people that want to

239
00:13:28.360 --> 00:13:31.240
<v Speaker 5>learn programming, they choose what's best for them.

240
00:13:31.519 --> 00:13:35.039
<v Speaker 6>I think that we're kind of entering a golden age

241
00:13:35.080 --> 00:13:38.399
<v Speaker 6>of programming in some ways, because we've come out of

242
00:13:38.519 --> 00:13:41.480
<v Speaker 6>a place when there was one true way, right, there

243
00:13:41.639 --> 00:13:46.000
<v Speaker 6>was the Java way, and then the darkness find them right.

244
00:13:46.200 --> 00:13:49.480
<v Speaker 6>So we were starting to get to the point where

245
00:13:50.120 --> 00:13:54.679
<v Speaker 6>it's not just useful, but almost expected to have more

246
00:13:54.799 --> 00:13:58.960
<v Speaker 6>than one tool in your tool back. And so for

247
00:13:59.120 --> 00:14:02.159
<v Speaker 6>that reason, I think that probably the most important thing

248
00:14:02.200 --> 00:14:05.519
<v Speaker 6>that we can learn is the skill of learning right.

249
00:14:05.639 --> 00:14:08.600
<v Speaker 6>And so that's that's something that I've always really respected

250
00:14:08.679 --> 00:14:12.799
<v Speaker 6>about you in your work, and especially this dojo approach

251
00:14:12.879 --> 00:14:15.120
<v Speaker 6>where where you teach people to roll out their slaves

252
00:14:15.159 --> 00:14:18.840
<v Speaker 6>and get their hands dirty first, really early in the process.

253
00:14:19.039 --> 00:14:22.559
<v Speaker 5>Yes, And what's great about codin dozho it was created

254
00:14:22.679 --> 00:14:26.000
<v Speaker 5>by two French guys. I believe that it was created

255
00:14:26.200 --> 00:14:30.799
<v Speaker 5>in France. I can't remember the names of the loo

256
00:14:30.960 --> 00:14:33.679
<v Speaker 5>Bosavi and I don't remember the.

257
00:14:33.919 --> 00:14:34.799
<v Speaker 2>Name of the other guy.

258
00:14:34.919 --> 00:14:39.960
<v Speaker 5>But one of the goals when I learned the coding

259
00:14:40.000 --> 00:14:42.720
<v Speaker 5>doozho from one of my students, it is one of

260
00:14:42.799 --> 00:14:44.639
<v Speaker 5>the goals I know you you do.

261
00:14:46.120 --> 00:14:48.000
<v Speaker 2>During one two three.

262
00:14:47.879 --> 00:14:51.200
<v Speaker 5>Hours, you solve a problem a code kata. And this

263
00:14:51.559 --> 00:14:55.320
<v Speaker 5>concept of code kata was created by the great Dave Thomas,

264
00:14:55.919 --> 00:14:59.519
<v Speaker 5>which you know well, and his idea was it was

265
00:14:59.600 --> 00:15:03.320
<v Speaker 5>a small problem that you'd solve several times with.

266
00:15:03.440 --> 00:15:05.840
<v Speaker 2>Different techniques in different languages.

267
00:15:06.519 --> 00:15:09.679
<v Speaker 5>And so in there it's it's the de seed for

268
00:15:10.120 --> 00:15:13.759
<v Speaker 5>this idea that you for you to be a good programmer,

269
00:15:13.879 --> 00:15:16.480
<v Speaker 5>you can't be just don't know, I'm going to become

270
00:15:16.679 --> 00:15:20.440
<v Speaker 5>perfect with Java and forget all about the other language. No,

271
00:15:20.559 --> 00:15:24.279
<v Speaker 5>you can learn product you can learn, list you can learn.

272
00:15:24.600 --> 00:15:28.799
<v Speaker 5>Of course, you have to decide. That's something that was

273
00:15:28.879 --> 00:15:33.559
<v Speaker 5>happening at the Elixir World telegram group today is that

274
00:15:34.120 --> 00:15:36.919
<v Speaker 5>sometimes you have to choose you cannot. I'm going to

275
00:15:37.120 --> 00:15:39.080
<v Speaker 5>learn a bit of ELM, a bit of Elixir, a

276
00:15:39.159 --> 00:15:42.000
<v Speaker 5>bit of Irland, a bit of Java, and and that

277
00:15:42.279 --> 00:15:45.159
<v Speaker 5>being competent nothing you have to choose. I'm going to

278
00:15:45.240 --> 00:15:49.480
<v Speaker 5>be good in elixure, I'm going to study other language

279
00:15:49.639 --> 00:15:53.080
<v Speaker 5>so that I will be a better Elixir developer, a

280
00:15:53.159 --> 00:15:56.440
<v Speaker 5>better developer in general, and maybe in the future again,

281
00:15:56.519 --> 00:16:00.240
<v Speaker 5>oh no, Now I don't have a job with elik serve,

282
00:16:00.279 --> 00:16:03.279
<v Speaker 5>but they have a Java job, so I can do

283
00:16:03.480 --> 00:16:04.000
<v Speaker 5>Java too.

284
00:16:04.360 --> 00:16:04.840
<v Speaker 2>And this is.

285
00:16:06.320 --> 00:16:09.200
<v Speaker 5>Sorry, this is a real case. A friend of mine

286
00:16:09.320 --> 00:16:11.879
<v Speaker 5>she had an elixirve job and then she went to

287
00:16:12.720 --> 00:16:16.759
<v Speaker 5>Sweden to be an airline developer, and then she found

288
00:16:16.799 --> 00:16:17.759
<v Speaker 5>a Java job.

289
00:16:17.919 --> 00:16:19.360
<v Speaker 2>So yeah.

290
00:16:19.960 --> 00:16:23.120
<v Speaker 3>In my experience, the whole idea of being a generalist

291
00:16:23.720 --> 00:16:26.679
<v Speaker 3>sort of turns out to be a pretty good specialty

292
00:16:27.360 --> 00:16:31.120
<v Speaker 3>and just having multiple things to lean on and having

293
00:16:31.159 --> 00:16:36.600
<v Speaker 3>a wide knowledge of technology servers. For example, the field

294
00:16:36.600 --> 00:16:40.519
<v Speaker 3>of web development is by its very nature extremely wide.

295
00:16:40.720 --> 00:16:43.480
<v Speaker 3>There's a ton of things you should know to be

296
00:16:44.080 --> 00:16:48.960
<v Speaker 3>really knowledgeable about the web, both back and front end,

297
00:16:49.279 --> 00:16:53.039
<v Speaker 3>and the web standards and the APIs. There are so

298
00:16:53.679 --> 00:16:58.039
<v Speaker 3>many things, and every domain in programming is basically like that,

299
00:16:58.240 --> 00:17:00.720
<v Speaker 3>and there's a lot of depth and there's a lot

300
00:17:00.759 --> 00:17:04.240
<v Speaker 3>of width. And of course you can focus down on

301
00:17:04.319 --> 00:17:08.000
<v Speaker 3>a language to become an absolute expert in wielding the

302
00:17:08.279 --> 00:17:13.720
<v Speaker 3>minute details of Java or Elixir or Python or c.

303
00:17:14.359 --> 00:17:17.359
<v Speaker 3>But you can also pick up a few different languages

304
00:17:17.599 --> 00:17:21.000
<v Speaker 3>or pick up a wide skill set where Okay, you

305
00:17:21.079 --> 00:17:24.519
<v Speaker 3>need a SEQL database up and running, or now we

306
00:17:24.640 --> 00:17:28.200
<v Speaker 3>need to set up some additional servers, or we need

307
00:17:28.319 --> 00:17:31.559
<v Speaker 3>to write something in this language because we're using a

308
00:17:31.640 --> 00:17:35.240
<v Speaker 3>project written in an entirely different language. Is there anyone

309
00:17:35.519 --> 00:17:38.000
<v Speaker 3>that can actually read the code and work with it?

310
00:17:38.240 --> 00:17:38.920
<v Speaker 2>Okay? Yeah.

311
00:17:39.079 --> 00:17:41.559
<v Speaker 3>If you know a few languages, picking up a new one,

312
00:17:41.680 --> 00:17:45.519
<v Speaker 3>for example, is usually fairly straightforward, except when you run

313
00:17:45.559 --> 00:17:49.319
<v Speaker 3>into like the paradigm shift of functional programming, for example.

314
00:17:49.599 --> 00:17:55.720
<v Speaker 3>But I think having that generalist approach tends to I've

315
00:17:56.279 --> 00:17:59.039
<v Speaker 3>often heard the advice to specialize, you need to be

316
00:17:59.119 --> 00:18:01.480
<v Speaker 3>good at a specific thing, and I think I think

317
00:18:01.559 --> 00:18:05.480
<v Speaker 3>people mistake what that should be and what that needs

318
00:18:05.519 --> 00:18:08.440
<v Speaker 3>to be. I think you can be very experienced. It

319
00:18:08.480 --> 00:18:11.400
<v Speaker 3>can be an expert. That doesn't mean that you know

320
00:18:11.640 --> 00:18:14.519
<v Speaker 3>every detail of the language. It can, but then you're

321
00:18:14.519 --> 00:18:18.200
<v Speaker 3>a language doctor or a language specialist. That's usually not

322
00:18:18.319 --> 00:18:24.119
<v Speaker 3>the most useful value add for a particular endeavor in

323
00:18:24.240 --> 00:18:25.920
<v Speaker 3>my experience, and I.

324
00:18:25.960 --> 00:18:29.839
<v Speaker 6>Mean, it strikes me, Adolpho, that you are essentially starting

325
00:18:29.880 --> 00:18:32.119
<v Speaker 6>to move people in this direction right with your functional

326
00:18:32.160 --> 00:18:34.480
<v Speaker 6>programming course and with the way that the world is

327
00:18:34.559 --> 00:18:37.960
<v Speaker 6>moving or needs to move. Maybe it's a movie there

328
00:18:38.000 --> 00:18:42.640
<v Speaker 6>fast enough, but it strikes me that you've you've at

329
00:18:42.680 --> 00:18:44.599
<v Speaker 6>some point you've made a decision and to take people

330
00:18:44.680 --> 00:18:47.400
<v Speaker 6>in this direction. When when was that? When did you

331
00:18:47.480 --> 00:18:51.400
<v Speaker 6>start to be more of kind of open up the

332
00:18:51.440 --> 00:18:53.960
<v Speaker 6>blinders a little bit. In the United States, there are

333
00:18:54.160 --> 00:18:57.200
<v Speaker 6>a whole lot of schools that are invested in teaching

334
00:18:57.279 --> 00:19:00.839
<v Speaker 6>Java and teaching Microsoft because that's where the certification, and

335
00:19:00.920 --> 00:19:03.119
<v Speaker 6>they've made investments in those places and they just can't

336
00:19:03.119 --> 00:19:03.559
<v Speaker 6>break away.

337
00:19:03.799 --> 00:19:07.359
<v Speaker 5>I have a lot of freedom here in the public university,

338
00:19:07.480 --> 00:19:10.960
<v Speaker 5>where the government owns the university and it's free for

339
00:19:11.160 --> 00:19:16.279
<v Speaker 5>the students, so I can offer the course. I have

340
00:19:16.480 --> 00:19:19.680
<v Speaker 5>some freedom to offer some courses, and I decided to

341
00:19:20.039 --> 00:19:26.240
<v Speaker 5>start this functional programming course and functional programming is getting

342
00:19:26.680 --> 00:19:31.200
<v Speaker 5>more well known with Brazilian software developers because there is

343
00:19:31.279 --> 00:19:35.119
<v Speaker 5>a big company called New Bank, which it's a kind

344
00:19:35.160 --> 00:19:39.200
<v Speaker 5>of a banking additional banking company. They have a credit

345
00:19:39.279 --> 00:19:42.720
<v Speaker 5>card and they bought platform Attack, which is the company

346
00:19:42.759 --> 00:19:43.720
<v Speaker 5>where Gioseffelin.

347
00:19:44.119 --> 00:19:47.359
<v Speaker 2>Actually Giosefeline not only worked with that, but he was

348
00:19:47.480 --> 00:19:49.400
<v Speaker 2>one of the owners of the company.

349
00:19:49.839 --> 00:19:54.720
<v Speaker 5>And after that, the same company bought cogny Tact, which

350
00:19:55.200 --> 00:19:59.359
<v Speaker 5>was the company is it still is the company behind Closure.

351
00:19:59.519 --> 00:20:03.240
<v Speaker 2>So there was some kind of publicity for.

352
00:20:03.480 --> 00:20:07.359
<v Speaker 5>Functional programming language here in Brazil because of these two

353
00:20:07.839 --> 00:20:10.599
<v Speaker 5>companies that were bought. So I hope that in the

354
00:20:10.720 --> 00:20:14.720
<v Speaker 5>near future I have more students for my functional Programming plus.

355
00:20:14.799 --> 00:20:19.480
<v Speaker 5>I tried to offer them this because they what they

356
00:20:19.960 --> 00:20:25.039
<v Speaker 5>learn as mandatory courses is c C plus plus and job.

357
00:20:26.480 --> 00:20:28.960
<v Speaker 2>That's what they have to learn. But if they want,

358
00:20:29.000 --> 00:20:31.559
<v Speaker 2>they can learn Elixir too.

359
00:20:32.119 --> 00:20:34.599
<v Speaker 1>I think related to this kind of on the topic

360
00:20:34.759 --> 00:20:38.839
<v Speaker 1>of teaching and producing generalists, sort of what you're saying like, okay, well,

361
00:20:39.440 --> 00:20:41.960
<v Speaker 1>students are if not required, then they're kind of put

362
00:20:42.000 --> 00:20:44.200
<v Speaker 1>into these boxes to learn these three languages, and if

363
00:20:44.240 --> 00:20:45.839
<v Speaker 1>they want to they can come over here. And learn

364
00:20:45.920 --> 00:20:48.880
<v Speaker 1>this as well really releases something you said earlier, which

365
00:20:48.920 --> 00:20:52.519
<v Speaker 1>is that you're not teaching students alixir, although you know

366
00:20:52.640 --> 00:20:55.000
<v Speaker 1>hopefully you are. You're teaching them how to learn, and

367
00:20:55.480 --> 00:20:58.480
<v Speaker 1>I've always found that one of the best ways to

368
00:20:58.599 --> 00:21:03.000
<v Speaker 1>do that is to make your students strategically uncomfortable, like

369
00:21:03.119 --> 00:21:05.160
<v Speaker 1>kind of let let them suffer a little. And I'm

370
00:21:05.160 --> 00:21:07.279
<v Speaker 1>gonna actually put Stephen in the hot feel a little

371
00:21:07.319 --> 00:21:09.319
<v Speaker 1>bit because I think that this is if that's my

372
00:21:09.440 --> 00:21:11.799
<v Speaker 1>teaching ploss that I think I probably stole that from.

373
00:21:11.680 --> 00:21:12.799
<v Speaker 2>You a little bit.

374
00:21:13.000 --> 00:21:15.039
<v Speaker 7>Yeah, I think that you know, there's they're sort of

375
00:21:15.240 --> 00:21:18.559
<v Speaker 7>thinking about learning that you learn through and comfort the most.

376
00:21:18.759 --> 00:21:21.880
<v Speaker 7>So the closure you can safely push people into being uncomfortable,

377
00:21:22.720 --> 00:21:25.440
<v Speaker 7>the faster they'll sort of learn. I think everything is

378
00:21:25.519 --> 00:21:27.920
<v Speaker 7>sort of theoretical until you've gotten to the point where

379
00:21:27.960 --> 00:21:29.559
<v Speaker 7>you're like, oh, I have a deadline and have to

380
00:21:29.599 --> 00:21:32.039
<v Speaker 7>build this project and I'm going to present in front

381
00:21:32.079 --> 00:21:35.039
<v Speaker 7>of my entire class in two days. Oh my god,

382
00:21:35.160 --> 00:21:36.400
<v Speaker 7>this is the end of the world if I do

383
00:21:36.519 --> 00:21:39.960
<v Speaker 7>this wrong. But yeah, I think suffering is important, even

384
00:21:40.000 --> 00:21:41.799
<v Speaker 7>if I sound a little low mean when I say it.

385
00:21:41.920 --> 00:21:44.440
<v Speaker 7>I think that suffering and struggle is where you get

386
00:21:44.480 --> 00:21:46.039
<v Speaker 7>the best learning and where it sticks.

387
00:21:46.440 --> 00:21:46.920
<v Speaker 2>It's funny.

388
00:21:46.960 --> 00:21:49.920
<v Speaker 6>There's a there's a man named Evan Miller, which we

389
00:21:49.960 --> 00:21:53.160
<v Speaker 6>should definitely have on this this this podcast at some point.

390
00:21:53.680 --> 00:21:58.000
<v Speaker 6>He's behind the Earl Project Chicago boss and so Adulfo.

391
00:21:58.119 --> 00:22:00.920
<v Speaker 6>We were doing this Mint group that you're part of,

392
00:22:01.240 --> 00:22:03.599
<v Speaker 6>you know, long before you and I met. We were

393
00:22:03.680 --> 00:22:06.440
<v Speaker 6>doing it in Chattanooga, and everyone would show up right

394
00:22:06.680 --> 00:22:09.720
<v Speaker 6>pre pandemic. But Evan would look up my shoulder when

395
00:22:09.720 --> 00:22:13.160
<v Speaker 6>I was teaching somebody and someone would start to go

396
00:22:13.319 --> 00:22:15.559
<v Speaker 6>off in the wrong direction, and that kind of give

397
00:22:15.680 --> 00:22:17.799
<v Speaker 6>them a general nudge, you know, kind of nuts the

398
00:22:17.960 --> 00:22:19.920
<v Speaker 6>rudder every now and then, and you know, I turn

399
00:22:19.960 --> 00:22:23.319
<v Speaker 6>around and if it will be shaking his head right,

400
00:22:23.960 --> 00:22:26.119
<v Speaker 6>and then, you know, so I would try to explain

401
00:22:26.240 --> 00:22:28.920
<v Speaker 6>harder and he would be shaking his head. And then

402
00:22:29.119 --> 00:22:32.599
<v Speaker 6>so this one time I turned around, I said.

403
00:22:32.599 --> 00:22:34.759
<v Speaker 2>What Evan, what you know?

404
00:22:34.839 --> 00:22:39.680
<v Speaker 6>And everybody just turned around. I'm usually pretty unflappable, right,

405
00:22:40.359 --> 00:22:44.240
<v Speaker 6>but I was not that day. And he said, Bruce,

406
00:22:44.279 --> 00:22:49.200
<v Speaker 6>it's all about the struggle. And so you know, that's

407
00:22:49.319 --> 00:22:53.799
<v Speaker 6>that's probably my great weakness in a classroom setting, is

408
00:22:53.960 --> 00:22:57.680
<v Speaker 6>building in enough struggle, right, So I teach a lot

409
00:22:57.720 --> 00:23:00.200
<v Speaker 6>of technique. So what I should do is all the

410
00:23:00.279 --> 00:23:04.559
<v Speaker 6>mistakes to happen in the right context and be kind

411
00:23:04.559 --> 00:23:07.839
<v Speaker 6>of a guide, be a guard rail so that when

412
00:23:08.000 --> 00:23:12.079
<v Speaker 6>the struggles happen, you can leave opportunity to bring people

413
00:23:12.160 --> 00:23:15.359
<v Speaker 6>back on course and then and then cast them into

414
00:23:15.440 --> 00:23:18.759
<v Speaker 6>the wind again. But yeah, you saw that first time.

415
00:23:19.319 --> 00:23:22.960
<v Speaker 5>Yes, yes, and it's important because it's related to that

416
00:23:23.279 --> 00:23:28.240
<v Speaker 5>model that used the Drifus model. Of course, if someone

417
00:23:28.559 --> 00:23:33.640
<v Speaker 5>is a beginner, he or she needs more the direct instruction.

418
00:23:33.880 --> 00:23:37.839
<v Speaker 5>But if someone that has a little bit more of

419
00:23:38.000 --> 00:23:41.839
<v Speaker 5>experience than you are, okay, right, go to the internet

420
00:23:41.960 --> 00:23:45.000
<v Speaker 5>and try to find what's the solution. Because one thing

421
00:23:45.079 --> 00:23:49.640
<v Speaker 5>that I also think that's important nowadays that wasn't important when.

422
00:23:50.079 --> 00:23:53.680
<v Speaker 5>That's important when when I started to learn program because

423
00:23:53.720 --> 00:23:57.519
<v Speaker 5>when I started learning programming a long time ago, I

424
00:23:57.680 --> 00:24:02.200
<v Speaker 5>started with basic there was no internet, so all I

425
00:24:02.279 --> 00:24:05.000
<v Speaker 5>had was a book in the computer. But now we

426
00:24:05.119 --> 00:24:07.960
<v Speaker 5>have lots of place where you can go. If you

427
00:24:08.039 --> 00:24:11.640
<v Speaker 5>want to learn Elixir, you can go to Elixir School,

428
00:24:12.000 --> 00:24:16.720
<v Speaker 5>and there is also the Elixir Forum, Elixir on Slack,

429
00:24:16.839 --> 00:24:21.400
<v Speaker 5>Elixir on Discord, and I have just created the Elixir.

430
00:24:21.079 --> 00:24:24.599
<v Speaker 2>World on in telegram and also tweetered.

431
00:24:24.920 --> 00:24:28.359
<v Speaker 5>There's a lot of people tweeting about Elixir and so

432
00:24:29.759 --> 00:24:32.680
<v Speaker 5>I think nowadays, if you want to learn a language,

433
00:24:32.799 --> 00:24:37.119
<v Speaker 5>you have also to learn how to navigate all these

434
00:24:37.359 --> 00:24:40.920
<v Speaker 5>opportunits to learn from others in the community.

435
00:24:41.480 --> 00:24:45.599
<v Speaker 4>I wanted to plass one alexir World on telegram. I'm

436
00:24:45.640 --> 00:24:47.720
<v Speaker 4>a big fan of telegram and I joined it once

437
00:24:47.720 --> 00:24:51.200
<v Speaker 4>I realized it existed, and immediately scrolled up and saw

438
00:24:51.319 --> 00:24:52.400
<v Speaker 4>interesting conversation.

439
00:24:52.759 --> 00:24:57.680
<v Speaker 5>Thanks, I just started. My idea with Elixir Road was

440
00:24:57.839 --> 00:25:01.960
<v Speaker 5>exactly that. I'm part of the eliksu bersial telegram and

441
00:25:02.279 --> 00:25:07.960
<v Speaker 5>there's there are many interesting conversations there in Portuguese, of

442
00:25:08.079 --> 00:25:11.160
<v Speaker 5>course because it's our language, but there was no I

443
00:25:11.279 --> 00:25:14.920
<v Speaker 5>think there's no group like that in English. So I'm

444
00:25:14.960 --> 00:25:20.119
<v Speaker 5>going to create one for English speaking, of course, not

445
00:25:20.319 --> 00:25:21.039
<v Speaker 5>English speaking.

446
00:25:21.440 --> 00:25:24.680
<v Speaker 2>It's people from all over the world. I once I.

447
00:25:24.759 --> 00:25:28.640
<v Speaker 5>Listed there are people from many countries and so don't

448
00:25:28.799 --> 00:25:33.079
<v Speaker 5>expect perfect English there, but people that can understand and

449
00:25:33.240 --> 00:25:34.960
<v Speaker 5>write based English.

450
00:25:35.359 --> 00:25:38.400
<v Speaker 6>That's so important too. Also that that we don't all

451
00:25:38.519 --> 00:25:41.079
<v Speaker 6>look alike or sound alike. I think that one of

452
00:25:41.119 --> 00:25:45.039
<v Speaker 6>the things you get is different problem solving perspectives, and

453
00:25:45.319 --> 00:25:48.039
<v Speaker 6>when when we have people who have come from different

454
00:25:48.039 --> 00:25:54.480
<v Speaker 6>backgrounds and different skills and and you get different language approaches,

455
00:25:55.279 --> 00:25:59.240
<v Speaker 6>and you have justice, you know, make everything. You know,

456
00:25:59.480 --> 00:26:03.039
<v Speaker 6>I will steamroll any obstacle. You know, I'll you know,

457
00:26:03.160 --> 00:26:06.240
<v Speaker 6>we write to the Linux kernel for nerves. And then

458
00:26:06.279 --> 00:26:10.279
<v Speaker 6>you have Bruce Williams and his approach and his kind

459
00:26:10.319 --> 00:26:14.240
<v Speaker 6>of zen like approach to making things beautiful and making

460
00:26:14.319 --> 00:26:18.400
<v Speaker 6>them flow and making them exactly in the right abstractions.

461
00:26:18.480 --> 00:26:23.039
<v Speaker 2>And then you get absent. But that's what makes community special.

462
00:26:23.200 --> 00:26:26.920
<v Speaker 6>And I'm really glad that you don't see perfect English

463
00:26:27.000 --> 00:26:30.440
<v Speaker 6>there right, that you see that you see such a

464
00:26:30.640 --> 00:26:35.759
<v Speaker 6>variety not just words, but of thought structures and paradigms

465
00:26:35.839 --> 00:26:36.400
<v Speaker 6>and things like that.

466
00:26:36.880 --> 00:26:40.319
<v Speaker 1>And I think that's one of our responsibilities as teachers

467
00:26:40.400 --> 00:26:43.480
<v Speaker 1>and as educators. I think, is not just to give

468
00:26:43.519 --> 00:26:45.559
<v Speaker 1>people materials that they can learn how to do a thing,

469
00:26:45.960 --> 00:26:49.680
<v Speaker 1>but it's how to create conditions around them in which

470
00:26:49.720 --> 00:26:52.160
<v Speaker 1>they can learn. And part of that are the conditions

471
00:26:52.240 --> 00:26:55.240
<v Speaker 1>of this community, of the electric community, of the aline community,

472
00:26:55.279 --> 00:26:58.039
<v Speaker 1>of the functional programming community. And that's why I think,

473
00:26:58.079 --> 00:26:59.440
<v Speaker 1>in particular, you know a lot of the work that

474
00:26:59.440 --> 00:27:02.319
<v Speaker 1>you've done at all to create these resources and these

475
00:27:02.400 --> 00:27:05.279
<v Speaker 1>channels and these spaces where people can come together and

476
00:27:05.480 --> 00:27:08.279
<v Speaker 1>learn together. I think is really incredible And I would

477
00:27:08.319 --> 00:27:10.519
<v Speaker 1>love to hear from you what more do you want

478
00:27:10.599 --> 00:27:13.119
<v Speaker 1>to see in the elexir community? Like, what resource do

479
00:27:13.200 --> 00:27:15.920
<v Speaker 1>you wish existed that doesn't Maybe it's that Alexa for

480
00:27:16.039 --> 00:27:18.799
<v Speaker 1>Absolute Beginner's Book. You know, what kind of involvement or

481
00:27:18.839 --> 00:27:21.119
<v Speaker 1>participation do you want to see from people in the

482
00:27:21.200 --> 00:27:23.880
<v Speaker 1>group that you've created or or in other groups? You know,

483
00:27:23.960 --> 00:27:26.279
<v Speaker 1>what can we all be doing to keep this community

484
00:27:26.359 --> 00:27:29.400
<v Speaker 1>growing so we can keep educating and keep bringing in newcomers.

485
00:27:29.640 --> 00:27:35.519
<v Speaker 2>Wow, that's a good question. Maybe I really like Exorcism and.

486
00:27:35.960 --> 00:27:39.400
<v Speaker 5>That's a resource that I think it's not there's no

487
00:27:39.559 --> 00:27:42.839
<v Speaker 5>need to create another Exciscism. But maybe people in the

488
00:27:42.920 --> 00:27:46.559
<v Speaker 5>community that want to help others, they should go there

489
00:27:46.640 --> 00:27:49.480
<v Speaker 5>and become a mentor. And the orders that want tread

490
00:27:49.559 --> 00:27:53.119
<v Speaker 5>should go there and become maintees and try to learn

491
00:27:53.359 --> 00:27:56.960
<v Speaker 5>using research like that. And I mean, let me just

492
00:27:57.039 --> 00:27:59.880
<v Speaker 5>say what I see in the Brazilian community, there's a lot,

493
00:28:00.640 --> 00:28:04.960
<v Speaker 5>a lot. It's a lot, know, some like coding with

494
00:28:05.160 --> 00:28:08.640
<v Speaker 5>elixir when on t each some on YouTube. I would

495
00:28:08.720 --> 00:28:12.160
<v Speaker 5>like to see the more in English. Maybe I don't

496
00:28:12.240 --> 00:28:15.119
<v Speaker 5>see it because it has not arrived to me, but

497
00:28:15.599 --> 00:28:19.119
<v Speaker 5>it's there. So I if you know someone doing that,

498
00:28:19.680 --> 00:28:24.440
<v Speaker 5>please treat me and then I you try to include that.

499
00:28:24.599 --> 00:28:28.279
<v Speaker 5>I mean, I have a small bit help project where

500
00:28:28.359 --> 00:28:31.400
<v Speaker 5>I'm compiling. Maybe after some time I will give this

501
00:28:31.559 --> 00:28:37.240
<v Speaker 5>information to the Airline Ecosystem Foundation, because that's one of

502
00:28:37.400 --> 00:28:41.880
<v Speaker 5>the things that let me introduce this subject. I'm part

503
00:28:42.000 --> 00:28:45.880
<v Speaker 5>of the Education Working Group of the Long Ecosystem Foundation,

504
00:28:46.480 --> 00:28:50.039
<v Speaker 5>and we are doing lots of things to try to

505
00:28:50.119 --> 00:28:53.359
<v Speaker 5>make not on Elixir but also Airline and the other

506
00:28:53.519 --> 00:28:57.920
<v Speaker 5>being language, make them more populars, to allow more people

507
00:28:58.240 --> 00:29:00.960
<v Speaker 5>that want to learn that this length was to learn them.

508
00:29:01.920 --> 00:29:08.359
<v Speaker 5>So for instance, we have had Elixir called you VIRTUALO

509
00:29:08.720 --> 00:29:12.160
<v Speaker 5>a few months ago and there is a professor and

510
00:29:12.880 --> 00:29:16.400
<v Speaker 5>my students want to take part in the training. So

511
00:29:16.680 --> 00:29:22.039
<v Speaker 5>the foundation and supported the students and we have a

512
00:29:22.119 --> 00:29:26.519
<v Speaker 5>lot of initiatives going on. We had before the pandemic.

513
00:29:26.599 --> 00:29:30.559
<v Speaker 5>We've had some meetings where we we di scutted. For instance,

514
00:29:30.680 --> 00:29:34.200
<v Speaker 5>one of the initiatives initiatives was to try to find

515
00:29:34.440 --> 00:29:39.839
<v Speaker 5>professors in many universities that are teaching either airline or

516
00:29:39.880 --> 00:29:44.319
<v Speaker 5>Elixxure or other language, and to try to connect these

517
00:29:45.039 --> 00:29:50.799
<v Speaker 5>professionals that use Elixure in production with these professors that

518
00:29:51.079 --> 00:29:55.319
<v Speaker 5>teach Elixir or length, so that these professionals can give

519
00:29:55.480 --> 00:29:59.640
<v Speaker 5>talks to their students. And I believe there is also

520
00:30:00.160 --> 00:30:03.599
<v Speaker 5>I need, as I said, for a good introductory book,

521
00:30:03.920 --> 00:30:08.920
<v Speaker 5>but I know that that's because I particularly love books.

522
00:30:09.200 --> 00:30:12.200
<v Speaker 5>Maybe most of the people nowadays don't love book as

523
00:30:12.319 --> 00:30:16.119
<v Speaker 5>much as I do, so there's maybe no economic reason

524
00:30:16.359 --> 00:30:20.319
<v Speaker 5>for an introductory book, but I love books. I would

525
00:30:20.440 --> 00:30:24.119
<v Speaker 5>like to see a really introductory book leaks through, and

526
00:30:24.279 --> 00:30:24.920
<v Speaker 5>I think that's it.

527
00:30:25.559 --> 00:30:29.440
<v Speaker 6>A Licture should be a good language to break into

528
00:30:29.480 --> 00:30:31.880
<v Speaker 6>functional programming. And I say that because I think that

529
00:30:32.680 --> 00:30:35.599
<v Speaker 6>a leixture can stand on its own when you just

530
00:30:35.720 --> 00:30:39.160
<v Speaker 6>get into the core, just the kind of the peer functions,

531
00:30:39.240 --> 00:30:43.559
<v Speaker 6>the exorcism size and shaped projects. And you can do

532
00:30:43.720 --> 00:30:49.599
<v Speaker 6>that without absorbing a whole lot of functional algebra in

533
00:30:49.759 --> 00:30:53.759
<v Speaker 6>terms of the type structures. But you still have the

534
00:30:53.920 --> 00:30:57.279
<v Speaker 6>full power of functional programming that you can.

535
00:30:57.279 --> 00:30:59.640
<v Speaker 2>Bring to bear. So it should be.

536
00:31:00.119 --> 00:31:01.960
<v Speaker 6>And the other thing that I think is critical is

537
00:31:02.039 --> 00:31:05.799
<v Speaker 6>that with the pipe, you have this idea of glue

538
00:31:06.079 --> 00:31:09.640
<v Speaker 6>between concepts, and that's the hard thing about teaching someone

539
00:31:09.759 --> 00:31:13.480
<v Speaker 6>that's new, or teaching someone from an abjectorian system where

540
00:31:13.680 --> 00:31:17.039
<v Speaker 6>we say, okay, objects don't do that, inheritance don't do that.

541
00:31:17.160 --> 00:31:18.599
<v Speaker 6>So there's a lot of things that we say not

542
00:31:18.720 --> 00:31:22.200
<v Speaker 6>to do. But unless you replace that glue, it's difficult

543
00:31:22.640 --> 00:31:25.759
<v Speaker 6>to get traction with a new programmer. But if you

544
00:31:25.880 --> 00:31:30.000
<v Speaker 6>have this framework of hey, there's a module that collects things,

545
00:31:30.079 --> 00:31:34.000
<v Speaker 6>and then that module surrounds this central type and then

546
00:31:34.039 --> 00:31:37.400
<v Speaker 6>you can kind of chain things together with simple transformations,

547
00:31:37.680 --> 00:31:40.640
<v Speaker 6>I think it should be I think you're definitely onto

548
00:31:40.720 --> 00:31:45.160
<v Speaker 6>something that learning programming one oh one in Elixer is

549
00:31:45.720 --> 00:31:47.000
<v Speaker 6>definitely something that you could do.

550
00:31:47.160 --> 00:31:50.880
<v Speaker 2>I would like to say something else about this learning

551
00:31:51.599 --> 00:31:52.279
<v Speaker 2>the community.

552
00:31:52.759 --> 00:31:56.240
<v Speaker 5>One thing that I noticed that it's really attracted me

553
00:31:56.400 --> 00:32:01.119
<v Speaker 5>to the language and the larger communits being community because

554
00:32:01.160 --> 00:32:03.880
<v Speaker 5>it's not only Elixir but also Aline.

555
00:32:05.200 --> 00:32:06.440
<v Speaker 2>It's the podcasts.

556
00:32:07.079 --> 00:32:11.240
<v Speaker 5>This podcast already has more than one hundred episodes, and

557
00:32:11.319 --> 00:32:15.119
<v Speaker 5>there are other podcasts, and there is great podcast that

558
00:32:15.680 --> 00:32:19.119
<v Speaker 5>it seems has already finished by It has a lot

559
00:32:19.200 --> 00:32:22.000
<v Speaker 5>of great interviews there that you can if you want

560
00:32:22.039 --> 00:32:26.440
<v Speaker 5>to listen to interviews with Joe Armstrong from the past.

561
00:32:26.720 --> 00:32:30.839
<v Speaker 5>That it's their own Alixir fountain. So I think that

562
00:32:31.279 --> 00:32:36.000
<v Speaker 5>this community. Of course, I I before Elixir, I was

563
00:32:36.240 --> 00:32:41.039
<v Speaker 5>following the Closure community, which seems to be smaller. It

564
00:32:41.200 --> 00:32:46.519
<v Speaker 5>has less resources for beginners. Maybe today it has the same,

565
00:32:46.599 --> 00:32:50.960
<v Speaker 5>but at the time it had more less resources for beginners.

566
00:32:51.000 --> 00:32:53.200
<v Speaker 2>So I think the idea of podcasts.

567
00:32:53.240 --> 00:32:58.240
<v Speaker 5>I love podcasts because I can learn unexpected things. It's

568
00:32:58.440 --> 00:33:02.559
<v Speaker 5>that that world that people use its certain deepity, right,

569
00:33:02.880 --> 00:33:06.519
<v Speaker 5>so you're not expecting to learn something. And I mean,

570
00:33:06.640 --> 00:33:10.319
<v Speaker 5>of course, the learning that happens in a podcast is

571
00:33:10.799 --> 00:33:14.680
<v Speaker 5>much it's at a much higher level than the learning

572
00:33:14.759 --> 00:33:17.720
<v Speaker 5>that you learn when you, for instance, you go to

573
00:33:18.359 --> 00:33:22.240
<v Speaker 5>that series in your channel, Bruce and they grow to

574
00:33:22.279 --> 00:33:22.720
<v Speaker 5>your channel.

575
00:33:22.880 --> 00:33:25.359
<v Speaker 2>Of course you're going to learn some more.

576
00:33:25.359 --> 00:33:30.079
<v Speaker 5>Technical things, technical details about how to write and a

577
00:33:30.200 --> 00:33:33.400
<v Speaker 5>live view app. But it's also you can learn a

578
00:33:33.519 --> 00:33:37.240
<v Speaker 5>lot of things and listening to people from the community

579
00:33:38.119 --> 00:33:42.079
<v Speaker 5>and that's a great resource too. And I'm planning to

580
00:33:42.200 --> 00:33:46.160
<v Speaker 5>do some research about this and the podcasts and how

581
00:33:46.240 --> 00:33:49.920
<v Speaker 5>they are perceived by the community. I hope that when

582
00:33:50.079 --> 00:33:54.079
<v Speaker 5>this episode goes on Earth, I will have a survey

583
00:33:54.400 --> 00:33:57.319
<v Speaker 5>that to survey the community about how because I know

584
00:33:57.480 --> 00:34:00.640
<v Speaker 5>there are some people that don't like podcasts, they won't

585
00:34:00.799 --> 00:34:03.640
<v Speaker 5>listen to podcasts. But I know also that there is

586
00:34:03.759 --> 00:34:07.079
<v Speaker 5>many people that listen to podcasts. But what do they

587
00:34:07.160 --> 00:34:11.840
<v Speaker 5>get from the podcast? What do they expect from the podcasts?

588
00:34:12.480 --> 00:34:17.440
<v Speaker 5>What do they value more a person because he or

589
00:34:17.519 --> 00:34:20.639
<v Speaker 5>she was a guest on a podcast, or because of

590
00:34:20.679 --> 00:34:23.559
<v Speaker 5>what he or she said on a podcast.

591
00:34:24.400 --> 00:34:27.679
<v Speaker 2>There are some questions that I would like to see

592
00:34:27.800 --> 00:34:28.280
<v Speaker 2>answer it.

593
00:34:28.639 --> 00:34:30.679
<v Speaker 4>Yes, I used to listen to I've forgotten the name

594
00:34:30.719 --> 00:34:33.639
<v Speaker 4>of it now, but the only airline podcast that existed

595
00:34:33.719 --> 00:34:36.760
<v Speaker 4>back in the day with Brian Hunter and Zach But

596
00:34:37.400 --> 00:34:39.239
<v Speaker 4>I would I would always get value from it from

597
00:34:39.320 --> 00:34:41.599
<v Speaker 4>things like Bruce saying, hey, you should really focus on

598
00:34:41.679 --> 00:34:44.760
<v Speaker 4>the transformations. And you know, it's a very pity statement

599
00:34:45.000 --> 00:34:48.320
<v Speaker 4>in exactly the right meaning of the word, like learning

600
00:34:48.400 --> 00:34:50.559
<v Speaker 4>hearing someone smart say that and go, huh, I wonder

601
00:34:50.639 --> 00:34:53.320
<v Speaker 4>how I actually put that into practice and then figuring

602
00:34:53.320 --> 00:34:55.639
<v Speaker 4>it out a month later. That's kind of the value

603
00:34:55.639 --> 00:34:57.519
<v Speaker 4>I always got from programming podcasts.

604
00:34:58.119 --> 00:35:01.440
<v Speaker 2>I believe the name of the podcast was mostly Earling.

605
00:35:01.840 --> 00:35:03.000
<v Speaker 1>It was mostly Earling.

606
00:35:03.159 --> 00:35:05.079
<v Speaker 4>Yeah, I listened to that while I was painting a house.

607
00:35:05.960 --> 00:35:09.519
<v Speaker 1>I definitely agree with you, and also that sometimes you're

608
00:35:09.559 --> 00:35:11.559
<v Speaker 1>listening to podcasts and you don't you don't really know

609
00:35:11.639 --> 00:35:13.639
<v Speaker 1>what to expect. You don't know what you're going to learn.

610
00:35:13.719 --> 00:35:15.920
<v Speaker 1>And that's what I appreciate about it, because I think,

611
00:35:15.960 --> 00:35:18.599
<v Speaker 1>you know, you pick up a book for a reason, right,

612
00:35:18.800 --> 00:35:20.880
<v Speaker 1>I want to learn how to do X and alixir.

613
00:35:21.440 --> 00:35:23.239
<v Speaker 1>You know, you probably read a blog post for a

614
00:35:23.360 --> 00:35:25.760
<v Speaker 1>reason as well. You were literally googling how to do

615
00:35:25.880 --> 00:35:27.519
<v Speaker 1>this thing. I'm like, oh, this came up and you

616
00:35:27.599 --> 00:35:29.800
<v Speaker 1>read it. But with podcasts, it's just kind of like

617
00:35:29.920 --> 00:35:32.800
<v Speaker 1>an open space to start encountering things that you didn't expect.

618
00:35:32.960 --> 00:35:35.840
<v Speaker 1>Here people talk about topics that weren't necessarily on your mind.

619
00:35:36.280 --> 00:35:38.760
<v Speaker 1>It's kind of like why I like, I don't know

620
00:35:38.840 --> 00:35:40.599
<v Speaker 1>how you guys are going to feel about this comparison,

621
00:35:40.960 --> 00:35:44.480
<v Speaker 1>but what I like about cable television is that I

622
00:35:44.599 --> 00:35:46.960
<v Speaker 1>only watch Law and Order on TV. They pick up

623
00:35:47.000 --> 00:35:49.480
<v Speaker 1>the Law and Order episode for you all day long,

624
00:35:49.639 --> 00:35:52.360
<v Speaker 1>from like eight am to eight pm. Like, you didn't

625
00:35:52.480 --> 00:35:55.280
<v Speaker 1>choose the Lawn Order episode. You're just watching whatever they

626
00:35:55.360 --> 00:35:57.480
<v Speaker 1>put in front of your face. And that's fun, you

627
00:35:57.519 --> 00:35:59.719
<v Speaker 1>know that kind of that's what I'm looking for when

628
00:35:59.719 --> 00:36:02.880
<v Speaker 1>I'm listening to podcasts, Like I'm interested in the broad topic,

629
00:36:03.039 --> 00:36:04.639
<v Speaker 1>you know, I'm interested in who these people are, and

630
00:36:04.719 --> 00:36:06.000
<v Speaker 1>I just want to hear what they have to say.

631
00:36:06.000 --> 00:36:06.920
<v Speaker 1>And I don't know where it's.

632
00:36:06.840 --> 00:36:08.239
<v Speaker 2>Going to take me. You don't like if you're more

633
00:36:08.360 --> 00:36:11.199
<v Speaker 2>murder in your podcast, You're just I think I get it. Well.

634
00:36:11.320 --> 00:36:14.039
<v Speaker 1>I'm also listening. That'll be one of my picks. Actually,

635
00:36:14.119 --> 00:36:17.199
<v Speaker 1>it's pretty good true crime podcast that I was introduced

636
00:36:17.239 --> 00:36:17.760
<v Speaker 1>to recently.

637
00:36:17.960 --> 00:36:19.639
<v Speaker 3>So what you're saying is we'll get back to the

638
00:36:19.760 --> 00:36:20.320
<v Speaker 3>murder part.

639
00:36:20.599 --> 00:36:22.039
<v Speaker 1>Yeah, we'll talk about murder later.

640
00:36:22.519 --> 00:36:22.719
<v Speaker 2>Yeah.

641
00:36:22.840 --> 00:36:25.880
<v Speaker 3>I'm very curious to hear what comes out of the

642
00:36:26.199 --> 00:36:30.199
<v Speaker 3>survey at all, because I do feel that the different

643
00:36:30.239 --> 00:36:33.280
<v Speaker 3>podcasts that are available for the Lexi community, and we

644
00:36:33.400 --> 00:36:37.719
<v Speaker 3>have a disproportionate amount compared to our community size, I think,

645
00:36:38.639 --> 00:36:40.119
<v Speaker 3>so we have a lot of them, and I find

646
00:36:40.559 --> 00:36:43.239
<v Speaker 3>I find all of them interesting, and I feel like

647
00:36:43.400 --> 00:36:47.679
<v Speaker 3>they we actually do manage to cover different focus points

648
00:36:47.880 --> 00:36:54.440
<v Speaker 3>and have wildly different styles. The Outlaws are definitely a

649
00:36:54.559 --> 00:36:57.119
<v Speaker 3>style into their own, and I feel like there's a

650
00:36:57.159 --> 00:37:00.719
<v Speaker 3>lot of difference between the Wizards and us, even though

651
00:37:00.800 --> 00:37:04.920
<v Speaker 3>we are both to some extent guest driven. And yeah,

652
00:37:05.119 --> 00:37:09.800
<v Speaker 3>the whole meta conversation of what podcasts are good for

653
00:37:10.159 --> 00:37:14.639
<v Speaker 3>and yeah, very interesting. I hope to see your survey soon.

654
00:37:15.079 --> 00:37:17.039
<v Speaker 1>Well, speaking of picks, this might be as good a

655
00:37:17.119 --> 00:37:20.159
<v Speaker 1>time as any to wrap up our conversation and move

656
00:37:20.280 --> 00:37:23.079
<v Speaker 1>into picks. So we'll just kind of round robin and

657
00:37:23.159 --> 00:37:25.679
<v Speaker 1>if anybody has any links or recommendations to share, and

658
00:37:25.760 --> 00:37:28.400
<v Speaker 1>this is the time for it, start with las we.

659
00:37:28.480 --> 00:37:28.920
<v Speaker 2>Have for us.

660
00:37:29.239 --> 00:37:33.000
<v Speaker 3>Well, I have the newly launched being Bloggers Webring, and

661
00:37:33.360 --> 00:37:37.599
<v Speaker 3>I'll call out Sophie and well, Alex isn't here, so

662
00:37:37.679 --> 00:37:40.519
<v Speaker 3>I can't call him out. That you're supposed to p

663
00:37:40.840 --> 00:37:44.440
<v Speaker 3>army your blogs so they can be in the Webring.

664
00:37:45.039 --> 00:37:47.159
<v Speaker 3>But yeah, this is a fun little project that I

665
00:37:47.360 --> 00:37:49.920
<v Speaker 3>wanted to put together to just spread the love. Traffic

666
00:37:50.079 --> 00:37:53.440
<v Speaker 3>is rotating around the beam bloggers. There's more design to come.

667
00:37:53.800 --> 00:37:56.280
<v Speaker 3>Maybe it will even be pretty by the time this

668
00:37:56.440 --> 00:37:59.880
<v Speaker 3>episode launches. So yeah, check it out. It's beam blog

669
00:38:00.400 --> 00:38:02.519
<v Speaker 3>com or you can look around from my GitHub. But

670
00:38:02.639 --> 00:38:04.159
<v Speaker 3>beam blogger stuff com very cool.

671
00:38:04.199 --> 00:38:06.960
<v Speaker 1>I'm very excited to pr that have included my blog there.

672
00:38:07.199 --> 00:38:09.840
<v Speaker 1>It'll inspire me to write more. Thank you for that.

673
00:38:10.280 --> 00:38:11.199
<v Speaker 1>How about you birth.

674
00:38:11.159 --> 00:38:13.920
<v Speaker 6>You've got a couple of course, the Garroxio course is

675
00:38:14.000 --> 00:38:16.920
<v Speaker 6>going on now, the Lively Course, and that's been a

676
00:38:16.960 --> 00:38:18.639
<v Speaker 6>lot of fun. One of the things that I get

677
00:38:18.679 --> 00:38:21.960
<v Speaker 6>to do is look at techniques that are kind of

678
00:38:22.079 --> 00:38:23.760
<v Speaker 6>off the beaten path, and one of the things I

679
00:38:23.880 --> 00:38:27.119
<v Speaker 6>really like is gamerless chain sets. So I've kind of

680
00:38:27.159 --> 00:38:30.840
<v Speaker 6>been playing with where those live, right, It's an ecto thing,

681
00:38:31.039 --> 00:38:32.679
<v Speaker 6>but it's something that likes to live in the view.

682
00:38:32.840 --> 00:38:35.960
<v Speaker 6>So I'm working on a video this afternoon that'll go

683
00:38:36.079 --> 00:38:39.159
<v Speaker 6>out with the fourth chapter that that'll come out probably

684
00:38:39.199 --> 00:38:40.840
<v Speaker 6>about the same time as this episode, so.

685
00:38:40.920 --> 00:38:41.679
<v Speaker 2>I'll post that.

686
00:38:42.440 --> 00:38:47.639
<v Speaker 6>I'm also excited to be working on a new project.

687
00:38:48.320 --> 00:38:50.280
<v Speaker 6>But just to give you a teaser, here's a keynote.

688
00:38:50.920 --> 00:38:55.519
<v Speaker 6>There's a keynote on failure by guy named Brian Trotwine

689
00:38:56.159 --> 00:39:01.440
<v Speaker 6>and he's really just a fabulous speaker and an excellent

690
00:39:02.400 --> 00:39:06.760
<v Speaker 6>person to you know. The kind of is the anti Bruce, right,

691
00:39:06.840 --> 00:39:11.000
<v Speaker 6>So I'm optimist, happy path and Brian is how many

692
00:39:11.039 --> 00:39:15.920
<v Speaker 6>ways can things fail? And so we're kind of kicking

693
00:39:16.000 --> 00:39:19.159
<v Speaker 6>around the idea of putting together a video series of

694
00:39:19.400 --> 00:39:23.199
<v Speaker 6>how things fail why they feel less of a programmer

695
00:39:23.320 --> 00:39:27.079
<v Speaker 6>series and more of a kind of an exploration of failure.

696
00:39:28.039 --> 00:39:30.880
<v Speaker 6>So but this is a teaser for that project.

697
00:39:31.039 --> 00:39:32.719
<v Speaker 1>There's a lot of good stuff there. I'm looking forward

698
00:39:32.760 --> 00:39:35.320
<v Speaker 1>to checking some of that out. Let's see who's up next,

699
00:39:35.360 --> 00:39:36.440
<v Speaker 1>Steven and he picks for us.

700
00:39:36.559 --> 00:39:40.039
<v Speaker 7>Yeah, I guess a general pick. I'll give what I'm using,

701
00:39:40.119 --> 00:39:43.880
<v Speaker 7>but find something that does this. I found an like

702
00:39:43.960 --> 00:39:46.800
<v Speaker 7>a PDF reader that does text the speech. I don't

703
00:39:46.800 --> 00:39:48.800
<v Speaker 7>know why where this has been my entire life, but

704
00:39:49.000 --> 00:39:51.480
<v Speaker 7>like I now walk the dog and I'm listening. I

705
00:39:51.519 --> 00:39:53.199
<v Speaker 7>got Bruce in my ear while I have a robot

706
00:39:53.239 --> 00:39:55.920
<v Speaker 7>in my ear saying Bruce's words. I've got, you know,

707
00:39:56.039 --> 00:39:58.400
<v Speaker 7>everything that I've been meaning to read and then kind

708
00:39:58.400 --> 00:40:01.480
<v Speaker 7>of get around to just constantly going in my ears.

709
00:40:01.519 --> 00:40:05.960
<v Speaker 7>Now I have androids, so I'm using eReader Prestigio. They

710
00:40:06.000 --> 00:40:08.559
<v Speaker 7>have a couple of different services for reading, but when

711
00:40:08.559 --> 00:40:10.000
<v Speaker 7>they ask you to select, if you scroll down, you

712
00:40:10.079 --> 00:40:11.840
<v Speaker 7>can pick the local Android one, so you can get

713
00:40:11.840 --> 00:40:15.480
<v Speaker 7>the generic android voice doing Texas speech, which is good enough.

714
00:40:15.760 --> 00:40:17.559
<v Speaker 2>But if you haven't done this, do this.

715
00:40:17.679 --> 00:40:19.280
<v Speaker 7>You need this in your life, being able to just

716
00:40:19.360 --> 00:40:23.159
<v Speaker 7>throw a technical book, reading growing objectory into word guided

717
00:40:23.199 --> 00:40:24.400
<v Speaker 7>by tests in one ear.

718
00:40:24.760 --> 00:40:27.159
<v Speaker 2>It's it's really cool. Do that good?

719
00:40:27.239 --> 00:40:29.639
<v Speaker 1>Cah, Yeah, that's a good idea, Josh, any picks.

720
00:40:29.800 --> 00:40:30.639
<v Speaker 2>I have two picks.

721
00:40:31.000 --> 00:40:34.079
<v Speaker 4>The first is the GitHub Arctic code vaults tech tree,

722
00:40:34.559 --> 00:40:37.280
<v Speaker 4>which I've linked to, and it's just you mentioned curation

723
00:40:37.480 --> 00:40:40.960
<v Speaker 4>in the context of cable television. While I basically hate

724
00:40:41.000 --> 00:40:44.960
<v Speaker 4>cable television, I do like the concept of curation. And

725
00:40:45.480 --> 00:40:48.400
<v Speaker 4>this is they've listed just a ridiculous number of books

726
00:40:48.480 --> 00:40:50.079
<v Speaker 4>that Hey, if you want to know about how to

727
00:40:50.159 --> 00:40:54.199
<v Speaker 4>do stuff on computers, whether it be networking or software

728
00:40:54.199 --> 00:40:57.280
<v Speaker 4>development or whatever, here's a list of just really solid

729
00:40:57.559 --> 00:41:01.440
<v Speaker 4>book choices. And then also I a quote I don't

730
00:41:01.480 --> 00:41:03.480
<v Speaker 4>know who to attribute it to. My friend Michael Alvis

731
00:41:03.599 --> 00:41:06.280
<v Speaker 4>sent it to me, but it wasn't his set. Running

732
00:41:06.280 --> 00:41:08.840
<v Speaker 4>a successful open source project is just good will hunting

733
00:41:08.880 --> 00:41:11.519
<v Speaker 4>in reverse, where you start out as a respected genius

734
00:41:11.599 --> 00:41:13.840
<v Speaker 4>and end up being a janitor who gets into fights.

735
00:41:14.480 --> 00:41:18.800
<v Speaker 1>And I just wanted to share that that definitely Roseye interesting.

736
00:41:19.599 --> 00:41:21.239
<v Speaker 1>All right, I'll run down to the mine and then

737
00:41:21.239 --> 00:41:23.280
<v Speaker 1>we'll hand it off to our guest. I've got a

738
00:41:23.360 --> 00:41:25.000
<v Speaker 1>few this time around. So we talked a little bit

739
00:41:25.039 --> 00:41:29.119
<v Speaker 1>about being a generalist and how as engineers as programmers it,

740
00:41:29.760 --> 00:41:31.719
<v Speaker 1>you know, is that's the way to go. I think

741
00:41:31.760 --> 00:41:33.400
<v Speaker 1>a lot of us feel. So there's a great book

742
00:41:33.480 --> 00:41:38.559
<v Speaker 1>by David Epstein called Let's See Range, How Generalists Triumph

743
00:41:38.599 --> 00:41:41.159
<v Speaker 1>in a Specialized World. Really interesting book on this topic

744
00:41:41.199 --> 00:41:44.360
<v Speaker 1>sort of more broadly speaking. And I was actually introduced

745
00:41:44.400 --> 00:41:46.559
<v Speaker 1>to this book by my partner, who is an artist

746
00:41:46.639 --> 00:41:48.880
<v Speaker 1>and who wrote what I thought was a very interesting

747
00:41:48.960 --> 00:41:51.360
<v Speaker 1>post on the topic of being a generalist from the

748
00:41:51.400 --> 00:41:53.920
<v Speaker 1>point of view of like an artist or a creative worker.

749
00:41:54.280 --> 00:41:56.719
<v Speaker 1>So I'm going to share that link as well. Not

750
00:41:56.880 --> 00:42:01.920
<v Speaker 1>quite shameless self promotion, shameless someone else promotion. And then

751
00:42:02.440 --> 00:42:05.599
<v Speaker 1>we've got a recent blog post from someone you may

752
00:42:05.679 --> 00:42:08.760
<v Speaker 1>have heard of, Stephen Nuniez, on the topic of managing

753
00:42:08.880 --> 00:42:13.039
<v Speaker 1>rabbit MQ connections with the library called x rabbit Pool,

754
00:42:13.719 --> 00:42:16.599
<v Speaker 1>and I just thought it was a really like, very clear,

755
00:42:17.400 --> 00:42:19.920
<v Speaker 1>very straightforward look at you know, why we need to

756
00:42:20.000 --> 00:42:22.639
<v Speaker 1>manage connections in this way, what this tool does for us,

757
00:42:23.199 --> 00:42:24.920
<v Speaker 1>And what I really liked about it is there were

758
00:42:24.960 --> 00:42:26.920
<v Speaker 1>all the pictures of I forget what it's called, like

759
00:42:27.000 --> 00:42:29.320
<v Speaker 1>you know, the airline guy, and it shows you the

760
00:42:29.400 --> 00:42:33.320
<v Speaker 1>processes what's that called, Stephen Earlin observer, Yeah, showing you,

761
00:42:33.599 --> 00:42:37.039
<v Speaker 1>like the various processes that are being managed by your

762
00:42:37.079 --> 00:42:39.639
<v Speaker 1>connection pool, and it's really fun to see, like, Okay,

763
00:42:39.679 --> 00:42:41.000
<v Speaker 1>well if I do this, and then we go back

764
00:42:41.000 --> 00:42:42.800
<v Speaker 1>to the airline observer and we see the tree kind

765
00:42:42.840 --> 00:42:44.679
<v Speaker 1>of grow and strength depending on what you're doing. And

766
00:42:45.440 --> 00:42:47.119
<v Speaker 1>I just thought you laid it up super well. And

767
00:42:47.440 --> 00:42:50.480
<v Speaker 1>of course you hit upon this library and it's tooling

768
00:42:50.519 --> 00:42:52.920
<v Speaker 1>as part of the work we're doing to prepare for

769
00:42:53.000 --> 00:42:57.079
<v Speaker 1>our very exciting, thrilling even conference at this year's elixri

770
00:42:57.159 --> 00:42:59.920
<v Speaker 1>compf on the topic of working with Elixer and Rabbit

771
00:43:00.079 --> 00:43:01.880
<v Speaker 1>and Queue and using it to bring in a green

772
00:43:01.920 --> 00:43:07.559
<v Speaker 1>field of water app into your legacy technical ecosystem. So you, yeah,

773
00:43:07.840 --> 00:43:10.559
<v Speaker 1>you might want to get on that. And that's for me.

774
00:43:10.760 --> 00:43:12.920
<v Speaker 1>Let's see if it also has any PEX for us.

775
00:43:13.400 --> 00:43:17.800
<v Speaker 5>Yes, I have maybe too much, too many picks, but

776
00:43:18.559 --> 00:43:21.719
<v Speaker 5>I have already sent you the links the Elixir World

777
00:43:21.800 --> 00:43:25.880
<v Speaker 5>Telegram group, which a telegram group for any people related

778
00:43:25.920 --> 00:43:29.719
<v Speaker 5>to any being language. What I like about telegram groups

779
00:43:29.840 --> 00:43:33.000
<v Speaker 5>is that I don't have the fear of missing out

780
00:43:33.119 --> 00:43:36.719
<v Speaker 5>because when you go to when there is a telegram

781
00:43:36.840 --> 00:43:40.760
<v Speaker 5>group which is reasonably large, and you go there and

782
00:43:40.920 --> 00:43:43.960
<v Speaker 5>there is two hundred new messages and you can't keep

783
00:43:44.079 --> 00:43:48.119
<v Speaker 5>up you forget that you'll not be able to keep

784
00:43:48.199 --> 00:43:48.480
<v Speaker 5>up with.

785
00:43:48.639 --> 00:43:49.400
<v Speaker 2>All the message.

786
00:43:49.480 --> 00:43:52.199
<v Speaker 5>So whenever you have time, you go there, you see

787
00:43:52.239 --> 00:43:55.559
<v Speaker 5>what's happening, and then you go back to what you're doing.

788
00:43:56.239 --> 00:44:01.119
<v Speaker 5>I have already sent other links related to tell but

789
00:44:01.480 --> 00:44:04.280
<v Speaker 5>it's okay. I think it's parted to say that we

790
00:44:04.440 --> 00:44:08.079
<v Speaker 5>have the Education Working Group of the Arlang Ecosystem Foundation.

791
00:44:08.320 --> 00:44:12.039
<v Speaker 5>We have a list of issues at our git heub page,

792
00:44:12.199 --> 00:44:14.760
<v Speaker 5>so I think it's important if people want to help

793
00:44:15.800 --> 00:44:21.280
<v Speaker 5>our group. There are many issues issues open and Elixir

794
00:44:21.440 --> 00:44:26.119
<v Speaker 5>Breds you two thousand, twenty, Elixir Breds you twenty twenty.

795
00:44:27.320 --> 00:44:31.039
<v Speaker 5>Is it going to happen? It would happen in May

796
00:44:31.320 --> 00:44:34.960
<v Speaker 5>and Bruce would be here in San Paulo. But it

797
00:44:35.119 --> 00:44:39.400
<v Speaker 5>seems it's going to happen physically, we hope, only in

798
00:44:39.559 --> 00:44:44.559
<v Speaker 5>twenty twenty one, but it's probably going to happen online.

799
00:44:44.760 --> 00:44:47.280
<v Speaker 2>So that's what I would like to say.

800
00:44:47.320 --> 00:44:51.840
<v Speaker 5>If people want to learn Elixir in Portuguese, the language

801
00:44:51.880 --> 00:44:56.039
<v Speaker 5>of the creator of Elixir, it will be possible to

802
00:44:56.360 --> 00:44:59.280
<v Speaker 5>learn it online. And my last peak is going to

803
00:44:59.400 --> 00:45:02.840
<v Speaker 5>be a movie because I really like the I really

804
00:45:03.239 --> 00:45:06.199
<v Speaker 5>enjoyed the Elixir Fountain podcast.

805
00:45:06.320 --> 00:45:08.079
<v Speaker 2>The last part it was.

806
00:45:08.400 --> 00:45:12.159
<v Speaker 5>I think it was fire behind the code because I

807
00:45:12.599 --> 00:45:16.800
<v Speaker 5>could get to know better the people that were part

808
00:45:16.920 --> 00:45:20.280
<v Speaker 5>of the community and their For instance, I learned that

809
00:45:20.719 --> 00:45:24.320
<v Speaker 5>Joe Armstrong loved to play the piano. I can't play

810
00:45:24.360 --> 00:45:27.920
<v Speaker 5>the piano. But I love movies, and I love some

811
00:45:28.159 --> 00:45:31.119
<v Speaker 5>Brazilian movies. The last time I was a guest here,

812
00:45:31.800 --> 00:45:34.000
<v Speaker 5>I suggested people watch.

813
00:45:33.880 --> 00:45:35.519
<v Speaker 2>The movie Aquarius.

814
00:45:36.400 --> 00:45:40.920
<v Speaker 5>Now I have another suggestion from the same director, It's Back.

815
00:45:41.559 --> 00:45:42.719
<v Speaker 2>It's okay.

816
00:45:42.960 --> 00:45:46.159
<v Speaker 5>Some people will not like this movie because it's kind

817
00:45:46.199 --> 00:45:51.199
<v Speaker 5>of violent, but it has a very deep message about

818
00:45:51.360 --> 00:45:55.400
<v Speaker 5>Brazil today and about actually about the world today.

819
00:45:56.119 --> 00:45:59.079
<v Speaker 2>So it's it's a movie that I really like. It's

820
00:45:59.119 --> 00:45:59.719
<v Speaker 2>called Back.

821
00:46:00.239 --> 00:46:02.320
<v Speaker 1>This actually looks really cool. I just googled it. This

822
00:46:02.519 --> 00:46:04.960
<v Speaker 1>is my kind of movie. The locals are not exactly

823
00:46:05.039 --> 00:46:07.880
<v Speaker 1>what they appear to be in high dangerous Secrets. Yes,

824
00:46:08.119 --> 00:46:10.440
<v Speaker 1>sign me, Yes, all right, Thank you so much for

825
00:46:10.599 --> 00:46:13.679
<v Speaker 1>joining us today at although this was a great conversation.

826
00:46:14.239 --> 00:46:17.199
<v Speaker 1>And that's it for today's episode of a Listener Mix
