Thursday, June 09, 2005

It's not just me

I think Mexico City and cameras just don't mix. See? (That's the same place we went last year, though we didn't have time to go up the cathedral.)

Wednesday, June 08, 2005

A Long Term

It's been a long term, with much hosage. Looking ahead from the start of the term, I knew there would be three things taking up all my time, and I was right. But it's all over now.

The first project to suck up my life was the HMMT. I was the, um, Chief Coder again this year. That meant it was my job to make the "Abacus" scorekeeping software work. Yes, this is the same software that I made work last year, and made work again for my AUP last May. Like the masochist that I am, I keep coming up with more improvements to make to it, and then I have to make them actually work. This year I added support for sign-in and registration, so that registration could happen at a reasonable rate and the contest could start on time for once.

I was mostly successful. The contest did, in fact, start on time, and we even managed to track down most of the weird cases and missing papers. (Yeah, the Guts round started late for the third year running, but that wasn't supposed to be my job anyway.) Of course, there's still plenty of improvements to make for next year. Maybe I'll do them this summer, or maybe I'll just put my code up where other people can get at it. Letting someone else deal with it seems easier, somehow, but I do have time... we'll see.

So that was the first three weeks of February. While that was going on, the term was starting up (funny how it never waits until I'm ready), and that meant I had 45 little 6.001 students expecting me to teach them something in tutorials. Every Monday and Tuesday. For 8 hours. And that doesn't count the hours of tutorials preparation Sunday nights, and the four hours a week sitting in on lectures and recitations, and the 10 hours grading projects every two or three weeks... Yes, that all is as much time as it sounds like.

That's not to say that I didn't enjoy it. Once I figured out what to say for each week, it was pretty satisfying to go through it and see the ideas clicking in my students' minds. I remember my 6.001 tutorials often being the highlight of my week back when I was a froshling, and I tried to make them fun and interesting for my students too. (One week I brought cookies, and another week we all got to wear funny hats.) I don't know if I succeeded or not, but hopefully it was at least a little more interesting than it could have been. I don't remember anyone ever falling asleep, at least.

I still feel a little bad that I wasn't able to help the students as much as I wish I could have. I tried to have extra office hours before the quizzes and whenever anyone asked for them, and I tried to answer emails as quickly as I could, but I still feel like I could have been more proactive helping the students who didn't know to ask for help. Ah well. I had too many other things going on to pour all of my energy into the class.

"Other things" mostly means "writing my thesis," the third wheel on this term's Tricycle of Hosage. (Apparently MIT thinks that just passing a bunch of classes isn't enough to give me a Master's.) As far as the actual work is concerned, we ended up with a basically complete implementation of the JCilk specification as it currently exists. It's horribly inefficient so far (or, more accurately, Java is horribly inefficient at doing some of the things it needs to do), but it's there, and it works. For the cases we've tested so far. We think.

As I thought way back last fall when I started implementing it, its exception-handling mechanism is what makes JCilk actually interesting. In short, handling exceptions in a parallel program is nontrivial, and it's not even obvious exactly what the right way to do it is. (Relatively recently, it wasn't even obvious what the right way to handle exceptions was in a serial program.) Our solution is--well, I think it's a clean and elegant way to do it.

Hopefully, someday our conference paper will get accepted and everyone else will think so too. Oh yeah, the paper. That's what I did over spring break: I worked on that paper. Unfortunately, we still don't have any solid "evaluation" (say, non-toy sample programs or non-slow performance numbers), so it's not going anywhere yet. Maybe soon.

It did at least give me a good starting place when I starting writing my thesis in April. One chapter of my thesis came entirely from the paper, and a couple other chapters started there before I hacked them into the bits and pieces that I wanted. I filled in the rest and had a draft of the full thesis by the end of April, right on target. Then, two weeks later, I had another full draft. Somewhere in between, I gave a 12-minute thesis presentation at the EECS department's MasterWorks program. (I finished talking with 3 seconds left.)

I spent the last week of the term just going thorough and revising, page by page. It amazed me just how long the thing was (95 pages by the end) and what it meant to work on something five times as long as anything else I've ever written, and much longer than the 5-page papers I've gotten so used to. Just reading through it with a red pen (I'd dried up my green pen grading 6.001 projects) took a whole day, and entering those changes back into the text took another. But at 10:00 on May 18th, I finished it, printed it, and left it for my advisor to read the next morning.

The final steps were complicated by the 6.001 final also being the next morning. So I went to Johnson to proctor all morning and give back the last papers that the students hadn't picked up. (Unfortunately there weren't enough lambda-pins to go around, so we didn't hand them out this year. Sigh.) It took me a couple tries, but I finally got my thesis signed and turned it in.

Then came grading, all afternoon. Three hundred and some exams is a lot of exams, in case you were wondering. But I got to break out the Abstraction Violation stamp that vikki gave me, leading to much amusement when it was most needed (about four hours into grading). Vikki even showed up later to help grade. Since the two of us had (free) tickets to go see Star Wars that night (it was May 19, remember), and she threatened to kick me if I had to stay and keep grading instead, we got let out of grading a little before we were actually done.

So, yeah, we saw Star Wars. I liked it, mostly. The Jedi death scene was well done, and the last two duels were good considering that everyone in the audience knew nobody was going to die. And more than six years after I downloaded the Duel of the Fates mp3, they finally put that music to good use. I just wish they hadn't had to give away that Leia is Luke's sister... ah well.

I guess I did find the time to do a bunch of other things this term, too...

I tried taking 6.972, a game theory class, as a listener. That lasted until about the end of March, when I missed a lecture to work on the paper. That put me just far enough behind to completely confuse me at the next lecture, so I gave it up.

I went ice-skating once or twice, and only once nearly killed myself by falling flat on my back.

I saw the Vagina Monologues (at MIT), Rosencrantz and Guildenstern (at the Chelsea Theare Works), Company (at MIT), The Phantom of the Opera (at the Opera House in Boston), and a stealth seminer by Douglas Hofsteader. I was too late for a talk by Michel Gondry, but I got to yell "The room is full, go away" down the hall since nobody else would. I saw a bunch of movies. I read The Left Hand of Darkness and The Dispossed.

I finally walked the Freedom Trail (with Vikki), all the way to the Bunker Hill monument (and all the way up it) and then to the Constitution. We got there just as the museum was closing, but we took the ferry back to the blue line instead of having to walk back the way we came.

My bike was stolen. I guess it was my fault for leaving it out for two weeks with a cable lock, but it's not like it was really even worth stealing. Ah well. I'll probably get a new bike sometime.

I did ADITL.

We managed to keep the handbell group together for long enough to have a concert, despite people being too busy to practice, and the CAC taking a lot of pestering to actually give us rooms. But they did, we had a semi-successful concert.

I got myself not-elected to any Guild of Bellringers office, for the first time in four years. This probably has something to do with the fact that I'm leaving MIT.

And the last task of the term was the 6.001 grades meeting on the morning of May 20, when we all got to see how our students did on the final and (mostly futilely) argue to change their overall grades. And then, that was it. There was nothing left. I was done.