IM’s total lack of standardization has probably annoyed just about anyone using it at some point in time. Who wants to run a different client for every other friend? Jabber was supposed to fix all that, and really, it does. The problem is that with AIM and ICQ and MSN and Yahoo! all fighting for your packets, there’s a lot of momentum to overcome.

That’s where Google Talk comes in. They are dedicated to open standards (aka Jabber) and have the muscle to get it done. I’ve used PSI, a Jabber client that supports gateways to all the “other” guys, and now it works with Google Talk too. Here’s the important settings I used to hook up, and a shot of the roster:




Linux user space is composed of a thousand small interrelated “packages”. It’s fairly easy these days to install any of the better linux distros – they typically “Just Work” out of the box – and all those packages play nicely together.

Once you have your linux machine running, you’re going to be tempted by all the cool stuff to do – Office apps, browsers, DVD players, all the programming languages, router capabilities, web servers, mail servers, PVR – and eventually you’ve got a pretty tricked out OS with lots of goodies.

But you need to keep it updated with the latest fixes when you connect to the internet, or you’ll eventually get your machine hacked. And who wants to be without the latest features? But you probably don’t have time to micromanage that update process. Even if you try, inevitably, you’ll be burned by package dependency problems. All those small packages that count on each other are being updated simultaneously, and which versions are safe and stable and play nicely together?

That’s where package managers come in. They determine the latest stable package updates and install them for you, typically while you’re sleeping. Some very helpful folks work very hard to keep packages synched up like that for us all. These sites of updated and synchronized packages are called repositories. All you have to do, at the top level, is select your target repositories, see what’s available in them, and grab what you want – everything you want will be installed and kept up-to-date, with all the dependencies calculated for you. Sounds like nirvana, right? Well, we’re getting closer anyway…



The best CVS client for Winblowmynose is TortoiseCVS. TortoiseCVS has to be the best designed software ever – it just works like you expect it to. And now I’ve discovered that it’s scriptable, most excellent. There’s an executable in the install directory called TortoiseAct.exe – it actually does all the CVS work. It was apparently designed this way to facilitate different front ends. All you have to do is pass it a “verb” and it fires TortoiseCVS into action. There are tons of things you can do this way, but the docs are scarce – “the source is the documentation”. See it here.

(Editor’s note: see the wiki for a more structured and updated version…)

I wrote an object-oriented database a few years back using “C++ Database Development” from Al Stevens as inspiration, and I’ve always wanted to dig it out and get it updated. I’m also working on ShareTheDJ, which needs cross-platform object serialization. Robert Ramey implemented boost::serialization and it looks like an excellent way to serialize my objects in a more STL-friendly way. Here’s how to set up under FC3/FC4, gentoo and Windoze…

UPDATE: Sourceforge root changed from [cvs-pserver.sf.net:443] to [boost.cvs.sourceforge.net]. Instructions were updated.

(continued…)

Includes some important bugfixes (you can now safely edit a bunch of list items at once, geesh), UI improvements (small/large view toggling should work well now), etc. From the installation warning:

New development version, lots of bugfixes and improvements, lots more to do, but still should be fun. Back up your database first! You want to upgrade now?

Development: Version 0.25 zipfile
Stable: (old!) zipfile