There has been a lot of press recently about teaching kids to program computers. When taught in schools at all, programming is often treated as a specialized technical skill. It can make an interesting elective, but is really a niche activity that doesn’t deserve much time in an already crammed curriculum.
Several good articles attempt to change this view. One article in the Atlantic argues that we should treat computer programming the same as Algebra. Another article on QED’s MindShift describes some of the broader benefits that result from teaching kids to program. One example is how to think through cause and effect in a logical system. It’s useful to be able to anticipate what will happen when inputs are fed the functions that make up the program. I also feel it’s very useful to find out how often the actual results differ from your thought process. That is, it can really make clear that your understanding of a system was more shallow than you thought it was.
Beyond these cognitive developmental benefits, programming is a tool kids can use to explore more of their technologically-oriented world. Computer programming is not a standalone activity, but permeates about every aspect of society today. Whether that fact excites or scares you, teaching kids to program helps then to actually understand the world they live in.
If your local school is not teaching kids to program, and you are starting to wish it did, you still have lots of options. There are many good online tutorials for teaching basic programming. Different options exist for kids of most ages. Lifehacker reviews a few good tools for teaching kids to program. That article also includes some tips on how to keep it fun. There are many new options coming out all the time, so check online for a solution that will work for your situation.
Image credit: timatymusic