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:15.439
<v Speaker 1>including Bruce Kate.

4
00:00:15.599 --> 00:00:17.039
<v Speaker 2>Hi everybody, Hey Bruce.

5
00:00:17.039 --> 00:00:23.399
<v Speaker 1>We've got Josh Adams, Hello, Hi, Josh, Lars Vikmann what.

6
00:00:23.239 --> 00:00:24.839
<v Speaker 3>Was that colloquial Swedish?

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

8
00:00:25.399 --> 00:00:25.640
<v Speaker 4>Hello?

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

10
00:00:26.519 --> 00:00:26.760
<v Speaker 1>Hello?

11
00:00:26.839 --> 00:00:27.079
<v Speaker 4>Hello?

12
00:00:27.239 --> 00:00:33.439
<v Speaker 1>Very cool? And Steven Nias helloes all our something Yeah,

13
00:00:33.439 --> 00:00:37.000
<v Speaker 1>I think you do have to he out there perfect

14
00:00:37.640 --> 00:00:39.960
<v Speaker 1>and joining us as a guest. We are very lucky

15
00:00:40.000 --> 00:00:43.240
<v Speaker 1>to have an also netto who is a professor of

16
00:00:43.280 --> 00:00:46.280
<v Speaker 1>computer science and he's also very active in the Elixir community,

17
00:00:46.679 --> 00:00:50.000
<v Speaker 1>especially with regards to Elixir education. I am super happy

18
00:00:50.000 --> 00:00:51.679
<v Speaker 1>that you could join us today because these are really

19
00:00:51.719 --> 00:00:54.799
<v Speaker 1>some of my favorite topics, education and Elixer. You wouldn't

20
00:00:54.799 --> 00:00:56.399
<v Speaker 1>mind go ahead and introduce yourself.

21
00:00:56.439 --> 00:00:59.240
<v Speaker 4>Thank you very much. My name is Ago From, a

22
00:00:59.520 --> 00:01:02.960
<v Speaker 4>professor or at the Federal University of Technology. But now

23
00:01:03.399 --> 00:01:07.319
<v Speaker 4>which is it's here in Critiba, Brazil, and I teach

24
00:01:07.640 --> 00:01:12.200
<v Speaker 4>lodge for computer science and also an introduction to Functional

25
00:01:12.239 --> 00:01:16.400
<v Speaker 4>Programming course. And I got interested in Elixir because it

26
00:01:16.560 --> 00:01:18.719
<v Speaker 4>was created by a Brazilian. I have to say that

27
00:01:18.799 --> 00:01:22.560
<v Speaker 4>because that's what's attracted me to the language at first,

28
00:01:22.840 --> 00:01:26.879
<v Speaker 4>but now I admire the language and also it's community.

29
00:01:27.079 --> 00:01:30.680
<v Speaker 2>So do you actually get to teach a luxure at

30
00:01:30.719 --> 00:01:31.560
<v Speaker 2>your university.

31
00:01:31.840 --> 00:01:37.599
<v Speaker 4>Yes, I don't have many students, less offering I had

32
00:01:37.799 --> 00:01:41.879
<v Speaker 4>for students only because it's an optional course. It's you

33
00:01:41.959 --> 00:01:46.480
<v Speaker 4>don't have to take this course to graduate in computer science.

34
00:01:46.519 --> 00:01:49.519
<v Speaker 4>So actually we don't have computer science here. It's computer

35
00:01:49.680 --> 00:01:54.359
<v Speaker 4>engineering and information systems, but it's it's an optional. For instance,

36
00:01:54.560 --> 00:01:58.799
<v Speaker 4>I have an agual methods classes to class to and

37
00:01:58.879 --> 00:02:03.120
<v Speaker 4>it's it has much more students because it's it attracts

38
00:02:03.200 --> 00:02:07.239
<v Speaker 4>more interest for it. It's more interesting for the students

39
00:02:07.239 --> 00:02:11.400
<v Speaker 4>to learn what's scrounged than elixir. But I hope that

40
00:02:11.719 --> 00:02:14.560
<v Speaker 4>as the time passes, more of the students are going

41
00:02:14.599 --> 00:02:17.319
<v Speaker 4>to get interested in this class.

42
00:02:17.400 --> 00:02:19.479
<v Speaker 2>It's interesting. We've gotten to spend a little bit of

43
00:02:19.479 --> 00:02:22.360
<v Speaker 2>time together. For those who don't know, I have a

44
00:02:22.479 --> 00:02:25.960
<v Speaker 2>metroing group and Adolfo shows up as I don't know

45
00:02:26.039 --> 00:02:28.520
<v Speaker 2>something between a metro and amity, which is kind of

46
00:02:28.560 --> 00:02:30.960
<v Speaker 2>great for my students. But I have some questions. Do

47
00:02:31.000 --> 00:02:34.159
<v Speaker 2>you have any techniques that you can throw my way

48
00:02:34.319 --> 00:02:36.199
<v Speaker 2>or are there anythings that we do that you're going

49
00:02:36.240 --> 00:02:38.080
<v Speaker 2>to take with you and your teaching approaches.

50
00:02:38.479 --> 00:02:42.560
<v Speaker 4>Actually, I think I'm learning more with you than the

51
00:02:42.639 --> 00:02:47.879
<v Speaker 4>opposite because be for this introduction to functional Programming course,

52
00:02:48.080 --> 00:02:52.719
<v Speaker 4>I only taught and laudnge for computer science, so it

53
00:02:52.879 --> 00:02:56.879
<v Speaker 4>was not an introduction to programming. I'm still trying to

54
00:02:57.000 --> 00:03:00.759
<v Speaker 4>learn which is the best approach to teach program And

55
00:03:01.759 --> 00:03:05.120
<v Speaker 4>what I try to do is teach them how to

56
00:03:05.360 --> 00:03:09.599
<v Speaker 4>write a program in Elixir, but also the fundamentals and

57
00:03:10.159 --> 00:03:14.599
<v Speaker 4>papers about the actor model, and so it's kind of

58
00:03:14.719 --> 00:03:18.840
<v Speaker 4>makes There is also this academic approach that I think

59
00:03:18.879 --> 00:03:22.479
<v Speaker 4>that's what's different from your approach with your main keys.

60
00:03:22.719 --> 00:03:26.159
<v Speaker 2>Yeah, it's been fun to actually have smaller classes where

61
00:03:26.199 --> 00:03:27.960
<v Speaker 2>we can flip the keyboard, and I think that that

62
00:03:28.560 --> 00:03:30.919
<v Speaker 2>has been an eye opener for me. Do you get

63
00:03:30.960 --> 00:03:35.159
<v Speaker 2>a chance to actually invite the keys to get up

64
00:03:35.240 --> 00:03:38.520
<v Speaker 2>in code ever? I know I never had that my person.

65
00:03:39.000 --> 00:03:42.560
<v Speaker 4>Yes, yes, because I'm also a big fan of the

66
00:03:42.680 --> 00:03:47.000
<v Speaker 4>coding those who technique. I have written some papers about it,

67
00:03:47.280 --> 00:03:51.080
<v Speaker 4>and whenever I can, I invite my students to do

68
00:03:51.120 --> 00:03:54.759
<v Speaker 4>a coding those with the whole class, and every five

69
00:03:54.840 --> 00:03:58.360
<v Speaker 4>to seven minutes they first y they do programming so

70
00:03:58.599 --> 00:04:03.439
<v Speaker 4>there's two persons using the computer, and one of them

71
00:04:03.680 --> 00:04:07.120
<v Speaker 4>is the driver and the other is the audiency. I

72
00:04:07.159 --> 00:04:12.400
<v Speaker 4>don't remember the name, but the one that's observing and navigator, yes, navgator.

73
00:04:13.159 --> 00:04:16.879
<v Speaker 4>And after some time the navigators becomes a driver. The

74
00:04:16.959 --> 00:04:20.279
<v Speaker 4>drives go back to the to his seat, and another

75
00:04:20.439 --> 00:04:23.240
<v Speaker 4>students takes the place of the navigator. You have to

76
00:04:23.639 --> 00:04:27.560
<v Speaker 4>be always paying attention to what's happening to be able

77
00:04:27.639 --> 00:04:30.439
<v Speaker 4>to write some code in front of the class. That's

78
00:04:30.639 --> 00:04:34.079
<v Speaker 4>something that I really like. I had a master's student

79
00:04:34.199 --> 00:04:38.120
<v Speaker 4>who wrote actually the two masters students, they wrote their

80
00:04:38.360 --> 00:04:41.800
<v Speaker 4>thesis on coding those who so I tried to practice

81
00:04:41.839 --> 00:04:43.120
<v Speaker 4>these with my students.

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

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

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

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

86
00:04:57.480 --> 00:04:59.639
<v Speaker 1>or even have an opportunity to think too much about

87
00:04:59.639 --> 00:05:04.040
<v Speaker 1>it until maybe almost like a year into you know,

88
00:05:04.079 --> 00:05:06.839
<v Speaker 1>writing a lecture professionally. And I have an oh oh background,

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

90
00:05:09.519 --> 00:05:11.439
<v Speaker 1>and so a lot of my journey into a elixir

91
00:05:11.439 --> 00:05:14.560
<v Speaker 1>away was characterized by like writing a lot of really messy,

92
00:05:14.680 --> 00:05:18.279
<v Speaker 1>sort of oh oh inflected Elixer code. And so one

93
00:05:18.319 --> 00:05:20.240
<v Speaker 1>of the things I'm always curious about is, you know,

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

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

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

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

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

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

100
00:05:37.079 --> 00:05:40.920
<v Speaker 4>Yes, the problem is that my students, when they come

101
00:05:41.000 --> 00:05:45.040
<v Speaker 4>to this optional course, they already know how to problem.

102
00:05:45.160 --> 00:05:48.399
<v Speaker 4>So I don't know how it is to teach functional

103
00:05:48.399 --> 00:05:52.480
<v Speaker 4>programming first because they already know. The problem that they

104
00:05:52.519 --> 00:05:56.040
<v Speaker 4>have is in that I tweeted a few days ago,

105
00:05:56.399 --> 00:06:00.360
<v Speaker 4>was that they do what you said, They know how

106
00:06:00.399 --> 00:06:03.480
<v Speaker 4>to do objective ranged program and they try to do

107
00:06:03.560 --> 00:06:07.079
<v Speaker 4>something like that with Elixir and they have it's really

108
00:06:07.120 --> 00:06:10.639
<v Speaker 4>difficult for them. For the few students that I had,

109
00:06:10.800 --> 00:06:14.439
<v Speaker 4>tried to write some more ideomatic codes, some code that

110
00:06:14.560 --> 00:06:18.319
<v Speaker 4>looks like elixure that makes use of pattern matching and

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

112
00:06:22.839 --> 00:06:26.279
<v Speaker 4>in elixuir you can do in functional programming languages and

