Missing my baby

No, not that one. My brand new Powerbook’s screen hinge is loose. If I try to prop it on my knees in bed, it flops closed. However, I read this forum post that Apple will replace the hinge under warranty. I phoned the AppleCare line, and they suggested that if I take it to my local Apple Authorized repair center that they’d be able to fix it there or send it back if they can’t. So I did, and they said they’d have to order the hinge/clutch assembly and I probably won’t get it back until Tuesday at the earliest.

Even worse is that I’d just finished wiping and restoring my old Powerbook to give it to Laura.

I guess there goes my plan to do some billable hours on it this weekend.

Dammit

Vicki’s mom died last night. Vicki had already made arrangments to fly out to Chicago today because she knew her mom had taken a turn for the worse and might not have long. Turns out it wasn’t even that long.

This sucks.

4166 September, 1993

I was just reading an article about how AOL pulling out of Usenet will spell the end of Usenet. Well, I’m a fairly old-timer on Usenet – the first post of mine that Google Groups archives is from 1989, but I know for a fact that I was posting in 1987 or 1988 at the latest. I’d only *just* missed the Great Renaming, but the net was still full of the fall-out from it at the time. And yes, I’m such an old-timer that I say “the net” when I mean Usenet, and use terms like “the Internet” and “the web” to mean what other people mean when they say “the net”.

Usenet has been my neighbourhood for 17 years, and it’s gone downhill significantly in that time. And there is a reason why those of us from the old days refer to the current date as 4166 September 1993.

I spend most of my Usenet time these days in a small hierarchy that is only distributed to other people who agree to play by the rules, and who agree to pull the plug on anybody else who doesn’t play by the rules. It’s a small community, close knit, literate, smart. No spam, no binaries, no porn, (some erotica), just pure wonderful text written by real live people. We’re not all friends with each other – as a matter of fact, some of the participants absolutely hate each other. But that’s ok. We don’t have to all agree with each other, as long as we behave like adults. It’s like Usenet was before AOL. No, I’m not going to tell you where it is or invite you in. Sorry.

I see the departure of AOL as the most hopeful thing that has happened to Usenet in 12 years. Maybe some day those of you who aren’t old-timers will get a chance to see what Usenet was and what it could yet be again.

Think of this as the last week of the September that Never Ended.

Headache

As well as my on-again, off-again progress with wrestling with spherical trig, last night I also got a whopper of a headache. I don’t think I’ve ever had one worse – I’ve had a couple that were just as bad, so I knew it probably wasn’t an aneurism or something. But I just wanted to curl up and die. I took four ipuprophen and a tylenol, and put a cold wet washcloth on my head and lay down with all the lights off. After an hour or two, I felt better enough to get out of my clothes and into bed, but 18 hours later I still have a bit of a hang-over from it.

Math is hard

I spent the whole weekend trying to get some DAFIF boundary and special use airspace data into my waypoint generators. It’s something I promised Kevin from Flight Master a while back.

Well, it turns out not to be all that easy. Part of the problem is simplifying the data from the formats that DAFIF provides it into something that I can put into a relational database and then spit out in a format that Flight Master can use. But the problems I spent most of the weekend on are doing spherical trig. The DAFIF data defines arcs two ways – either as the center point, radius, direction and the start and end bearings, or as the center point, radius, direction, and the start and end points. Flight Master wants just the former, so I have to detect the second case, and use one of the formulas in Ed Williams’ Aviation Formulary to find the bearings, with a little help from "use Math::Trig;". A couple of places, the DAFIF data gives both definitions, which is useful to test my implementation. So that problem was solved.

Now comes the other problem – the one that I spent most of Sunday on and still haven’t solved: How to find the actual geographic extents of circles and arcs. For circles I can go back to the Aviation Formulary and project from the center the radius at 0, 90, 180 and 270 degrees. I’m sure there are wierd cases near the poles where that doesn’t give the actual extremes, but to hell with it, this is as close as I’m going to get. BTW: This is where the intrepid hero discovers that perl’s “%” operator only works on integers, and after kicking himself over the wierd results for a while writes his own “mod” function.

But discovering the geographic extents of an arc is harder. I still haven’t licked it – I think I’m going to have to look at the arc’s start and end bearings and directions to determine if it does through any of the 0, 90, 180 or 270 degree bearings and project them as I did for the circle, otherwise use the end points. Doesn’t sound so hard, does it? And it probably isn’t.

The next challenge will come when I try and produce a geographic index, either using grid buckets (Kevin’s choice) or quadtrees (my choice). To do either of those is going to require proper data structures, and nested data structures, and doing this sort of thing in perl is … sub-optimal. I’d much rather use a language that has proper data structures – even a “struct” declaration in C would suffice. But my web host doesn’t have Java, and I don’t know python yet, and I don’t particularly want to delve into the mysteries of doing ODBC in C or C++, so I’m probably stuck with perl.

Wish me luck.