Как программист, я бы предложил вам следующее:
Абстрактное мышление, Прагматическое мышление, Высшее решение проблем. Шаблоны проектирования (Не программирование в целом, а строительство. Строительство в смысле здания, строительства. Знаете ли вы, что шаблоны проектирования происходят из проектирования зданий и решения проблем в технике?)
Также я бы порекомендовал начать со знаменитого маленького языка программирования для детей: Logo. Есть на самом деле довольно хорошие игры, чтобы ваш ребенок начал.
Но вы можете использовать Google, чтобы я не стал копировать эти результаты. Ваша главная цель - привлечь его внимание и заставить его думать как программист или, по крайней мере, начать думать как один.
После этого вы можете начать с применения знаний к алгоритму и решения проблем, а также объектно-ориентированного программирования.
Также я бы порекомендовал использовать Mind Maps, так как дети, как правило, лучше запоминают яркие вещи. :) http://en.wikipedia.org/wiki/Mind_map
Оооо также ... я забыл, но это может помочь.
В детстве я любил все автоматизировать. Вот почему я сегодня инженер по автоматизации испытаний. Может быть интересно показать вашему ребенку, как вы можете автоматизировать задачи. Как вы можете манипулировать окнами и всем, что делает ваш компьютер. Также возможно некоторое реальное взаимодействие, такое как оптическое распознавание текста и видео-трансляция. Или базовая система отслеживания движения с дешевой камерой.
Я думаю, что ребенок был бы очень счастлив, если бы, например, он мог определить, приближаются ли его родители к его комнате. :) Или создай маленького робота-лего и запрограммируй в него рутину, как иди, принеси мне молока Что сложно, но начните с него, и у него тоже будет цель и реальный жизненный опыт, который ОЧЕНЬ важен в первые годы.
Смотрите: Lego Mind Storm: http://mindstorms.lego.com/en-us/Default.aspx