Live data from Hacker News

Ask HN: Teaching programming to a 10 year old, and I'm kind of lost

news.ycombinator.com

1–10 of 51 posts

Ask HN: Teaching programming to a 10 year old, and I'm kind of lost

#1
Basically, I was wondering what would be the ideal introduction and flow to teach this - ideally it would start out easy and the more engaging the better! Obviously it makes no sense to try and force something if the kid isn't interested, so help me make it interesting and easy to understand!

I was thinking

-Scratch or Alice for the basic concepts

-Then either learnpythonthehardway, diveintohtml5, diveintopython3, ruby+shoes (hackety hack) (thanks to the respective maintainers/creators of these apps/sites)

Any comments (with or without experience) would be appreciated greatly, as I am unsure which of these would be most appropriate for a complete beginner, or whether there is something else that would be more suitable.

Re: Ask HN: Teaching programming to a 10 year old, and I'm kind of lost

#2
A couple of random thoughts:

When we got our first computer, my then husband was excitedly explaining to me how to do stuff on it. I stopped him and said 'Where is the on switch??" My point: You may need to scale things back to where she is from your current vision.

Also, I recently showed my two sons a little html and css. My oldest has been wanting to learn a programming language and not finding anything intelligible for the way his mind works. A few minutes of demonstration and the light went on as to what kind of info he needed, which he promptly began looking up. We also used analogies using video games to provide some mental models for it. So if you run into any hitches, consider trying to adapt to her learning style and using something she is familiar with to provide examples.

Good luck. And I still want to learn a programming language, so would love to hear how this goes.

Re: Ask HN: Teaching programming to a 10 year old, and I'm kind of lost

#3
Hackety Hack still exists http://hackety-hack.com/

I've taught several people quite new to computers Ruby and HTML, I've found the hardest thing they try to grasp is logic, drill into their head how conditionals and boolean logic work - it's needed everywhere.

EDIT: I can't stress this enough, I've had people where I thought I've made a break through, they seem to grasp it, then two weeks down the line I look at some code they're trying to debug, and it's like they completely forgot how flow control and conditionals worked.

Re: Ask HN: Teaching programming to a 10 year old, and I'm kind of lost

#4
Turn off the computer for a while, use analogies, and remember that children rely on different modes of thinking:

http://carlos.bueno.org/2010/07/corrupting-the-youth.html

http://csunplugged.org/

Also, please email me (in my profile). I'm working on something in this area, and I'd love to have some more kids to use as guinea pi-- er, research assistants.

Re: Ask HN: Teaching programming to a 10 year old, and I'm kind of lost

#5

Hackety Hack still exists http://hackety-hack.com/ I've taught several people quite new to computers Ruby and HTML, I've found the hardest thing they try to grasp is logic, drill into their head how conditionals and boolean logic work - it's needed everywhere. EDIT: I can't stress this enough, I've had people where I thought I've made a break through, they seem to grasp it, then two weeks down the line I look at some…

Thanks for mentioning it, and thanks to the OP for the thanks. ;)

Hackety is designed for people that are absolute beginners at the moment, and I plan on making more 'intermediate' and 'advanced' things later. We're still pre-1.0 for another few weeks, though, so there still might be a few small rough patches. Specifically, soon it'll just be one program, rather than downloading both Shoes and the hackety.shy.

Re: Ask HN: Teaching programming to a 10 year old, and I'm kind of lost

#6
Step 1, learn to elide almost everything except what you're actually teaching. This is surprisingly harder than it sounds and often involves saying things that are technically untrue.

Step 2, teach the things required to do tasks.

For a child, you should focus on things that they can understand the output of. Sound, animations, pictures. Turtle/logo is a fantastic platform in this regard.

For, well, everyone, you need to ensure that what you're teaching is what they're interested in. If they're not excited about moving a cursor around a canvas, then they won't learn anything.

You'll know you're teaching correctly when they start doing things on their own that you didn't expect.

Sean

Post reply on HN