113
00:06:26.399 --> 00:06:30.279
<v Speaker 4>it makes the code more readable, but you can't do it. Know. Also,

114
00:06:30.560 --> 00:06:33.879
<v Speaker 4>at first, I'm not a professional programmer, so I program

115
00:06:33.879 --> 00:06:37.480
<v Speaker 4>whenever I can. But I did my phddas is used

116
00:06:37.519 --> 00:06:40.199
<v Speaker 4>in Java, so I can say that I could write

117
00:06:40.279 --> 00:06:45.160
<v Speaker 4>some reasonably good Java codes. And when I started Elixir

118
00:06:45.360 --> 00:06:48.959
<v Speaker 4>now and before Alix, I started closure, and it was

119
00:06:49.079 --> 00:06:51.319
<v Speaker 4>difficult to say, now, how do I do that? How

120
00:06:51.319 --> 00:06:55.120
<v Speaker 4>do I do a for loop? Here? There's no for loops,

121
00:06:55.160 --> 00:06:58.800
<v Speaker 4>so I had to try to do things differently. So

122
00:06:59.040 --> 00:07:02.639
<v Speaker 4>it's a problem that I still don't have. But I

123
00:07:02.720 --> 00:07:06.600
<v Speaker 4>want to have one of my projects. I have many projects,

124
00:07:06.759 --> 00:07:10.360
<v Speaker 4>not all of them I put them in practice, but

125
00:07:10.560 --> 00:07:14.360
<v Speaker 4>one of them was to create a programming chorse or

126
00:07:14.399 --> 00:07:18.040
<v Speaker 4>even write a book for complete beginners, people that can't

127
00:07:18.120 --> 00:07:21.360
<v Speaker 4>program in any language and say, oh, now, let's learn

128
00:07:21.519 --> 00:07:26.120
<v Speaker 4>Elixir without the telling them that it's Elixir. Let's because

129
00:07:26.199 --> 00:07:31.120
<v Speaker 4>there are many productory books about Elixir that for for example,

130
00:07:31.199 --> 00:07:33.279
<v Speaker 4>my friends police is all made that he wrote a

131
00:07:33.319 --> 00:07:37.720
<v Speaker 4>great book about learning functional programming and with Elixer, but

132
00:07:38.040 --> 00:07:41.480
<v Speaker 4>he kind of expects that people already know how to

133
00:07:41.560 --> 00:07:45.800
<v Speaker 4>program with some other language. I believe Dave Thomas's book

134
00:07:46.240 --> 00:07:50.600
<v Speaker 4>also expects and even more such a uric book. So

135
00:07:50.680 --> 00:07:55.160
<v Speaker 4>there's no program no programming book or that teaches functional

136
00:07:55.160 --> 00:08:00.120
<v Speaker 4>programming with Elixir for complete beginners. As far as yes, such.

137
00:08:00.240 --> 00:08:03.839
<v Speaker 2>Such books do exist for the Haskell language, which is

138
00:08:04.079 --> 00:08:07.079
<v Speaker 2>kind of a big step, right because you're you're not

139
00:08:07.199 --> 00:08:11.000
<v Speaker 2>just grappling with the paradigm of you know, with an

140
00:08:11.040 --> 00:08:14.959
<v Speaker 2>object and things, but you're also working into a completely

141
00:08:15.000 --> 00:08:20.000
<v Speaker 2>different kind of type theory. And these these concepts are

142
00:08:20.120 --> 00:08:23.279
<v Speaker 2>just pretty stunning to me. So another professor that that

143
00:08:23.360 --> 00:08:25.480
<v Speaker 2>I really like is a man named John Hughes, one

144
00:08:25.519 --> 00:08:29.759
<v Speaker 2>of the creators of Pascal, and he came to Chattanooga

145
00:08:29.920 --> 00:08:33.320
<v Speaker 2>to attend our conference and I was fortunate to spend

146
00:08:33.360 --> 00:08:37.320
<v Speaker 2>another couple of days with them. But he regularly taught

147
00:08:37.559 --> 00:08:42.120
<v Speaker 2>students without any kind of mental corruption, right, and these

148
00:08:42.120 --> 00:08:46.120
<v Speaker 2>are computer science students. So what's interesting to me is

149
00:08:46.159 --> 00:08:48.639
<v Speaker 2>the students that I get that that are starting from

150
00:08:48.679 --> 00:08:52.919
<v Speaker 2>scratch are normally professionals that have tried to make a

151
00:08:52.960 --> 00:08:56.399
<v Speaker 2>go in something else, right, So they they have the

152
00:08:56.440 --> 00:08:59.679
<v Speaker 2>benefit of not having some of the baggage of a

153
00:08:59.679 --> 00:09:03.320
<v Speaker 2>different programming paradigm that we have to deconstruct, but they

154
00:09:03.440 --> 00:09:07.399
<v Speaker 2>also don't have the experience with the tools that they

155
00:09:07.399 --> 00:09:10.480
<v Speaker 2>need for basic fluency, how to navigate the command line,

156
00:09:10.559 --> 00:09:13.960
<v Speaker 2>how to use source control, how to do things like that,

157
00:09:14.360 --> 00:09:17.919
<v Speaker 2>and and that's that is a tremendous obstacle. So you

158
00:09:17.960 --> 00:09:20.320
<v Speaker 2>find the same thing teaching at university.

159
00:09:20.559 --> 00:09:21.039
<v Speaker 4>You mean.

160
00:09:23.120 --> 00:09:26.840
<v Speaker 2>Basically a fluency with with the basic tools, you know,

161
00:09:27.279 --> 00:09:31.120
<v Speaker 2>source control, editors, navigation of the command line.

162
00:09:31.039 --> 00:09:35.120
<v Speaker 4>Things like that. Yes, the first year students here at

163
00:09:35.159 --> 00:09:38.080
<v Speaker 4>the Universe, some of them don't have any fluence, so

164
00:09:38.360 --> 00:09:41.799
<v Speaker 4>they learn. See the teachers that teach them in the

165
00:09:41.919 --> 00:09:45.559
<v Speaker 4>first semester they teach them. See, so they learned their

166
00:09:45.600 --> 00:09:49.360
<v Speaker 4>basically in the first semesters. When they arrive in my class,

167
00:09:49.399 --> 00:09:51.200
<v Speaker 4>they or I don't know how to do that, but

168
00:09:51.440 --> 00:09:54.639
<v Speaker 4>I see what I mean. In there there are some

169
00:09:54.919 --> 00:10:00.559
<v Speaker 4>online ideas like I don't know rip tho dot it

170
00:10:01.279 --> 00:10:03.840
<v Speaker 4>and also win the box where you don't have to

171
00:10:03.960 --> 00:10:08.399
<v Speaker 4>learn everything that create a file and all those things

172
00:10:08.480 --> 00:10:12.080
<v Speaker 4>to be able to write some basic programs in ELIKSU.

173
00:10:12.519 --> 00:10:16.919
<v Speaker 5>Yeah, on the subject of just teaching absolute beginners, one

174
00:10:16.960 --> 00:10:19.120
<v Speaker 5>of the best books I ever found for this was

175
00:10:19.320 --> 00:10:23.440
<v Speaker 5>Chris Pines Learned a Program which is in Ruby. I

176
00:10:23.440 --> 00:10:27.720
<v Speaker 5>have a friend who was sort of modely technically competent.

177
00:10:27.840 --> 00:10:30.080
<v Speaker 5>He learned to program Ruby using that book. He's the

178
00:10:30.120 --> 00:10:32.399
<v Speaker 5>CTO now have a startup. Really fun to watch that

179
00:10:32.399 --> 00:10:33.320
<v Speaker 5>that actually can work.

180
00:10:33.639 --> 00:10:36.600
<v Speaker 1>That's not a testimonial for chris Pine's book. I really

181
00:10:36.679 --> 00:10:38.679
<v Speaker 1>don't know what it is. Yeah, it's really interesting to

182
00:10:38.679 --> 00:10:41.759
<v Speaker 1>think about how to teach absolute beginners. And that's something

183
00:10:41.840 --> 00:10:44.080
<v Speaker 1>that when Steven and I were teaching together at the

184
00:10:44.080 --> 00:10:46.600
<v Speaker 1>Flanner School, that's exactly what we did and what we

185
00:10:46.600 --> 00:10:48.720
<v Speaker 1>were teaching was Ruby. And I think, at least at

186
00:10:48.720 --> 00:10:50.639
<v Speaker 1>the time when I was a student there, which I

187
00:10:50.799 --> 00:10:53.440
<v Speaker 1>was for being a teacher there, Chris Pine's book was

188
00:10:53.480 --> 00:10:55.000
<v Speaker 1>I don't know if it was required, but it was

189
00:10:55.039 --> 00:10:57.879
<v Speaker 1>sort of recommended pre reading of starting the course. And

190
00:10:58.080 --> 00:11:00.440
<v Speaker 1>I think one of the things that I love about

191
00:11:00.440 --> 00:11:03.200
<v Speaker 1>teaching Ruby to absolute beginners, and one of the reasons

192
00:11:03.200 --> 00:11:05.399
<v Speaker 1>why the school kind of touted it at such a

193
00:11:05.440 --> 00:11:08.720
<v Speaker 1>great language for beginners, is because it's easy to see

194
00:11:08.720 --> 00:11:11.879
<v Speaker 1>how it models the real world. Right. There's an early assignment,

195
00:11:11.960 --> 00:11:14.159
<v Speaker 1>I think, where we have students build out like a

196
00:11:14.200 --> 00:11:16.320
<v Speaker 1>pet store or something, right, and you have a dog

197
00:11:16.399 --> 00:11:18.480
<v Speaker 1>and the characteristics of a dog, and then you Hadstanty

198
00:11:18.559 --> 00:11:20.759
<v Speaker 1>a dog objects and you know, take them to the

199
00:11:20.840 --> 00:11:23.200
<v Speaker 1>vet or something like that. And for a while I

200
00:11:23.279 --> 00:11:26.519
<v Speaker 1>was really just totally sold on oh oh models the

201
00:11:26.559 --> 00:11:29.879
<v Speaker 1>real world, like that is the mental model for writing

202
00:11:29.919 --> 00:11:32.840
<v Speaker 1>code that models the world. But now that I'm working

203
00:11:33.039 --> 00:11:35.879
<v Speaker 1>with Elixir and thinking about things more functionally, I'm kind

204
00:11:35.879 --> 00:11:39.000
<v Speaker 1>of thinking like, does it isn't it that message passing

205
00:11:39.039 --> 00:11:41.840
<v Speaker 1>models the world? And that's certainly what Joe Armstrong, you know,

206
00:11:41.879 --> 00:11:44.320
<v Speaker 1>would argue, And isn't it that the actor model really

207
00:11:44.320 --> 00:11:47.320
<v Speaker 1>models the world? So it still feels like these things

