Steve Wainstead's code samples

I love Expect. I started on a script to parallelize the processes of ripping, encoding, and FTPing MP3s. I called it ripsend and it's here: code/ripsend. A friend introduced me to Grip, and I stopped writing ripsend. It works, but it's not very user friendly.
I have a soft spot in me for the space program, and when the Mars Polar Lander was not reporting back after its descent, I decided it should land in the LambdaMOO I belong to (avalon.org). I wrote a nice little lander in LambdaMOO's cool scripting language, which is a lot like Javascript. code/lander.moo. Well, it doesn't look anything like Javascript but trust me, there are similarities.
This is Javascript I wrote during a project at the New York Times on the Web. We had to add event handlers to form elements, but the product we were working on already defined some; the definitions were scattered across several files. I wrote this to reconfigure all event handlers (under Netscape). It will iterate through all forms on a given page and convert the onChange event handlers to code, and it also adds or extends all onChange event handlers so they update a flag variable. code/changeevents.txt. When you click a button all the Javascript code for the event handlers is printed into a popup window, which I thought was a pretty neat capability.
There isn't enough time in the day to learn all the things I want to learn, and Python is one of them. When the radio station's AudioActive server kept crashing, I wrote a Python script to page me. It was a little cron script, nothing special. code/watch.py
I wrote a little Emacs command to start a new entry in my daily work log. code/start-new-log-entry.el
For all the Perl I've written, you'd think I'd have some interesting examples, but nothing really comes to mind as amazing.