Teach kids a bit of coding. Part I: a look at current Learn-to-code-for-kids resources

7:05 PM Xun 2 Comments

Trend dictates that everyone needs to code and be able to code. Who does not want to be the next Mark Zuckerberg or Larry Page, or at least, their employees?

There is an abundance of resources and teaching initiatives.

Code.org (backed by Mark  Zuckerberg, Bill Gates, etc. etc., anyone who is somebody across all social walks) had some online tutorials interspersed with inspirational videos;

Khan Academy has dedicated computer programming courses where you can clone and create your JavaScript project;

MIT has Scratch, where kids can drag and drop coding blocks, cartoon characters, video/audios and build simple video games, animations, or simply tell a story.

There are all sort of coding games, which are more game than coding, that try to introduce the ideas about functions, loops, variables, and some logic training. My favorite is Kodable.

As a professional programmer and a mom who also eagerly wants to pass on some of the coding skills to my kids, I have ambiguous feelings about all of the programs I have tried with my kids, and I have very limited success getting my kids interested.

For example, Khan academy has simple ideas about teaching kids drawing with JavaScript. With that, you need some fine sense of coordinates. It is supposedly a very visual task however it requires you to plot all the spacial points out of thin air. My kids quickly gave up trying to draw a duck with a plump body and 2 yellow eyes.

Code.org is fine too, it teaches basic programming concepts such  as Conditionals, Loops, functions, It is all done in some format of half gaming. Instead of instant feedback from video games, you point, you shoot, something happens, With code.org games, you stack up your instructions, then hit run to see if your angry bird will get the pig while also evade a potential disaster.

As a matter of fact, most of current coding games are done in this fashion.

Kodable, where fuzzes run through a maze collecting coins; Tykner, has different set of games, Dragons and Firefly; Candy Catcher, etc,, etc.. I like Kodable a lot, it has cute and simple interface, very helpful and non-intrusive instructions and contextual hints, very clear objective and path of execution.

However, Tykner, I found it very annoying. It is hyper-active, lacking clear instructions, sometimes logically confusing. Do you jump on the candy, or jump over the candy in order to eat it?

Then there is Scratch from MIT, where kids or anyone can drag and drop instructions, sprites (images) and start building animated stories. It is very popular and admired for its versatility, and people have created millions of projects with it. Some of the projects are quite fun.

I tried Scratch with my kids and we created a few projects. Still, a lot of things feel very retro. the sprite set is very old fashioned, you need to watch some tutorials to realize how to coordinate your sprites, it is not easy to create simple variable and make them behave dynamically. To master Scratch, the effort is no less than a full-blown language. Make everything graphic on the surface may seem to have simplify coding, but in the end, it actually creates more obstacles and complexities.

That is why I eventually went to JavaScript.

Until next time.