208
00:11:47.320 --> 00:11:50.519
<v Speaker 1>are at odds, like can they both be accurate representations

209
00:11:50.559 --> 00:11:53.039
<v Speaker 1>of the way that you know, people and objects move

210
00:11:53.080 --> 00:11:53.679
<v Speaker 1>through the world.

211
00:11:53.879 --> 00:11:57.440
<v Speaker 4>Well, I think that, As I said, I came from

212
00:11:57.480 --> 00:12:01.960
<v Speaker 4>a large in computer science background, and there is one

213
00:12:02.000 --> 00:12:06.600
<v Speaker 4>thing that's it's real in large given before in program

214
00:12:06.799 --> 00:12:10.200
<v Speaker 4>is that there are many many models of the world.

215
00:12:10.399 --> 00:12:14.679
<v Speaker 4>There is, for instance, loge. There is a classical propositional

216
00:12:14.759 --> 00:12:19.440
<v Speaker 4>loge that we use mostly on programming is only one loge.

217
00:12:19.559 --> 00:12:24.320
<v Speaker 4>There is multi valued loge. There is relevant loge into

218
00:12:24.679 --> 00:12:28.000
<v Speaker 4>an is ki loge, there's miny lodge. I believe that

219
00:12:28.360 --> 00:12:31.639
<v Speaker 4>depending on the problem, one model is going to be

220
00:12:31.919 --> 00:12:35.639
<v Speaker 4>the best for other problems. There are two possible models

221
00:12:35.679 --> 00:12:39.200
<v Speaker 4>and you can choose, So I don't think that's the problem.

222
00:12:39.240 --> 00:12:43.679
<v Speaker 4>Maybe this book that teaches an absolute beginner how to

223
00:12:43.759 --> 00:12:47.279
<v Speaker 4>program in Ruby is good for a person, and this

224
00:12:47.399 --> 00:12:51.000
<v Speaker 4>other book that teaches how to program in Haskell is

225
00:12:51.039 --> 00:12:55.720
<v Speaker 4>good for a mathematically inclined person, And so there there.

226
00:12:56.000 --> 00:12:59.240
<v Speaker 4>I think that the great thing about all these programming

227
00:12:59.320 --> 00:13:02.759
<v Speaker 4>languages that there are many options. So I know people

228
00:13:02.840 --> 00:13:06.840
<v Speaker 4>love closure. I know people hate closure because there is

229
00:13:06.919 --> 00:13:11.840
<v Speaker 4>so many a parentheses, and closure is even has less

230
00:13:11.840 --> 00:13:17.639
<v Speaker 4>apparences than LESP. There's everything. It's made with perencies. So

231
00:13:18.559 --> 00:13:20.519
<v Speaker 4>I don't think it's a problem. But I think here

232
00:13:20.679 --> 00:13:24.600
<v Speaker 4>is that we have to provide options, and the students,

233
00:13:24.679 --> 00:13:29.080
<v Speaker 4>the users, the persons, the people that want to learn programming,

234
00:13:29.360 --> 00:13:31.159
<v Speaker 4>they choose what's best for them.

235
00:13:31.399 --> 00:13:34.919
<v Speaker 2>I think that we're kind of entering a golden age

236
00:13:34.960 --> 00:13:38.279
<v Speaker 2>of programming in some ways, because we've come out of

237
00:13:38.399 --> 00:13:41.399
<v Speaker 2>a place when there was one true way right, there

238
00:13:41.519 --> 00:13:45.960
<v Speaker 2>was the javaway and then the darkness find them right.

239
00:13:46.080 --> 00:13:49.480
<v Speaker 2>So we were starting to get to the point where

240
00:13:50.000 --> 00:13:54.639
<v Speaker 2>it's not just useful, but almost expected to have more

241
00:13:54.679 --> 00:13:58.960
<v Speaker 2>than one tool in your tool back. And so for

242
00:13:59.000 --> 00:14:02.039
<v Speaker 2>that reason. I think that probably the most important thing

243
00:14:02.080 --> 00:14:05.440
<v Speaker 2>that we can learn is the skill of learning right.

244
00:14:05.519 --> 00:14:08.519
<v Speaker 2>And so that's that's something that I've always really respected

245
00:14:08.559 --> 00:14:12.720
<v Speaker 2>about you in your work, and especially this dojo approach

246
00:14:12.759 --> 00:14:15.399
<v Speaker 2>where where you teach people to roll out their slaves

247
00:14:15.039 --> 00:14:18.840
<v Speaker 2>and get their hands dirty first, really early in the process.

248
00:14:18.919 --> 00:14:22.440
<v Speaker 4>Yes, and what's great about coding dozho it was created

249
00:14:22.559 --> 00:14:25.919
<v Speaker 4>by two French guys. I believe that it was created

250
00:14:26.080 --> 00:14:31.360
<v Speaker 4>in France. I can't remember the names of loh Bosavi

251
00:14:31.840 --> 00:14:34.679
<v Speaker 4>and I don't remember the name of the other guy.

252
00:14:34.799 --> 00:14:39.840
<v Speaker 4>But one of the goals when I learned the coding

253
00:14:39.879 --> 00:14:42.639
<v Speaker 4>dojo from one of my students, it is one of

254
00:14:42.679 --> 00:14:47.360
<v Speaker 4>the goals I know you you do during one two

255
00:14:47.480 --> 00:14:50.919
<v Speaker 4>three hours, you solve a problem a code kata. And

256
00:14:51.039 --> 00:14:54.320
<v Speaker 4>this concept of code kata was created by the great

257
00:14:54.519 --> 00:14:59.000
<v Speaker 4>Dave Thomas, which you know well, and his idea was

258
00:14:59.120 --> 00:15:01.480
<v Speaker 4>it was a small per all them that you'd solve

259
00:15:02.039 --> 00:15:06.879
<v Speaker 4>several times with different techniques in different languages, and the

260
00:15:07.480 --> 00:15:10.080
<v Speaker 4>s in there. It's it's the de seed for this

261
00:15:10.240 --> 00:15:13.679
<v Speaker 4>idea that you for you to be a good programmer,

262
00:15:13.759 --> 00:15:16.399
<v Speaker 4>you can't be just don't know. I'm going to become

263
00:15:16.559 --> 00:15:20.320
<v Speaker 4>perfect with Java and forget all about the other language. No,

264
00:15:20.440 --> 00:15:23.879
<v Speaker 4>you can learn product, you can learn list, you can

265
00:15:23.960 --> 00:15:28.320
<v Speaker 4>learn of course, you have to decide. That's something that

266
00:15:28.639 --> 00:15:33.360
<v Speaker 4>was happening at the Elixir World telegram group today is

267
00:15:33.399 --> 00:15:36.759
<v Speaker 4>that sometimes you have to choose you cannot. I'm going

268
00:15:36.759 --> 00:15:38.919
<v Speaker 4>to learn a bit of ELM, a bit of Elixir,

269
00:15:38.919 --> 00:15:41.639
<v Speaker 4>a bit of Irland, a bit of Java, and and

270
00:15:41.840 --> 00:15:44.960
<v Speaker 4>that being competent, nothing you have to choose. I'm going

271
00:15:45.000 --> 00:15:48.519
<v Speaker 4>to be good in Elixir. I'm going to study other

272
00:15:48.919 --> 00:15:52.840
<v Speaker 4>language so that I will be a better Elixir developer,

273
00:15:52.919 --> 00:15:56.320
<v Speaker 4>a better developer in general, and maybe in the future again,

274
00:15:56.399 --> 00:15:59.919
<v Speaker 4>Oh no, Now I don't have a job with Elix,

275
00:16:00.120 --> 00:16:03.200
<v Speaker 4>but they have a Java job, so I can do

276
00:16:03.360 --> 00:16:06.960
<v Speaker 4>Java too. And this this is sorry, this is a

277
00:16:07.000 --> 00:16:10.240
<v Speaker 4>real case. A friend of mine she had an elixirve

278
00:16:10.320 --> 00:16:14.600
<v Speaker 4>job and then she went to Sweden to be an

279
00:16:14.639 --> 00:16:19.279
<v Speaker 4>airline developer, and then she found a Java job. So yeah.

280
00:16:19.840 --> 00:16:23.039
<v Speaker 3>In my experience, the whole idea of being a generalist

281
00:16:23.600 --> 00:16:26.559
<v Speaker 3>sort of turns out to be a pretty good specialty

282
00:16:27.240 --> 00:16:31.039
<v Speaker 3>and just having multiple things to lean on and having

283
00:16:31.039 --> 00:16:36.480
<v Speaker 3>a wide knowledge of technology servers. For example, the field

284
00:16:36.480 --> 00:16:40.440
<v Speaker 3>of web development is by its very nature, extremely wide.

285
00:16:40.600 --> 00:16:43.399
<v Speaker 3>There's a ton of things you should know to be

286
00:16:43.960 --> 00:16:49.120
<v Speaker 3>really knowledgeable about the web, both back and front, and

287
00:16:49.440 --> 00:16:54.159
<v Speaker 3>the web standards and APIs. There are so many things,

288
00:16:54.759 --> 00:16:58.200
<v Speaker 3>and every domain in programming is basically like that, and

289
00:16:58.240 --> 00:17:00.639
<v Speaker 3>that there's a lot of depth and there's a lot

290
00:17:00.639 --> 00:17:04.160
<v Speaker 3>of width. And of course you can focus down on

291
00:17:04.200 --> 00:17:07.960
<v Speaker 3>a language to become an absolute expert in wielding the

292
00:17:08.160 --> 00:17:13.599
<v Speaker 3>minute details of Java or Elixir or Python or C.

293
00:17:14.240 --> 00:17:17.319
<v Speaker 3>But you can also pick up a few different languages

294
00:17:17.480 --> 00:17:20.880
<v Speaker 3>or pick up a wide skill set where okay, you

295
00:17:20.960 --> 00:17:24.440
<v Speaker 3>need a SQL database up and running, or now we

296
00:17:24.519 --> 00:17:28.160
<v Speaker 3>need to set up some additional servers, or we need

297
00:17:28.200 --> 00:17:31.480
<v Speaker 3>to write something in this language because we're using a

298
00:17:31.519 --> 00:17:35.279
<v Speaker 3>project written in an entirely different language. Is there anyone

299
00:17:35.400 --> 00:17:38.039
<v Speaker 3>that can actually read the code and work with it?

300
00:17:38.119 --> 00:17:38.480
<v Speaker 4>Okay?

301
00:17:38.599 --> 00:17:41.000
<v Speaker 3>Yeah, If you know a few languages, picking up a

302
00:17:41.039 --> 00:17:45.079
<v Speaker 3>new one, for example, is usually fairly straightforward, except when

303
00:17:45.079 --> 00:17:49.240
<v Speaker 3>you run into the paradigm shift of functional programming, for example.

304
00:17:49.440 --> 00:17:55.599
<v Speaker 3>But I think having that generalist approach tends to I've

