A Tool for Teaching Kids to Code


Last week, as a representative of Brain Boost, I attended a community outreach program in Norwalk, Connecticut where organizations teach kids about science and technology– or at least that seemed to be the theme. I had the benefit of presenting my program at the end of the event, and something that I noticed was that children, in this case young teens, do not like to sit there and listen to someone monotonously lecture. Especially topics that are already taught in school. In one case, a young scientist was showing how carbon dioxide’s gaseous form floats around like a ghost, which is pretty cool, but they were looking for any excuse to laugh at or make fun of their peers (never the teacher, of course), distracting from the lesson at hand.

As I sat there and thought of how they were going to roast me up there talking about computer science and learning to code, I had to come up with a different way to reach them. I had originally thought of giving a talk about how the typical PHP web app/server works; instead, I switched the topic to creating a simple game that allows you to choose a hairstyle for a character. And it worked marvelously. Even the event organizers were crowded around trying to create their own hairstyle to add to the game.

Now, as a coding teacher I had to find a way to easily present the information. If I were to show them pure text code or start using a terminal (command line) they would be immediately drawn away from it. You have to be aware of the pressures that society places on children (and adults!), and, when it comes to programming, especially with girls. Programming (and computers in general) are thought of as a “boy thing”, so when I step into a room to teach a mix of boys and girls about coding, I make sure that the app they will be creating is based on a universal theme. Pretty much anybody would love to be able to change his or her hairstyle with the click of a button– which is why this app was successful with the kids.

Moreover, the method of delivery is crucial, which is why I chose to use Scratch, a visual programming language that can be run online. Instead of typing text commands in a boring text file, Scratch allows people to perform similar actions but with colored-blocks, where each block represents a command. Visualizing the process makes it less daunting and it also creates an association: there might be a command that moves an object, and it is a certain shape and color, so children start associating movement with blocks with those attributes. Another plus is that they can create games and animations based on objects they draw using a paint tool within Scratch. This allows kids to put their creativity into coding. There really are no limits, even with Scratch.

Another reason a visual programming language is ideal for teaching kids to code is that the logic for visual languages is the same as for text languages. Making a game in JavaScript (JS) is quite to similar to making one in Scratch, the difference is that the commands are typed. At the end of the day, you still have to portray a set of computer instructions with code… whether it is JS or Scratch.

Scratch is not the only way to teach children about programming, but it certainly is a great way to do it!

As I left the community event that night, it filled me with excitement to know that programming is something that truly interests kids at the present time and if we, educators, are truly passionate about the topic we should make sure that it is taught well. Otherwise, “coding” or “computer science” or “programming” will continue to be a hobby for the geeks.


  1. My spouse and I absolutely love your blog and find nearly all
    of your post’s to be exactly what I’m looking for. Does one offer
    guest writers to write content for yourself? I wouldn’t mind composing a post or elaborating on most
    of the subjects you write with regards to here. Again, awesome site!


Please enter your comment!
Please enter your name here