Monthly Archives: February 2006


Long-lived software

I was just pondering today that one of the more useful and stable day-to-day utilities I’ve ever used, less, I’ve been using for 15 years. That’s a long, long time in software-years. There are few other bits of software that I’ve used so much over so long. So, a salute to you, less, you old pile of bits ya, and to your author Mark Nudelman.




So, you ever decide to upgrade the storage on your living-room server, buy a hard drive, realize that the hard drive is SATA, which means it won’t work on your server, then figure, “hey, I have SATA on my desktop, might as well try that out”, then realize that your SATA is also RAID-0 capable so you might as well buy another drive and take advantage of that, only to find out after a couple experiments that it’s really not RAID but FakeRAID, and after you find a disk-clone utility that works with FakeRAID, you get the partitions cloned, but now GRUB won’t load due to some error that you don’t understand, so you reinstall the Windows MBR just to see that Windows will at least boot, but you can’t find the XP CD any more so you have to find some random MBR utility on the web and hope it works, but it does indeed work and Windows now boots, but of course Linux doesn’t because neither GRUB nor your installed kernel can deal with FakeRAID, and you finally get GRUB reinstalled but it still gives the error, which is number 18 which turns out to mean that GRUB can’t address your Linux partition through the BIOS, so you figure you might as well try updating the BIOS even though that seems unlikely to fix the problem, and since you don’t have a real floppy in the system and the BIOS makers haven’t graduated into the 19th century or whenever this is and they don’t make a CD-bootable flasher, you have to get the USB floppy from your laptop, make a flash floppy, make a bootable CD from the floppy, boot it only to find that you downloaded the wrong BIOS, repeat that process twice more until you do get the right BIOS, which then stuns you by actually fixing the problem, so now GRUB boots and can get you back into Windows but you still need to get dmraid installed in your initrd in your Linux kernel so you can boot that, which requires that you find a rescue CD that supports dmraid so you can even get to your Linux partition to do the initrd thing, after which you find an article that explains how to install dmraid in initrd, which thankfully works and now you finally are back to the point that everything works again, and it’s kinda cool?

I just did.


Data Translation

By various sorts of happenstance, I’ve had quite a bit of exposure to data/file-type translation in projects I’ve been involved in. Given that, I don’t know why it still surprises me how difficult it can be. I think what gets me is that the broad strokes always seems pretty simple (“both formats are basically just a bag of polygons, right?”), and you can even get promising results based on that naive view. Fueled by that initial success, you start charging into the deeper details, and uh-oh, suddenly there’s some ‘little’ detail that threatens to swallow the whole project.

Another factor is that you don’t want the users of your translation facility to have to think about whether some given feature carries over perfectly into the translated realm, so you go nuts trying to support every little corner case, probably many that no user will ever encounter.