305
00:17:56.160 --> 00:17:58.960
<v Speaker 3>often heard the advice to specialize you need to be

306
00:17:59.000 --> 00:18:01.720
<v Speaker 3>good at a specific and I think I think people

307
00:18:02.440 --> 00:18:05.680
<v Speaker 3>mistake what that should be and what that needs to be.

308
00:18:06.000 --> 00:18:08.519
<v Speaker 3>I think you can be very experienced. You can be

309
00:18:08.599 --> 00:18:12.200
<v Speaker 3>an expert. That doesn't mean that you know every detail

310
00:18:12.240 --> 00:18:14.920
<v Speaker 3>of the language. It can, but then you're a language

311
00:18:14.920 --> 00:18:18.680
<v Speaker 3>doctor or a language specialist. That's usually not the most

312
00:18:19.319 --> 00:18:24.759
<v Speaker 3>useful value add for a particular endeavor in my experience,

313
00:18:25.079 --> 00:18:27.880
<v Speaker 3>and I mean, it strikes me, Adolpho, that you are

314
00:18:28.240 --> 00:18:31.440
<v Speaker 3>essentially starting to move people in this direction right with

315
00:18:31.480 --> 00:18:33.960
<v Speaker 3>your functional programming course and with the way that the

316
00:18:33.960 --> 00:18:37.400
<v Speaker 3>world is moving or needs to move. Maybe it's a

317
00:18:37.440 --> 00:18:41.519
<v Speaker 3>movie there fast enough, but it strikes me that you've

318
00:18:41.920 --> 00:18:44.000
<v Speaker 3>you've at some point you've made a decision and to

319
00:18:44.039 --> 00:18:46.839
<v Speaker 3>take people in this direction. When when was that?

320
00:18:46.880 --> 00:18:50.559
<v Speaker 2>When did you start to be more of kind of

321
00:18:50.839 --> 00:18:53.599
<v Speaker 2>open up the blinders a little bit. In the United States,

322
00:18:53.599 --> 00:18:56.160
<v Speaker 2>there are a whole lot of schools that are invested

323
00:18:56.640 --> 00:18:59.920
<v Speaker 2>in teaching Java and teaching Microsoft because that's where the certification,

324
00:19:00.680 --> 00:19:02.759
<v Speaker 2>and they've made investments in those places and they just

325
00:19:02.799 --> 00:19:03.440
<v Speaker 2>came break away.

326
00:19:03.680 --> 00:19:07.319
<v Speaker 4>I have a lot of freedom here in the public university,

327
00:19:07.359 --> 00:19:10.880
<v Speaker 4>where the government owns the university and it's free for

328
00:19:11.039 --> 00:19:16.200
<v Speaker 4>the students, so I can offer the course. I have

329
00:19:16.359 --> 00:19:19.880
<v Speaker 4>some freedom to offer some courses, and I decided to

330
00:19:19.920 --> 00:19:26.160
<v Speaker 4>start this functional programming course. And functional programming is getting

331
00:19:26.559 --> 00:19:31.119
<v Speaker 4>more well known with Brazilian software developers because there is

332
00:19:31.160 --> 00:19:35.000
<v Speaker 4>a big company called New Bank, which it's a kind

333
00:19:35.039 --> 00:19:38.759
<v Speaker 4>of a banking, a digital banking company. They have a

334
00:19:38.799 --> 00:19:42.119
<v Speaker 4>credit card and they bought platform Attack, which is the

335
00:19:42.200 --> 00:19:46.839
<v Speaker 4>company where Giosefelin. Actually Giosefeline not only worked that, but

336
00:19:46.920 --> 00:19:49.839
<v Speaker 4>he was one of the owners of the company. And

337
00:19:50.839 --> 00:19:55.160
<v Speaker 4>after that, the same company bought Cognity Tact, which was

338
00:19:55.240 --> 00:19:59.240
<v Speaker 4>the company is it still is the company behind Closure.

339
00:19:59.400 --> 00:20:04.759
<v Speaker 4>So there was some kind of publicity for functional programming

340
00:20:04.839 --> 00:20:08.400
<v Speaker 4>language here in Brazil because of these two companies that

341
00:20:08.559 --> 00:20:11.519
<v Speaker 4>were bought. So I hope that in the near future

342
00:20:11.599 --> 00:20:14.720
<v Speaker 4>I have more students for my functional programming plus. I

343
00:20:15.599 --> 00:20:20.079
<v Speaker 4>tried to offer them this because they what they learn

344
00:20:20.759 --> 00:20:24.920
<v Speaker 4>as mandatory courses is c C plus plus and job.

345
00:20:26.359 --> 00:20:28.839
<v Speaker 4>That's what they have to learn. But if they want,

346
00:20:28.880 --> 00:20:31.519
<v Speaker 4>they can learn Elixir too.

347
00:20:32.039 --> 00:20:34.559
<v Speaker 1>I think related to this kind of on the topic

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

349
00:20:39.319 --> 00:20:41.880
<v Speaker 1>students are if not required, then they're kind of put

350
00:20:41.880 --> 00:20:44.079
<v Speaker 1>into these boxes to learn these three languages. And if

351
00:20:44.119 --> 00:20:45.759
<v Speaker 1>they want to, they can come up here and learn

352
00:20:45.799 --> 00:20:48.799
<v Speaker 1>this as well really releases something you said earlier, which

353
00:20:48.799 --> 00:20:52.440
<v Speaker 1>is that you're not teaching students alixir, although you know

354
00:20:52.519 --> 00:20:54.920
<v Speaker 1>hopefully you are. You're teaching them how to learn, and

355
00:20:55.359 --> 00:20:58.400
<v Speaker 1>I've always found that one of the best ways to

356
00:20:58.480 --> 00:21:02.400
<v Speaker 1>do that is to like make your students strategically uncomfortable,

357
00:21:02.839 --> 00:21:04.880
<v Speaker 1>like kind of let let them suffer a little. And

358
00:21:04.920 --> 00:21:06.960
<v Speaker 1>I'm gonna actually put Stephen in the hot seel a

359
00:21:06.960 --> 00:21:09.079
<v Speaker 1>little bit because I think that this is if that's

360
00:21:09.160 --> 00:21:11.680
<v Speaker 1>my teaching ploss. I think I probably stole that from.

361
00:21:11.559 --> 00:21:12.759
<v Speaker 4>You a little bit.

362
00:21:12.880 --> 00:21:14.960
<v Speaker 6>Yeah, I think that you know, there's they're sort of

363
00:21:14.960 --> 00:21:18.519
<v Speaker 6>the thinking about learning that you learn through uncomfort the most.

364
00:21:18.640 --> 00:21:21.799
<v Speaker 6>So the closer you can safely push people into being uncomfortable,

365
00:21:22.599 --> 00:21:25.359
<v Speaker 6>the faster they'll sort of learn. I think everything is

366
00:21:25.400 --> 00:21:27.799
<v Speaker 6>sort of theoretical until you've gotten to the point where

367
00:21:27.839 --> 00:21:29.480
<v Speaker 6>you're like, oh, I have a deadline and have to

368
00:21:29.480 --> 00:21:31.960
<v Speaker 6>build this project and I'm going to present in front

369
00:21:31.960 --> 00:21:34.960
<v Speaker 6>of my entire class in two days. Oh my god,

370
00:21:35.039 --> 00:21:36.319
<v Speaker 6>this is the end of the world if I do

371
00:21:36.400 --> 00:21:39.839
<v Speaker 6>this wrong. But yeah, I think suffering is important, even

372
00:21:39.880 --> 00:21:41.599
<v Speaker 6>if I sound a little low mean when I say

373
00:21:41.839 --> 00:21:44.359
<v Speaker 6>I think that suffering and struggle is where you get

374
00:21:44.359 --> 00:21:45.960
<v Speaker 6>the best learning and where it sticks.

375
00:21:46.319 --> 00:21:48.759
<v Speaker 2>It's funny. There's a there's a man named Evan Miller,

376
00:21:48.799 --> 00:21:52.559
<v Speaker 2>which we should definitely have on this this this podcast

377
00:21:52.599 --> 00:21:56.400
<v Speaker 2>at some point. He's behind the Earling Project Chicago Boss

378
00:21:57.039 --> 00:22:00.440
<v Speaker 2>and so Adulfo. We were doing this mental that you're

379
00:22:00.519 --> 00:22:03.119
<v Speaker 2>part of, you know, long before you and I met.

380
00:22:03.200 --> 00:22:05.960
<v Speaker 2>We were doing it in Chattanooga and everyone would show

381
00:22:06.039 --> 00:22:09.039
<v Speaker 2>up right pre pandemic. But Evan would look up my

382
00:22:09.039 --> 00:22:12.599
<v Speaker 2>shoulder when I was teaching somebody and someone would start

383
00:22:12.640 --> 00:22:15.160
<v Speaker 2>to go off in the wrong direction and that kind

384
00:22:15.160 --> 00:22:17.319
<v Speaker 2>of give them a general nudge, you know, kind of

385
00:22:17.359 --> 00:22:19.519
<v Speaker 2>nuts the rudder every now and then, and you know,

386
00:22:19.519 --> 00:22:22.359
<v Speaker 2>I turn around and if it will be shaking his

387
00:22:22.440 --> 00:22:25.519
<v Speaker 2>head right, and then, you know, so I would try

388
00:22:25.559 --> 00:22:28.000
<v Speaker 2>to explain harder and he would be shaking his head.

389
00:22:28.559 --> 00:22:32.559
<v Speaker 4>And then so this one time I turned around, I said.

390
00:22:32.480 --> 00:22:36.319
<v Speaker 2>What, Evan, what you know what? Everybody just turned around.

391
00:22:37.000 --> 00:22:41.039
<v Speaker 2>I'm you know, usually pretty unflappable, right, but I was

392
00:22:41.119 --> 00:22:44.759
<v Speaker 2>not that day. And he said, Bruce, it's all about

393
00:22:44.759 --> 00:22:50.240
<v Speaker 2>the struggle. And so you know that's that's probably my

394
00:22:50.480 --> 00:22:56.359
<v Speaker 2>great weakness in a classroom setting is building in enough struggle, right,

395
00:22:56.480 --> 00:22:58.920
<v Speaker 2>So I teach a lot of technique, so what I

396
00:22:58.920 --> 00:23:01.799
<v Speaker 2>should do is a lot mistakes to happen in the

397
00:23:01.880 --> 00:23:06.119
<v Speaker 2>right context and be kind of a guide, be a

398
00:23:06.119 --> 00:23:10.559
<v Speaker 2>guardrail so that when the struggles happen, you can leave

399
00:23:10.599 --> 00:23:14.079
<v Speaker 2>opportunity to bring people back on course and then and

400
00:23:14.119 --> 00:23:17.839
<v Speaker 2>then cast them into the wind again. But yeah, you

