future-proof

Buffy last night was pretty good. I find myself again interested in the remaining (two!) episodes, and not just for compleatist or historical reasons — they might well be interesting to watch. Who knew!

I think Matthew is missing the point that I was trying to make the other day. There is nothing materially “plain” about structured XML, for example, except that it can be usefully viewed and manipulated with simple, widely-available tools, such as the human eye. I never suggested plain text, precisely because there are important structural and semantic characteristics that we want to preserve during however many conversions from presentation-format-du-jour to primary-source-storage and back. (We can still convert from EBCDIC to ASCII today, and there’s no good reason that you wouldn’t be able to convert your XML-in-ASCII storage to XML-in-XASCII2 at any point. I submit that this is a much less invasive change than from mySQL to Postgres or OpenOracle, and will break fewer tools that operate upon the content. But to equate modern-day ASCII — even modern-day XML — to EBCDIC, when the latter was never designed for any sort of interoperation and was supported only out of direst necessity by anyone outside of IBM, is to be either deeply misguided or rather disingenous.)

And why is it easier to do all those maintenance tasks with an opaque storage format and its one set of manipulation tools than with a format like XML? It seems to me that whatever approach you use with a SQL-guarded backing store will work pretty isomorphically with another storage format, with the possible exception of searching. But then I think that to rely on the full-text search capabilities of a database is to abandon much of the structure-value that people so painstakingly add to their entries. How would you search for all the times that you cited Mark Pilgrim, with a database that sees your every entry as just a sequence of bytes? How would you extract an index of such things? Maybe that’s not a case you care about, but I can imagine many such indices and reports that would be of value or interest, and having to regex my way through byte-blobs seems like a sign that my storage and generation system has failed me. (And would you want someone searching your web log for “archives” to pick up all the times you linked into an URL with that string in it?)

(I don’t really care about trackbacks or pingbacks or comments, though I’m interested to see why Matthew thinks — as his final comment implies to me — that they are an evil to be actively avoided.)

And just now I got back from a relatively awful driving lesson. I was doing pretty well at the start, and through the various emergency maneuvers, and even during the highway driving, but then a pressure-change headache started to set in, and then it all went to hell. Clumsy clutchwork, some oversteer, a few “slightly hot” corners. Bah. I want a mulligan. Ever since the instructor switch, I really haven’t been very much on my game. Not sure what it is, really; could be the car, which is — and I’d not thought this possible at the time — even less suited to my size than was the Mustang; could be the instructor, with whom I don’t really get along very well, and who seems to have only two pedagogical modes: Lecturing In His Outside Voice, and Silent — unless something unpleasant happens, at which point he will say something typically unhelpful, like “careful”. Could be that I’ve just seriously regressed as a human, though I was doing fine on Martha’s car the other weekend. Bah. I guess I should trick Alasdair — I can’t drug him, because then he wouldn’t be a legal passenger-seat driver-type, note — and get some more practice in.

The headache isn’t improving my mood any, at all.

penance

Made it to the office today, after signing the lease on the new place. I need to get George-the-friend in touch with George-the-architect-landlord for some internship idea exchange; I’ll try to remember to get that rolling tonight at some point.

I used to bitch a lot about how hard it was to test recovery, but I was wrong. Testing recovery is a walk in the park with a martini and a fine cigar compared to testing anything under IA-64. I would kill for a sharp stick and a good, strong piece of twine. If this is payback for complaining about recovery testing, I can’t wait to see which dripping maw of hell I will end up in next. (Actually, it’s not all that bad. It’s just that I also ran afoul of productivity killing bugs in gnome-terminal, had to wait out a cluster upgrade, got torqued in a proctological manner by sourceforge — save us, Jacob-wan! — and have a headache. Tomorrow has to be better, right? Right.)

cinco de maybe

I think I’ve been having blackouts lately, during which I run marathons, or climb mountains, or maybe just move large stones from one pile to another. I’m having trouble coming up with any other satisfying explanation for the fact that I slept thirteen hours last night, and was still tired when I woke up this morning. Perhaps it’s just the crushing burden of keeping Tyla’s computer hardware habit sated, though.

mpt writes about data preservation in his ultimate weblogging system, but I think he’s wrong. On the off chance that such a bald assertion is not sufficently compelling, prima facie, I shall elaborate.

