Monday 20 June 2011
CS Unplugged
I've been concerned about the teaching of computing in schools. At my children's primary school, they get a little bit of instruction in using a computer. There are even optional tests, with questions like "what does this icon do?". Unfortunately this seems to convey that a career in computing is all about using Microsoft Word, so anyone with a brain would dismiss such a career from an early age. Anecdotal evidence suggests that this does happen.
Early this year I saw Tim Bell from the University of Canterbury demo a few of the lessons from his site CS Unplugged, techniques for teaching computer science concepts to kids --- without using computers, which he views as often being just a distraction from learning these concepts, and I agree. I was keen to try this myself at my children's school, and last Friday I finally did, in my older child's class, with the help of my wife and another computer science-y couple who also have a child in that class.
We spent an hour and a quarter covering binary numbers, parity-based error correction, and a short discussion of searches using sorting and indexing. (For the latter I had the kids look words up in books with indexes, and discussed how Web searches work similarly. I had also manufactured an unsorted phone book and we compared lookup difficulty with a regular phone book, to try to convey the idea that you can make operations faster by organizing your data the right way.)
It went well. In this class of 9/10-year-olds, all the students could do the activities, Many found them easy but some needed help. This suggests to me that the activities were about the right level. Everyone seemed to enjoy it. I'd definitely do it again!
Comments
I still put down a lot of my success in algebra and calculus in high school to learning basic programming before I was 10. It meant algebra always made sense and seemed useful since it was just like manipulating variables.
A lot of CS concepts can be broken down well for kids, the problem I think may be finding teachers who understand the concepts themselves to start with.
I've always been amazed at the creativity of children, and their ability to understand and to solve puzzles and problems. I suspect that the commonly held model of childhood is that children are stupid versions of adults. My observation is that mental abilities are developed much earlier than is commonly appreciated, but that children do not lack intelligence -- they lack information and experience. They should be treated accordingly, but they are often taught badly. Stupidity and lack of creativity can be taught. Thinking can be developed at an early age, but too often it is suppressed.