401
00:23:17.880 --> 00:23:18.759
<v Speaker 2>saw that first.

402
00:23:18.559 --> 00:23:22.720
<v Speaker 4>N Yes, yes, And it's important because it's related to

403
00:23:22.799 --> 00:23:27.599
<v Speaker 4>that model that used the Drifus model. Of course, if

404
00:23:27.720 --> 00:23:32.359
<v Speaker 4>someone is a beginner, he or she needs more the

405
00:23:32.480 --> 00:23:37.400
<v Speaker 4>direct instruction. But if someone that has a little bit

406
00:23:37.440 --> 00:23:40.799
<v Speaker 4>more of experience than you are, okay, right, go to

407
00:23:40.880 --> 00:23:44.279
<v Speaker 4>the internet and try to find what's the solution. Because

408
00:23:44.519 --> 00:23:47.720
<v Speaker 4>one thing that I also think that's important nowadays that

409
00:23:48.240 --> 00:23:52.359
<v Speaker 4>wasn't important when that's important when when I started to

410
00:23:52.440 --> 00:23:56.359
<v Speaker 4>learn program because when I started learning programing a long

411
00:23:56.480 --> 00:23:59.880
<v Speaker 4>time ago, I started with basic there was no in

412
00:24:00.519 --> 00:24:03.920
<v Speaker 4>so all I had was a book in the computer.

413
00:24:04.440 --> 00:24:07.119
<v Speaker 4>But now we have lots of place where you can go.

414
00:24:07.680 --> 00:24:10.400
<v Speaker 4>If you want to learn Elixir, you can go to

415
00:24:10.519 --> 00:24:16.000
<v Speaker 4>Elixir School and there is also the Elixir Forum, Elixir

416
00:24:16.039 --> 00:24:20.119
<v Speaker 4>on Slack, Elixir on discord and I have just created

417
00:24:20.160 --> 00:24:25.000
<v Speaker 4>the Elixir World on in telegram and also tweetered. There's

418
00:24:25.039 --> 00:24:29.720
<v Speaker 4>a lot of people tweeting about Elixir and so I

419
00:24:29.759 --> 00:24:32.759
<v Speaker 4>think nowadays, if you want to learn a language, you

420
00:24:33.119 --> 00:24:38.079
<v Speaker 4>have also to learn how to navigate all these opportunits

421
00:24:38.119 --> 00:24:40.880
<v Speaker 4>to learn from others in the community.

422
00:24:41.759 --> 00:24:45.880
<v Speaker 5>I wanted to class one alexir World on telegram. I'm

423
00:24:45.880 --> 00:24:47.960
<v Speaker 5>a big fan of telegram and I joined it once

424
00:24:48.000 --> 00:24:51.480
<v Speaker 5>I realized it existed and immediately scrolled up and saw

425
00:24:51.559 --> 00:24:52.680
<v Speaker 5>interesting conversation.

426
00:24:53.000 --> 00:24:58.000
<v Speaker 4>Thanks, I just started. My idea with Elixir road was

427
00:24:58.119 --> 00:25:02.240
<v Speaker 4>exactly that. I'm part of the Elixir Vierzial telegram and

428
00:25:02.519 --> 00:25:08.279
<v Speaker 4>there's there are many interesting conversations there in Portuguese, of

429
00:25:08.319 --> 00:25:11.400
<v Speaker 4>course because it's our language, but there was no I

430
00:25:11.519 --> 00:25:15.200
<v Speaker 4>think there's no group like that in English. So I'm

431
00:25:15.240 --> 00:25:20.480
<v Speaker 4>going to create one for English speaking, of course, not

432
00:25:20.599 --> 00:25:24.480
<v Speaker 4>English speaking. It's people from all over the world. I

433
00:25:24.559 --> 00:25:27.920
<v Speaker 4>once I listed there are people from many countries and

434
00:25:28.440 --> 00:25:32.559
<v Speaker 4>so don't expect perfect English there, but people that can

435
00:25:32.720 --> 00:25:35.440
<v Speaker 4>understand and write based English.

436
00:25:35.599 --> 00:25:38.759
<v Speaker 2>That's so important too. Also that that we don't all

437
00:25:38.759 --> 00:25:41.359
<v Speaker 2>look alike or sound alike. I think that one of

438
00:25:41.400 --> 00:25:45.440
<v Speaker 2>the things you get is different problem solving perspectives. And

439
00:25:45.559 --> 00:25:48.279
<v Speaker 2>when when we have people who have come from different

440
00:25:48.319 --> 00:25:54.160
<v Speaker 2>backgrounds and different skills and and you get different language

441
00:25:54.200 --> 00:25:59.559
<v Speaker 2>approaches and you have justice, you know, make everything you know,

442
00:25:59.720 --> 00:26:03.359
<v Speaker 2>I will steamroll any obstacle. You know, I'll you know,

443
00:26:03.400 --> 00:26:06.440
<v Speaker 2>we write to the Linux kernel for nerves, and that

444
00:26:06.559 --> 00:26:10.559
<v Speaker 2>you have Bruce Williams and his approach and his kind

445
00:26:10.559 --> 00:26:14.519
<v Speaker 2>of zen like approach to making things beautiful and making

446
00:26:14.559 --> 00:26:18.680
<v Speaker 2>them flow and making them exactly in the right abstractions.

447
00:26:18.720 --> 00:26:23.359
<v Speaker 2>And then you get absent. But that's what makes community special.

448
00:26:23.440 --> 00:26:27.240
<v Speaker 2>And I'm really glad that you don't see perfect English

449
00:26:27.240 --> 00:26:30.759
<v Speaker 2>there right, that you see that you see such a

450
00:26:30.880 --> 00:26:36.039
<v Speaker 2>variety not just words, but of thought structures and paradigms

451
00:26:36.079 --> 00:26:36.759
<v Speaker 2>and things like that.

452
00:26:37.119 --> 00:26:40.640
<v Speaker 1>And I think that's one of our responsibilities as teachers

453
00:26:40.640 --> 00:26:43.759
<v Speaker 1>and as educators. I think, is not just to give

454
00:26:43.759 --> 00:26:45.839
<v Speaker 1>people materials that they can learn how to do a thing,

455
00:26:46.200 --> 00:26:49.960
<v Speaker 1>but it's how to create conditions around them in which

456
00:26:49.960 --> 00:26:52.480
<v Speaker 1>they can learn. And part of that are the conditions

457
00:26:52.519 --> 00:26:55.519
<v Speaker 1>of this community, of the electric community, of the aline community,

458
00:26:55.559 --> 00:26:58.319
<v Speaker 1>of the functional programming community. And that's why I think,

459
00:26:58.319 --> 00:26:59.680
<v Speaker 1>in particular, you know, a lot of the work that

460
00:26:59.680 --> 00:27:02.400
<v Speaker 1>you've done and at Altho to create these resources and

461
00:27:02.440 --> 00:27:04.839
<v Speaker 1>these channels and these spaces where people can come together

462
00:27:05.519 --> 00:27:08.279
<v Speaker 1>and learn together, I think is really incredible and I

463
00:27:08.279 --> 00:27:10.599
<v Speaker 1>would love to hear from you. What more do you

464
00:27:10.599 --> 00:27:13.279
<v Speaker 1>want to see in the alexir community, Like what resource

465
00:27:13.319 --> 00:27:16.079
<v Speaker 1>do you wish existed that doesn't Maybe it's that Alexa

466
00:27:16.160 --> 00:27:18.960
<v Speaker 1>for absolute Beginner's book. You know, what kind of involvement

467
00:27:19.039 --> 00:27:21.279
<v Speaker 1>or participation do you want to see from people in

468
00:27:21.319 --> 00:27:23.960
<v Speaker 1>the group that you've created or or in other groups?

469
00:27:24.000 --> 00:27:25.960
<v Speaker 1>You know, what can we all be doing to keep

470
00:27:25.960 --> 00:27:28.680
<v Speaker 1>this community growing so we can keep educating and keep

471
00:27:28.680 --> 00:27:29.680
<v Speaker 1>bringing in newcomers.

472
00:27:29.920 --> 00:27:35.319
<v Speaker 4>Wow, that's a good question. Maybe I really like Exorcism

473
00:27:35.680 --> 00:27:39.599
<v Speaker 4>and that's a resource that I think it's not there's

474
00:27:39.599 --> 00:27:43.000
<v Speaker 4>no need to create another Exscism, but maybe people in

475
00:27:43.039 --> 00:27:46.480
<v Speaker 4>the community that want to help others, they should go

476
00:27:46.640 --> 00:27:49.519
<v Speaker 4>there and become a mentor. And the orders that want

477
00:27:49.599 --> 00:27:53.079
<v Speaker 4>len should go there and become maintees and try to

478
00:27:53.160 --> 00:27:56.960
<v Speaker 4>learn using research like that. And I mean, let me

479
00:27:57.160 --> 00:28:01.200
<v Speaker 4>just say what I see in the Brazilian community a lot.

480
00:28:01.359 --> 00:28:06.559
<v Speaker 4>It's a lot, know, some like coding with elixir when

481
00:28:06.599 --> 00:28:09.400
<v Speaker 4>ont each some on YouTube. I would like to see

482
00:28:09.480 --> 00:28:13.359
<v Speaker 4>these more in English. Maybe I don't see it because

483
00:28:13.799 --> 00:28:16.640
<v Speaker 4>it has not arrived to me, but it's there, so

484
00:28:16.880 --> 00:28:20.759
<v Speaker 4>I if you know someone doing that, please treat me

485
00:28:21.039 --> 00:28:25.319
<v Speaker 4>and then you try to include that. I mean, I

486
00:28:25.440 --> 00:28:30.319
<v Speaker 4>have a small bitthub project where I'm compiling. Maybe after

487
00:28:30.440 --> 00:28:34.039
<v Speaker 4>some time I will give this information to the Airline

488
00:28:34.039 --> 00:28:38.720
<v Speaker 4>Ecosystem Foundation, because that's one of the things that let

489
00:28:39.000 --> 00:28:43.680
<v Speaker 4>me introduce this subject. I'm part of the Education Working

490
00:28:43.680 --> 00:28:48.039
<v Speaker 4>Group of their Longe Ecosystem Foundation, and we are doing

491
00:28:48.319 --> 00:28:52.000
<v Speaker 4>lots of things to try to make not on Elixir

492
00:28:52.039 --> 00:28:55.200
<v Speaker 4>but also Airline and the other being language, make them

493
00:28:55.359 --> 00:28:59.400
<v Speaker 4>more populars to allow more people that want to learn

494
00:28:59.480 --> 00:29:04.000
<v Speaker 4>that the language to learn them. So for instance, we

495
00:29:04.640 --> 00:29:10.319
<v Speaker 4>have had Elixir call you virtualo a few months ago

496
00:29:10.720 --> 00:29:14.759
<v Speaker 4>and there is a professor and my students want to

