$30 off During Our Annual Pro Sale. View Details »

Learning Rust the wrong way.

Learning Rust the wrong way.

Approaching a new language can be scary and time consuming. The author has been a C++ programmer for quite some time and has tried to give Rust a chance many times over the years with not much success. But this has changed. In this talk we will:
- Go over the basics of Rust (enough for the talk to make sense).
- Talk about different learning strategies and the strengths and flaws they have.
- How the wrong way to learn for one person can be perfect for another.
- How being a C++ programmer can both help and hinder you.
- Cover common mistakes of new programmers.
- And hopefully inspire you to learn in different and "wrong" ways.

Ólafur Waage

September 01, 2022
Tweet

More Decks by Ólafur Waage

Other Decks in Programming

Transcript

  1. None
  2. In Zundert in 1853 a boy named Vincent Van Gogh

    is born.
  3. In 1880 at the age of 27, he decides to

    become an artist
  4. In his early years he taught himself to draw and

    paint but his style changed significantly under the influence of Impressionism.
  5. His career was very short though, lasting between 1880 and

    1890.
  6. Quoting the Britannica biography on Van Gogh: His palette at

    last became colorful, his vision less traditional, and his tonalities lighter, as may be seen in his first paintings of Montmartre.
  7. Quoting the Britannica biography on Van Gogh: His palette at

    last became colorful, his vision less traditional, and his tonalities lighter, as may be seen in his first paintings of Montmartre. By the summer of 1887 he was painting in pure colors and using broken brushwork that is at times pointillistic.
  8. Quoting the Britannica biography on Van Gogh: His palette at

    last became colorful, his vision less traditional, and his tonalities lighter, as may be seen in his first paintings of Montmartre. By the summer of 1887 he was painting in pure colors and using broken brushwork that is at times pointillistic. Finally, by the beginning of 1888, van Gogh’s Post-Impressionist style had crystallized.
  9. The main painting technique associated with Van Gogh is called

    Impasto.
  10. The main painting technique associated with Van Gogh is called

    Impasto. Where the paint is applied directly onto the canvas, then spread around.
  11. The main painting technique associated with Van Gogh is called

    Impasto. Where the paint is applied directly onto the canvas, then spread around. Even mixed together with other paints, sometimes he used his own fingers.
  12. This gives the painting a thick three dimensional texture and

    the paint is undiluted.
  13. A common practice is to work the paint as little

    as possible because the more you touch it the duller and flatter it becomes with each stroke.
  14. The most famous example is: “The Starry Night (1889)”

  15. The most famous example is: “The Starry Night (1889)” Quoting

    the Van gogh experience: “Had the painting been done with flat paint, it would not be the memorable piece it is.”
  16. Quiz

  17. None
  18. Adam van Breen - Skating on the Frozen Amstel River

    (1611)
  19. None
  20. Vincent Van Gogh - Farmhouse in Provence (1888)

  21. None
  22. Johan Barthold Jongkind - The Towpath (1864)

  23. None
  24. Vincent van Gogh - Crab on its Back (1888)

  25. Ólafur Waage Senior Software Developer - TurtleSec AS @olafurw on

    Twitter 1 25
  26. 26

  27. Learning Rust the wrong way

  28. “ What’s wrong with knowing what you know now and

    not knowing what you don’t know until later? 28
  29. “ What’s wrong with knowing what you know now and

    not knowing what you don’t know until later? - Winnie the Pooh 29
  30. WHAT’S GOING ON? 30

  31. WHAT’S GOING ON? As you might guess based on the

    title and introduction, this isn’t a normal talk. The structure is a bit of an experiment on my end. 31
  32. WHAT’S GOING ON? As you might guess based on the

    title and introduction, this isn’t a normal talk. The structure is a bit of an experiment on my end. 32 You will learn some Rust and you will learn something about learning in the wrong way.
  33. WHAT’S GOING ON? As you might guess based on the

    title and introduction, this isn’t a normal talk. The structure is a bit of an experiment on my end. 33 You will learn some Rust and you will learn something about learning in the wrong way. This talk does have a point, but I might go to strange places before I get there.
  34. Actual wrong ways to learn Rust

  35. Actual wrong ways to learn Rust Let’s get literal. Just

    so we have that covered, at least.
  36. WHILE SKYDIVING 36

  37. WHILE SKYDIVING 37

  38. AS AN 18TH CENTURY ARISTOCRAT 38

  39. AS AN 18TH CENTURY ARISTOCRAT 39

  40. JUST TO GIVE A TALK AT A TECHNICAL CONFERENCE 40

  41. JUST TO GIVE A TALK AT A TECHNICAL CONFERENCE 41

  42. WHAT IS RUST? 42

  43. WHAT IS RUST? Programming language focusing on: 43

  44. WHAT IS RUST? Programming language focusing on: - Performance 44

  45. WHAT IS RUST? Programming language focusing on: - Performance -

    Safety 45
  46. WHAT IS RUST? Programming language focusing on: - Performance -

    Safety - Productivity 46
  47. WHAT IS RUST? Programming language focusing on: - Performance -

    Safety - Productivity 47
  48. WHAT IS RUST? Programming language focusing on: - Performance -

    Safety - Productivity 48
  49. WHAT IS RUST? Programming language focusing on: - Performance -

    Safety - Productivity 49
  50. WHAT IS RUST? Programming language focusing on: - Performance -

    Safety - Productivity 50
  51. WHAT IS RUST? Programming language focusing on: - Performance -

    Safety - Productivity 51
  52. WHAT IS RUST? Programming language focusing on: - Performance -

    Safety - Productivity 52
  53. WHAT IS RUST? 53

  54. WHAT IS RUST? 2006 Personal project by Mozilla Employee Graydon

    Hoare 54
  55. WHAT IS RUST? 2006 Personal project by Mozilla Employee Graydon

    Hoare 2009 Turned into a Mozilla sponsored project 55
  56. WHAT IS RUST? 2006 Personal project by Mozilla Employee Graydon

    Hoare 2009 Turned into a Mozilla sponsored project 2011 First bootstrapped version 56
  57. WHAT IS RUST? 2006 Personal project by Mozilla Employee Graydon

    Hoare 2009 Turned into a Mozilla sponsored project 2011 First bootstrapped version 2012 Version 0.1 released 57
  58. 58

  59. 59

  60. 60

  61. 61

  62. 62

  63. 63

  64. 64

  65. 65

  66. 66

  67. 67

  68. 68

  69. 69

  70. 70

  71. 71

  72. 72

  73. 73

  74. 74

  75. 75

  76. 76

  77. Let’s talk about Baseball Image: White Baseball Ball On Brown

    Leather Baseball Mitt Steshka Willems - Pexels
  78. Hitting a baseball is a relatively complicated skill. Image: Man

    Holding Baseball Bat Tim Eiden - Pexels
  79. Hitting a baseball is a relatively complicated skill. You need

    speed to recognize what kind of ball is being thrown, precision to hit the ball and strength to make sure it goes as far as possible. Image: Man Holding Baseball Bat Tim Eiden - Pexels
  80. In 2018 the batting average was .248, which means that

    the average baseball player had a 24.8% chance to hit the ball. Image: People Playing Baseball Lino Khim Medrina - Pexels
  81. In 2018 the batting average was .248, which means that

    the average baseball player had a 24.8% chance to hit the ball. This is not per ball thrown but for the entire attempt. Image: People Playing Baseball Lino Khim Medrina - Pexels
  82. In 2018 the batting average was .248, which means that

    the average baseball player had a 24.8% chance to hit the ball. This is not per ball thrown but for the entire attempt. There's more to it but that's the general idea. Image: People Playing Baseball Lino Khim Medrina - Pexels
  83. Cal Poly Mustangs are a baseball team that represent the

    California Polytechnic State University. Hall, Domingues, Cavazos (1994) California Polytech State University Perceptual and Motor Skills Image: Boy Wearing Blue and White 3 Jersey About to Pitch a Baseball Pixabay - Pexels
  84. Cal Poly Mustangs are a baseball team that represent the

    California Polytechnic State University. The team was founded in 1948 and have competed in the Big West Conference since 1997 and winning it in 2014. Hall, Domingues, Cavazos (1994) California Polytech State University Perceptual and Motor Skills Image: Boy Wearing Blue and White 3 Jersey About to Pitch a Baseball Pixabay - Pexels
  85. Cal Poly Mustangs are a baseball team that represent the

    California Polytechnic State University. The team was founded in 1948 and have competed in the Big West Conference since 1997 and winning it in 2014. In 1994 the University published a paper by Hall, Domingues & Cavazos called Contextual interference effects with skilled baseball players. Hall, Domingues, Cavazos (1994) California Polytech State University Perceptual and Motor Skills Image: Boy Wearing Blue and White 3 Jersey About to Pitch a Baseball Pixabay - Pexels
  86. The study took a group of baseball players and measured

    the batting average. Hall, Domingues, Cavazos (1994) California Polytech State University Perceptual and Motor Skills Image: Man Throwing Baseball K’LeAnn - Pexels
  87. The study took a group of baseball players and measured

    the batting average. The idea to then give them extra batting practice sessions for 6 weeks. Hall, Domingues, Cavazos (1994) California Polytech State University Perceptual and Motor Skills Image: Man Throwing Baseball K’LeAnn - Pexels
  88. THE BASEBALL STUDY 88 Hall, Domingues, Cavazos (1994) California Polytech

    State University Perceptual and Motor Skills
  89. THE BASEBALL STUDY They were split into three groups: 89

    Hall, Domingues, Cavazos (1994) California Polytech State University Perceptual and Motor Skills
  90. THE BASEBALL STUDY They were split into three groups: ◦

    One of the groups got thrown balls in a structured order, 15 fastballs, 15 curveballs and 15 change-ups. They were always thrown in this order and the players always knew what type of ball was next. This is sometimes called blocked practice, where you split the exercises into similar structured blocks. 90 Hall, Domingues, Cavazos (1994) California Polytech State University Perceptual and Motor Skills
  91. THE BASEBALL STUDY They were split into three groups: ◦

    One of the groups got thrown balls in a structured order, 15 fastballs, 15 curveballs and 15 change-ups. They were always thrown in this order and the players always knew what type of ball was next. This is sometimes called blocked practice, where you split the exercises into similar structured blocks. ◦ The second group got the same number of throws but the order was random. 91 Hall, Domingues, Cavazos (1994) California Polytech State University Perceptual and Motor Skills
  92. THE BASEBALL STUDY They were split into three groups: ◦

    One of the groups got thrown balls in a structured order, 15 fastballs, 15 curveballs and 15 change-ups. They were always thrown in this order and the players always knew what type of ball was next. This is sometimes called blocked practice, where you split the exercises into similar structured blocks. ◦ The second group got the same number of throws but the order was random. ◦ And then the third group was for control and did not get any extra practice. 92 Hall, Domingues, Cavazos (1994) California Polytech State University Perceptual and Motor Skills
  93. THE BASEBALL STUDY RESULTS 93 Hall, Domingues, Cavazos (1994) California

    Polytech State University Perceptual and Motor Skills
  94. THE BASEBALL STUDY RESULTS What do you think happened? 94

    Hall, Domingues, Cavazos (1994) California Polytech State University Perceptual and Motor Skills
  95. THE BASEBALL STUDY RESULTS What do you think happened? After

    the 6 weeks there was another test where 45 random balls were thrown at group of players. 95 Hall, Domingues, Cavazos (1994) California Polytech State University Perceptual and Motor Skills
  96. THE BASEBALL STUDY RESULTS What do you think happened? After

    the 6 weeks there was another test where 45 random balls were thrown at group of players. ◦ The control group improved by 6.2% 96 Hall, Domingues, Cavazos (1994) California Polytech State University Perceptual and Motor Skills
  97. THE BASEBALL STUDY RESULTS What do you think happened? After

    the 6 weeks there was another test where 45 random balls were thrown at group of players. ◦ The control group improved by 6.2% ◦ The blocked group improved by 24.8% 97 Hall, Domingues, Cavazos (1994) California Polytech State University Perceptual and Motor Skills
  98. THE BASEBALL STUDY RESULTS What do you think happened? After

    the 6 weeks there was another test where 45 random balls were thrown at group of players. ◦ The control group improved by 6.2% ◦ The blocked group improved by 24.8% ◦ The random group improved by 56.7% 98 Hall, Domingues, Cavazos (1994) California Polytech State University Perceptual and Motor Skills
  99. Some might think: "Shouldn't the blocked practice help more?" Image:

    View from Stands on Baseball Field Wendy Wei- Pexels
  100. Some might think: "Shouldn't the blocked practice help more?" Because

    in the random practice you don't know what you are practicing for Image: View from Stands on Baseball Field Wendy Wei- Pexels
  101. Some might think: "Shouldn't the blocked practice help more?" Because

    in the random practice you don't know what you are practicing for You have no way to prepare, create any sort of mental model or muscle memory for the throws that are coming. Image: View from Stands on Baseball Field Wendy Wei- Pexels
  102. Some might think: "Shouldn't the blocked practice help more?" Because

    in the random practice you don't know what you are practicing for You have no way to prepare, create any sort of mental model or muscle memory for the throws that are coming. We'll get into this more later. Image: View from Stands on Baseball Field Wendy Wei- Pexels
  103. WHAT’S GOING ON HERE I wanted to learn Rust, the

    programming language. 103
  104. WHAT’S GOING ON HERE I wanted to learn Rust, the

    programming language. I had this idea that: 104
  105. WHAT’S GOING ON HERE I wanted to learn Rust, the

    programming language. I had this idea that: - I am a programmer 105
  106. WHAT’S GOING ON HERE I wanted to learn Rust, the

    programming language. I had this idea that: - I am a programmer - I have certain skills 106
  107. WHAT’S GOING ON HERE I wanted to learn Rust, the

    programming language. I had this idea that: - I am a programmer - I have certain skills - I have some experience with programming 107
  108. WHAT’S GOING ON HERE I wanted to learn Rust, the

    programming language. I had this idea that: - I am a programmer - I have certain skills - I have some experience with programming - Those skills should transfer 108
  109. WHAT’S GOING ON HERE I wanted to learn Rust, the

    programming language. I had this idea that: - I am a programmer - I have certain skills - I have some experience with programming - Those skills should transfer - Learning another language (like really learning) should be easy 109
  110. WHAT’S GOING ON HERE I wanted to learn Rust, the

    programming language. I had this idea that: - I am a programmer - I have certain skills - I have some experience with programming - Those skills should transfer - Learning another language (like really learning) should be easy - … 110
  111. NOT SO EASY This is not a jab at the

    idea that “Rust is difficult” 111
  112. NOT SO EASY This is not a jab at the

    idea that “Rust is difficult” This is a jab at my hubris. 112
  113. NOT SO EASY This is not a jab at the

    idea that “Rust is difficult” This is a jab at my hubris. What I found was that I didn’t actually learn much of Rust until I sat down and really sunk my teeth into it. 113
  114. NOT SO EASY This is not a jab at the

    idea that “Rust is difficult” This is a jab at my hubris. What I found was that I didn’t actually learn much of Rust until I sat down and really sunk my teeth into it. Doing a tutorial here or watching a video there did not help at all. 114
  115. NOT SO EASY This is not a jab at the

    idea that “Rust is difficult” This is a jab at my hubris. What I found was that I didn’t actually learn much of Rust until I sat down and really sunk my teeth into it. Doing a tutorial here or watching a video there did not help at all. As a curious person I wanted to know, why? 115
  116. Let’s talk about Pokémon Image: Pokemon Logo © 2022 Pokémon.

    © 1995–2022 Nintendo/Creatures Inc./GAME FREAK inc.
  117. Let’s talk about Pokémon and Rust Image: Pokemon Logo ©

    2022 Pokémon. © 1995–2022 Nintendo/Creatures Inc./GAME FREAK inc. Image: Rust Logo Mozilla, distributed under CC-BY
  118. PROJECT IDEAS After going through some exercises that covered the

    basics of Rust, I started to look at older projects I had made in C++. 118
  119. PROJECT IDEAS After going through some exercises that covered the

    basics of Rust, I started to look at older projects I had made in C++. With the idea to convert them over to Rust. 119
  120. PROJECT IDEAS After going through some exercises that covered the

    basics of Rust, I started to look at older projects I had made in C++. With the idea to convert them over to Rust. This is a great technique if you’re moving over to a new language and have existing projects. 120
  121. Image: Pokemon Type Chart © Pokémon Database, 2008-2022

  122. None
  123. None
  124. None
  125. None
  126. None
  127. None
  128. None
  129. None
  130. None
  131. None
  132. None
  133. None
  134. None
  135. None
  136. None
  137. None
  138. None
  139. None
  140. None
  141. None
  142. None
  143. None
  144. None
  145. None
  146. None
  147. None
  148. None
  149. None
  150. Let’s go back to paintings Painting: Willem van de Velde

    the Younger and Studio Before the Storm c. 1700
  151. In 2008 an experiment was conducted at the University of

    California. Kornell, Bjork (2008) University of California - Association for Psychological Science Painting: Jan van Huysum Still Life with Flowers and Fruit c. 1715
  152. In 2008 an experiment was conducted at the University of

    California. The goal of the research was to detect the difference between two teaching methods. Kornell, Bjork (2008) University of California - Association for Psychological Science Painting: Jan van Huysum Still Life with Flowers and Fruit c. 1715
  153. In 2008 an experiment was conducted at the University of

    California. The goal of the research was to detect the difference between two teaching methods. Massed vs Spaced. Kornell, Bjork (2008) University of California - Association for Psychological Science Painting: Jan van Huysum Still Life with Flowers and Fruit c. 1715
  154. They were asked to study paintings grouped by the artist

    (massed) Kornell, Bjork (2008) University of California - Association for Psychological Science Painting: Jan van Huysum Flowers in an Urn c. 1720/1722
  155. They were asked to study paintings grouped by the artist

    (massed) Or interleaved with paintings by other artists (spaced) Kornell, Bjork (2008) University of California - Association for Psychological Science Painting: Jan van Huysum Flowers in an Urn c. 1720/1722
  156. So each massed participant would get a set of paintings,

    all by the same artist. Painting: Jan van Huysum Flowers in an Urn c. 1720/1722
  157. So each massed participant would get a set of paintings,

    all by the same artist. They could spend time looking at the style and then in the next painting, (since it’s by the same artist) look for similarities. Painting: Jan van Huysum Flowers in an Urn c. 1720/1722
  158. So each massed participant would get a set of paintings,

    all by the same artist. They could spend time looking at the style and then in the next painting, (since it’s by the same artist) look for similarities. The spaced participants would get a mix of artists. Painting: Jan van Huysum Flowers in an Urn c. 1720/1722
  159. The results were counter intuitive, Kornell, Bjork (2008) University of

    California - Association for Psychological Science
  160. The results were counter intuitive, because the spaced version did

    better. Kornell, Bjork (2008) University of California - Association for Psychological Science
  161. The results were counter intuitive, because the spaced version did

    better. The spaced version, where the participants are not able to study a single painter at a time and focus on their style, was the one that gave the better results. Kornell, Bjork (2008) University of California - Association for Psychological Science
  162. And even if the massed version did worse, Kornell, Bjork

    (2008) University of California - Association for Psychological Science
  163. And even if the massed version did worse, the participants

    preferred that way of learning. Kornell, Bjork (2008) University of California - Association for Psychological Science
  164. And even if the massed version did worse, the participants

    preferred that way of learning. “In Experiments 1a and 2 combined, 85% of the participants did at least as well in the spaced condition as in the massed condition, but 83% of the participants rated the massed condition as equally effective as or more effective than the spaced condition.” Kornell, Bjork (2008) University of California - Association for Psychological Science
  165. Looking back at our own inability to foresee the benefits

    of spacing, perhaps we fell victim to the same illusion that we have railed against (e.g., Bjork, 1994, 1999; Kornell & Bjork, 2007), Kornell, Bjork (2008) University of California - Association for Psychological Science
  166. Looking back at our own inability to foresee the benefits

    of spacing, perhaps we fell victim to the same illusion that we have railed against (e.g., Bjork, 1994, 1999; Kornell & Bjork, 2007), Namely, the illusion that a sense of ease or fluency accompanies effective learning, whereas a sense of difficulty signifies ineffective learning. Kornell, Bjork (2008) University of California - Association for Psychological Science
  167. Looking back at our own inability to foresee the benefits

    of spacing, perhaps we fell victim to the same illusion that we have railed against (e.g., Bjork, 1994, 1999; Kornell & Bjork, 2007), Namely, the illusion that a sense of ease or fluency accompanies effective learning, whereas a sense of difficulty signifies ineffective learning. In the case of induction, as in many other types of learning, spacing appears to be sometimes, if not always, a desirable difficulty (Bjork, 1994). Kornell, Bjork (2008) University of California - Association for Psychological Science
  168. And this concept they used here is the important point.

    Image: Desperate evicted male entrepreneur standing near window Andrea Piacquadio - Pexels
  169. And this concept they used here is the important point.

    Desirable Difficulty Image: Desperate evicted male entrepreneur standing near window Andrea Piacquadio - Pexels
  170. And this concept they used here is the important point.

    Desirable Difficulty We don’t want things to be hard just for the sake of being hard. Image: Desperate evicted male entrepreneur standing near window Andrea Piacquadio - Pexels
  171. And this concept they used here is the important point.

    Desirable Difficulty We don’t want things to be hard just for the sake of being hard. This next slide isn’t a better version of this one. Image: Desperate evicted male entrepreneur standing near window Andrea Piacquadio - Pexels
  172. Xka qefp zlkzbmq qebv rpba ebob fp qeb fjmloqxkq mlfkq.

    Abpfoxyib Afccfzriqv Tb alk’q txkq qefkdp ql yb exoa grpq clo qeb pxhb lc ybfkd exoa. Qefp kbuq pifab fpk’q x ybqqbo sbopflk lc qefp lkb. Fjxdb: Abpmboxqb bsfzqba jxib bkqobmobkbro pqxkafkd kbxo tfkalt Xkaobx Mfxznrxafl - Mbubip
  173. Quoting Elizabeth Bjork and Robert Bjork about Desirable Difficulties: Image:

    Pensive ethnic man listening to answer in paper cup phone Andrea Piacquadio - Pexels
  174. Quoting Elizabeth Bjork and Robert Bjork about Desirable Difficulties: “They

    trigger encoding and retrieval processes that support learning, comprehension, and remembering…” Image: Pensive ethnic man listening to answer in paper cup phone Andrea Piacquadio - Pexels
  175. Practicing easy things is fooling your brain thinking that you

    are doing well. Image: Boy Looking On A Tidied Desk Oleksandr Pidvalnyi - Pexels
  176. LEARNING METHODS 176 Elizabeth Bjork, Robert Bjork (2011)

  177. LEARNING METHODS Empirical studies have looked into different learning methods

    or strategies that have a positive impact on your learning: 177 Elizabeth Bjork, Robert Bjork (2011)
  178. LEARNING METHODS Empirical studies have looked into different learning methods

    or strategies that have a positive impact on your learning: - Spacing 178 Elizabeth Bjork, Robert Bjork (2011)
  179. LEARNING METHODS Empirical studies have looked into different learning methods

    or strategies that have a positive impact on your learning: - Spacing - Interleaving 179 Elizabeth Bjork, Robert Bjork (2011)
  180. LEARNING METHODS Empirical studies have looked into different learning methods

    or strategies that have a positive impact on your learning: - Spacing - Interleaving - Variation 180 Elizabeth Bjork, Robert Bjork (2011)
  181. LEARNING METHODS Empirical studies have looked into different learning methods

    or strategies that have a positive impact on your learning: - Spacing - Interleaving - Variation - Generation 181 Elizabeth Bjork, Robert Bjork (2011)
  182. There was even a study done (Kerr & Booth, 1978)

    where kids were supposed to throw bean bags at a target. Image: Cornhole Ian Hughes - Flickr (CC BY 2.0)
  183. There was even a study done (Kerr & Booth, 1978)

    where kids were supposed to throw bean bags at a target. Group A practiced by throwing at a single target. Image: Cornhole Ian Hughes - Flickr (CC BY 2.0)
  184. There was even a study done (Kerr & Booth, 1978)

    where kids were supposed to throw bean bags at a target. Group A practiced by throwing at a single target. Group B practiced by throwing at many targets (closer or further away) Image: Cornhole Ian Hughes - Flickr (CC BY 2.0)
  185. There was even a study done (Kerr & Booth, 1978)

    where kids were supposed to throw bean bags at a target. Group A practiced by throwing at a single target. Group B practiced by throwing at many targets (closer or further away) Then a test was conducted by throwing at the same target Group A used and Group B did better. Image: Cornhole Ian Hughes - Flickr (CC BY 2.0)
  186. BACK TO RUST (OR ANY LANGUAGE) 186

  187. BACK TO RUST (OR ANY LANGUAGE) So what does it

    actually take to learn a new programming language? 187
  188. BACK TO RUST (OR ANY LANGUAGE) So what does it

    actually take to learn a new programming language? ◦ Is it enough to watch a YouTube video? 188
  189. BACK TO RUST (OR ANY LANGUAGE) So what does it

    actually take to learn a new programming language? ◦ Is it enough to watch a YouTube video? ◦ To read a blog post/tutorial? 189
  190. BACK TO RUST (OR ANY LANGUAGE) So what does it

    actually take to learn a new programming language? ◦ Is it enough to watch a YouTube video? ◦ To read a blog post/tutorial? ◦ To watch an hour long conference talk? 190
  191. BACK TO RUST (OR ANY LANGUAGE) So what does it

    actually take to learn a new programming language? ◦ Is it enough to watch a YouTube video? ◦ To read a blog post/tutorial? ◦ To watch an hour long conference talk? ◦ To sit down and program? 191
  192. BACK TO RUST (OR ANY LANGUAGE) So what does it

    actually take to learn a new programming language? ◦ Is it enough to watch a YouTube video? ◦ To read a blog post/tutorial? ◦ To watch an hour long conference talk? ◦ To sit down and program? No. 192
  193. BACK TO RUST (OR ANY LANGUAGE) So what does it

    actually take to learn a new programming language? ◦ Is it enough to watch a YouTube video? ◦ To read a blog post/tutorial? ◦ To watch an hour long conference talk? ◦ To sit down and program? No. But you need all of these (and more), mixed together, over a long period of time. 193
  194. Learn Programming in 10 days

  195. Learn Programming in 10 days or 10 hours, or 30

    days, or just never…
  196. REMEMBERING 196

  197. REMEMBERING From what I can see through the literature: 197

  198. REMEMBERING From what I can see through the literature: ◦

    Mixing up practice styles 198
  199. REMEMBERING From what I can see through the literature: ◦

    Mixing up practice styles ◦ Waiting between study sessions 199
  200. REMEMBERING From what I can see through the literature: ◦

    Mixing up practice styles ◦ Waiting between study sessions ◦ Don’t cram 200
  201. REMEMBERING From what I can see through the literature: ◦

    Mixing up practice styles ◦ Waiting between study sessions ◦ Don’t cram Difficulty remembering things (and then finding the right results) strengthens the memory. 201
  202. In the 1950s and 60s the concept of Errorless Learning

    was advocated by B.F. Skinner. Image: White Graphing Notebook Pixabay - Pexels
  203. In the 1950s and 60s the concept of Errorless Learning

    was advocated by B.F. Skinner. Idea is to give you information and then immediately quiz you afterwards, fetching it straight from the short term memory. Image: White Graphing Notebook Pixabay - Pexels
  204. Since then the opposite has been shown to be true.

    Image: Child Solving a Puzzle Karolina Grabowska - Pexels F. Autin & J. C. Croziet (2012) Improving working memory efficiency by reframing metacognitive interpretation of task difficulty Journal of Experimental Psychology: General 141
  205. Since then the opposite has been shown to be true.

    Giving kids a set of hard puzzles. Image: Child Solving a Puzzle Karolina Grabowska - Pexels F. Autin & J. C. Croziet (2012) Improving working memory efficiency by reframing metacognitive interpretation of task difficulty Journal of Experimental Psychology: General 141
  206. Since then the opposite has been shown to be true.

    Giving kids a set of hard puzzles. Telling half of them that difficulty is a part of the process. Image: Child Solving a Puzzle Karolina Grabowska - Pexels F. Autin & J. C. Croziet (2012) Improving working memory efficiency by reframing metacognitive interpretation of task difficulty Journal of Experimental Psychology: General 141
  207. Since then the opposite has been shown to be true.

    Giving kids a set of hard puzzles. Telling half of them that difficulty is a part of the process. And asking the other half how they attempted to solve the puzzles. Image: Child Solving a Puzzle Karolina Grabowska - Pexels F. Autin & J. C. Croziet (2012) Improving working memory efficiency by reframing metacognitive interpretation of task difficulty Journal of Experimental Psychology: General 141
  208. Since then the opposite has been shown to be true.

    Giving kids a set of hard puzzles. Telling half of them that difficulty is a part of the process. And asking the other half how they attempted to solve the puzzles. The first group did significantly better. Image: Child Solving a Puzzle Karolina Grabowska - Pexels F. Autin & J. C. Croziet (2012) Improving working memory efficiency by reframing metacognitive interpretation of task difficulty Journal of Experimental Psychology: General 141
  209. COMMON PRACTICE? A question I might throw out there. 209

  210. COMMON PRACTICE? A question I might throw out there. Isn’t

    this how we already learn as programmers? At least over time? 210
  211. COMMON PRACTICE? A question I might throw out there. Isn’t

    this how we already learn as programmers? At least over time? Blocking vs Spacing We might learn about a specific feature of a language but we use them mixed together. 211
  212. COMMON PRACTICE? A question I might throw out there. Isn’t

    this how we already learn as programmers? At least over time? Variation We learn about different programming languages, language styles (oop vs functional), different libraries, etc. 212
  213. COMMON PRACTICE? A question I might throw out there. Isn’t

    this how we already learn as programmers? At least over time? Generation We write our own code, we read code by others, we form questions about our code that need to be answered. 213
  214. COMMON PRACTICE? A question I might throw out there. Isn’t

    this how we already learn as programmers? At least over time? Quizzing I’d argue that code reviews are quizzes we take every day. “Is this block of code ok?” 214
  215. So how are we learning Rust the wrong way? Image:

    Brown Chains Miguel Á. Padriñán - Pexels
  216. So how are we learning Rust the wrong way? In

    the same way we are learning most things wrong. Image: Brown Chains Miguel Á. Padriñán - Pexels
  217. So how are we learning Rust the wrong way? In

    the same way we are learning most things wrong. By looking for the easy way out (I know I did). Image: Brown Chains Miguel Á. Padriñán - Pexels
  218. So how are we learning Rust the wrong way? In

    the same way we are learning most things wrong. By looking for the easy way out (I know I did). We also fall into the curse of knowledge when teaching. Image: Brown Chains Miguel Á. Padriñán - Pexels
  219. So how are we learning Rust the wrong way? In

    the same way we are learning most things wrong. By looking for the easy way out (I know I did). We also fall into the curse of knowledge when teaching. “I find this easy so it’s easy to explain it to others.” Image: Brown Chains Miguel Á. Padriñán - Pexels
  220. The key to all of this? Image: Brown Padlock Pixabay

    - Pexels
  221. The key to all of this? It’s going to take

    time. Image: Brown Padlock Pixabay - Pexels
  222. The key to all of this? It’s going to take

    time. It’s going to require practice. Image: Brown Padlock Pixabay - Pexels
  223. The key to all of this? It’s going to take

    time. It’s going to require practice. It’s going to feel difficult. Image: Brown Padlock Pixabay - Pexels
  224. The key to all of this? It’s going to take

    time. It’s going to require practice. It’s going to feel difficult. And that’s good. Image: Brown Padlock Pixabay - Pexels
  225. The key to all of this? It’s going to take

    time. It’s going to require practice. It’s going to feel difficult. And that’s good. Not because Rust itself is difficult. Image: Brown Padlock Pixabay - Pexels
  226. The key to all of this? It’s going to take

    time. It’s going to require practice. It’s going to feel difficult. And that’s good. Not because Rust itself is difficult. But because that’s how you get the best results. Image: Brown Padlock Pixabay - Pexels
  227. The key to all of this? It’s going to take

    time. It’s going to require practice. It’s going to feel difficult. And that’s good. Not because Rust itself is difficult. But because that’s how you get the best results. It’s not like learning C++ was easy, right? Image: Brown Padlock Pixabay - Pexels
  228. "Unfortunately, in this case there is considerable evidence that in

    many situations this strategy…
  229. "Unfortunately, in this case there is considerable evidence that in

    many situations this strategy (1 hour lectures) is rather poor (Bligh, 1971).
  230. "Unfortunately, in this case there is considerable evidence that in

    many situations this strategy (1 hour lectures) is rather poor (Bligh, 1971). A lecture may inspire, motivate and in form, but rarely fulfils the principles for effective learning; it is certainly inadequate for developing high-level skills"
  231. Students who studied a topic and then generated their own

    questions scored an average of 14 percentage points higher on a test than students who used passive strategies like studying their notes and rereading classroom material.
  232. Students who studied a topic and then generated their own

    questions scored an average of 14 percentage points higher on a test than students who used passive strategies like studying their notes and rereading classroom material. Creating questions, the researchers found, not only encouraged students to think more deeply about the topic but also strengthened their ability to remember what they were studying. Ebersbach, M, Feierabend, M, Nazari, KBB. Comparing the effects of generating questions, testing, and restudying on students' long-term recall in university learning. Appl Cognit Psychol. 2020
  233. When Pablo Casals, cellist was asked why he continued to

    practice the cello three hours a day at the age of 93 he answered…
  234. When Pablo Casals, cellist was asked why he continued to

    practice the cello three hours a day at the age of 93 he answered… "I'm beginning to notice some improvement."
  235. Ólafur Waage Senior Software Developer - TurtleSec AS @olafurw on

    Twitter 1 235