Monday, March 3, 2014



Best screenplay:  Her, about a man who falls in love with his operating system.
What did I tell  you?

Friday, January 31, 2014

Laws of the Girl Programmer

In the last 44 years of being a computer person, I have learned a few things.  Here are some of them:

1. In computing, some things are said to be transparent, meaning you can't see them.  I would add "and you don't need to see them."  If you need to see them, but can't, how transparent are they? 

2. Every program long enough to be useful has at least one undiscovered bug.

3.  There is no difference between software and programs.  Everyone who says "software programs" should be tarred and feathered.

4. Exception to rule #3:  There is one difference between software and programs.  Software is a set of programs that someone was paid to write.


I hope to add to this list. 

Wednesday, January 29, 2014

Is this cool or what?

Daft Punk

This is cool!  The Grammy's album of the year is named Random Access Memories, from a couple of guys pretending to be robots.

Also, one of the new movies just out recently, Her, is about a guy who falls in love with his operating system. 

Move over, wetware.  It's all about hardware and software!

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!