497
00:29:14.799 --> 00:29:19.400
<v Speaker 4>take part in the training. So the foundation and supported

498
00:29:19.799 --> 00:29:24.400
<v Speaker 4>the students and we have a lot of initiatives going on.

499
00:29:24.599 --> 00:29:28.880
<v Speaker 4>We had before the pandemic. We've had some meetings where

500
00:29:29.039 --> 00:29:32.440
<v Speaker 4>we we di scutted. For instance, one of the initiatives

501
00:29:32.440 --> 00:29:37.160
<v Speaker 4>initiatives was to try to find professors in many universities

502
00:29:37.480 --> 00:29:42.279
<v Speaker 4>that are teaching either Airline or Elixure or other language,

503
00:29:42.599 --> 00:29:48.200
<v Speaker 4>and to try to connect these professionals that use Elixure

504
00:29:48.359 --> 00:29:52.880
<v Speaker 4>in production with these professors that teach Elixir or length,

505
00:29:53.200 --> 00:29:57.160
<v Speaker 4>so that these professionals can give talks to their students.

506
00:29:57.559 --> 00:30:01.720
<v Speaker 4>And I believe there is also I need, as I said,

507
00:30:01.799 --> 00:30:06.920
<v Speaker 4>for a good introductory book. But I know that that's

508
00:30:07.000 --> 00:30:10.759
<v Speaker 4>because I particularly love books. Maybe most of the people

509
00:30:10.880 --> 00:30:13.519
<v Speaker 4>now theys don't love book as much as I do,

510
00:30:13.599 --> 00:30:18.880
<v Speaker 4>so there's maybe no economic reason for an introductory book,

511
00:30:18.920 --> 00:30:21.880
<v Speaker 4>but I love books. I would like to see a

512
00:30:21.960 --> 00:30:24.880
<v Speaker 4>really introductory book on my leaks through and I think

513
00:30:24.880 --> 00:30:25.200
<v Speaker 4>that's it.

514
00:30:25.839 --> 00:30:29.720
<v Speaker 2>A Licture should be a good language to break into

515
00:30:29.720 --> 00:30:32.279
<v Speaker 2>functional programming. And I say that because I think that

516
00:30:32.960 --> 00:30:35.920
<v Speaker 2>a leixture can stand on its own when you just

517
00:30:36.000 --> 00:30:39.440
<v Speaker 2>get into the core, just the kind of the peer functions,

518
00:30:39.519 --> 00:30:43.920
<v Speaker 2>the exorcism size and shaped projects. And you can do

519
00:30:43.960 --> 00:30:49.880
<v Speaker 2>that without absorbing a whole lot of functional algebra in

520
00:30:50.000 --> 00:30:53.519
<v Speaker 2>terms of the of the type structures. But you still

521
00:30:53.559 --> 00:30:57.519
<v Speaker 2>have the full power of functional programming that you can

522
00:30:57.519 --> 00:30:58.000
<v Speaker 2>bring to bear.

523
00:30:58.640 --> 00:30:59.960
<v Speaker 4>So it should be.

524
00:31:00.200 --> 00:31:02.240
<v Speaker 2>And the other thing that I think it's critical is

525
00:31:02.279 --> 00:31:06.079
<v Speaker 2>that with the pipe, you have this idea of glue

526
00:31:06.359 --> 00:31:09.960
<v Speaker 2>between concepts, and that's the hard thing about teaching someone

527
00:31:10.000 --> 00:31:13.880
<v Speaker 2>that's new, or teaching someone from an Auditctorian system where

528
00:31:13.920 --> 00:31:17.359
<v Speaker 2>we say, okay, objects don't do that, inheritance don't do that.

529
00:31:17.400 --> 00:31:18.920
<v Speaker 2>So there's a lot of things that we say not

530
00:31:19.000 --> 00:31:22.519
<v Speaker 2>to do. But unless you replace that glue, it's difficult

531
00:31:22.920 --> 00:31:26.039
<v Speaker 2>to get traction with a new programmer. But if you

532
00:31:26.119 --> 00:31:30.319
<v Speaker 2>have this framework of hey, there's a module that collects things,

533
00:31:30.319 --> 00:31:34.279
<v Speaker 2>and then that module surrounds this central type and then

534
00:31:34.319 --> 00:31:37.720
<v Speaker 2>you can kind of chain things together with simple transformations,

535
00:31:37.960 --> 00:31:40.920
<v Speaker 2>I think it should be I think you're definitely onto

536
00:31:40.960 --> 00:31:44.880
<v Speaker 2>something that learning programming one oh one in the Lixir

537
00:31:45.400 --> 00:31:47.319
<v Speaker 2>is definitely something that you could do.

538
00:31:47.400 --> 00:31:51.319
<v Speaker 4>I would like to say something else about this learning

539
00:31:51.839 --> 00:31:55.839
<v Speaker 4>the community. One thing that I noticed that it's really

540
00:31:55.880 --> 00:32:00.079
<v Speaker 4>attracted me to the language and the larger communits in

541
00:32:00.400 --> 00:32:05.640
<v Speaker 4>community because it's not only Elixir but also Aline. It's

542
00:32:05.920 --> 00:32:11.440
<v Speaker 4>the podcasts. This podcast already has more than one hundred episodes,

543
00:32:11.480 --> 00:32:15.240
<v Speaker 4>and there are other podcasts, and there is great podcast

544
00:32:15.319 --> 00:32:19.200
<v Speaker 4>that it seems has already finished by It has a

545
00:32:19.200 --> 00:32:22.039
<v Speaker 4>lot of great interviews there that you can if you

546
00:32:22.079 --> 00:32:26.359
<v Speaker 4>want to listen to interviews with Joe Armstrong from the

547
00:32:26.400 --> 00:32:31.039
<v Speaker 4>past that it's their own Elixir Fountain. So I think

548
00:32:31.079 --> 00:32:36.079
<v Speaker 4>that this community. Of course, I I before Elixir, I

549
00:32:36.200 --> 00:32:40.720
<v Speaker 4>was following the Closure community, which seems to be smaller.

550
00:32:41.240 --> 00:32:46.319
<v Speaker 4>It has less resources for beginners. Maybe today it has

551
00:32:46.400 --> 00:32:49.279
<v Speaker 4>the same, but at the time it had more less

552
00:32:49.319 --> 00:32:53.440
<v Speaker 4>resources for beginners. So I think the idea of podcasts.

553
00:32:53.480 --> 00:32:58.519
<v Speaker 4>I love podcasts because I can learn unexpected things. It's

554
00:32:58.680 --> 00:33:02.880
<v Speaker 4>that that world that people use its certain deep ty, right,

555
00:33:03.160 --> 00:33:06.839
<v Speaker 4>so you're not expecting to learn something. And I mean,

556
00:33:06.880 --> 00:33:10.599
<v Speaker 4>of course, the learning that happens in a podcast is

557
00:33:11.039 --> 00:33:14.960
<v Speaker 4>much It's at a much higher level than the learning

558
00:33:15.039 --> 00:33:18.000
<v Speaker 4>that you learn when you, for instance, you go to

559
00:33:18.599 --> 00:33:22.480
<v Speaker 4>that series in your channel, Bruce and they grow to

560
00:33:22.519 --> 00:33:25.480
<v Speaker 4>your channel. Of course, you're going to learn some more

561
00:33:25.640 --> 00:33:30.599
<v Speaker 4>technical things, technical details about how to write and alive

562
00:33:30.720 --> 00:33:33.920
<v Speaker 4>view app. But it's also you can learn a lot

563
00:33:33.920 --> 00:33:38.480
<v Speaker 4>of things and listening to people from the community and

564
00:33:38.799 --> 00:33:42.640
<v Speaker 4>that's a great resource too. And I'm planning to do

565
00:33:42.680 --> 00:33:46.640
<v Speaker 4>some research about this and the podcasts and how they

566
00:33:46.680 --> 00:33:50.400
<v Speaker 4>are perceived by the community. I hope that when this

567
00:33:51.160 --> 00:33:54.720
<v Speaker 4>episode goes on Earth, I will have a survey that

568
00:33:54.960 --> 00:33:57.880
<v Speaker 4>to survey the community about how because I know there

569
00:33:57.880 --> 00:34:01.319
<v Speaker 4>are some people that don't like podcasts, they won't listen

570
00:34:01.400 --> 00:34:04.200
<v Speaker 4>to podcasts. But I know also that there is many

571
00:34:04.279 --> 00:34:07.640
<v Speaker 4>people that listen to podcasts. But what do they get

572
00:34:07.720 --> 00:34:12.320
<v Speaker 4>from the podcast? What do they expect from the podcasts?

573
00:34:12.719 --> 00:34:17.719
<v Speaker 4>What do they value more a person because he or

574
00:34:17.800 --> 00:34:20.880
<v Speaker 4>she was a guest on a podcast, or because of

575
00:34:20.920 --> 00:34:24.960
<v Speaker 4>what he or she said on a podcast. There are

576
00:34:25.000 --> 00:34:28.639
<v Speaker 4>some questions that I would like to see answer it.

577
00:34:28.880 --> 00:34:30.719
<v Speaker 5>Yeah, so I used to listen to I've forgotten the

578
00:34:30.760 --> 00:34:33.400
<v Speaker 5>name of it now, but the only airline podcast that

579
00:34:33.519 --> 00:34:36.840
<v Speaker 5>existed back in the day with Brian Hunter and Zach

580
00:34:36.960 --> 00:34:39.239
<v Speaker 5>But I would I would always get value from it

581
00:34:39.320 --> 00:34:41.800
<v Speaker 5>from things like Bruce saying, hey, you should really focus

582
00:34:41.840 --> 00:34:44.599
<v Speaker 5>on the transformations. And you know, it's a very pity

583
00:34:44.679 --> 00:34:48.039
<v Speaker 5>statement in exactly the right meaning of the word, like

584
00:34:48.320 --> 00:34:50.519
<v Speaker 5>learning hearing someone smart say that and go, huh, I

585
00:34:50.559 --> 00:34:53.239
<v Speaker 5>wonder how I actually put that into practice and then

586
00:34:53.239 --> 00:34:55.599
<v Speaker 5>figuring it out a month later. That's kind of the

587
00:34:55.639 --> 00:34:57.760
<v Speaker 5>value I always got from programming podcasts.

588
00:34:58.360 --> 00:35:01.679
<v Speaker 4>I believe the name of the podcast it was mostly Earlin.

589
00:35:02.079 --> 00:35:04.480
<v Speaker 5>It was mostly Earl. Yeah, I listened to that while

590
00:35:04.519 --> 00:35:05.599
<v Speaker 5>I was paying a house.

591
00:35:06.199 --> 00:35:09.800
<v Speaker 1>I definitely agree with you, and also that sometimes you're

592
00:35:09.800 --> 00:35:11.840
<v Speaker 1>listening to podcasts and you don't you don't really know

