Come programmatore ti proporrei quanto segue:
Pensiero astratto, pensiero pragmatico, risoluzione dei problemi più elevata. Modelli di progettazione (non in generale di programmazione ma edificio. Edificio nel senso di costruzione, costruzione. Sapevi che i modelli di progettazione provengono dalla progettazione di edifici e dalla risoluzione di problemi in ingegneria?)
Vorrei anche raccomandare di iniziare con il famoso piccolo linguaggio di programmazione per bambini: Logo. In realtà ci sono giochi abbastanza buoni per far iniziare tuo figlio.
Ma puoi farlo su Google, quindi non mi preoccuperò di copiare quei risultati. Il tuo obiettivo principale è attirare la sua attenzione e fargli pensare come un programmatore, o almeno iniziare a pensare come uno.
Successivamente puoi iniziare ad applicare le conoscenze all'algoritmo e ridurre la risoluzione dei problemi e la programmazione orientata agli oggetti.
Inoltre consiglierei di usare Mind Maps, dato che i bambini tendono a ricordare meglio le cose colorate. :) http://it.wikipedia.org/wiki/Mind_map
Ohhh anche ... ho dimenticato ma questo potrebbe aiutare.
Da bambino adoravo automatizzare tutto. Ecco perché oggi sono un ingegnere di test di automazione. Potrebbe essere divertente mostrare a tuo figlio come automatizzare le attività. Come puoi manipolare le finestre e tutto ciò che fa il tuo PC. Anche alcune interazioni del mondo reale come l'OCR con un feed video forse. O un sistema di tracciamento del movimento di base con una fotocamera economica.
Penso che il bambino sarebbe molto felice se, ad esempio, potesse individuare se i suoi genitori si stanno avvicinando alla sua stanza. :) O costruisci un piccolo robot lego e programmane una routine, come andare a prendermi il latte. Il che è difficile ma inizia lui e avrà anche un obiettivo e un'esperienza di vita reale che è MOLTO importante nei primi anni.
Vedi: Lego Mind Storm: http://mindstorms.lego.com/en-us/Default.aspx