views:

145

answers:

7

It comes to my mind... should I start to teach my nephew programming at age of 5 instead of learning piano....

Do you think a 5 years old kid likes printf("Hello World!!") thingy...

Just my thought.

+3  A: 

Sure, kids love simple programs like:

10 PRINT "Hello"
20 GOTO 10

But do the kid a favour and don't introduce them to programming with C++. Keep it simple, fun, and visual. Not too much theory. I started with BASIC and Logo. For a more modern language similar to BASIC you could try Python.

Mark Byers
-1: kids like Lego, racing cars, Disney films, music, swimming, running, friends, etc. This program has nothing to appeal to a 5 year-old. It's got nothing to appeal to an N5-year old, where you can replace N with any number in the range 0..9.
High Performance Mark
I would ask the kid if he prefers to swim or write gotos.
vulkanino
-1: I'd downvote this again if I could -- you'd teach a child BASIC !!! That's a horrid idea.
High Performance Mark
@High, c'mon, BASIC was not invented by Microsoft, only abused ;-) It was invented especially for teaching purposes, and IMHO it _is_ good for that. I started to program in BASIC too, still I have no observable brain damage :-)
Péter Török
@High:Basic was GOOD!! it went through a transition and now VB is powerful (Not that good though). Also, when I was 7, this same program game me the insight into how stuff works inside the computer. THIS code opened the gate of possibilities inside my head.
lalli
+3  A: 

This is kind of a subjective question, but if I were to give an answer...

I'd say go a somewhat different route: grab one of the various programmable LEGO sets (whether the more basic ones or the full-on Mindstorms kits) and start with that. It's both a simpler programming interface to work with (that doesn't require perfect spelling, and is less frustrating for beginning typists), and has a good visual interface combined with more tangible results.

You can still get into all of the core concepts of programming that are language-agnostic without having to explain what a "syntax error" is to someone still learning to read.

Amber
+1  A: 

Some time ago I read about Python Turtle - "A learning environment for Python suitable for beginners and children, inspired by Logo.". Most children like games and asking them to design their own game would be a good way to teach them programming. Python Turtle seems to do it well.

Manoj Govindan
+1 Looks very promising.
Helper Method
A: 

You can, but still... he needs to know quite a lot of hardware, maths, performance issues to do get programming right. I guess at this age you can just teach him really basis, lik hello world, defining classes, and stuff like this. He might try to create a simple "game" in Console. That would be definitely fun for him. Or a bunch of simple programs (how many days have you lived etc)

good luck!

Katalonis
A: 

Yeah Like said before, I think the Lego Idea is a good one.

For myself, I would say that I loved computers when I was a kid, but programming was something between not human and impossible.

And I got the first Lego Mindstorms kit, that was a wonderful introduction the the programming logic.

Because you don't have to forget, programming is a state of mind. A programmer doesn't think the same way as a salesperson (for example)

So maybe a kid will love it quickly or you can just abandon.

But there are some programming languages created for kids... but ... not by kids

Hope this helps you ;-)

Onigoetz
A: 

While some kids grok programming at a young age, studies show that most children would prefer learning through entertainment than for programming's sake. There are many tools and languages tailored for use with children.

As a graduated student I worked with some of the people behind Storytelling Alice. It uses a slightly different approach to teaching programming; it treats programming as a story telling device and children learn programming concepts in the process. The Alice development team was able to work with EA to get many of the models from The Sims as "actors" for the application. If you are not familiar with the Last Lecture, it provides a much better description of the learning process.

I have personally used Storytelling Alice in a summer camp setting for middle school children. Depending on the child, you might be able to introduce the concepts at a younger age.

Erik Karulf
A: 

Let your children play! lolol just kidding! In my opinion you should start with something simple... When he's ready (maybe at 13s, it depends) you should try to teach some LISP language (e.g. PLT Scheme).. If he could understand that it will be far easy to understand the other common programming concepts.

Pedro Gil