« Equity-Based Teaching Practices | Main | Advocating on the Advocate Blog »

Games as a Great Starting Point

I'm always looking for new ways to start off my computer science and robotics classes. It used to be that every intro class started off with a "Hello World" program. It was the quickest way to have students see a result on the screen. Now, I have choices beyond the standard output line. There's Alice, Scratch and AppInventor to name a few.

In the summer program that I teach and the regular school year, we start off with Scratch. It's easy to work with, even the students who have never had any programming experience can get the sprites to move and make sounds. The tutorial is straight-forward and then they are off creating a game. Because students are familiar with computer and video games, they realize their limitations and often want to learn more, problem solve and research to figure out how to get the features they want to work. It is a tangible activity for them. They can see immediate results; sometimes seeing that what they thought they programmed isn't what the sprite actually did. There are no compile errors to worry about which is a huge plus. It is a great starting out point.

From there, I can tie in various computing concepts (objects, loops, methods, etc.) and get to the "real coding". With forty students in a classroom from no programming experience to "I've programmed in C++ before", it is a good way to start things off with something new to everyone and get everyone engaged.

When all of them play some sort of video or computer game at home and with friends, what better task to lay before them than "By the end of this, you'll be able to make your own computer game". Hooks them every time.

Shirley Miranda
CSTA Board of Directors


Shirley, We just started to use Scratch and I agree fully. The kids were off and running on the first day. It was like pulling back a galloping horse, all I had to do was show them the program.

Have you used App Inventor? It seems like something that would be seen immediately useful to them, esp those students with Android phones.

I am interested in starting a computer programming club at my high school. I need advice on using a version of BASIC.

I tried to learn Ruby, but all the tutorials were too confusing to me (I'm an old dog...new tricks are hard).

I found a version of BASIC called BASIC256. Its download and tutorials are found at www.basic256.org. It was designed specifically for beginning students. It has all the features that I remember from my high school days plus a bunch more (easy graphics, sounds, sprites, mouse actions, speaking text, etc.). The tutorial is very understandable to me and would work as a textbook for the kids.

The developer believes that this type of language is a more appropriate place to start programming before getting into higher languages. (He explains his philosophy at the website above)

My boss needs me to find some support for this choice. Do you believe that it is a valid way to start? I am not asking if it is the BEST way, just valid. This is because I don't believe that my life's schedule now will permit me to learn and teach a different language. I have briefly looked at Alice and Scratch, and quite frankly, other languages simply don't interest me.

Thank you for your input.

Linda - Yes, I've used AppInventor before. I used it after the AP exam last school year. My students loved it. I gave them the option to use Scribbler robots or AppInventor. They chose AppInventor. I plan to use it again this year. Most of my students (at that time) didn't have Android phones, so we used the simulator.

Michael - I haven't looked at BASIC since I worked with it back when I was elementary school. I'll take a look into it and get back to you. In general, if you get students into any programming language as a start is a great (and valid) thing. From there, you can get them to grow into other languages and platforms.

Post a comment

(If you haven't left a comment here before, you may need to be approved by the site owner before your comment will appear. Until then, it won't appear on the entry. Thanks for waiting.)