Saturday, July 02, 2005


Go read Keith Devlin's article on Staying the Course. It has nothing to do with the rest of what I'm going to write, and a great deal to do with my recent day-to-day life.

I'm still enjoying the novelty of glasses that allow me to read the subtitles and authors from the spines of my books without getting out of my chair; I'm getting used to having a cell phone; and I sincerely hope that I'll be able to get the new laptop I've been wishing for before my next conference trip in mid-July. Yes, the plan is still to retire my 5+ year old Thinkpad and move over to a PowerBook. I'll feel nostalgic for the Thinkpad, but the power cable to the monitor is giving up the ghost (a fixable woe), the power distribution system has Issues (a less fixable woe), and some other unspecified but worrisome hardware problem has been steadily decreasing my mean time between crashes. I suspect one of the memory chips is failing -- I don't think the memory on these machines is parity-checked, unfortunately -- but it's possible that there's something else wrong. According to my officemate Jason, there was a mechanical design flaw in this particular model which made it particularly easy to warp the motherboard overtime. This may be why most of my peers have not made their machines last nearly twice the design lifetime.

I have had a classical guitar riff playing intermittently in my head for the past three days, and it's starting to drive me batty. I really like that piece, but I can't remember the name or the composer. I'm pretty sure that either John Williams or Andre Segovia were playing when I heard it, though I'm not sure whether I heard it on the radio or CD.

If you want to read about electromechanical couplings, I highly recommend Maugin's books (but don't recall the Berkeley copy of Nonlinear Electromechanical Couplings until I'm done with it, okay?). It's really helpful to me to see a full set of nonlinear equations written down by someone who is happy to use the language and conventions of continuum mechanics. Whether you care about electromechanical couplings or not, check out It Must be Beautiful: Great Equations of Modern Science (ed. Graham Farmelo). I've only skimmed so far, but what I saw was good. I'm sure I'll have more to say about it after I've read.

It looks like I will be the TA for the local compilers course this fall. Yes, I know it will be a great deal of work; but I expect (or at least hope) that it will also be fun. Compiler implementations lie on some wonderfully clever ideas, both from the perspective of mathematics and of software engineering. I enjoyed the class when I took it as an undergrad; I enjoyed related classes on object-oriented language implementation; and I've enjoyed hacking on compilers and interpreters for domain-specific languages a couple times since then. Fun or not, I need to teach again if I want to graduate (and I do want to graduate). Since it was a graduate course, the parallel computing class for which I was a TA only counted for quarter-time, and consequently didn't do the trick.

HiQLab now has bindings for a variety of dense matrix operations, including basic operations like addition, subtraction, and multiplication by a scalar or by another matrix as well as linear solves and eigendecompositions. Unsurprisingly, these are things I do all the time in MATLAB and wished I could do in the standalone version of HiQLab as well. More surprisingly, the basic infrastructure is sufficiently flexible that it took about one work day to write and test all the features I just mentioned -- and it was a work day I probably would have spent on other things if I felt like I had any stamina worth mentioning for writing (or for developing more subtle code, for that matter). It's useful to sometimes have a day or two when I feel too dumb or bewildered to do anything but sit and code in a straight line for a while.

Before writing this, I was proofreading a paper draft a colleague sent. I've foolishly agreed to send comments by tomorrow morning. Going through one section in particular, I felt like I was getting utterly lost in the details -- which is a bad sign, since I'm pretty sure I drafted the original text on which that section was modeled! I quit reading when I realized that I was gritting my teeth, and my jaw was starting to hurt. I'm sure I'll have more of a sense of humor about it tomorrow.

Time to head home, I think.