Monday, January 6, 2014

Teaching programming - the "Boy Scout" method.

This holiday season, I was chatting with a fellow computer science teacher and shared this teaching method with him.  He urged me to put it on my blog, so here goes.

When my son was young and in Boy Scouts, I was an assistant scout master for a few years, and became familiar with the Boy Scout merit badge program. The merit badge concept is essentially this: The boy is to do some task.  He can (and probably will) have help.  Some lads do most of the task by themselves, and some need to be "pulled" through with a LOT of help.  Both boys get the merit badge.  Even the kid that needs hands-on help every step of the way learns something, and gets a huge confidence boost by earning the badge. 

I teach introductory programming using software called Alice, which is available free for download from www.alice.org.  There are several  texts available.  The one I use, by Tony Gaddis, has a lot of small lab assignments.  I have added to these with labs of my own devising.  What does this have to do with merit badges, you might be wondering?

In the class I teach, I treat each lab like a merit badge.  If a student is able to get the in-class lab assignment to work, even with LOTS of help from his fellow students (and me), he gets a check mark for the day.  The labs are short enough that even the slowest student can finish one in about 30 minutes or less. The day's lesson consists of a short lecture, followed by a lab assignment.  The student raises his hand when the lab is working, I come to his computer and verify that it is indeed working, and put the check mark in the roll book.  The satisfaction on the faces of these students when the lab works successfully is priceless!  And, when I calculate the grades, each checked lab is equivalent to a 100% homework assignment score. 

Alice is intrinsically fun, as the language generates little cartoons.  The student can SEE what a loop does because he/she can SEE something happening repeatedly on the screen.  It's the best tool, by far, for teaching elementary programming I have ever used.  By combining it with the "Boy Scout" method, we can attract and retain computer science majors much better than ever. 

Also, I have taught Alice to a bunch of high school teachers in this area, and some of them are using it in their classes, much to my delight.

Now that I am about to retire, I finally figure out what I am doing! 

No comments:

Post a Comment