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).
Teaching our five year old to code by cheating
61–70 of 109 posts
Re: Teaching our five year old to code by cheating
#62Earlier quoted context omitted.
Music programming languages could also be fun. Bonus points if you can produce interesting music and interesting graphics at the same time.
When reading your comment I remembered the old LucasArts game called Loom. I wonder if that would be a proper jumping off point for a music language? Of course, my memory could just be bad.
Re: Teaching our five year old to code by cheating
#63I'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…
That's awesome! Not sure I've ever seen such a compelling demo that started from nothing. In general I think starting from nothing is the original sin of programming pedagogy. I think it's easier to learn by example, imitation, and extension and then learn the deeper principles once you need them. My wish is a game that would be compelling enough to get a few app store downloads but allows for live editing of the sou…
I think you're right in saying that. Back when I was in school, I learnt a lot by copying BASIC programs from mags and typing them in and then modifying them. I don't think I even acknowledge that early stage much now given that learning strategies have evolved from there.
edit: Thinking back to that, it seems to me that one of the attractive aspects of BASIC for interactive programming was line numbers. You could replace any line by typing a fresh line with the target line number instead of going back to edit the program. There's something innocent and simple about that.
Re: Teaching our five year old to code by cheating
#64Earlier quoted context omitted.
That's awesome! Not sure I've ever seen such a compelling demo that started from nothing. In general I think starting from nothing is the original sin of programming pedagogy. I think it's easier to learn by example, imitation, and extension and then learn the deeper principles once you need them. My wish is a game that would be compelling enough to get a few app store downloads but allows for live editing of the sou…
> In general I think starting from nothing is the original sin of programming pedagogy I think you're right in saying that. Back when I was in school, I learnt a lot by copying BASIC programs from mags and typing them in and then modifying them. I don't think I even acknowledge that early stage much now given that learning strategies have evolved from there. edit: Thinking back to that, it seems to me that one of the…
The line numbers definitely help you imagine the computer mechanically reading and executing the lines. I wasn't taught with BASIC so in the few times I've had to modify a program with meaningful line numbers I have often used make or similar to just put them in for me. I'm glad someone likes them, I never understood why they existed!
Re: Teaching our five year old to code by cheating
#65I'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…
Some kids do like the puzzle aspect of things. And specifically small exercise like this can be fun or not for kids who normally dont like puzzles, if you create the right mood.
Re: Teaching our five year old to code by cheating
#66Earlier quoted context omitted.
Also, don't be disappointed if boys just want to be fathers. 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.
These statement don't sit well with me. Anyone "just being a " in their life feels incomplete. (I think you were implying this by reversing the genders.) To the GP, if it's OK for girls to "just be mothers", is it then OK to describe a woman as "just a mother"? I have a daughter. I suspect that if she becomes "just a mother", what that really means is her skills and interests are so foreign to me that I can't come up…
You need to stop treating everyone in the world like a member of your scrum team or something. Understanding people's "skills and interests"? They're just people for crying out loud, speak to them. And no, there's nothing wrong with being "just a person". Stop being so analytical and desperate to have everything conform to your fantasies of what the world should be like.
Re: Teaching our five year old to code by cheating
#67My kid turned 6 years old in August and is just starting to read basic words and do basic sum/subtraction math with the help of counting the fingers. I can't imagine how he could start to learn programming at this age.
“I can't imagine how he could start to learn programming at this age.” Don’t. Instead imagine a computing environment that facilitates the basic reading and math skills he’s now attempting to practise. Age 6 is a bit young, but by age 8 a child starts developing the capacity for abstract thought, which enables them to turn those rote-taught skills into useful practical tools which they can apply to the problems that…
Re: Teaching our five year old to code by cheating
#68I'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…
The differences were just that I used Python rather than Perl and the program was a higher / lower game:
from random import randint
random_number = randint(1, 100)
guess = 0
while guess != random_number:
guess = int(input("Guess a number: "))
if guess > random_number:
print("Too high!")
if guess
(there's obviously a lot of ways you'd write this as better code but the point was to teach the absolute basics)So the basic concept of the program is essentially the same (command line based and integer comparisons) but it's structured as a game. I too encouraged the kids to hack their programs and they loved it! In fact at every stage of the class, from teaching how strings work (eg below)....
name = input("What is your name? ")
print("Hello " + name)
...to the completed game, I gave kids time to hack the code and adapt it how they wanted. Kids genuinely loved it. They'd put silly code in as jokes and found it hysterical that the computers repeated their silly code etc. They were very much engaged.Obviously there will always be outliers who don't enjoy those types of lessons -- I mean everyone is different after all. But this kind of structure for teaching code is actually very effective for engaging the majority of the class.
Re: Teaching our five year old to code by cheating
#69Earlier quoted context omitted.
I think you got the wrong takeaway here. It's not about Logo and Perl specifically, it's about making sure that whatever you do, it's enjoyable for the kids. For some that's math, for others it's graphics, for others it's "hacking". Whatever works for one, isn't guaranteed to work for the others. Just as for some, Perl is pleasure, for others, Perl is pain.
And I didn't do anything like "teaching them perl". In fact, I think I may have actually used bash; and if I were doing it today I'd probably use python. The point was to have something that you could reasonably guess what it was doing from looking at it. You don't have to know anything about perl replace "A" with "E" and vice versa. And although I wouldn't call this exercise "fun", it's something that connects with…
Kids are also a lot less dependent on fun than people think. If they actually feel useful you'd be surprised what they're interested in doing that's not considered fun.