Coding!

Alton has been asking to learn to code in a “real programming language”. Sounds good to me. Back in the old days, this was a basic element of any home computer. But nowadays, consumer electronics are geared toward, well, consuming content created by others rather than creating and publishing your own. There are tools to do the latter, but they generally require publishing on someone else’s web platform.

I explored some options available. It should be a language that is relevant, updated, not too esoteric, with the ability to create something cool that he can see and play and share. Cheap or free is also helpful.

  • BASIC – several flavors out there, many can be compiled. Probably not a bad introduction to coding, but probably not as applicable for the future.
  • Autohotkey – great for my needs, but may not have enough support for someone who is at his stage. Also, graphics are not its forté.
  • HTML – omnipresent and necessary for web pages, but not going to be that useful for learning programming basics, since it is really just a rendering language.
  • PHP – an even larger step into the deep end. Necessary for more sophisticated web coding, but not great for beginners. Pretty unforgiving, with no feedback about errors. I call it “painful hypertext programming”.
  • C# – a pretty real language, but has a high barrier to entry with all of its dependencies and compilation requirements.
  • Swift – iOS specific, so not very generalizable. There is an iPad app for leaning to “code” in Swift, but it seems mostly focused on basic programming concepts.
  • Java – requires an appropriate JVM. Supposedly very cryptic and not forgiving.
  • Javascript – might be good as a second language. Fairly finicky syntax and mostly geared toward web apps. But quite widespread.
  • Python – requires a Python environment, but is a very common language. Felt to be a good first programming language for kids. Has widespread application.

I ended up buying some introductory books for programming games in Python that are geared towards kids. Installed the proper Python environment on the Acer netbook (their “Totoro” computer). I can learn Python along with him!

Leave a Reply

Your email address will not be published.

12 − one =