A while ago my son, Ahan, started showing some interest in code. He was visiting code.org regularly and dragging random code blocks together to draw patterns. But after a few months of that without understanding much more than a loop is used to repeat things, I decided it was time for him to learn some “real” code.

I tried to rope in a friend so we could make our kids work on a common project of their interest together, but unfortunately they couldn’t commit enough time. I continued embarking down the project which, in hindsight, was too ambitious for an 8 year old. However, we did make significant progress in his understanding of code. He got the concepts of variables, objects, arrays and loops. He learned some JavaScript, understood what a library is, some basics of jQuery, understood what an API is. He was successful in quering a Pokemon API and showing a list of Pokemon cards based on that search. Our plans were much grander but we stopped there in that project after some dark nights of the soul.

(I don’t know Maureen McHugh. I found this image here)

By this time it had been many weeks of “this sucks and it’s boring” and my son’s will to code and my will to deal with overcoming his lack of will were both dwindling.

So we stopped for a while in search of something not as complicated but still interesting and still ambitious. So we started on making a card game. Ahan had just learned this, relatively simple in terms of card games, card game and played it a lot with his grandparents. Our new project is to build an online version of that where you play against the computer.

This is turning out to be a really good exercise in understanding how complicated it is to teach a computer how to do something so relatively simple. Here’s to a few more dark nights of the soul.

Here is my son’s take on this. Note the usage of the words “hate” and “boring”. But every time we make some progress, the excitement is totally worth the rest of the life of the project.

My new strategy to keep him going is to take it slower and have Ahan blog about his progress and mentally tell myself “Serenity Now” knowing full well the outcome. Also simultaneously we are working on Lego Mindstorms projects where the code is drag and drop.

Leave a Reply