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.
  • 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/

    oscherler@tooting.chO This user is from outside of this forum
    oscherler@tooting.chO This user is from outside of this forum
    oscherler@tooting.ch
    schrieb zuletzt editiert von
    #342

    @futurebird Something I noticed in junior developers is that they sometimes tend to blame the library or language when something goes wrong. Whereas a more experienced programmer would know to blame themselves first. 🙂

    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/

      rosymaths@mathstodon.xyzR This user is from outside of this forum
      rosymaths@mathstodon.xyzR This user is from outside of this forum
      rosymaths@mathstodon.xyz
      schrieb zuletzt editiert von
      #343

      @futurebird I mean, sometimes the computer really does just hate you 🤪

      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

        rosymaths@mathstodon.xyzR This user is from outside of this forum
        rosymaths@mathstodon.xyzR This user is from outside of this forum
        rosymaths@mathstodon.xyz
        schrieb zuletzt editiert von
        #344

        @futurebird Also, I've noticed that learner programmers very rarely read the error messages with any level of attention.

        Ooh, you could do a reverse challenge.... provide them with the error message and have them write the code that produces it!

        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.

          giuseppe_aceto@scholar.socialG This user is from outside of this forum
          giuseppe_aceto@scholar.socialG This user is from outside of this forum
          giuseppe_aceto@scholar.social
          schrieb zuletzt editiert von
          #345

          @futurebird during my course (kind of cs 101) I proposed a pokemon-error game: when they start using an ide with the standard helloword first program, their first task is to make edits to cause errors: for each one they must collect the message, translate and note down. also classify as warning, warning-but-actually-error, compile/link/runtime/logic error.
          Someone responded well, with a longer updated list, but the goal was to defuse the negative reaction, it kind of worked.

          giuseppe_aceto@scholar.socialG grant_h@mastodon.socialG 3 Antworten Letzte Antwort
          0
          • giuseppe_aceto@scholar.socialG giuseppe_aceto@scholar.social

            @futurebird during my course (kind of cs 101) I proposed a pokemon-error game: when they start using an ide with the standard helloword first program, their first task is to make edits to cause errors: for each one they must collect the message, translate and note down. also classify as warning, warning-but-actually-error, compile/link/runtime/logic error.
            Someone responded well, with a longer updated list, but the goal was to defuse the negative reaction, it kind of worked.

            giuseppe_aceto@scholar.socialG This user is from outside of this forum
            giuseppe_aceto@scholar.socialG This user is from outside of this forum
            giuseppe_aceto@scholar.social
            schrieb zuletzt editiert von
            #346

            @futurebird If I had time l'd create actual physical cards with a picture of the "errormon" and the characteristics, and let them pick their preferred errors to keep.
            Better, yet, they could draw their idea of animal representation.

            1 Antwort Letzte Antwort
            0
            • giuseppe_aceto@scholar.socialG giuseppe_aceto@scholar.social

              @futurebird during my course (kind of cs 101) I proposed a pokemon-error game: when they start using an ide with the standard helloword first program, their first task is to make edits to cause errors: for each one they must collect the message, translate and note down. also classify as warning, warning-but-actually-error, compile/link/runtime/logic error.
              Someone responded well, with a longer updated list, but the goal was to defuse the negative reaction, it kind of worked.

              giuseppe_aceto@scholar.socialG This user is from outside of this forum
              giuseppe_aceto@scholar.socialG This user is from outside of this forum
              giuseppe_aceto@scholar.social
              schrieb zuletzt editiert von
              #347

              @futurebird when teaching a python bootcamp for people that never programmed (often from humanities background, with a special social anxiety around STEM) I introduce the "mystery solving hat", and 3 steps:
              1) decide what should happen (sometimes this is not crystal clear to begin with)
              2) modify the source and check the result
              3) put on the mystery solving hat to discover why it didn't go the way you wanted, using errors as clues towards the solution.
              "that's how professional programmers work"

              giuseppe_aceto@scholar.socialG 1 Antwort Letzte Antwort
              0
              • giuseppe_aceto@scholar.socialG giuseppe_aceto@scholar.social

                @futurebird when teaching a python bootcamp for people that never programmed (often from humanities background, with a special social anxiety around STEM) I introduce the "mystery solving hat", and 3 steps:
                1) decide what should happen (sometimes this is not crystal clear to begin with)
                2) modify the source and check the result
                3) put on the mystery solving hat to discover why it didn't go the way you wanted, using errors as clues towards the solution.
                "that's how professional programmers work"

                giuseppe_aceto@scholar.socialG This user is from outside of this forum
                giuseppe_aceto@scholar.socialG This user is from outside of this forum
                giuseppe_aceto@scholar.social
                schrieb zuletzt editiert von
                #348

                @futurebird I stress the concept that "smart" "competent" "professional" programmers spend significant time chasing errors, and code rarely works from the start ("have you heard of bugfixes and security updates?!").
                and I bend a bit the reality adding "there's even a programming style that begins with purposely not-working code, to get to the functioning version gradually" (TDD). it's half truth but fun. so they can stop feeling stupid and can enjoy the intellectual challenge.

                1 Antwort Letzte Antwort
                0
                • giuseppe_aceto@scholar.socialG giuseppe_aceto@scholar.social

                  @futurebird during my course (kind of cs 101) I proposed a pokemon-error game: when they start using an ide with the standard helloword first program, their first task is to make edits to cause errors: for each one they must collect the message, translate and note down. also classify as warning, warning-but-actually-error, compile/link/runtime/logic error.
                  Someone responded well, with a longer updated list, but the goal was to defuse the negative reaction, it kind of worked.

                  grant_h@mastodon.socialG This user is from outside of this forum
                  grant_h@mastodon.socialG This user is from outside of this forum
                  grant_h@mastodon.social
                  schrieb zuletzt editiert von
                  #349

                  @giuseppe_aceto @futurebird This is _such_ a cool idea!
                  I'm thinking for me, about 1/4 way into the course, where they have a little more to work with, and really need to read those messages to solve bigger problems. But certainly early, and for the high anxiety sorts, maybe at the beginning, yes.

                  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.

                    L This user is from outside of this forum
                    L This user is from outside of this forum
                    librefaso@hostux.social
                    schrieb zuletzt editiert von
                    #350

                    @futurebird

                    Not sure that I can qualify as a CS teacher (I only taught a few informal classes, mostly Scratch) but as a user I can relate.

                    There is some existential dread in having your basic tools not working without warning.
                    A bit like physicists in the three-body problem start despairing when physics starts to behave in an unpredictable way.

                    I have this when I work on Arduino and a thingy doesn't work as it should.

                    1/?

                    L 1 Antwort Letzte Antwort
                    0
                    • L librefaso@hostux.social

                      @futurebird

                      Not sure that I can qualify as a CS teacher (I only taught a few informal classes, mostly Scratch) but as a user I can relate.

                      There is some existential dread in having your basic tools not working without warning.
                      A bit like physicists in the three-body problem start despairing when physics starts to behave in an unpredictable way.

                      I have this when I work on Arduino and a thingy doesn't work as it should.

                      1/?

                      L This user is from outside of this forum
                      L This user is from outside of this forum
                      librefaso@hostux.social
                      schrieb zuletzt editiert von
                      #351

                      @futurebird

                      Like, I worked on a thermal captor and the hardware itself provided unreliable measures - there was nothing I could do about it and it threw all my project into the gutter.

                      I have the same inner and unsettling reaction when I press the button on my computer and for whatever reason, it doesn't power on.
                      If I get an error message, something I can understand and act upon, it's not the same. Maybe I'm still screwed if I can't fix it, but at least I understand what's wrong.

                      2/?

                      L 1 Antwort Letzte Antwort
                      0
                      • L librefaso@hostux.social

                        @futurebird

                        Like, I worked on a thermal captor and the hardware itself provided unreliable measures - there was nothing I could do about it and it threw all my project into the gutter.

                        I have the same inner and unsettling reaction when I press the button on my computer and for whatever reason, it doesn't power on.
                        If I get an error message, something I can understand and act upon, it's not the same. Maybe I'm still screwed if I can't fix it, but at least I understand what's wrong.

                        2/?

                        L This user is from outside of this forum
                        L This user is from outside of this forum
                        librefaso@hostux.social
                        schrieb zuletzt editiert von
                        #352

                        @futurebird

                        With software rather than hardware, I don't have this total distress when a bug makes a Python program I wrote not working (which is basically, anytime I write a Python program).
                        I'm not really proficient in Python, but I know how to debug. Painstakingly and not very efficiently, but at least I have an idea of how to proceed.

                        3/?

                        L 1 Antwort Letzte Antwort
                        0
                        • L librefaso@hostux.social

                          @futurebird

                          With software rather than hardware, I don't have this total distress when a bug makes a Python program I wrote not working (which is basically, anytime I write a Python program).
                          I'm not really proficient in Python, but I know how to debug. Painstakingly and not very efficiently, but at least I have an idea of how to proceed.

                          3/?

                          L This user is from outside of this forum
                          L This user is from outside of this forum
                          librefaso@hostux.social
                          schrieb zuletzt editiert von
                          #353

                          @futurebird

                          I do have this gut-wrenching despair when something doesn't work in Godot, though, and it's not something I understand as a possible bug of my code but rather as some knowledge I'm lacking (Godot is great but also extremely rich, and I have only a grasp of its most basic functions); when I'm completely at a loss, in other words, when what I'm missing is out of my intellectual reach.

                          4/?

                          L 1 Antwort Letzte Antwort
                          0
                          • L librefaso@hostux.social

                            @futurebird

                            I do have this gut-wrenching despair when something doesn't work in Godot, though, and it's not something I understand as a possible bug of my code but rather as some knowledge I'm lacking (Godot is great but also extremely rich, and I have only a grasp of its most basic functions); when I'm completely at a loss, in other words, when what I'm missing is out of my intellectual reach.

                            4/?

                            L This user is from outside of this forum
                            L This user is from outside of this forum
                            librefaso@hostux.social
                            schrieb zuletzt editiert von
                            #354

                            @futurebird

                            Colonel Michel Goya (who's probably as evil as any professional soldier, and alas betrayed his father's Spanish Republican ideals, but who do think) explains in his book "Sous le feu" how not knowing what to do is completely debilitating in situations of stress, while if you give precise orders, even soldiers who are actively shot at will gather their spirits and do what they need to do, though they are still under fire.

                            5/5

                            L 1 Antwort Letzte Antwort
                            0
                            • godofbiscuits@sfba.socialG godofbiscuits@sfba.social

                              @futurebird i think Microsoft in the 90s set up this attitude towards computers that still lives today: “it’s your fault if it doesn’t work”.

                              I never had to use Windows — ever — and every time I would sit down to try, something glaringly bad would be right there interfering.

                              And I’ve been a dev and UX person for nearly 40 years.

                              L This user is from outside of this forum
                              L This user is from outside of this forum
                              librefaso@hostux.social
                              schrieb zuletzt editiert von
                              #355

                              @godofbiscuits

                              I wouldn't say exactly "it's your fault" but more "there is no hope".

                              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.

                                L This user is from outside of this forum
                                L This user is from outside of this forum
                                librefaso@hostux.social
                                schrieb zuletzt editiert von
                                #356

                                @futurebird

                                There's a famous anecdote about Yachar Kemal, the uber-famous turkish author : one day when he was visiting the countryside, a shepherd¹ asked what was all the ruckus.
                                Another villager answered "you don't know ? the guy who wrote 'Memed, my hawk' is here, he's visiting !".
                                And the shepherd was completely puzzled :"but... nobody wrote 'Memed, my hawk' ?"
                                (in the sense of "it exists, it hasn't been created, and especially not by a mere human").

                                ¹IIRC

                                1 Antwort Letzte Antwort
                                0
                                • L librefaso@hostux.social

                                  @futurebird

                                  Colonel Michel Goya (who's probably as evil as any professional soldier, and alas betrayed his father's Spanish Republican ideals, but who do think) explains in his book "Sous le feu" how not knowing what to do is completely debilitating in situations of stress, while if you give precise orders, even soldiers who are actively shot at will gather their spirits and do what they need to do, though they are still under fire.

                                  5/5

                                  L This user is from outside of this forum
                                  L This user is from outside of this forum
                                  librefaso@hostux.social
                                  schrieb zuletzt editiert von
                                  #357

                                  @futurebird

                                  Also, when you post such interesting questions that will generate a lot of insightful answers, maybe you'd want to tag them ?
                                  So that they can benefit other people...

                                  1 Antwort Letzte Antwort
                                  0
                                  • abucci@buc.ciA abucci@buc.ci
                                    @futurebird@sauropods.win Yes, I would say so. Functions in math are different from functions in code. Mathematical functions look more like lookup tables or dictionaries. One sticking point is the flow of control: a function has a block of instructions that are not executed at the point where they're written in the source code. This is really confusing for some people, especially if they've just been taught that computers go through a list of instructions one by one, executing each in sequence.

                                    Add in functions that have side effects, functions that don't return a value (procedures), functions that trap the rest of the execution (continuations), etc., and you're well outside of what most people understand mathematical functions to be like. The mathematical sine function can't make a network connection or write to a file or...

                                    You can sometimes suss this out by comparing a function to a dictionary (or similar lookup type data structure). Those don't involve changes in the flow of control, and students tend to grasp what they're doing much faster. Students who grasp dictionaries sometimes cannot transfer that understanding to functions because of the flow of control issue, I think, so it can be helpful to probe whether they understand one but not the other and try to figure out why.
                                    L This user is from outside of this forum
                                    L This user is from outside of this forum
                                    librefaso@hostux.social
                                    schrieb zuletzt editiert von
                                    #358

                                    @abucci

                                    As noted here https://librefaso.pollux.casa/sjbm2023_semaine6.gmi when using Gcompris' "programming labyrinth" to teach basic programming concepts (before teaching Scratch) to primary school kids, the main problem was indeed the function.
                                    Some kids grasped it intuitively, but those who didn't were stuck completely and I wasn't able to help them.
                                    Would you have advises on how to help them understand, in case I ever have another chance at such teachings ?

                                    @futurebird

                                    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.

                                      emma_cogdev@fediscience.orgE This user is from outside of this forum
                                      emma_cogdev@fediscience.orgE This user is from outside of this forum
                                      emma_cogdev@fediscience.org
                                      schrieb zuletzt editiert von
                                      #359

                                      @futurebird

                                      I'm not a teacher and have done all of my programming tutorials with undergrad/grad students I'm supervising, but I wonder if modelling that you also get those errors is helpful?

                                      I really like live-coding with students and when I'm the one typing, I am showing them that I make these mistakes as well and then show them my process of dealing with them. Not only decoding error messages, but also telling them when I forget the arguments I need and showing them that I check the function help, and showing them that I write tests and saying out loud, "okay let's check it did what we think it did". Lots of "Hm, I should've got a dataframe with the same number of rows as X but I've ended up with a scalar, that's not right", or "Oops, every value is NA! Let's try again", etc. Also googling my questions and modelling how to select which answers to try and how to check they are what they say they are.

                                      If you could engage them in watching you code, I can imagine it being fun! Like solving a puzzle all together.

                                      1 Antwort Letzte Antwort
                                      0
                                      • brolf@chaos.socialB brolf@chaos.social shared this topic
                                      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