Skip to content
  • Categories
  • Recent
  • Tags
  • Popular
  • World
  • Users
  • Groups
Skins
  • Light
  • Cerulean
  • Cosmo
  • Flatly
  • Journal
  • Litera
  • Lumen
  • Lux
  • Materia
  • Minty
  • Morph
  • Pulse
  • Sandstone
  • Simplex
  • Sketchy
  • Spacelab
  • United
  • Yeti
  • Zephyr
  • Dark
  • Cyborg
  • Darkly
  • Quartz
  • Slate
  • Solar
  • Superhero
  • Vapor

  • Default (Darkly)
  • No Skin
Collapse

Chebucto Regional Softball Club

  1. Home
  2. Uncategorized
  3. Wanted: Advice from CS teachers
A forum for discussing and organizing recreational softball and baseball games and leagues in the greater Halifax area.

Wanted: Advice from CS teachers

Scheduled Pinned Locked Moved Uncategorized
233 Posts 143 Posters 0 Views
  • Oldest to Newest
  • Newest to Oldest
  • Most Votes
Reply
  • Reply as topic
Log in to reply
This topic has been deleted. Only users with topic management privileges can see it.
  • myrmepropagandistF myrmepropagandist

    I think they become anxious when their code isn't working the same as what I have up on the projector and they want to get it fixed RIGHT AWAY so they won't fall behind.

    Then when one of them starts calling out they all do it.

    I may take some time to explain this.

    This never happens when I'm teaching math. Something about coding makes them forget some of their manners, and become less self-sufficient. "It's broke! I'm helpless!"

    What is that about?

    Wesley Cook ⚡🚲W This user is from outside of this forum
    Wesley Cook ⚡🚲W This user is from outside of this forum
    Wesley Cook ⚡🚲
    wrote last edited by
    #214

    @futurebird To be fair there are a lot of professional software engineers I know who have essentially this same problem. The second anything is wrong they go on slack and start asking for help immediately and go straight to helplessness.

    1 Reply Last reply
    0
    • ? Guest

      @futurebird I gave my students code with errors in it and had them fix it. But they do have to be at a certain level to be able to do that.

      I stole this idea from the Java certification exams, which had code examples that would get most people fired.

      FlicF This user is from outside of this forum
      FlicF This user is from outside of this forum
      Flic
      wrote last edited by
      #215

      @venite @futurebird debugging is standard even in primary in many curricula - you can start with basic algorithms, move onto block code, then move onto very basic python and even database/search queries. And still keep the algorithms running alongside!

      1 Reply Last reply
      0
      • FlicF Flic

        @futurebird maybe reiterate at the start of the demo, and even put up a short statement on the wall so you can point at it rather than answer! Should drum it in quickly

        ? Offline
        ? Offline
        Guest
        wrote last edited by
        #216

        @futurebird @Flisty

        I like the idea of a posted message.

        You’re not stuck until you’ve tried:
        A.
        B.
        C.

        (Variation on the old “You’re not stuck until you’ve run out of gas.”)

        FlicF 1 Reply Last reply
        0
        • Pete Alex Harris🦡🕸️🌲/∞🪐∫P Pete Alex Harris🦡🕸️🌲/∞🪐∫

          @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.

          Edward L PlattE This user is from outside of this forum
          Edward L PlattE This user is from outside of this forum
          Edward L Platt
          wrote last edited by
          #217

          @petealexharris @futurebird @wakame maybe counterintuitive, but I've found that human communication skills are often helpful in learning and understanding programming. Example: "error on line 32" means the interpreter got confused on line 32. Maybe because of line 32 or maybe because there was a miscommunication earlier.

          Pete Alex Harris🦡🕸️🌲/∞🪐∫P 1 Reply Last reply
          0
          • CubeOfCheeseC CubeOfCheese

            @futurebird
            4. As we're coding together, I often type the code wrong on purpose, either because a student suggested the wrong thing, or I take advantage of their ambiguity to make syntactical errors.
            And I am careful to not reveal that it's wrong with my tone. So the whole class including me has errors that we work through together. This gets them used to solving errors, shows them that others including me make errors, and they don't expect that the code I show on the screen is always perfect.

            Grant_HG This user is from outside of this forum
            Grant_HG This user is from outside of this forum
            Grant_H
            wrote last edited by
            #218

            @cubeofcheese @futurebird all of the above, but particularly #4. Model the behaviour you want. Cold call what the error that you just made is. Let it become a thing to audit your code.

            Another thing that works is pair programming. Building that culture and trust can take a little while, but both parties learn a lot.

            @MrBerard mihjt have ideas?

            1 Reply Last reply
            0
            • myrmepropagandistF myrmepropagandist

              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!"

              jz.tuskJ This user is from outside of this forum
              jz.tuskJ This user is from outside of this forum
              jz.tusk
              wrote last edited by
              #219

              @futurebird

              This might be a bit too far (my teaching has been of older kids), but what if instead teaching them "coding" of "programming", you teach them "debugging"?

              I mean start referring to that class exclusively as "debugging". "Okay class, it's time for debugging. Open your....". That way if they write something that doesn't work it's not a mistake - they've produced something that's important for the next step, which is understanding error messages, locating the place in the code ....

              jz.tuskJ 1 Reply Last reply
              0
              • Edward L PlattE Edward L Platt

                @petealexharris @futurebird @wakame maybe counterintuitive, but I've found that human communication skills are often helpful in learning and understanding programming. Example: "error on line 32" means the interpreter got confused on line 32. Maybe because of line 32 or maybe because there was a miscommunication earlier.

                Pete Alex Harris🦡🕸️🌲/∞🪐∫P This user is from outside of this forum
                Pete Alex Harris🦡🕸️🌲/∞🪐∫P This user is from outside of this forum
                Pete Alex Harris🦡🕸️🌲/∞🪐∫
                wrote last edited by
                #220

                @elplatt @futurebird @wakame
                Yeah it only means an inconsistency was detected while trying to interpret/compile line 32, not that the mistake as a human would identify it is on line 32.

                1 Reply Last reply
                0
                • ? Guest

                  @futurebird @Flisty

                  I like the idea of a posted message.

                  You’re not stuck until you’ve tried:
                  A.
                  B.
                  C.

                  (Variation on the old “You’re not stuck until you’ve run out of gas.”)

                  FlicF This user is from outside of this forum
                  FlicF This user is from outside of this forum
                  Flic
                  wrote last edited by
                  #221

                  @donray @futurebird there are lots of them about https://www.tes.com/teaching-resource/debugging-checklist-poster-for-the-computer-tech-classroom-13223869

                  FlicF 1 Reply Last reply
                  0
                  • myrmepropagandistF myrmepropagandist

                    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.

                    Edward L PlattE This user is from outside of this forum
                    Edward L PlattE This user is from outside of this forum
                    Edward L Platt
                    wrote last edited by
                    #222

                    @futurebird I've seen this too. Even in one-on-one instruction. Errors cause the students to panic and jump around quickly without stopping to think. Teaching students to stop and take a breath can be helpful. Sometimes the problem is the students are trying to learn by rote and don't have a mental model of what the code is doing, which takes a lot of time to address.

                    1 Reply Last reply
                    0
                    • Read along with MattM Read along with Matt

                      So I’m a long-time TDD advocate, and I guess this sort of gives up the game? Like, writing trustworthy tests that anticipate every distinct, concrete possibility that matters to us—this has always been The Hard Part of “coding”

                      @futurebird @EricLawton @david_chisnall

                      Eric LawtonE This user is from outside of this forum
                      Eric LawtonE This user is from outside of this forum
                      Eric Lawton
                      wrote last edited by
                      #223

                      @matt

                      That's hard, and so is figuring out the precursor of both code and test cases: the requirements.

                      I remember going to the US in the early days of Obamacare, for one State's new system to support it.

                      We had various experts representing different interests and they disagreed over so many points that I told them I would get them a neutral negotiations facilitator to help them figure things out, because I couldn't help until they were much closer to agreement.

                      @futurebird @david_chisnall

                      1 Reply Last reply
                      0
                      • jz.tuskJ jz.tusk

                        @futurebird

                        This might be a bit too far (my teaching has been of older kids), but what if instead teaching them "coding" of "programming", you teach them "debugging"?

                        I mean start referring to that class exclusively as "debugging". "Okay class, it's time for debugging. Open your....". That way if they write something that doesn't work it's not a mistake - they've produced something that's important for the next step, which is understanding error messages, locating the place in the code ....

                        jz.tuskJ This user is from outside of this forum
                        jz.tuskJ This user is from outside of this forum
                        jz.tusk
                        wrote last edited by
                        #224

                        @futurebird

                        .... where the error is likely to be hiding, figuring out how to remove things to get to a basic structure that does work.

                        Honestly, "debugging" is the first thing you gotta learn. Heck "Basic Swimming" is still called swimming, but the key skill you learn is "breathing - while your face is in water half the time".

                        This might be expecting too much patience from your age cohort, but what if "it doesn't work" was met with "Excellent. We'll use that in the next step."

                        jz.tuskJ 1 Reply Last reply
                        0
                        • myrmepropagandistF myrmepropagandist

                          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.

                          Steven G. HarmsS This user is from outside of this forum
                          Steven G. HarmsS This user is from outside of this forum
                          Steven G. Harms
                          wrote last edited by
                          #225

                          @futurebird a powerful conceptual tool that I have after working in Boot Camp and in professional training is this: your code has billions of configurations, all of them except one are incorrect.

                          Therefore you’re going to spend the majority of your time with not working code. When it does work, that is the exception.

                          Therefore, your goal will be to learn how to gather information and diagnose the nature of the wrongness so that you can get it to the one working state this blunts the Instagram effect.

                          1 Reply Last reply
                          0
                          • FlicF Flic

                            @donray @futurebird there are lots of them about https://www.tes.com/teaching-resource/debugging-checklist-poster-for-the-computer-tech-classroom-13223869

                            FlicF This user is from outside of this forum
                            FlicF This user is from outside of this forum
                            Flic
                            wrote last edited by
                            #226

                            @donray @futurebird if you wanted to turn it into a Teachable Moment (TM) you could create the list together then put it up on the wall after.

                            1 Reply Last reply
                            0
                            • ? Guest

                              @futurebird
                              I totally cried when I was 14 and I tought in my naivety that I knew almost everything and then a simple program failed.

                              David SmithC This user is from outside of this forum
                              David SmithC This user is from outside of this forum
                              David Smith
                              wrote last edited by
                              #227

                              @wakame @futurebird can confirm, I work on the standard library for a major programming language and my working assumption is “you can tell I’m writing a bug because my hands are moving”.

                              Which is why we have tens of thousands of tests and multiple code reviewers and elaborate compiler checking and teams of people dedicated to making sure everyone else’s code that uses my code still works and everyone “dogfoods” the changes and and and… stuff still slips through every once in a while.

                              1 Reply Last reply
                              0
                              • jz.tuskJ jz.tusk

                                @futurebird

                                .... where the error is likely to be hiding, figuring out how to remove things to get to a basic structure that does work.

                                Honestly, "debugging" is the first thing you gotta learn. Heck "Basic Swimming" is still called swimming, but the key skill you learn is "breathing - while your face is in water half the time".

                                This might be expecting too much patience from your age cohort, but what if "it doesn't work" was met with "Excellent. We'll use that in the next step."

                                jz.tuskJ This user is from outside of this forum
                                jz.tuskJ This user is from outside of this forum
                                jz.tusk
                                wrote last edited by
                                #228

                                @futurebird

                                To really overwork the swimming metaphor, once you get the breathing down you can start work on the cool stuff, like learning different strokes, etc.. And once you get debugging down you can start learning algorithms and cool graphics libraries, etc.

                                But you aren't going anywhere until you've learned how to debug, so let's honor it and teach it as a distinct skill, not as something shameful we need to resort to when we've made a mistake. (Forgive the excessively dramatic tone. 😄)

                                1 Reply Last reply
                                0
                                • myrmepropagandistF myrmepropagandist

                                  @ben @david_chisnall

                                  They've added some new feature that will pull up a little virtual machine and it will let you run the code in there. It also seems to test that the code will at least compile first.

                                  I worry that people seem to think that the LLM just... "evolved" these features when clearly a human person had to add them.

                                  Eric LawtonE This user is from outside of this forum
                                  Eric LawtonE This user is from outside of this forum
                                  Eric Lawton
                                  wrote last edited by
                                  #229

                                  @futurebird

                                  Which is how LLMs will "evolve", including soul-destroying work by people in the global south, "training" them.

                                  They will become better corporate spokesbots, flooding our communications systems with marketing-driven slop.

                                  @ben @david_chisnall

                                  su_liamS 1 Reply Last reply
                                  0
                                  • myrmepropagandistF myrmepropagandist

                                    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.

                                    Dreaming of bogwitcheryF This user is from outside of this forum
                                    Dreaming of bogwitcheryF This user is from outside of this forum
                                    Dreaming of bogwitchery
                                    wrote last edited by
                                    #230

                                    @futurebird "That's great! Your journey into coding really begins now, with the debugger!!!!"

                                    1 Reply Last reply
                                    0
                                    • Eric LawtonE Eric Lawton

                                      @futurebird

                                      Which is how LLMs will "evolve", including soul-destroying work by people in the global south, "training" them.

                                      They will become better corporate spokesbots, flooding our communications systems with marketing-driven slop.

                                      @ben @david_chisnall

                                      su_liamS This user is from outside of this forum
                                      su_liamS This user is from outside of this forum
                                      su_liam
                                      wrote last edited by
                                      #231

                                      @EricLawton @futurebird @ben @david_chisnall How many Russian children had to be posed naked in front of cameras, so Grok knew how to make those pictures?

                                      1 Reply Last reply
                                      0
                                      • myrmepropagandistF myrmepropagandist

                                        @EricLawton @david_chisnall

                                        "Now I'm curious about whether LLMs' code compiles and executes error-free on their first attempt."

                                        At first it did not, but they have added a routine to run it through a compiler until it at least runs without syntax errors and probably produces output that seems like what you asked for for a limited example of input.

                                        This is a bolted on extra check, not some improvement in the base LLM.

                                        But some people are acting like it does represent advances in the LLM.

                                        ? Offline
                                        ? Offline
                                        Guest
                                        wrote last edited by
                                        #232

                                        @futurebird @EricLawton @david_chisnall @maco Are they though? The only sensible way to evaluate it is as a system — nobody uses the raw LLM, it's always through layers of API, tokenization, and now models or at least separate "trains of thought" leveraged against each other to refine the output. Using the tooling to conform output is a good hack to keep the systems able to deal with new things by using new tools instead of needing new training.

                                        And it's not exactly an extra check — it's embedded in a feedback loop.

                                        myrmepropagandistF 1 Reply Last reply
                                        0
                                        • ? Guest

                                          @futurebird @EricLawton @david_chisnall @maco Are they though? The only sensible way to evaluate it is as a system — nobody uses the raw LLM, it's always through layers of API, tokenization, and now models or at least separate "trains of thought" leveraged against each other to refine the output. Using the tooling to conform output is a good hack to keep the systems able to deal with new things by using new tools instead of needing new training.

                                          And it's not exactly an extra check — it's embedded in a feedback loop.

                                          myrmepropagandistF This user is from outside of this forum
                                          myrmepropagandistF This user is from outside of this forum
                                          myrmepropagandist
                                          wrote last edited by
                                          #233

                                          @aredridel @EricLawton @david_chisnall @maco

                                          I've had so many people say "it knows how to write code now" as if this is somehow ... new and different from generating text. As if there as been some foundational advancement and not just the same tool applied again.

                                          1 Reply Last reply
                                          0

                                          Reply
                                          • Reply as topic
                                          Log in to reply
                                          • Oldest to Newest
                                          • Newest to Oldest
                                          • Most Votes


                                          • 1
                                          • 2
                                          • 3
                                          • 4
                                          • 5
                                          • 6
                                          • 7
                                          • 11
                                          • 12
                                          • Login

                                          • Don't have an account? Register

                                          • Login or register to search.
                                          Powered by NodeBB Contributors
                                          • First post
                                            Last post
                                          0
                                          • Categories
                                          • Recent
                                          • Tags
                                          • Popular
                                          • World
                                          • Users
                                          • Groups