593
00:35:11.880 --> 00:35:13.920
<v Speaker 1>what to expect. You don't know what you're going to learn.

594
00:35:13.960 --> 00:35:16.199
<v Speaker 1>And that's what I appreciate about it, because I think,

595
00:35:16.239 --> 00:35:18.920
<v Speaker 1>you know, you pick up a book for a reason, right,

596
00:35:19.039 --> 00:35:21.119
<v Speaker 1>I want to learn how to do X and elixir.

597
00:35:21.719 --> 00:35:23.559
<v Speaker 1>You know, you probably read a blog post for a

598
00:35:23.599 --> 00:35:26.079
<v Speaker 1>reason as well. You were literally googling how to do

599
00:35:26.119 --> 00:35:27.800
<v Speaker 1>this thing. I'm like, oh, this came up and you

600
00:35:27.840 --> 00:35:30.119
<v Speaker 1>read it. But with podcasts, it's just kind of like

601
00:35:30.159 --> 00:35:33.119
<v Speaker 1>an open space to start encountering things that you didn't expect.

602
00:35:33.199 --> 00:35:36.119
<v Speaker 1>Here people talk about topics that weren't necessarily on your mind.

603
00:35:36.519 --> 00:35:39.079
<v Speaker 1>It's kind of like why I like, I don't know

604
00:35:39.119 --> 00:35:40.920
<v Speaker 1>how you guys are going to feel about this comparison,

605
00:35:41.199 --> 00:35:44.800
<v Speaker 1>but what I like about cable television is that I

606
00:35:44.840 --> 00:35:47.320
<v Speaker 1>only watch Lawn Order on TV. They pick up a

607
00:35:47.400 --> 00:35:50.119
<v Speaker 1>Law and Order episode for you all day long, from

608
00:35:50.159 --> 00:35:53.119
<v Speaker 1>like eight am to eight pm. Like, you didn't choose

609
00:35:53.159 --> 00:35:55.760
<v Speaker 1>a Lawn Order episode. You're just watching whatever they put

610
00:35:55.800 --> 00:35:57.880
<v Speaker 1>in front of your face. And that's fun, you know

611
00:35:57.960 --> 00:36:00.239
<v Speaker 1>that kind of that's what I'm looking for. And I'm

612
00:36:00.239 --> 00:36:03.159
<v Speaker 1>listening to podcasts like I'm interested in the broad topic,

613
00:36:03.320 --> 00:36:04.960
<v Speaker 1>you know, I'm interested in who these people are, and

614
00:36:05.000 --> 00:36:06.280
<v Speaker 1>I just want to hear what they have to say.

615
00:36:06.280 --> 00:36:07.599
<v Speaker 1>And I don't know where it's going to take me.

616
00:36:07.760 --> 00:36:09.639
<v Speaker 6>You don't like if you're more murder in your podcast,

617
00:36:09.760 --> 00:36:10.920
<v Speaker 6>You're just I think I get it.

618
00:36:11.280 --> 00:36:11.519
<v Speaker 4>Well.

619
00:36:11.599 --> 00:36:14.360
<v Speaker 1>I'm also listening that'll be one of my picks. Actually,

620
00:36:15.280 --> 00:36:18.119
<v Speaker 1>pretty good True Prime podcast that I was introduced to recently.

621
00:36:18.199 --> 00:36:19.920
<v Speaker 3>So what you're saying is we'll get back to the

622
00:36:20.000 --> 00:36:20.599
<v Speaker 3>murder part.

623
00:36:20.840 --> 00:36:22.360
<v Speaker 1>Yeah, we'll talk about murder later.

624
00:36:22.760 --> 00:36:25.679
<v Speaker 3>Yeah, I'm very curious to hear what comes out of

625
00:36:26.079 --> 00:36:29.840
<v Speaker 3>the survey. And although because I do feel that the

626
00:36:30.119 --> 00:36:33.440
<v Speaker 3>different podcasts that are available for the Lexi community, and

627
00:36:33.480 --> 00:36:37.599
<v Speaker 3>we have a disproportionate amount compared to our community size,

628
00:36:37.639 --> 00:36:39.920
<v Speaker 3>I think so we have a lot of them, and

629
00:36:40.000 --> 00:36:43.079
<v Speaker 3>I find I find all of them interesting, and I

630
00:36:43.119 --> 00:36:46.760
<v Speaker 3>feel like they we actually do manage to cover different

631
00:36:47.000 --> 00:36:53.079
<v Speaker 3>focus points and have wildly different styles. The Outlaws are

632
00:36:53.519 --> 00:36:56.639
<v Speaker 3>definitely a style into their own, and I feel like

633
00:36:57.079 --> 00:37:00.119
<v Speaker 3>there's a lot of difference between the Wizards and us,

634
00:37:00.519 --> 00:37:04.199
<v Speaker 3>even though we are both to some extent guest driven

635
00:37:04.480 --> 00:37:09.400
<v Speaker 3>and yeah, the whole meta conversation of what podcasts are

636
00:37:09.679 --> 00:37:13.559
<v Speaker 3>good for and yeah, very interesting. I hope to see

637
00:37:13.599 --> 00:37:14.920
<v Speaker 3>your survey soon.

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

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

640
00:37:20.239 --> 00:37:23.119
<v Speaker 1>into picks. So we'll just kind of round robin and

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

642
00:37:25.719 --> 00:37:28.400
<v Speaker 1>this is the time for it, start with laurs we

643
00:37:28.480 --> 00:37:29.079
<v Speaker 1>have for us.

644
00:37:29.199 --> 00:37:33.119
<v Speaker 3>Well, I have the newly launched Being Bloggers Webring, and

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

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

647
00:37:40.760 --> 00:37:44.440
<v Speaker 3>r mey your blogs so they can be in the Webring.

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

649
00:37:47.320 --> 00:37:49.960
<v Speaker 3>wanted to put together to just spread the love. Traffic

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

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

652
00:37:56.440 --> 00:37:59.960
<v Speaker 3>episode launches, So yeah, check it out. It's being bloger

653
00:38:00.079 --> 00:38:02.400
<v Speaker 3>stuff came where you can look around from my GitHub,

654
00:38:02.440 --> 00:38:04.159
<v Speaker 3>but being blogger stuff call very cool.

655
00:38:04.199 --> 00:38:07.000
<v Speaker 1>I'm very excited to pr that it includes my blog there.

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

657
00:38:10.280 --> 00:38:11.320
<v Speaker 1>How about you birth.

658
00:38:11.119 --> 00:38:11.880
<v Speaker 4>You've got a couple.

659
00:38:11.960 --> 00:38:15.039
<v Speaker 2>Of course, the Garroxia course is going on now, the

660
00:38:15.079 --> 00:38:17.519
<v Speaker 2>Lively course, and that's been a lot of fun. One

661
00:38:17.519 --> 00:38:20.039
<v Speaker 2>of the things that I get to do is look

662
00:38:20.079 --> 00:38:22.960
<v Speaker 2>at techniques that are kind of off the beaten path.

663
00:38:23.000 --> 00:38:25.400
<v Speaker 2>And one of the things I really like is gamerless

664
00:38:25.480 --> 00:38:28.480
<v Speaker 2>chain sets. So I've kind of been playing with where

665
00:38:28.480 --> 00:38:31.639
<v Speaker 2>those live, right, It's an ecto thing, but it's something

666
00:38:31.679 --> 00:38:34.079
<v Speaker 2>that likes to live in the view. So I'm working

667
00:38:34.079 --> 00:38:36.599
<v Speaker 2>on a video this afternoon that'll go out with the

668
00:38:36.599 --> 00:38:39.679
<v Speaker 2>fourth chapter that that'll come out probably about the same

669
00:38:39.719 --> 00:38:43.039
<v Speaker 2>time as this episode is I'll post that. I'm also

670
00:38:43.559 --> 00:38:48.639
<v Speaker 2>excited to be working on a new project. But just

671
00:38:48.679 --> 00:38:51.199
<v Speaker 2>to give you a teaser, here's a keynote. There's a

672
00:38:51.239 --> 00:38:56.559
<v Speaker 2>keynote on failure by guy named Brian Trotwine, and he's

673
00:38:57.199 --> 00:39:03.079
<v Speaker 2>really just a fabulous speaker and an excellent person to

674
00:39:03.559 --> 00:39:06.760
<v Speaker 2>you know. The kind of is the anti Bruce, right,

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

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

677
00:39:15.960 --> 00:39:19.320
<v Speaker 2>around the idea of putting together a video series of

678
00:39:19.360 --> 00:39:23.239
<v Speaker 2>how things fail why they feel less of a programmer

679
00:39:23.320 --> 00:39:28.159
<v Speaker 2>series and more of a kind of an exploration of failure. So,

680
00:39:28.360 --> 00:39:30.920
<v Speaker 2>but this is a teaser for that project.

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

682
00:39:32.760 --> 00:39:35.079
<v Speaker 1>to checking some of that out. Let's see who's up

683
00:39:35.119 --> 00:39:36.440
<v Speaker 1>next Steven and he picks for us.

684
00:39:36.519 --> 00:39:40.079
<v Speaker 6>Yeah, I guess a general pick. I'll give what I'm using.

685
00:39:40.119 --> 00:39:43.440
<v Speaker 6>But find something that does this. I found an e

686
00:39:43.840 --> 00:39:46.599
<v Speaker 6>like a PDF reader that does text the speech. I

687
00:39:46.599 --> 00:39:48.719
<v Speaker 6>don't know why where this has been my entire life,

688
00:39:48.719 --> 00:39:51.360
<v Speaker 6>but like I now walk the dog and I'm listening,

689
00:39:51.440 --> 00:39:52.840
<v Speaker 6>I got Bruce in my ear while I have a

690
00:39:52.920 --> 00:39:54.639
<v Speaker 6>robot in my ear saying Bruce's words.

691
00:39:54.960 --> 00:39:55.960
<v Speaker 4>I've got, you know.

692
00:39:56.039 --> 00:39:58.360
<v Speaker 6>Everything that I've been meaning to read and then kind

693
00:39:58.400 --> 00:40:01.519
<v Speaker 6>of get around to is constantly going in my ears.

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

695
00:40:05.960 --> 00:40:08.559
<v Speaker 6>have a couple of different services for reading. But when

696
00:40:08.559 --> 00:40:10.039
<v Speaker 6>they ask you to select, if you scroll down, you

697
00:40:10.039 --> 00:40:11.840
<v Speaker 6>can pick the local Android one, so you can get

698
00:40:11.840 --> 00:40:15.519
<v Speaker 6>the generic Android voice doing Texas speech, which is good enough.

699
00:40:15.719 --> 00:40:18.000
<v Speaker 6>But if you haven't done this, do this. You need

700
00:40:18.000 --> 00:40:19.639
<v Speaker 6>this in your life. Being able to just throw a

701
00:40:19.679 --> 00:40:23.320
<v Speaker 6>technical book, reading growing object or into word guided by

