David Findlay

del.icio.us extension in Firefox 2.0

The official del.icio.us 1.1 extensions for Firefox doesn't work with the about-to-be-released Firefox 2.0. Fortunately it just takes a quick tweak to get it going:

  1. Go to your Firefox profile directory and then to its extensions subdirectory.

  2. Do a find for del.icio.us.jar. It should be in the chrome subdirectory of some distinctly unspellable directory.

  3. Go to the directory above that chrome one. There should be a file called install.rdf.

  4. Open that file in your favourite text editor. If it's the correct one it should say em:name="del.icio.us" somewhere in the file.

  5. Assuming you found the correct file, change the line that reads em:maxVersion="1.5.0.*" /> so that it reads em:maxVersion="2.*" /> instead.

  6. Restart Firefox 2.0 and your del.icio.us extension should be working again.

UPDATE:I've heard that at least one person wasn't able to get this workaround to work. I'm not sure why that would be; perhaps the person has an older version of the extension. I know that on my work PC I didn't get Firefox 2.0 closed down all the way the first time I tried it, so the extension was disabled. When I closed down properly it worked as expected, just like it did on the other computers I've done it on.

Also, it doesn't matter whether you do this before or after you install Firefox 2.0. You're just changing one line in a configuration file, so the only thing to make sure is that Firefox is exited fully before trying again. If your del.icio.us buttons or menu don't appear then go back to Tools\Add Ons and you'll probably see the extension is still disabled.

UPDATE:Version 1.2 of the del.icio.us extension is out now and Firefox 2.0 should update it for you. This post may still be useful for other extensions that haven't been updated, but is otherwise moot.

Vista RC1 in a VM

I got Vista RC1 running with a VMWare Workstation 5.5 virtual machine today. The graphical install doesn't work with VMWare out of the box (it sticks on the initial "loading files" screen).

Fortunately echelon9 posted a workaround on the VMWare forums.

  1. Stop the virtual machine.

  2. Edit the virtual machine's VMX file to include the lines (bottom of the file is fine):
    svga.maxWidth = "640"
    svga.maxHeight = "480"

  3. Start the virtual machine. It will be stuck in VGA mode and the colors are limited so it won't look too hot, but the install should proceed just fine.

  4. Once your VM is booted into Vista, install VMWare Tools from the VM menu.

  5. Stop the virtual machine and remove the two lines from the VMX that you added earlier.

  6. Start the VM back up and you should be able to go into the Control Panel and change the resolution to something more usable.

Once you've done all that you can do the next most important thing:


greasemonkeying my backpack

For a while now I've been maintaining a running log on a Backpack page. I like Backpack because it's quick and convenient to use. However, for my running log I could really use a little bit of spreadsheet functionality, to sum the miles I've run in a given month for me, and that's just not Backpack's bag (pardon the pun).

So, since I'm reading Ajax in Action at the moment, it seemed like a good time to play a little bit with JavaScript and greasemonkey. If you're not familiar with it, greasemonkey is a Firefox extension that allows you to apply custom JavaScript to webpages. You install scripts that you write or download, into greasemonkey. You then tell it, via one or more regular expressions, which pages the scripts should be applied to. I use a few greasemonkey scripts already, for viewing images (Greased Lightbox), tweaking Flickr's interface, and so on.

So I decided I would write my own greasemonkey script to do all that bothersome addition for me on my running log. After a few false starts, caused by me trying to use FireBug's console for logging, which isn't exposed in greasemonkey, I got it to work:


The text in green at the bottom is generated by the script (the total above it in black is my previous hard-coded one). The script isn't done yet; for one it has next to no error handling. Also, because of the ajax nature of Backpack, my totals get lost whenever I edit the page, forcing me to do a full page refresh to get them back. So, I might add a keyboard shortcut to turn the totals on and off next.

FWIW, here's the script in all its "glory". Try not to laugh at my JavaScript skills or lack thereof.


If you haven't come across it before, lifehacker is an excellent resource for general computing news, GTD, Web 2.0 and general hints and tips. They recently posted a little tip I sent them about Sysinternal's excellent contig utility.

MEDC 2006

I just got back from Microsoft's Mobile and Embedded DevCon. It was hosted at The Venetian in Las Vegas. On Tuesday night they had Tao, this nightclub in the hotel, reserved exclusively for MEDC; it must have been the largest nerd conglomeration in a nightclub ever! We entered the SumoRobot challenge, where we had to program the AI in a Parallax SumoRobot modified to use the new .NET Micro Framework. I lost one of the IR sensors on the way into the ring and the poor robot was never the same after that.

Oh well. So CE6 looks like it will be very interesting. We got betas of it and the big news is they've ditched the 32/32 limit of past CEs (up to 32 processes each with a 32Mb 'slot' of virtual address space); in CE6 each process gets its own 2Gb of virtual address space and up to 32k processes can be running simultaneously. Addressing of physical RAM is still limited to 512Mb, but DLLs now go in a shared 512Mb region of virtual address space, instead of eating from the 32Mb ceiling on down like before. That should mean worrying about DLL crunch when developing applications for PPC/WM is a thing of the past, at least for a little while.

On the whole I was glad I went. Most of the sessions were enlightening to one degree or another, although there were a couple of nightmares. One session included the pearl of wisdom "the emulator is good for emulating things". Boy, I'm glad my manager was at that one instead of me.



I hadn't touched a soldering iron in years, but reading Make Magazine inspired me to pick one up and start playing again. I read an article about this persistence-of-vision kit. It uses an Atmel ATtiny2313 Microcontroller to cycle a bank of 8 LEDs through a pattern at about 400Hz. When you waggle the board from left to right, the persistence of your vision causes you to be able to read the message encoded therein. The kit is from Lady Ada, and I highly recommend it if you're new (or really rusty like me) at the old electronics game. It was cheap, fun and quick to build, and it didn't need any expensive tools. It is also reprogrammable, so you can tweak the C code, with free tools, and update the firmware from the parallel port of your computer. Not only that, but once you're bored of the POV thing, you can reprogram the microcontroller to do something else.

Gmail for your domain

Google recently began offering a beta of a service where they host email for your domain with their Gmail technology. I set up a few of the domains I manage and I have to say I'm very pleased so far.

You can sign up for the beta at https://www.google.com/hosted