reclusion

Slow, but steady, progress. That’s how recovery is going to get finished. Both yesterday and today were spent doing a lot more thinking and reading than actual testing, but once I found the day-eating bugs they were both relatively straightforward to solve. Almost “duh” grade, except that the interactions are becoming so complex that I am very wary of initial “duh” reactions.

In order to track down today’s bug — related to a scenario that will not often happen in real deployments, but which our test suite turns up with tenacious regularity — I pretty much cut myself off from email and other communication stuff. Other than calling Phil all the time, of course. So if you’ve sent me mail in the last two days — who am I kidding? Nobody still expects 2-day turnaround from me.

It was a good gaming-news day for me. I signed up for, and played a little bit of, A Tale In The Desert, which is quite a refreshing way to wait out the occasional cluster reboot. And later this evening, the NDA was lifted on Shadowbane, which means that I will be free to talk in detail about the state of the game. Except that, you know, I have no time.

Laugh or cry: you decide.

two suits’ worth

It’s my birthday, so I’m going to take a “diary day” off. I can do that, because in this one important way I’m my own boss.

A quick and inadequate thankyou to Mom and Kev, who took my charity request to their big hearts. It really does mean a lot to me.

(Oh, and to Alasdair, who finally got me the picture I’d been meaning to take for years. And everyone who came out to my little pub trip this evening.)

cowardice and insomnia

Tyla and Madhava went to Climbing this morning, but I stayed home and puttered with both Lustre and Shadowbane. Both putterings were equally fun, I think. I was really intending to go climbing with them, but I didn’t really need to deal with a panic attack or some other overwrought reaction once I got to the top of a wall. I’ll have to figure something out, but that figuring wasn’t being done this morning.

I did manage to join Tyla and Madhava for post-climbing dim sum, though. Yummy, filling, social: a perfect meal. We considered going to see a matinee of Daredevil, but decided instead that we’d save that as a reward for Madhava finishing an onerous piece of schoolwork.

When we returned home, Tyla was very cold. To warm up, she got in the bath, and I played more Shadowbane. I tried to play this game of computerized Risk with Phil and Joe and Jacob, but I kept clicking in the wrong place and killing the game. (For the record, I think I was performing a perfectly reasonable interface operation, and the software is just stupid and fragile. So there.) We instead tried a few rounds of a new and very difficult type of multiplayer Halo, where the minute xboxgw-induced lag combined with my already-questionable aim to keep me firmly in the cellar.

I had salad for dinner, and sour cola-bottle candy for dessert. It’s good to be an adult.

After dinner, I played more Shadowbane. Tried to sleep a little, failed, and played more Shadowbane. I’m really setting myself up for a doozy of a birthday tomorrow, what with the work and driving lessons and perhaps after-lesson drinks with some friends. And now the lack of sleep. It’s good to be an adult.

If you’re one of those crazy people who’s been asking about birthday present ideas (or one of the even-crazier ones who would just go out and pick something), permit me to now exhort you in another direction. Pick a children’s charity or food bank, and make a small donation. It’d mean a lot to me.

drinking to forget > forgetting to drink

It was Hockey Day In Canada today, which meant three all-Canadian games, varying filler from tiny towns across Canada (Iqaluit, Medicine Hat, Ottawa), and shameless automotive advantage-taking (of Alasdair).

After we finished our errands, which was in turn after I finished playing a decent pile of Shadowbane, Madhava arrived and we settled in for some Ottawa-vs-Toronto/vodka-vs-us showdown action. I’m not sure how much we drank, but these rules will let you calculate it from the box score:

  • ½ ounce for a minor (2- or 4-minute) penalty your team takes.
  • 1 ounce for a goal by the opposing team.
  • 1 ounce for a major penalty taken by your team.
  • 1 additional ounce (total: two ounces) for a shorthanded goal scored by the opposing team.

Madhava and I were on the Toronto side. Alasdair was on the Ottawa side. Alasdair didn’t drive home.

I need to figure out why I’m dreading climbing. It’s a weird sensation; the prospect makes me quite uncomfortable. Last I climbed, I had some serious fear issues with the descent, which issues I’m pretty sure are the result of my little free-fall episode months and months ago. I don’t know why it gets worse with every passing excursion, but that’s seems to be the pattern. And if it doesn’t get better with practice, or with time elapsed from the incident, I wonder how I’m supposed to get that confidence back.

