Only one more week left in the UK. We're up tomorrow morning early to head down to Weymouth, where we're going to catch the ferry to Jersey too stay in St Aubin for a couple of days with some guys I'm working for. It sounds like they might be putting a lot more work my way, so it'll be nice to meet them. It'll also be nice to see Jersey, and a nice experience for Mee's last week in the UK.
It is now becoming almost unbearable. I listed all the niggles I've got with the hardware in a previous post. I switched (why!?) from Debian Unstable to Fedora Core 2 a couple of weeks ago, which broke a lot of stuff. I had to frig around to get MP3s working, and even now I haven't got half the useful applications working that I had before. I then made the situation worse by installing GNOME 2.8 (out of CVS) into /opt/gnome, which has taken out some of my panel applets, keyboard shortcuts (Alt-Tab) and other stuff because when I did it I ran out of time too tie up all the loose ends. I decided I wanted to go back to Debian, and along came Ubuntu Linux.
So, I downloaded and cut a CD, but for some reason my laptop (Dell Inspiron 8100) just freezes during the initial stages of the Debian installer. I cut another CD and checked MD5SUMs, so it's not a defective CD. Now, I must struggle on and get some work done on an 'only-just-usable' laptop. I'm now considering my next laptop purchase, and if I can hold out long enough to save up for one, I'm considering one of the new PowerBooks (15" or 17" would be fine!) with the ATI graphics cards (nVidia can suck my cock). Which brings me nicely to working out how to pay for it...
I've always had a love/hate relationship with GnuCash. One one hand, it lets me track all my financial accounts and transactions, but on the other, it's written in Python, and looks ugly with it's GTK1 interface. I've got nothing against Python as a scripting language, I just think that desktop applications should be implemented in C. I now have a considerable amount of data built up in GnuCash files, some of which I need to do a certain amount of post-processing that doesn't seem to be possible in GnuCash. Also, GnuCash won't work on my iPAQ, which is how I (eventually) want to input transactions.
So, I figured I'd start by analysing GnuCash's XML format and preparing some C data structures for them. I'd then write file parsing and writing functions, and wrap them up in some kind of 'libgnucashfile' library. I figured this shouldn't be too hard, and would pave the way for a set of Glade interfaces and some code to provide a GUI to maintain the files. Eventually, you could re-implement all of GnuCash this way, or just use GnuCash for the bits it does better.
I've made a lot of progress with converting the internal translation message structure to use the new gettext API directly. I found that I was wasting a lot of time trying to fix up things that I didn't feel belonged in gtranslator (at least, not in a GTK2-based program), such as colour-schemes and configurable fonts etc. Also, code to uncompress po files before editting, or work on compiled po files seem to me to be a kind of 'feature bloat' now. All this stuff is handled by other programs (e.g. fonts and colorschemes are now handled by GNOME/freedesktop, and users file manager should uncompress a po.gz file and run gtranslator on the temp file - no need to attempt this in gtranslator). Re-writing all this unnecessary stuff to work with the new internal structures proved to be more hassle than it was worth.
So, I'm stuck with a monolithic patch that changes far too much and wondering how to commit it in a clearly defined set of stages without reducing gtranslator in CVS to a largely rewritten beta version. I want gtranslator to follow the upcoming six month GNOME development cycle, and have a fully-featured translation editor by the time GNOME 2.10 (or whatever) hits the mirrors.