[HN Gopher] Ways to teach kids to code (2016)
       ___________________________________________________________________
        
       Ways to teach kids to code (2016)
        
       Author : osbre
       Score  : 66 points
       Date   : 2023-08-04 18:57 UTC (4 hours ago)
        
 (HTM) web link (medium.com)
 (TXT) w3m dump (medium.com)
        
       | tromp wrote:
       | I'd like to add Robozzle as a suggestion, a robot (turtle like)
       | programming puzzle game, available on both Android and iOS. While
       | simple in operation, the puzzles quickly become very challenging.
       | Stepping through the program execution, with the ability to set
       | breakpoints on the playing grid, feels a little bit like
       | debugging.
        
       | MKais wrote:
       | Is it still useful to teach kids how to code? I'm genuinely
       | asking. I am the father of two 12-year-olds and I'm teaching them
       | how to code, but I wonder if it will really be useful in the long
       | run, in a world where there is ChatGPT, AI code assistants, and,
       | most importantly, everything else that will emerge in the coming
       | decade (i.e. english to code and whatnot)
        
         | nonethewiser wrote:
         | Well all of those things already exist. What kind of things are
         | your 12 year ilds able to do with them? Could they work as a
         | software engineer now?
        
         | mirekrusin wrote:
         | Is it useful to teach kids adding numbers? Computers can do it
         | millions of times faster/larger numbers for decades.
        
         | lordnacho wrote:
         | Coding is the 21st century version of what literacy was in the
         | 19th century.
         | 
         | Not everyone back then knew how to read and write, but enough
         | people did to substantially change society. If you could read
         | and write there was work that only you could do in the new
         | economy. At the same time, being literate did not mean you were
         | the new Shakespeare, you were probably using it for something
         | mundane like sending letters on behalf of a business.
         | 
         | Likewise with coding. There will be loads of jobs that only a
         | code literate person can do. It's also quite possible that you
         | don't write any large or important piece of software, your
         | whole life's work might be a bunch of python scripts that glue
         | together other people's contributions.
         | 
         | Knowing how to code is also similar to literacy in another
         | sense. The literate will be the first people to access new
         | ideas. Want to read Das Kapital? Gotta know how to read. Want
         | to know how an AI assistant works? Gotta know how to code.
        
         | lhorie wrote:
         | That's a strange way to frame it. Every skill is useful in some
         | context. As a parent, I think a more productive way to think
         | about it is to ask whether teaching kids anything is in line
         | with your values. For me, I'd prefer if my kids were well
         | rounded from being exposed to many different things, so they
         | can make informed decisions later in life. That means they have
         | lego mindstorms, but if they say they like tennis or they spend
         | time drawing sidescroller games and not twirling to nutcracker
         | ballet videos, then so be it. For some parents, laser focusing
         | on something might be considered preferable.
        
       | grokblah wrote:
       | They forgot Scratch!
       | 
       | https://scratch.mit.edu
        
       | pkdpic wrote:
       | I love these suggestions, especially the card game and making
       | their own website.
       | 
       | I had my first real dev job when my son was born and I gave how
       | to teach him code / reading / math a lot of thought. I tried
       | speak and spells, workbooks, little toy pretend computers that
       | had math games etc.
       | 
       | In the end just giving him a raspberry pi with ubuntu, a big kids
       | keyboard and no mouse seems to have been all he ever needs /
       | wants. It boots directly into the Unix shell, I aliased a little
       | speak and spell script I tossed together and some shortcuts to
       | music on youtube. And he doesn't even really need those.
       | 
       | He learned the basics much faster than I expected. Opening python
       | for math, prepending "say" to words to have them read out loud
       | (took some tooling in ubuntu...), control + C, control + W etc
       | all seem to make general sense. And the slowness of the pi seems
       | to help.
       | 
       | Anyway he started reading before turning three and seems to be
       | doing well enough with math and basic variable assignment for
       | whatever that's worth. Helping him make a website and getting him
       | using git seems like a fun next step.
       | 
       | Now if only I could get him to care about anything more than his
       | hotwheels collection...
        
         | rozularen wrote:
         | how is he doing right now?
        
         | querez wrote:
         | > Now if only I could get him to care about anything more than
         | his hotwheels collection...
         | 
         | he's a kid, es supposed to care more about that than anything
         | else.
        
           | tmpz22 wrote:
           | Hey now if the kid hasn't elevated themselves through 3 FANNG
           | roles by the age of 8 how could they ever make a meaningful
           | impact on the world of ad-tech?
        
       | dr_kiszonka wrote:
       | A solid list, bookmarked. For me, the main challenge is getting
       | kids interested in coding and not discouraging them as they
       | learn. (I have a tendency to correct them too frequently.)
        
       | moritonal wrote:
       | I feel like it's missing the entire catalog of Zachtronics.
        
       | chaosprint wrote:
       | how about making music with synth-style language?
       | 
       | https://glicol.org/
       | 
       | the ablenton learningmusic is also a good resource:
       | 
       | https://learningmusic.ableton.com/
        
       | dang wrote:
       | We changed the url from
       | https://web.archive.org/web/20220810201855/https://transmiss....
       | Please don't use archive.org links unless the original source is
       | truly unavailable elsewhere.
       | 
       | https://hn.algolia.com/?dateRange=all&page=0&prefix=false&qu...
        
       | linuxftw wrote:
       | We don't need to make everything kid friendly. There were no fun
       | algebra games, you just did the work. You didn't even understand
       | why the work was useful, you just had to do it.
       | 
       | When kids have the mental faculties advanced enough to learn
       | computer programming, you teach them just like you teach algebra.
        
         | mirekrusin wrote:
         | Seeing my kid what he does/knows about numbers after watching
         | numberblocks and playing with printouts of those little guys
         | he's asking for - before knowing how to read - I can't disagree
         | more.
         | 
         | The best secret of life is that you need to fall in love with
         | practicing what you want to achieve.
         | 
         | There is no better way than through play.
        
         | rajamaka wrote:
         | There are many different paths to the same goal. Some kids are
         | maybe better off just picking up C documentation and going
         | straight for it. Some are better starting with some web based
         | gamified psuedo language.
        
           | linuxftw wrote:
           | No. If you have to infantilize something for them, they're
           | not capable of learning it.
        
             | muti wrote:
             | Kids learn to read with children's books, not by reading
             | Ulysses
        
               | linuxftw wrote:
               | That's an age appropriate activity. They don't make a
               | children's calculus book.
        
             | HenryBemis wrote:
             | I politely disagree. I have used hundreds/thousands of
             | times in my life the "ELI5" method to explain anything and
             | everything from IT security to budgeting, and it helps
             | people understand. It will bore some of the audience in a
             | call, but it will get the job done.
        
       | jes5199 wrote:
       | iPad apps LightBot and CodeSpark both introduce algorithmic
       | concepts and are fairly fun
        
       | seeknotfind wrote:
       | I learned to code solving mazes! :)
       | 
       | I would also add to this list: controlling room light colors or
       | modifying websites you visit.
       | 
       | For people new to code, seeing results immediately is very
       | important. All the theory, printlns, etc, it can be hard to see
       | how it's useful.
        
       | BasedAnon wrote:
       | my favorite is to put a linux install without internet in front
       | of them and a book on python
        
       | mbork_pl wrote:
       | A few weeks ago I learned about Hedy (https://hedy.org/). Looks
       | pretty interesting (despite the fact that I'm not a big Python
       | fan).
       | 
       | It is a programming language and a web-based environment which
       | "grows with the user". In the beginning, you can only ask for a
       | user input, print it out (optionally prepending some string) and
       | do very simple turtle graphics (with only right angles). Then new
       | concepts are introduced gradually (variables, lists, loops,
       | conditionals etc.). In the end you have a functional subset of
       | Python.
       | 
       | Also, there are quite a few premade exercises/miniprojects to
       | explore.
       | 
       | Note: I'm neither the author or a contributor of Hedy, I've just
       | learned about it and found it interesting.
        
       | avgDev wrote:
       | I don't see it mentioned and I am bit surprised, but teaching
       | kids how to breakdown "common" tasks into instructions. No
       | programming language needed. Then, introducing edge cases.
       | 
       | I remember a programmer making a video about their child writing
       | instructions to "make p&j" sandwich. Did you check if you have
       | PB? What happens if you don't? Did you put the bread down first?
       | Or are you applying PB to the counter.
        
         | seabass-labrax wrote:
         | That's the imperative programming case. Declarative programming
         | is about defining each part of the final result.
         | 
         | What's a peanut butter and jelly and sandwich (the result)?
         | It's a slice of bread atop a layer of peanut butter atop a
         | layer of jelly atop a slice of bread. Recursively define each
         | part, for instance defining a layer of jelly in terms of
         | manipulated blobs of jelly. Reverse the order of the
         | definitions if using an early-binding language.
         | (setq p&j-sandwich '(bread-slice peanut-butter-layer jelly-
         | layer bread-slice))       ;; TODO work out why jelly layer
         | isn't transferred to sandwich in one piece       (setq bread-
         | slice (with-tool bread-knife (slice bread-loaf)))       (setq
         | jelly-layer (with-tool table-knife (spread jelly-blob)))
         | ...
         | 
         | Disclaimer: I've never eaten nor made a P&J sandwich; please
         | consider this code experimental...
        
         | croisillon wrote:
         | https://www.youtube.com/watch?v=cDA3_5982h8
        
       | wizofaus wrote:
       | As someone who does this regularly as a code club volunteer I'm
       | not sure I see much useful advice there. Honestly the biggest
       | challenge is accepting that within a group of kids the same age
       | there'll be enormous variation in ability and motivation to pick
       | up learning how to code. And what I have no real insight into is
       | whether it even makes any difference in the long run (i.e. how
       | many of the kids that do the whole course go on to make
       | programming a significant part of their lives, or even if they
       | don't, have it genuinely help them in some way). Still, I know I
       | only got where I am today because my Dad sat down with me at age
       | 9 or 10 and introduced me to programming - something obviously
       | not all parents can do - so hopefully at least a few of these
       | kids will get the same benefit.
        
         | throwaway75849 wrote:
         | Are you able to convey some more general or high-level
         | understanding, such as: "A procedure has a starting point,
         | steps in sequence, possible repeated steps, and an end point."
         | For example, one could start with trying to describe/document
         | how to move physically in a room to get from one place to
         | another. Then suggest, e.g. as a bridge, most computers can
         | only work with a written descriptions of a procedure.
        
       | [deleted]
        
       ___________________________________________________________________
       (page generated 2023-08-04 23:01 UTC)