It’s interesting, at least to me, to note that I’m really only bothered by the descent, after the climb has been completed — or, you know, aborted due to fatigue or incompetence — and that I don’t really have any problem at all with fear when I’m actually climbing, or even when I fall off the wall onto the rope. Probably related to over-thinking, or maybe a trust issue. Or too much thinking about trust issues?

Sucks. I really enjoy climbing, but now…. Bah.

i guess it’s different for some people

Today is Valentine’s Day, which means that I’m going to watch a movie with Alasdair and my wife. A sort of PG-rated cinematic threesome, if you will.

I don’t know about you, mpt, but it sounds from over here like Mr. Raskin has reinvented both sam‘s UI and emacs isearch. I don’t have a Mac, so I can’t really check out THE on my own.

I really do love you, Jacob, and not just because of the stylesheet cunning. Smooch.

what we’ve got here is…a failure to communicate

I need to stop sending email when I’m tired, or something. A huge amount of energy is being wasted on misunderstandings that are likely my fault, and it’s a crying shame because we have very important uses for that energy.

That actually got mostly resolved today, because we’re all grownups. I’m glad.

In case you were wondering, Version 7 Unix did have memory protection:

The system data is not addressable from the user process and is therefore protected.

(From UNIX Implementation, by K. Thompson.)

Also, I thought I would share this little tale of craziness:

<eeb>anyone want a laugh?
<eeb>the Vendor Widget driver is binary compatible with a bunch of linuxen because……..
<eeb>It has some tables of assembler to try to match against likely places in the kernel
<eeb>which it then uses to get hold of unEXPORTed entrypoints
<eeb>and noodle with the protocol tables!
<coop>that’s not funny ‘ha-ha’, is it?
<shaver>sounds like the old RIMOS message-API symbol-finding hack
<phil>yeah

It’s OK if you don’t understand that, but it’s better if you laugh along.

I didn’t get as much code written today as I’d hoped I would, but I did manage to design away two nasty problems with what I was about to implement. That’s the right thing, I think.

Booked my first in-car lesson for the 26th. Heard back from Air Canada, who are quite reasonably letting me purchase the tiny number of status miles I need for Elite in 2003. Got my hair cut; looks good now.

Phil might come to Toronto this weekend, for our hockey and related gluttonies. That would be neat.

now that’s service

Some minor release fumbles caused a bit of a fire-drill this morning, which was a nice team-building experience if nothing else. Phil barks orders in a really friendly and classy way, in case you were wondering. (I don’t think the problems were my fault, because I haven’t really been productive enough to get anything into the release in question, but, you know, historically…)

Once that was all settled, I tucked into a second course of the recovery-surgery feast — I like my metaphors shaken, not stirred — and made pretty good progress. I think the best part is that I was again passing basic filesystem tests before it was time to stop for the night, which means I didn’t lose critical debugging state during that loserly sleep process.

Robert is starting to really know his way around my recovery code, which means that Phil and Peter will be free to fire me soon. He ran into a few snags, and we discovered that he had, in fact, already tried the things that I was going to suggest. Nice to know that we’re on the same page, but it meant I wasn’t as helpful as I’d hoped to be. Tomorrow, I’ll try to do better.

Second in-class driving lesson today, and now that it’s behind me I can book in-car sessions. Might be a good week to stick to public transit, if you’re in the Toronto area, and keep an extra eye or three out if you’re on the sidewalk. I’m a little bothered by what seems a reasonably important inconsistency between two of the “CollisionFree™ sub-habits”, but attempts to get some coherent explanation from the instructor were fruitless, so maybe I’ll just sleep on it instead. And ask my in-car instructor, I suppose. On the whole, the lessons have been pretty good so far. I know a fair bit about the rules of the road, and the way traffic works — I did drive legally and otherwise for about 18 months on my various learner’s permits, after all — but it’s already been pretty educational.

Now, I could live without the constant use of items from Jay Leno’s Tragic Accident Clippings, Volume 5 to illustrate the importance of, you know, doing the things they’re telling us. I don’t really see the point of that: does anyone in the room not know that people die in car accidents? The instructor also has an easy laugh that’s part of his “filler” when speaking, and that makes for some morbid moments. Good thing none of the family of Ahmed, the 8-year-old that “wasn’t smart enough to stay away from parked cars”, were in the class tonight, I guess.

My friend Gavin had a poker night tonight, and they ordered pizza from 2-4-1 (no link, they don’t get my help). Didn’t go so well:

