This semester has been a lot busier than usual. Over Intersession, I (1) set up a new computer lab for the HHMI funded "Genes and Genomes" class, (2) set up a large-format printer, and (3) built my file to be promoted to Senior Lecturer -- all this on top of everything I usually do. The result has been that I've been busy until 6 or 6:30 nearly every evening this semester and haven't had time for much else.
The new classroom is nice. We got one of those "Apple Carts for Education" with 10 macbooks and 6 imacs. I built a new radmind image for intel-based macs and rode herd on the printer and wireless configuration. They're using Kodak Molecular Imaging software with a nifty ultraviolet scanner to scan gels and working with R and other cool stuff. We had a few hiccups, but since then things have been working relatively well.
The printer is awesome. I named it farbonta and, after a long struggle, we've gotten it configured the way we want. The printer will let you send jobs to it that are to be held until you preview them and then release them to be printed. Unfortunately, as far as I could tell, you can't set that to be the default behavior and I didn't want to trust users to reliably remember to set their clients to hold jobs for previewing -- and that the client wouldn't let you set previewing at all, if you were submitting the job through a spooler. Furthermore, although we require authentication to use the spooler, the printer doesn't pay attention to the user that submits the job and instead parses the postscript file to decide who the "user" is. This means that if I created an account on my local machine called "george", I could submit jobs as myself and the printer would still say "Bill George for these". George was concerned about this, obviously, so we worked together to build a perl script that rewrites the postscript job. It has the scan the file twice: first, to see if the settings are in the file and, if it finds them it munges them. On the second pass, if it didn't find them, it adds munged blocks of code to set the username and to tell the printer to hold the job. One other challenge was that it turns out that postscript files don't have reliable line endings. The file seems to be assembled out of snippets of postscript from different parts of the printing system and different parts have different line endings. George wrote a bit of code that does binary reads into a buffer and then scans for any kind of line ending in the stream. When it finds one, it splits on it. Pretty nifty.
My promotion file is about done -- I think it was supposed to go to the Dean's Office yesterday. Although I had waived my right to see letters, several people sent them to me anyway. It's been gratifying to see the nice things people said about me. It's also been nice to look back over ten years of service and reflect on the stuff I've done and the choices I've made.
I already have a bunch of stuff stacked up to do over spring break, but it will be nice to have the pace slow down, if just for a few days. Whew!