These three things may be correlated in some way.
The rest of the story is better though: The good part about the kenpo classes is that Troll, Jr, is taking them1 with me and it knocks me out to watch my baby boy doing flying side kicks into a heavy bag. Actually, it probably would knock me out, if I wasn't careful. We were demonstrating a technique for breaking a full nelson and he damn near broke my nose. The teeth, however, were already broken.
And, yes, I really did get bifocals - progressives, really - and they are playing hob with the way I read. I'm still not entirely used to having to turn my head to read, instead of just flicking my eyes. I'll have to try wiredog's suggestion and look at some reading glasses.
Work is still a continuing saga of "WTF are you coming to me with this insane problem? Give it to the Troll, those are his specialty." Current winner: a fatal library failure that only occurs on systems that are using our dual-port cards and only when both ports are in use. If I turn off one of the ports, the code works. If one of the ports isn't physically cabled, the code works. Which is why this bug has apparently been lurking in our driver stack for most of a year without anyone noticing. On the upshot, the previous insane problem, to take a kernel module that implements a proprietary and undocumented protocol and completely rewrite it, while disguising said rewrite as a minor "bug fix" to avoid angering $ENORMOUS_ENTERPRISE_SOFTWARE_VENDOR, seems to have gone pretty well, despite doing it while $EESV was testing an install of their software on our drivers at $A_REALLY_BIG_WEB_1.0_COMPANY. One of our installers came to me and said he yanked wires and such to test the failure recovery code and that it "seemed to work". This actually made me feel pretty good, because my experience with the driver before I rewrote it was that it didn't "seem to work".2
On a final note: If some of you are going around signing up for accounts on websites and calling yourselves "obvioustroll", well, knock it off. I've invested a fair amount of sweat equity and google alerts in the idea that I'm the only person on the entire intarweb who calls himself that, only to find (recently) a number of messages posted to a number of websites that were not, in fact, posted by me. While imitation is, truly, the sincerest form of flattery, I get good ideas so rarely that I like to cherish them - so stop cheapening the brand, dammit!
1 For those of you who are new to this soap opera, I should mention that Tjr is already a junior black belt, having received that rank last Novemeber.
2 Yes, I'm quite happy to say that the old code was complete crap - because I didn't write it. The best thing I can say about the new code is that it's less-than-complete-crap, because I wasn't willing to make some of the changes that it needed, because I didn't have documentation for the actual wire protocol and I was afraid of changing anything that might turn out to be "required".
| < A Winner Is me | BBC White season: 'Rivers of Blood' > |

