Teaching Programming WITHOUT a Computer

We don't need no stinking computers!This one is from the "We don't need no stinking computers" file. If you've read my blog, or seen my TEDxTokyo presentation, you'll notice that I'm pretty enthusiastic about teaching programming to students.  Of course, this presupposes regular access to computers.  Is it possible to teach programming, or programming concepts to students without a computer?  The answer is a resounding YES!  Read on for more information...

Method 1 - The Robot

Concepts: Procedures (Functions / Subroutines)

The robot is not just a great dance move, it's also a way to teach the programming concept of procedures (or functions and subroutines).  Take for example a robot that can only respond to three commands: forward, right (90 Degrees), and get. 

The Robot

To guide the robot to the energy in the middle, and then home, you can use the basic commands.

However, what do you do if you want to simplify the program?  You can create new commands from the basic commands.  For example, you could create a new command called "left" and define it as "right, right, right".  This is the essence of programming: taking the basic building blocks of a programming language and creating new procedures.

You can download the maze above (PDF: A3 size) here.  The accompanying worksheet (PDF: A4 size) is here.

To play the online version of the Robot, click here or the image above.  To download the Robot for use on your computer or your own website (ZIP file), click here. (Creative Commons License)

Method 2 - Scott Pilgrim vs. The World

Concepts: Loops, Conditionals, Events, Collisions, Sprites

Programming concepts such as loops, conditionals, events, collisions, and sprites can be learned without a computer by having the students act out the part of a videogame.  They are given cards with the computer instructions and act out the part of the sprites in a simple videogame.

In the example below, the parrot is flying back and forth at the bottom of the screen.  The cat is the player whose job is to protect the parrot by intercepting the bats.  If the player touches a bat, the score goes up by 10 and the bat disappears only to reappear from the top of the screen.  If a bat touches the parrot, it's game over.

Protect the Bird

The great thing about this lesson is that students can learn some basic programming concepts without touching a computer.  Especially for those schools with limited access to computers, this provides a great way to learn the concepts outside of the computer lab, so that when students do get access they can jump right in and program away.

The program and handouts lead nicely into a unit on how to program using Scratch, a programming environment developed by MIT.  Scratch is free and cross-platform, so it works on Windows, Mac, and Linux.

You can download the handout (PDF) here.  You can download the Scratch program here (you must first download and install scratch here).


ICT without computers

Hi Christian,


I found your site by googling 'teaching computers without a computer'. I am a lecturer in ICT at a college here in the UK & teach 16-18 year olds Adobe programmes on Macs. I am currently doing a teaching course (called a PGCE) & want to highlight the advantages to introducing some computer learning away from an actual computer. I just wondered what your thoughts are on this, are there advantages to teaching certain techniques/ideas away from a computer?

Thank you


Alexa Ergatoudis

Comment viewing options

Select your preferred way to display the comments and click "Save settings" to activate your changes.

Post new comment

The content of this field is kept private and will not be shown publicly.



What LMS does your school use?: