Mastodon Skip to content
  • Home
  • Aktuell
  • Tags
  • Über dieses Forum
Einklappen
Grafik mit zwei überlappenden Sprechblasen, eine grün und eine lila.
Abspeckgeflüster – Forum für Menschen mit Gewicht(ung)

Kostenlos. Werbefrei. Menschlich. Dein Abnehmforum.

  1. Home
  2. Uncategorized
  3. Wanted: Advice from CS teachers

Wanted: Advice from CS teachers

Geplant Angeheftet Gesperrt Verschoben Uncategorized
teaching
359 Beiträge 191 Kommentatoren 1 Aufrufe
  • Älteste zuerst
  • Neuste zuerst
  • Meiste Stimmen
Antworten
  • In einem neuen Thema antworten
Anmelden zum Antworten
Dieses Thema wurde gelöscht. Nur Nutzer mit entsprechenden Rechten können es sehen.
  • petealexharris@mastodon.scotP petealexharris@mastodon.scot

    @futurebird @wakame

    The thing I keep saying is: an error message is not a person telling you what specifically went wrong this time. It's a string somebody writing the program months or years ago thought would describe what they *guessed* back then might cause the code to reach that state unexpectedly.

    1. Code can always be wrong, sometimes in ways the programmer hadn't thought of (in fact often since they probably handled the ways they'd thought of) and,
    2. Error handling code is code.

    futurebird@sauropods.winF This user is from outside of this forum
    futurebird@sauropods.winF This user is from outside of this forum
    futurebird@sauropods.win
    schrieb zuletzt editiert von
    #69

    @petealexharris @wakame

    "Error handling code is code."

    It had not occurred to me that a student might not see it that way "some guy wrote code to try to tell you what went wrong" but I can see how this might not be how a student might see the errors.

    It's like when I realized as a kid that all books are just ... written by people. A revelation. I think I thought, on some level, books were a natural product of the universe. When I realized they could have typos, bad ideas it was so exciting.

    wakame@tech.lgbtW nerb@techhub.socialN L 3 Antworten Letzte Antwort
    0
    • paco@infosec.exchangeP paco@infosec.exchange

      @futurebird I’m pivoting off this just to share a funny story. An old CS prof shared this with me when I was staff in a CS department at a university.

      One of his undergrads had come to him with a big printed listing of their code (back when that was how you did that! It was probably FORTRAN printed on fan-fold paper). They obviously wanted him to find the problem in their code. It became clear quickly that they hadn’t done anything to debug it themselves.

      He started point at various places in the listing. “Right here, add PRINT ‘I am a dumbass’. And here: PRINT ‘I am a dumbass’” and so on. “Then run it and see how many dumbasses you get.”

      Now, did he really do that? Is that just how he tells the story? Who knows. But it’s funny. And anyone who has ever written code will agree that this works sometimes.

      futurebird@sauropods.winF This user is from outside of this forum
      futurebird@sauropods.winF This user is from outside of this forum
      futurebird@sauropods.win
      schrieb zuletzt editiert von
      #70

      @paco

      My students are too hard working and sensitive to deserve such things.

      But.

      Well, I have met other people in my life.

      paco@infosec.exchangeP 1 Antwort Letzte Antwort
      0
      • futurebird@sauropods.winF futurebird@sauropods.win

        Wanted: Advice from CS teachers

        When #teaching a group of students new to coding I've noticed that my students who are normally very good about not calling out during class will shout "it's not working!" the moment their code hits an error and fails to run. They want me to fix it right away. This makes for too many interruptions since I'm easy to nerd snipe in this way.

        I think I need to let them know that fixing errors that keep the code from running is literally what I'm trying to teach.

        zwifi@framapiaf.orgZ This user is from outside of this forum
        zwifi@framapiaf.orgZ This user is from outside of this forum
        zwifi@framapiaf.org
        schrieb zuletzt editiert von
        #71

        @futurebird a teacher of mine had a nice trick for this, that I reused when teaching: he would reply "I won't help you until you have drawings of what the code should do, and comments everywhere". Having the students make diagrams (if they didn't start there) helped them find architectural issues in the code logic, and writing comments had them be their own rubber ducks, and forced them to re-read things. In a lot of cases, they figured the issue out before being ready to call ^^.

        futurebird@sauropods.winF 1 Antwort Letzte Antwort
        0
        • zwifi@framapiaf.orgZ zwifi@framapiaf.org

          @futurebird a teacher of mine had a nice trick for this, that I reused when teaching: he would reply "I won't help you until you have drawings of what the code should do, and comments everywhere". Having the students make diagrams (if they didn't start there) helped them find architectural issues in the code logic, and writing comments had them be their own rubber ducks, and forced them to re-read things. In a lot of cases, they figured the issue out before being ready to call ^^.

          futurebird@sauropods.winF This user is from outside of this forum
          futurebird@sauropods.winF This user is from outside of this forum
          futurebird@sauropods.win
          schrieb zuletzt editiert von
          #72

          @Zwifi

          I do this with my older students and with those with more experience. This is the one course that I teach that EVERYONE must take. So there are kids there who have never programmed anything. Kids who were confused when I had them use a computer with a mouse since they'd never seen one in person before.

          I'm glad we have such a course. But they just don't know enough to do this yet.

          And I have an agenda: I want them to have fun.

          iris@neuromatch.socialI zwifi@framapiaf.orgZ 2 Antworten Letzte Antwort
          0
          • futurebird@sauropods.winF futurebird@sauropods.win

            @wakame

            This is helpful for me. I had a hard time understanding why one student was upset, almost to the point of tears (they are very sensitive) that the error message said "error on line 32" but, really the problem was the way they originally named the variable.

            "Why couldn't it just say the error was on line 4? 😢 I tried everything I could to fix line 32. 🥺 😢 "

            My sweet child... it's just not that smart, not like you.

            pitmutt@gts.zebras.socialP This user is from outside of this forum
            pitmutt@gts.zebras.socialP This user is from outside of this forum
            pitmutt@gts.zebras.social
            schrieb zuletzt editiert von
            #73

            @futurebird @wakame I am in my 40s and I still, occasionally, spend hours trying to fix line 32.

            1 Antwort Letzte Antwort
            0
            • futurebird@sauropods.winF futurebird@sauropods.win

              Wanted: Advice from CS teachers

              When #teaching a group of students new to coding I've noticed that my students who are normally very good about not calling out during class will shout "it's not working!" the moment their code hits an error and fails to run. They want me to fix it right away. This makes for too many interruptions since I'm easy to nerd snipe in this way.

              I think I need to let them know that fixing errors that keep the code from running is literally what I'm trying to teach.

              fortunos@monads.onlineF This user is from outside of this forum
              fortunos@monads.onlineF This user is from outside of this forum
              fortunos@monads.online
              schrieb zuletzt editiert von
              #74

              @futurebird my student tutor had an annoying habit of answering questions like that with "try doing it right instead of wrong", which was pretty obviously just a way to not get flooded with this exact type of comment.

              On the one hand, it's smarmy and unhelpful. On the other hand, sometimes it's useful to tell someone to sit down and not panic in your face so you can continue doing your thing (for their benefit)

              semitones@tiny.tilde.websiteS 1 Antwort Letzte Antwort
              0
              • futurebird@sauropods.winF futurebird@sauropods.win

                So Your Code Won't Run

                1. There *is* an error in your code. It's probably just a typo. You can find it by looking for it in a calm, systematic way.

                2. The error will make sense. It's not random. The computer does not "just hate you"

                3. Read the error message. The error message *tries* to help you, but it's just a computer so YOUR HUMAN INTELLIGENCE may be needed to find the real source of error.

                4. Every programmer makes errors. Great programmers can find and fix them.

                1/

                mcduncanlab@mstdn.socialM This user is from outside of this forum
                mcduncanlab@mstdn.socialM This user is from outside of this forum
                mcduncanlab@mstdn.social
                schrieb zuletzt editiert von
                #75

                @futurebird

                Thanks this is really helpful. We teach a graduate class on quantitative cell biology based in python. Many ppl don’t have prior coding experience, we probably need a section like this.

                iris@neuromatch.socialI 1 Antwort Letzte Antwort
                0
                • futurebird@sauropods.winF futurebird@sauropods.win

                  So Your Code Won't Run

                  1. There *is* an error in your code. It's probably just a typo. You can find it by looking for it in a calm, systematic way.

                  2. The error will make sense. It's not random. The computer does not "just hate you"

                  3. Read the error message. The error message *tries* to help you, but it's just a computer so YOUR HUMAN INTELLIGENCE may be needed to find the real source of error.

                  4. Every programmer makes errors. Great programmers can find and fix them.

                  1/

                  jgrg@mstdn.scienceJ This user is from outside of this forum
                  jgrg@mstdn.scienceJ This user is from outside of this forum
                  jgrg@mstdn.science
                  schrieb zuletzt editiert von
                  #76

                  @futurebird This is what I would have suggested. Introduce the compiler, explain that you will encounter errors, but the error messages are designed to be as helpful as they can be.

                  (If you're using Python, error messages have been worked on over the last few major releases, with teaching particularly in mind, so it's worth using the most recent.)

                  1 Antwort Letzte Antwort
                  0
                  • futurebird@sauropods.winF futurebird@sauropods.win

                    Wanted: Advice from CS teachers

                    When #teaching a group of students new to coding I've noticed that my students who are normally very good about not calling out during class will shout "it's not working!" the moment their code hits an error and fails to run. They want me to fix it right away. This makes for too many interruptions since I'm easy to nerd snipe in this way.

                    I think I need to let them know that fixing errors that keep the code from running is literally what I'm trying to teach.

                    pete@mas.toP This user is from outside of this forum
                    pete@mas.toP This user is from outside of this forum
                    pete@mas.to
                    schrieb zuletzt editiert von
                    #77

                    @futurebird

                    Test Driven Development can help, although there are skills needed, and you can have errors in your tests!

                    But the skills needed to write/troubleshoot a good test are more focused/limited than being able to code

                    Tests also encourage you to write testable code, which is usually modular/functional, and broken code elsewhere is less likely to affect it.

                    Monolithic code is hard to test/debug.

                    1 Antwort Letzte Antwort
                    0
                    • futurebird@sauropods.winF futurebird@sauropods.win

                      @paco

                      My students are too hard working and sensitive to deserve such things.

                      But.

                      Well, I have met other people in my life.

                      paco@infosec.exchangeP This user is from outside of this forum
                      paco@infosec.exchangeP This user is from outside of this forum
                      paco@infosec.exchange
                      schrieb zuletzt editiert von
                      #78

                      @futurebird Of course. I wouldn’t ever say that to someone trying to learn. But you could tell them the story about the grumpy professor who was a jerk, and they can laugh while learning what printf() debugging is. 😀

                      1 Antwort Letzte Antwort
                      0
                      • futurebird@sauropods.winF futurebird@sauropods.win

                        @petealexharris @wakame

                        "Error handling code is code."

                        It had not occurred to me that a student might not see it that way "some guy wrote code to try to tell you what went wrong" but I can see how this might not be how a student might see the errors.

                        It's like when I realized as a kid that all books are just ... written by people. A revelation. I think I thought, on some level, books were a natural product of the universe. When I realized they could have typos, bad ideas it was so exciting.

                        wakame@tech.lgbtW This user is from outside of this forum
                        wakame@tech.lgbtW This user is from outside of this forum
                        wakame@tech.lgbt
                        schrieb zuletzt editiert von
                        #79

                        @futurebird @petealexharris

                        Same with the "average end user":
                        Your text processor or spreadsheet program also never says "This is the developer writing: I have no idea what you just did, but I didn't expect this."

                        Only "Error 0x8002f0f0: Good luck trying to find out what that means."

                        1 Antwort Letzte Antwort
                        0
                        • futurebird@sauropods.winF futurebird@sauropods.win

                          Sometimes I have them write the code on paper with the computers closed. And this is fine, but I'd rather have them using the IDE or textedit and there is a limit to how much fun you can have with code on paper.

                          And it does tend to be the weaker students who are almost happy to find something to stop the onslaught of information "see it doesn't work! we can't go on!" and that obviously makes me very grouchy.

                          I need them to see this is like saying "Teacher my pencil broke! Stop the lesson!"

                          lappenjammerdiezweite@social.vivaldi.netL This user is from outside of this forum
                          lappenjammerdiezweite@social.vivaldi.netL This user is from outside of this forum
                          lappenjammerdiezweite@social.vivaldi.net
                          schrieb zuletzt editiert von
                          #80

                          @futurebird Can I just say: reading this makes me aware what a great teacher you are. Your overall approach and your thoughts about finding the bugs are inspirational. Also they demonstrate in themselves how to try and find the error that causes your students to act differently to their standard.

                          1 Antwort Letzte Antwort
                          0
                          • futurebird@sauropods.winF futurebird@sauropods.win

                            Wanted: Advice from CS teachers

                            When #teaching a group of students new to coding I've noticed that my students who are normally very good about not calling out during class will shout "it's not working!" the moment their code hits an error and fails to run. They want me to fix it right away. This makes for too many interruptions since I'm easy to nerd snipe in this way.

                            I think I need to let them know that fixing errors that keep the code from running is literally what I'm trying to teach.

                            az@post.lurk.orgA This user is from outside of this forum
                            az@post.lurk.orgA This user is from outside of this forum
                            az@post.lurk.org
                            schrieb zuletzt editiert von
                            #81

                            @futurebird caveat: Not a teacher!

                            I'm not sure what level your students are at, what specifically you are teaching them or how much control you have over the course but...

                            If you've not seen it already you might like to look at https://hedy.org . It's a language designed for teaching that gradually adds syntax as you explore concepts until you reach a subset of syntactically valid Python. The error messages are also very useful, thoughtfully designed and tested in classroom settings.

                            Excellent talk by the creator here www.youtube.com/watch?v=6ED36HvQSvk

                            Honorable mention to Elm and Rust for having excellent error messages too!

                            1 Antwort Letzte Antwort
                            0
                            • futurebird@sauropods.winF futurebird@sauropods.win

                              Things to Try:
                              * look for typos
                              * look at what the error message indicates.

                              If these don't work consider reverting your last changes to the last working version of your code. Then try making the changes again, but be more careful.

                              If you can't revert the changes, start removing bits of the code systematically. Remove the things you think might cause the error and run the code again. Isolate the change or code that causes the problem.

                              You can be a great programmer.

                              2/2

                              catselbow@fosstodon.orgC This user is from outside of this forum
                              catselbow@fosstodon.orgC This user is from outside of this forum
                              catselbow@fosstodon.org
                              schrieb zuletzt editiert von
                              #82

                              @futurebird

                              Also: If you see pages and pages of errors, start by looking at the first error message. Often, that's the cause of all the others. Students sometimes just give up when confronted with a wall of errors.

                              1 Antwort Letzte Antwort
                              0
                              • futurebird@sauropods.winF futurebird@sauropods.win

                                Sometimes when you are teaching you need to stop the lecture, change the plan because there is an error in the worksheet, or the problem is too hard.

                                What's really annoying me is that some students think that when their code doesn't run this is "a problem with the lesson" I should stop everything until we fix it.

                                But, my lesson is fine. The student just made a typo.

                                They are so focused on the code running they aren't listening to the lesson which would teach them WHY it's not running.

                                jhavok@mstdn.partyJ This user is from outside of this forum
                                jhavok@mstdn.partyJ This user is from outside of this forum
                                jhavok@mstdn.party
                                schrieb zuletzt editiert von
                                #83

                                @futurebird I guess this was an advantage of punch cards for teachers. We had to take our deck down to the mainframe and put it in the queue to find out if it ran, then figure out why it didn't on our own.

                                Maybe try having the students debug for themselves instead of begging for handholding.

                                1 Antwort Letzte Antwort
                                0
                                • futurebird@sauropods.winF futurebird@sauropods.win

                                  @wakame

                                  This is helpful for me. I had a hard time understanding why one student was upset, almost to the point of tears (they are very sensitive) that the error message said "error on line 32" but, really the problem was the way they originally named the variable.

                                  "Why couldn't it just say the error was on line 4? 😢 I tried everything I could to fix line 32. 🥺 😢 "

                                  My sweet child... it's just not that smart, not like you.

                                  willyyam@mastodon.socialW This user is from outside of this forum
                                  willyyam@mastodon.socialW This user is from outside of this forum
                                  willyyam@mastodon.social
                                  schrieb zuletzt editiert von
                                  #84

                                  @futurebird @wakame The metaphor I use with line numbers in error messages is "I fell down on line 32. I don't know where I tripped, but this is where I fell."

                                  It is a hint, and you can find it from there, but the cause could be before. Students understand that tripping and falling are distinct, causal actions, and that knowing what you tripped on may be unknowable until you go back and look.

                                  bytebro@mastodonapp.ukB 1 Antwort Letzte Antwort
                                  0
                                  • futurebird@sauropods.winF futurebird@sauropods.win

                                    Sometimes I have them write the code on paper with the computers closed. And this is fine, but I'd rather have them using the IDE or textedit and there is a limit to how much fun you can have with code on paper.

                                    And it does tend to be the weaker students who are almost happy to find something to stop the onslaught of information "see it doesn't work! we can't go on!" and that obviously makes me very grouchy.

                                    I need them to see this is like saying "Teacher my pencil broke! Stop the lesson!"

                                    semitones@tiny.tilde.websiteS This user is from outside of this forum
                                    semitones@tiny.tilde.websiteS This user is from outside of this forum
                                    semitones@tiny.tilde.website
                                    schrieb zuletzt editiert von
                                    #85

                                    @futurebird I am just a humble outdoor educator, so my tools are primitive compared to yours, but maybe they would be interesting anyway. I am interested how they compare to yours.

                                    My classroom management methods all tie back to the concept of mutual respect, and I'll write a symbol of an eye, an ear, and a heart on the whiteboard. These represent and remind students "what does respect look like, sound like, and feel like?"

                                    One thing respect sounds like is One Voice. (1 / )

                                    semitones@tiny.tilde.websiteS 1 Antwort Letzte Antwort
                                    0
                                    • semitones@tiny.tilde.websiteS semitones@tiny.tilde.website

                                      @futurebird I am just a humble outdoor educator, so my tools are primitive compared to yours, but maybe they would be interesting anyway. I am interested how they compare to yours.

                                      My classroom management methods all tie back to the concept of mutual respect, and I'll write a symbol of an eye, an ear, and a heart on the whiteboard. These represent and remind students "what does respect look like, sound like, and feel like?"

                                      One thing respect sounds like is One Voice. (1 / )

                                      semitones@tiny.tilde.websiteS This user is from outside of this forum
                                      semitones@tiny.tilde.websiteS This user is from outside of this forum
                                      semitones@tiny.tilde.website
                                      schrieb zuletzt editiert von
                                      #86

                                      @futurebird When we're doing something together as a group, the group has one voice. Sometimes it's my voice if I'm giving instructions. Sometimes it is your voice if you're sharing. It feels good when you have the respect of the group. We are not in One Voice all the time, but when we are, itis respectful and helpful to wait until the person before you is finished talking.

                                      One group development game I play to reinforce this is called Buried Treasure. (It probably goes by many names). (2 /)

                                      semitones@tiny.tilde.websiteS 1 Antwort Letzte Antwort
                                      0
                                      • futurebird@sauropods.winF futurebird@sauropods.win

                                        My students aren't lazy, but they *can* be a little perfectionist: scared to take risks or sit with not having the answer right away.

                                        They are really upset when their code won't run... but staying calm and *systematically* looking for the cause of the problem, knowing that if you just work through the tree of possible causes you will find it is not something they are good at.

                                        I think I need to teach this.

                                        Maybe I will give them some broken code and we will find the errors together.

                                        press_rouch@mastodon.greenP This user is from outside of this forum
                                        press_rouch@mastodon.greenP This user is from outside of this forum
                                        press_rouch@mastodon.green
                                        schrieb zuletzt editiert von
                                        #87

                                        @futurebird This is a great idea. As a software engineer I would love to see debugging being actively taught as a skill. There are plenty of professionals who are lacking in that area.

                                        1 Antwort Letzte Antwort
                                        0
                                        • mcduncanlab@mstdn.socialM mcduncanlab@mstdn.social

                                          @futurebird

                                          Thanks this is really helpful. We teach a graduate class on quantitative cell biology based in python. Many ppl don’t have prior coding experience, we probably need a section like this.

                                          iris@neuromatch.socialI This user is from outside of this forum
                                          iris@neuromatch.socialI This user is from outside of this forum
                                          iris@neuromatch.social
                                          schrieb zuletzt editiert von
                                          #88

                                          @MCDuncanLab @futurebird I also found exercises fixing someone else's code to be much less frustrating than fixing my own, and revelatory as to how something done apparently-right can work very wrong. I needed lots of practice with this before I could approach errors with a cool head.

                                          1 Antwort Letzte Antwort
                                          0
                                          Antworten
                                          • In einem neuen Thema antworten
                                          Anmelden zum Antworten
                                          • Älteste zuerst
                                          • Neuste zuerst
                                          • Meiste Stimmen



                                          Copyright (c) 2025 abSpecktrum (@abspecklog@fedimonster.de)

                                          Erstellt mit Schlaflosigkeit, Kaffee, Brokkoli & ♥

                                          Impressum | Datenschutzerklärung | Nutzungsbedingungen

                                          • Anmelden

                                          • Du hast noch kein Konto? Registrieren

                                          • Anmelden oder registrieren, um zu suchen
                                          • Erster Beitrag
                                            Letzter Beitrag
                                          0
                                          • Home
                                          • Aktuell
                                          • Tags
                                          • Über dieses Forum