Live data from Hacker News

Teaching our five year old to code by cheating

baugues.com

21–30 of 109 posts

Re: Teaching our five year old to code by cheating

#21
I've done something a bit like this for "career days" for elementary school kids. I coded up a perl script that was basically something like this:

    #!/usr/bin/perl
    $score = $ARGV[0]

    if ($score > 90) {
        print "A";
    elsif ($score > 80) {
        print "B";
    elsif ($score > 70) {
        print "C";
    elsif ($score > 60) {
        print "D";
    } else {
        print "E";
    }
And I'd ask, "What do you think happens if you put in '85'? What about 10000? What about -30?" If the group I was talking to seemed pretty sharp on the uptake, I'd ask, "If you wanted to hack it so that people who got 95 got an E, and people who got 50 got an A instead, what would you do?"

The kids really seemed to enjoy that. Apparently they even told the teachers I was teaching them to hack programs -- a bit concerning for the teachers, but mission accomplished as far as I'm concerned.

Re: Teaching our five year old to code by cheating

#22

Earlier quoted context omitted.

> Trying to make kids learn programming without them being interested is about the parent wanting their children to be like them That's harsh. I'd say it's about introducing their children to something they enjoy/find valuable, in the hope that the kid will enjoy it (or get value from it) too

Related: I've tried to get my kids to learn piano, because music has been one of the primary sources of joy in my life and I wanted to pass it on. Hasn't been particularly successful - they've developed some skills, but it never really became something fun for them (at least for the older one, the 12-year-old is still learning)

[deleted]

Re: Teaching our five year old to code by cheating

#23

Kids should be taught programming when they express an interest, and when their brain is ready which in my non-facts based opinion is 11-13 years old. Trying to make kids learn programming without them being interested is about the parent wanting their children to be like them.

Worth noting that the author says he started learning to program on his own when he was seven.

[deleted]

Re: Teaching our five year old to code by cheating

#24
these days, and at that age, what you exclude is probably more important than what you teach.

so many overdeveloped, hyper-real, dopamine-avalanches fighting for their attention--good luck getting them to pay attention to mere reality after that. especially when mere reality has to be introduced in baby steps.

Re: Teaching our five year old to code by cheating

#25
post #21

I've done something a bit like this for "career days" for elementary school kids. I coded up a perl script that was basically something like this: #!/usr/bin/perl $score = $ARGV[0] if ($score > 90) { print "A"; elsif ($score > 80) { print "B"; elsif ($score > 70) { print "C"; elsif ($score > 60) { print "D"; } else { print "E"; } And I'd ask, "What do you think happens if you put in '85'? What about 10000? What about…

Look I don’t want to criticise but I’ve got to say, this is the sort of thing that makes kids hate programming.

“Hey kids ready to do some super exciting math in a computer program?” Nah.

I had a computer teacher who managed to make me bored and disinterested with stuff like this, despite me being crazy crazy crazy interested in computers.

The best way to teach kids programming is via programmable graphics I.e visual games making systems. Not written code.

Re: Teaching our five year old to code by cheating

#26

Kids should be taught programming when they express an interest, and when their brain is ready which in my non-facts based opinion is 11-13 years old. Trying to make kids learn programming without them being interested is about the parent wanting their children to be like them.

Yeah my kid is around the same age as the OP (kindergarten) and seems like he will be interested in coding some day, but just isn't there quite yet! I didn't get into coding until much later, probably 11-13 like you said, and it didn't hold me back!

We're just trying to meet him where he is at and try to make sure he is being creative, whatever it is.

Re: Teaching our five year old to code by cheating

#27
post #4

I've been frustrated by the magnified expectations of kids w.r.t. programming because they play sophisticated games compared to the pong/bricks/tetris of my highschool days. Very hard to satisfy my kids with doing, say, turtle graphics. I'm yet to try Minecraft programming (need windows machine) but that might do it for them as they're into Minecraft. I had a blip of a realization one day when idly talking to the 6yr…

Just putting this out there: You don't need a windows machine. Minecraft, including programming mods like ComputerCraft run fine on Ubuntu (and therefore probably on a lot of other distros).

"Java Edition" is, assuming the system can run "modern" games decently well.

I've also heard good things about "ro blocks", but having watched a stream or two I'm less sure of it as a good introduction.

Computercraft turtles and LUA aren't terrible, but when I see a FOR loop I think C style, while LUAs is the other kind and I'd really love for that for to be named something like ITER instead.

Re: Teaching our five year old to code by cheating

#28

Kids should be taught programming when they express an interest, and when their brain is ready which in my non-facts based opinion is 11-13 years old. Trying to make kids learn programming without them being interested is about the parent wanting their children to be like them.

Fine article, and what it (tongue-in-cheek) calls “cheating” is just what us self-taught automators call “making the machine do all the crapwork for you”. It’s just unfortunate that the greater tooling and culture currently available is such a sprawling hostile ballache that even the most enthusiastic cheater will be driven to conclude that this shit would be (and likely is) quicker and easier just to do by hand.

The foundational mistake is “teaching programming”. The goal should be to instill (“teach”) critical thinking and analytical problem solving skills, and a “programming environment” just another tool, like pencil and paper, which the student can use when exercising those skills on real-world problems.

Whereas “teaching programming” is teaching language features: what all the buttons are and what they do when you push them. Thus mastery of button-pushing becomes feted as the end-goal of itself, instead of being just some tiresome but necessary tool-practising crapwork (like memorizing the ten-times tables and drawing all the letters from A to Z) that you have to go through on the way to achieving your true goals (which can be anything).

Once again, I point to Papert’s Logo[1] as a good demonstration of just how simple that PE can—and should—be to serve that purpose. Logo’s core concepts can be communicated in just three steps:

1. This is a Word.

2. This is how you Perform words.

3. This is how you Add your own words.

Anything else that the platform provides, such as its dictionary of pre-defined words, can and should be explorable and discoverable; something today’s hardware and software can support and encourage without blinking. Let the students teach that crap to themselves if/as/when they need it, and keep the adults on hand just to observe when students start running themselves down a dead-end and prompt them to other possibilities they had not realized/considered.

Oh, and it really should go without saying that the PE’s error messaging must be the top of their class. Because errors aren’t the “wrong answers” of which a student should feel embarrassed and ashamed, but fresh questions in their own right which spark awareness, exploration, self-correction, and insight.

--

[1] https://www.amazon.com/Mindstorms-Children-Computers-Powerfu...

Re: Teaching our five year old to code by cheating

#29
post #21

I've done something a bit like this for "career days" for elementary school kids. I coded up a perl script that was basically something like this: #!/usr/bin/perl $score = $ARGV[0] if ($score > 90) { print "A"; elsif ($score > 80) { print "B"; elsif ($score > 70) { print "C"; elsif ($score > 60) { print "D"; } else { print "E"; } And I'd ask, "What do you think happens if you put in '85'? What about 10000? What about…

Look I don’t want to criticise but I’ve got to say, this is the sort of thing that makes kids hate programming. “Hey kids ready to do some super exciting math in a computer program?” Nah. I had a computer teacher who managed to make me bored and disinterested with stuff like this, despite me being crazy crazy crazy interested in computers. The best way to teach kids programming is via programmable graphics I.e visual…

Different children like different things.

Re: Teaching our five year old to code by cheating

#30

Kids should be taught programming when they express an interest, and when their brain is ready which in my non-facts based opinion is 11-13 years old. Trying to make kids learn programming without them being interested is about the parent wanting their children to be like them.

Agreed. Everyone wants to share what they love with someone else, but you have to respect the fact that others won't love what you love.

I've tried to encourage my little (he's 21 now) brother to get into programming, but he's just not interested. I'm disappointed, but that's my problem, not his. He's had every opportunity to get into it. He's got his own computer and a big brother willing to teach him. If he wanted to do it he would've done it.

My other brother became a mechanic despite nobody encouraging him to do it, nor providing him with the resources when he was younger. He had to go out and find old lawnmower engines to work on by himself. He was actively discouraged from bringing home junk by our parents, but he did it anyway.

The vast majority of people do not want to become programmers. The best thing you can do for children is to expose them to as many things as you can. Take them to museums. Involve them in your hobbies and your friends' hobbies if possible and if they want to. You'll know when they've found what they want to do.

Also, don't be disappointed if girls just want to be mothers. It's one of the most important and noble jobs there is. Don't discourage it because you don't think it's as important as what you do.

Post reply on HN