Using a database system like MySQL simply to get “presentation-independent storage” is sort of like swatting a fly with a Buick, only without the satisfaction that comes from actually killing the fly. If you want some future-proof structured form for storing metadata-heavy but interrelation-light content, I think you’re probably going to end up using some XML Schema and then converting to display-format-of-your-choice. He rails against “static files” as a form of latter-day 8-track, but MySQL’s data storage is just a bunch of static files on a disk somewhere. And it’s in a format which is not designed for interoperability — or even simple backup — and which has as baggage many storage design decisions that are very useful for the General Purpose Database Problem — flexible and ad-hoc query support; fine-grained authentication and authorization; high-performance parallel query capabilities, with indices and stored procedures and whatnot; sophisticated locking for parallel update/update and update/query operations — but not necessary for the Stable Web Log Content Storage Problem. And when your format has the vast majority of its design effort focused on problems that aren’t problems for you, I think you’ve chosen the wrong storage format. (Additionally, very few browsers can usefully display MySQL database files as of this writing.) A future proof format is one which places the fewest burdens — think not only of the “obvious” software and hardware burdens here: what if the MySQL format is found to violate an Oracle patent, heaven forfend? — on future readers, which is one reason that archivists will only humour you for so long when you talk about “long-term digital storage” before they clap you upside the head and tell you to print the content on acid-free paper and move on.

Any second-year computer science student can write something that will produce Format Of Choice from valid XML, and a good 20% of them could probably do it without weeping hot tears if you told them they couldn’t use the language of their choice with its built-in XML parser goodies. Could they do that with the MySQL data format? Maybe if they had some good documentation on the format. So now you might want to ask yourself: “what format would I use to store the documentation?”

they’ll fix you. they fix everything

I tried to find some web-people who’d run into the same problem that my motherboard-and-such switch had caused me, but no dice. I found some that were close, but their descriptions of solutions made it clear that they were still able to boot into Safe Mode, and I was patently not. A fresh install of Windows XP didn’t have this problem; I tested on a spare partition that, apparently, I was keeping around for just this occasion, and then starting backing up all of Tyla’s RIAA/MPAA-bait.

In the midst of this, Tyla and Madhava and Hilary went climbing — my back is still a little sore; no, really — and by the time I met them for yet more sushi, I’d mostly got everything working again.

It’s pretty sweet. Now I’m thinking about that LCD we saw, or maybe a liquid cooling kit. Not thinking too hard, though. Don’t worry, honey.

sacrifice

The landlord was showing the place this afternoon, so Tyla and I went out for a nice brunch. We were sitting on the patio — where it was a tiny bit chilly, I now admit — when Tyla informed me that computer was being a little slow when she was making movies. I swallowed my disgust at the very prospect and let her drag me bodily down to College, where I was forced at gunpoint to purchase, oh, a new motherboard, CPU, and video card. Oh, and some new memory, just for completeness’ sake. It was like chewing my own eyes out, but I managed, for Tyla’s sake.

Now, while the filthy hordes gather in the living room for 8 hours of Buffy and Angel — some people were in Amsterdam for 4 months, and now have some catching up to do — I’m going to perform the requisite hardware transplants and then scoot over to Alasdair’s for a spot of hockey-watching.

That didn’t go as well as it could have. Going to need some software surgery tomorrow, I think. And another beer.

more augh

I took a nap yesterday, after ingesting some Vitamin I, and when I woke up, my headache was gone. Gone with it was the entire day, though. Ah well. It’s not like I was going to be productive with that throbbing cranial thing going on anyway.

Today, I walked to work and was doing pretty well — ignore, for the moment, the brief network outage caused by a fat-foot error in the server room — until I developed a serious back-pain issue. Neither horrific music nor obese, megalomaniacal rodents could cure me, so I stole some Advil from Fixy and lay down on the floor. Doing much better now.

I did finally get Movable Type installed, and it wasn’t that hard. I guess I should set up web logs for various kin and folk soon. I’ll wait until they ask again, I think.

Tonight: X2 and a tour of Tyla’s library. Alasdair’s in a cranky mood — he says it’s not my fault, but really, who else can make someone that cranky? — and doesn’t want to take the back roads up to the East Nowhere branch of the Toronto Public Library. In spite of that, I think we’re going to have a good time, even if we keep our pants on.

Jacob, my dearest love, I didn’t mean to abandon you. Just had some laptop issues, got a little behind the curve; you know how it is.

About once a year, I’m treated to a great conversation with Miriam (and other people who happen to be standing nearby) about the Nature Of Science. I think she’d probably enjoy this discussion, but to be honest I never remember very much of the conclusions Miriam causes to lodge in my midbrain each time. That’s part of what makes it fun, I guess.

augh

It was inevitable, I suppose. After a few days of fantastically-beautiful weather, we got a low-pressure invasion that has left my head feeling like a Bunol tomato. The agony.

« previous page