To me it’s empathy. And memory, being able to remember how it was not understanding something that now seems simple.

  • a_statistician
    link
    fedilink
    arrow-up
    6
    ·
    2 years ago

    Empathy is definitely good. I think the other thing that has been critical to my classes is cultivating an attitude that errors aren’t something to be embarrassed about, they’re something to celebrate - especially when you get a new error - it’s an opportunity to learn something.

    This isn’t a skill, exactly, but I’ve also found that it helps to spend a bit of time teaching them how to identify where/how they’re confused. I’ve loved “The Programmer’s Brain: What every programmer needs to know about cognition” for explaining this and I usually assign a chapter to read from it that basically explains the difference between lack of knowledge, lack of information, and lack of processing power. Essentially, lack of knowledge is not understanding what an operator or function’s purpose is - essentially, unfamiliarity with the syntax. Lack of information is not understanding the inner workings of a method - the details of how the function works are abstracted away and you have to go digging to find them. Lack of processing power is not being able to keep everything necessary to understand a program in your head long enough to see how code works.

    • JaumeIOPM
      link
      fedilink
      arrow-up
      4
      ·
      2 years ago

      The celebration of errors is something I’ve been trying to transmit to students of all ages for years. And they usually look at me as if I’m crazy. They struggle to grasp the concept of, instead of something to be ashamed of, is an opportunity to improve, under the only condition that you have to **learn **from them. I’ll take a look at the book, now that summer comes and I’ll have some free time. I love the differentiation you mention, as it’s something that we may not know intrinsically, but when you think about it, it’s always easier to use as a tool for improvement. Thanks!

      • accuser
        link
        fedilink
        arrow-up
        2
        ·
        2 years ago

        We learn more from mistakes than from successes - I try and foster an approach that is characterised as ‘fail early, fail often’. The majority of my apprentices have come through an education system that only rewards success, and we spend a few weeks unlearning that, but once they start to get the idea, they are willing to be vulnerable and share code that isn’t working.

        • JaumeIOPM
          link
          fedilink
          arrow-up
          2
          ·
          edit-2
          2 years ago

          The majority of my apprentices have come through an education system that only rewards success

          This. In my country there seems to be some change on this perspective in the education system, but then, families and society keep this mindset and most people still think mistakes mean failure.