Making the robot dance

Some time around 1980, my elementary school classroom got a computer. While most of the other kids fooled around playing Hunt the Wumpus, my friend and I found the BASIC manual that came with the computer. We laboriously copied in the code to make a "robot" appear on the screen. After a lot of typos, we finally got the program working: a crudely drawn robot appeared on the side of the screen, and moved to the center.

Then my friend found the section on modifying the code to make the robot "dance" (basically move its arms up and down a few times after it got to the middle of the screen). I thought that was just about the coolest thing I'd ever seen. I started tweaking the program in various ways, turning the program into a mini disco, with flashing colors and sounds.

I was hooked. I started staying in at lunch so I could have time with the computer. I also pestered my mom to buy me a computer. And she did: a Tandy PC with 3KB of memory for programs, and a tape cassette deck for memory storage. It was great. One of my more ambitious projects was tweaking the horse race game that came with the computer to have odds and varying payoffs like at the tracks. I also made a "lemonade stand" clone. I think the only non-game I made was a "conversation" program that would chat with you and say different things depending on what you typed. It was very simple, of course: like if you typed "HELLO," it would respond, "HELLO, HOW ARE YOU?" (For some reason, I think the BASIC environment only had capital letters.)

In college, I would go on to learn more advanced programming languages, and fancy concepts like finite state theory and formal logic. But that same joy was always there: the joy of getting the computer to do my bidding. At one point I wrote a program to parse English text, and just like when I was 11 and wrote that "conversation" program, it was just so neat to have the computer respond to my input.

Now, I'm a technical translator, but I also program. Although I do program professionally to some extent, most of my programming is just for the pure enjoyment of it. I actually think that's better than being paid to program, because I have a lot more freedom about what I do.

I've often tried to pin down just what is so interesting about controlling a computer. My gut feeling is that it's just intrinsically fun — who wouldn't want to program computers? But of course that's not true: most people think that programming computers is really boring. What makes programming interesting to some and boring to others? Maybe it's a certain way of thinking. Or maybe it's ability: some people "get" programming, and since we tend to like what we're good at, we just gravitate to it.

Of course, there was always the tedious side of programming. Back when I was 11, it was copying programs out of books using hunt and peck, and loading in my programs from cassette tapes. Now, it's fiddling with user interfaces and installers and interoperability. But it's all worth it when I run the program and get to see the robot dance.

Leave a Reply




You can use these HTML tags

<a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code> <del datetime=""> <em> <i> <q cite=""> <s> <strike> <strong>