Learning to code is all the rage these days. While I do not completely agree with teaching programming for programming sake, I strongly believe that computational thinking is a crucial skills for children growing up in the 21st century. Scratch from MIT is a platform designed to effectively teach kids, including college students, computational thinking via programming using Scratch. But how young can you start?
After running after school Scratch classes for a few years with K-6 kids, this is what I found about getting younger, 6 -7 years old, to use Scratch:
Any parents of a 6 years old can tell you, getting a 6 years old to sit down and focus for more than 20 minutes is difficult. Doing scratch at home actually is easier as there are less distraction. But do not count on being able to create a large Scratch project on one sitting.
Scratch is very visual, and most basic blocks are color and shape coded. So one does not have to be able to read all the text on the blocks to use them. However it can get slightly frustrating if a child cannot find the blocks that she wants to use. One way to help is to prepare some basic blocks that the child may need, either by dragging them into the scratch area, or by printing them out on a piece of paper so that the child can just visually try to match the blocks.
Explain and re-enforce the color coding scheme: Block for movements, purple for looks (say blocks), etc will help.
Similarly, if the child is going to have her characters say things (which is a good idea), she needs to be able to type, and spell. Some children gets frustrated, especially if they are aware that they “need” to spell the words correctly, when typing. Most often the parents get more frustrated as they see their children struggle to spell. My recommendation? Does not matter. What’s wrong with a character saying “trhjhirj ffweg3sffs” !!?