702
00:40:23.360 --> 00:40:24.440
<v Speaker 6>tests in one ear.

703
00:40:24.760 --> 00:40:26.800
<v Speaker 4>It's it's really really cool do that.

704
00:40:27.199 --> 00:40:29.639
<v Speaker 1>Oh yeah, that's a good idea. Josh An picks.

705
00:40:29.760 --> 00:40:30.719
<v Speaker 4>I have two picks.

706
00:40:31.000 --> 00:40:34.199
<v Speaker 5>The first is the GitHub Arctic code vaults tech tree,

707
00:40:34.519 --> 00:40:37.280
<v Speaker 5>which I've linked to, and it's just you mentioned curation

708
00:40:37.440 --> 00:40:40.960
<v Speaker 5>in the context of cable television. While I basically hate

709
00:40:41.000 --> 00:40:45.079
<v Speaker 5>cable television, I do like the concept of curation. And

710
00:40:45.440 --> 00:40:48.440
<v Speaker 5>this is they've listed just a ridiculous number of books

711
00:40:48.480 --> 00:40:50.119
<v Speaker 5>that Hey, if you want to know about how to

712
00:40:50.119 --> 00:40:54.159
<v Speaker 5>do stuff on computers, whether it be networking or software

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

714
00:40:57.519 --> 00:41:01.519
<v Speaker 5>book choices. And then also, I quote I don't know

715
00:41:01.519 --> 00:41:03.679
<v Speaker 5>who to attribute it to. My friend Michael Alvis sent

716
00:41:03.760 --> 00:41:06.320
<v Speaker 5>it to me, but it wasn't his set. Running a

717
00:41:06.320 --> 00:41:09.320
<v Speaker 5>successful open source project is just good will hunting in reverse,

718
00:41:09.639 --> 00:41:11.880
<v Speaker 5>where you start out as a respected genius and end

719
00:41:12.000 --> 00:41:14.960
<v Speaker 5>up being a janitor who gets into fights. And I

720
00:41:15.039 --> 00:41:16.400
<v Speaker 5>just wanted to share.

721
00:41:16.199 --> 00:41:17.559
<v Speaker 1>That that definitely roseate.

722
00:41:17.840 --> 00:41:18.039
<v Speaker 3>Yeah.

723
00:41:18.360 --> 00:41:21.079
<v Speaker 1>Interesting. All right, I'll run down to the mind and

724
00:41:21.119 --> 00:41:23.239
<v Speaker 1>then we'll hand it off to our guest. I've got

725
00:41:23.239 --> 00:41:24.840
<v Speaker 1>a few this time around. So we talked a little

726
00:41:24.880 --> 00:41:29.039
<v Speaker 1>bit about being a generalist and how as engineers as programmers,

727
00:41:29.039 --> 00:41:31.559
<v Speaker 1>it you know, is that's the way to go. I

728
00:41:31.559 --> 00:41:33.119
<v Speaker 1>think a lot of us feel. So there's a great

729
00:41:33.119 --> 00:41:38.159
<v Speaker 1>book by David Epstein called Let's See Range. How Generalists

730
00:41:38.199 --> 00:41:40.800
<v Speaker 1>Triumph in a Specialized World. Really interesting book on this

731
00:41:40.880 --> 00:41:43.880
<v Speaker 1>topic sort of more broadly speaking. And I was actually

732
00:41:43.880 --> 00:41:46.119
<v Speaker 1>introduced to this book by my partner, who is an

733
00:41:46.239 --> 00:41:48.559
<v Speaker 1>artist and who wrote what I thought was a very

734
00:41:48.559 --> 00:41:51.280
<v Speaker 1>interesting post on the topic of being a generalist from

735
00:41:51.320 --> 00:41:53.079
<v Speaker 1>the point of view of like an artist or a

736
00:41:53.079 --> 00:41:56.159
<v Speaker 1>creative worker. So I'm going to share that link as well.

737
00:41:56.679 --> 00:42:01.920
<v Speaker 1>Not quite shameless self promotion, shameless someone promotion. And then

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

739
00:42:05.639 --> 00:42:08.760
<v Speaker 1>have heard of, Stephen Naniez, on the topic of managing

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

741
00:42:13.679 --> 00:42:16.639
<v Speaker 1>and I just thought it was a really like, very clear,

742
00:42:17.360 --> 00:42:19.960
<v Speaker 1>very straightforward look at you know, why we need to

743
00:42:19.960 --> 00:42:22.679
<v Speaker 1>manage connections in this way, what this tool does for us.

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

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

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

747
00:42:29.360 --> 00:42:33.360
<v Speaker 1>processes what's that called, Stephen arline observer, Yeah, showing you

748
00:42:33.559 --> 00:42:37.079
<v Speaker 1>like the various processes that are being managed by your

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

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

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

752
00:42:42.800 --> 00:42:45.280
<v Speaker 1>of grow and strength depending on what you're doing. And

753
00:42:45.440 --> 00:42:47.159
<v Speaker 1>I just thought you laid it out super well. And

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

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

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

757
00:42:57.119 --> 00:42:59.920
<v Speaker 1>comf on the topic of working with Elixer and rabbit

758
00:43:00.199 --> 00:43:02.119
<v Speaker 1>Queue and using it to bring in a green field

759
00:43:02.159 --> 00:43:07.559
<v Speaker 1>of water app into your legacy technical ecosystem. So you have, yeah,

760
00:43:07.639 --> 00:43:10.599
<v Speaker 1>you might want to get on that. And that's for me.

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

762
00:43:13.360 --> 00:43:17.800
<v Speaker 4>Yes, I have maybe too much, too many picks, but

763
00:43:18.559 --> 00:43:21.719
<v Speaker 4>I have already sent you the links the Elixi World

764
00:43:21.760 --> 00:43:25.360
<v Speaker 4>Telegram group, which is a telegram group for any people

765
00:43:25.400 --> 00:43:29.360
<v Speaker 4>related to any being language. What I like about telegram

766
00:43:29.400 --> 00:43:32.760
<v Speaker 4>groups is that I don't have the fear of missing

767
00:43:32.800 --> 00:43:36.199
<v Speaker 4>out because when you go to when there is a

768
00:43:36.280 --> 00:43:40.639
<v Speaker 4>telegram group which is reasonably large, and you go there

769
00:43:40.719 --> 00:43:43.719
<v Speaker 4>and there is two hundred new messages and you can't

770
00:43:43.800 --> 00:43:47.840
<v Speaker 4>keep up. You forget that you'll not be able to

771
00:43:47.920 --> 00:43:50.679
<v Speaker 4>keep up with all the messages. So whenever you have time,

772
00:43:50.760 --> 00:43:53.800
<v Speaker 4>you go there, you see what's happening, and then you

773
00:43:54.159 --> 00:43:57.119
<v Speaker 4>go back to what you're doing. I have already sent

774
00:43:57.320 --> 00:44:02.679
<v Speaker 4>other links related to tell but it's okay. I think

775
00:44:02.719 --> 00:44:06.039
<v Speaker 4>it's parted to say that we have the Education Working

776
00:44:06.079 --> 00:44:09.239
<v Speaker 4>Group of the ARLNG Ecosystem Foundation. We have a list

777
00:44:09.280 --> 00:44:12.719
<v Speaker 4>of issues at our git hub page, so I think

778
00:44:12.760 --> 00:44:17.119
<v Speaker 4>it's important if people want to help our group. There

779
00:44:17.199 --> 00:44:22.480
<v Speaker 4>are many issues issues open and Elixir breds you two

780
00:44:22.559 --> 00:44:27.840
<v Speaker 4>thousan twenty Elixir breads you twenty twenty. Is it going

781
00:44:27.880 --> 00:44:32.679
<v Speaker 4>to happen? It would happen in May and Bruce would

782
00:44:32.679 --> 00:44:35.960
<v Speaker 4>be here in San Paulo. But it seems it's going

783
00:44:36.000 --> 00:44:40.719
<v Speaker 4>to happen physically, we hope only in twenty twenty one,

784
00:44:41.320 --> 00:44:45.840
<v Speaker 4>but it's probably going to happen online. So that's what

785
00:44:46.000 --> 00:44:48.519
<v Speaker 4>I would like to say. If people want to learn

786
00:44:48.920 --> 00:44:53.400
<v Speaker 4>Elixir in Portuguese, the language of the creator of Elixir,

787
00:44:54.280 --> 00:44:57.800
<v Speaker 4>it will be possible to learn it online. And my

788
00:44:57.960 --> 00:45:00.679
<v Speaker 4>last piek is going to be a movie because I

789
00:45:00.800 --> 00:45:06.199
<v Speaker 4>really like the I really enjoyed the Elixir Fountain podcast.

790
00:45:06.320 --> 00:45:09.960
<v Speaker 4>The last part it was I think it was fire

791
00:45:10.199 --> 00:45:14.119
<v Speaker 4>behind the code because I could get to know better

792
00:45:14.800 --> 00:45:18.760
<v Speaker 4>the people that were part of the community and their

793
00:45:19.159 --> 00:45:22.840
<v Speaker 4>For instance, I learned that Joe Armstrong loved to play

794
00:45:22.840 --> 00:45:26.719
<v Speaker 4>the piano. I can't play the piano. But I love movies,

795
00:45:26.800 --> 00:45:30.119
<v Speaker 4>and I love some Brazilian movies. The last time I

796
00:45:30.320 --> 00:45:35.760
<v Speaker 4>was a guest here, I suggested people watch the movie Aquarius.

797
00:45:36.360 --> 00:45:40.559
<v Speaker 4>Now I have another suggestion from the same director, It's

798
00:45:40.679 --> 00:45:44.679
<v Speaker 4>Back with It's okay. Some people will not like this

799
00:45:44.840 --> 00:45:48.679
<v Speaker 4>movie because it's kind of violent, but it has a

800
00:45:48.840 --> 00:45:54.480
<v Speaker 4>very deep message about Brazil today and about actually about

801
00:45:54.480 --> 00:45:58.199
<v Speaker 4>the world today. So it's it's a movie that I

802
00:45:58.239 --> 00:45:59.679
<v Speaker 4>really like. It's called Back.

803
00:46:00.199 --> 00:46:02.440
<v Speaker 1>This actually looks really cool. I just googled it. This

804
00:46:02.480 --> 00:46:05.000
<v Speaker 1>is my kind of movie. The locals are not exactly

805
00:46:05.000 --> 00:46:07.920
<v Speaker 1>what they appear to be in High Dangerous Secrets. Yes

806
00:46:08.079 --> 00:46:10.880
<v Speaker 1>sign Yes all great. Thank you so much for joining

807
00:46:10.920 --> 00:46:14.360
<v Speaker 1>us today at although this was a great conversation. And

808
00:46:14.559 --> 00:46:17.199
<v Speaker 1>that's it for today's episode of a Listener Mix