<Gavin> Man. I’m still mad about the pizza thing tonight.
<Gavin> A 2-4-1 pizza arrived a few minutes late, they wouldn’t give it to me free.
<Gavin> I phoned the headquarters to talk about it while the delivery guy was there. He kept getting upset that I was talking about a few minutes.
<Gavin> (they say: “40 minutes or free”, he hears: “43 minutes or free!”)
<Gavin> then he ran into my apartment, picked up the pizza from my kitchen, and ran away with it.

<Gavin> Anyway, so when the alarm was over when he came, I knew it was late. The guy on the phone said something like “I guess we didn’t anticipate people who didn’t have something better to do with their time than set a timer”

I think that kinda speaks for itself.

payoff

All that talking and thinking and muttering really started to pay off today. Phil and I tore through the implementation of our latest design like ravenous code-wolves after a season’s fast, and everything worked on the first try. That’s what I’m talking about.

Alasdair’s birthday today, so I took him out to Young Thailand for some yummy Thai food and quite a nice conversation. I know Jacob would approve, at least of the Thai food part. Among other things, we started to plan this weekend’s hockey gluttony, and next weekend’s Mike and Alasdair’s First Invitational Honest Ed’s Movie Night. More about that later, but Toronto-area hockey fans should feel free to drop by on Saturday any time after noon.

Jane Jacobs really likes Toronto, and so do I. Right now I can hear the gentle scrapes and slaps of shinny being played across the street, so I’m going to go lie down in my bed with my shiny new copy of Pattern Recognition and catch up on the sleep I didn’t get last night. (Madhava would never tell you this, unless you paused for breath or something, but Jane Jacobs lives on his street, a mere two blocks from us.)

(Yes, Andrei, I’ll send you those links tomorrow, when I find them again.)

go time

Phil’s and Peter’s messages arrived, just as I expected they would. Instead of continuing to read diffs of raw TEX source, I’m going to generate a new PDF and print that at Kinko’s today. I already said things about Phil’s mail, but they weren’t all that smart.

Grown-ups did that. Never forget that.

Went downtown to drop off a book at the office, and forgot to take the book (sorry, Leandro!). Had a nice sushi lunch with Ken, then came back and wrote kinda-smart things in response to Peter’s email.

Took a driving lesson today (classroom), while Tyla was off swimming. Was pretty decent, for a first-lesson-in-a-classroom. Might miss next Monday’s lesson, because I arranged tickets for a test screening of Crime Spree in observance of my birthday, but I could probably find someone else to take them off my hands. Otherwise I have to wait until March to take that lesson over — including a test! ooh! — and that seems like not a lot of fun.

In that I’ve started thinking about my birthday, I have yet again come to the annual realization that I totally forgot my good friend Mehmet’s. I wonder how many times I can do that before I stop being allowed to use the phrase “good friend”. At least he didn’t have to remind me this year! The guilt is all mine!

Oh, and I think it’s Alasdair‘s birthday today, but I’m not completely certain. I’m such a loser.

Now I’m completely certain: I’m a loser.

regression

Boy oh boy. All it takes is a little article about Digipen, a few hours talking about really cool game design stuff with Andrei, and catching up on my mud-dev mail, and now I’m all interested in working on games again. I guess I sort of had my chance before, but after I become an expert on recovery, I’m sure I’ll be that much better suited for it.

Alton Brown will tell you to brine things, and Phil will tell you to brine everything, but today I learned an important lesson: if your brine is a standard salt-and-water brine, and you are brining shrimp, 18 hours is too long. I ruined a perfectly nice dinner by not knowing this before, and trying to feed my lovely wife food that only Zach “Kidney Failure” Brown could bear. She wisely declined, ate the salad, and made herself a fried egg on toast. Oh, the shame.

After that, Jacob and I held our own against Phil and Joe in a few spirited games of Halo. Joe and Phil have some small cause for complaint, in that telephony provided semi-private conversation for Jacob and me, and I did have a whole TV to myself, but I think at the end of the day we all know that Jacob rocked, and I struggled to not hold him back. Our victory was your victory, Jacob, and I’m honoured to have been by your side. Sniff.

Any moment now, email is going to land on my inbox from Peter, detailing the upcoming week of insane recovery rearchitecture, and from Phil, about our branching and release-management strategy. I will be expected to say smart things about both of those topics by pretty early tomorrow morning. So I sleep now, after reading the very last pages of my book about the gadget.

« previous pagenext page »