News: Does a Five-Year-Old Need to Learn How to Code? via BBC News
The push to teach young children computer programming really irritates me. This is because the fundamental skills used in programming are things children should be learning anyway; planning, logical thinking, attention to detail, and working with the abstract. It's not special to programming. Those skills can be learned through mathematics and language arts. It's cool to say "oh, we're teaching children how to program computers, because we're so modern", it's superfluous. Math and language arts is a much more direct way to teach those skills. It's also cheaper, easier to apply to a variety of things, and has a much larger body of work backing up the methods used to teach it. Now, I've taught computer programming to elementary school kids, and it went okay. The kids were happy to mess around with computers, they did have a degree of understanding about it, but I still hold to my point -- spending more time on math would have had a better effect, especially over the long run.
For older kids, say from sixth grade on, I could see the value in teaching computer programming as the application of logical thinking skills. Not as job preparation. I'm not going to comment on whether or not learning a programming language is useful. Languages rise and fall as technology changes, but the fundamental skills stay the same. After you learn one language, it's vastly easier to learn another. The thinking behind it doesn't change, and the value of being able to plan, think logically and be detail oriented doesn't change.
The Duck Song
I have to apologize for this. This song will get stuck in your head. You will wake up in the middle of the night humming it. It's not that I hate you or anything... but it's so darn catchy. There are at least two follow up songs, but really, you only need to listen to this one. It will haunt you enough by itself. Sorry guys, the duck made me do it. D: