All posts by VM

Learning Python for Hour of Code and Beyond

There are many ways to learn Python online these days. Following are just a few.

Penjee teaches kids how to use Python in a visual and supportive way.  Unlike the other sites on this page, Penjee was made with scaffolding built into the fabric of its web curriculum. Students can see the “solution” if they are stuck on a particular challenge. If that is the case, they then have to try another, similar challenge, hopefully, having learned from seeing the solution code. They can then try a “Mike and Ike” version of the assignment.

Penjee Code Demo and Animation


Code Combat teaches Python (as well as Javascript) through a video game. If you are a gamer, this might be your best choice. The site is based on a freemium model.

Codeacademy is a text based interactive tutorial that teaches much of what Penjee or Code Combat teaches.  We put it on the bottom of the list because the site seems to emphasize syntax over understanding. While much of the site is great and easy to use, there are some parts that are not very forgiving and not very friendly for budding programmers. The most egregious example of this, IMHO, and at the time of this writing, is the “date and time section.” Below is a screenshot:


In this, you are asked to format the date. I can tell you, from experience, that many high school kids will get stumped here. Now, if you’ve done some programming,  you are probably familiar with the gist of this line.

But, why on earth would you ask a beginner to try to use byzantine syntax?

For a good reason, right? I mean, you wouldn’t put a “beginner,” which Codeacademy says this course is designed for, through this for nothing, right?


Wrong. Think again. Codeacademy does not seem to have a good reason.  Instead, students learn how to format dates . . . just for the fun of it. Alas, it’s just not too much fun, in and of itself 😉




If you have an exceptionally strong high school student, then, by all means, tell her or him to consider Codeacademy. However, we feel that you will learn at least as much from other sites that do not have some of the flaws found in Codeacademy’s Python course.



What does studio do ?’s studio suite is a fun and easy to use “blockly” code environment–like Scratch, there is no hand typing code. Instead, users drag blocks of instructions.

Example of Block of Code in Studio
Example of Block of Code in Studio

As anyone who has ever taught coding, before , hand typing code can be very frustrating and “blockly” coding like this consists of just dragging and dropping instructions . You can see an example of how it works in the picture below.

I have to hand it to, it’s a very easy to use app, and almost doesn’t even need a tutorial!




Example of's Studtio In action