Gnucash Days

I just had one of those gnucash days.

Every couple of weeks, I decide to sit down for an hour or two to catch up on my personal accounting. Suddenly, the sun has set, my legs have atrophied, and I realize I’ve forgotten to have lunch and dinner. Does this happen to anyone else?

Ostensibly, tracking personal finances should be a relatively simple matter for someone like myself without substantial assets or investments. But gnucash (or any other accounting program, I suppose) makes it difficult to “fudge” any numbers—if you started the week with $27.61 in your wallet and ended with $19.05, you need to say where that money went. I do have “unknown income” and “unknown expenses” categories, but they really bug me so I try to keep the totals down to a minimum.

The bigger problems are reconciling bank transfers, mortgages and loans (interest and principle), etc., when my financial institutions don’t always provide the best online tracking and reporting. For example, my bank has a “current balance” through web access, but that balance might be ahead of what the ledger shows (i.e., there are transactions reflected in “current balance” but not on the ledger)—and the “current balance” itself can be a day or two behind schedule.

I also wish gnucash were just a little bit better. It really feels like it’s been stuck for a couple of years now while all the other applications I use regularly (Firefox, OpenOffice.org, Gnome generally) have gone through major revision, and are genuinely fun to use.

In August 2003, the gnucash team issued a call for help. I admit I did not rise to the occasion, but I did expect more developers to respond. Gnucash seems to me to be an ideal open source project to attract hackers—almost everyone needs to use some kind of personal finance package eventually, and there are innumerable “scratch-an-itch” type clever solutions that could be implemented (automating web transactions with financial institutions, for example).

But Gnucash is brittle. The user interface is often awkward, and it’s awfully easy to lose work you’ve done. For example, clicking on “close” on a report makes the report just plain disappear, but clicking on “close” while looking at an account just closes that ledger. If you get into the custom of clicking “close,” you’ll lose the report you just created. And if you click “yes” when exiting you’ll lose all the work you’ve done in the session if you haven’t saved. I realize this is typically how word processors work, but I think many of us have different intuitive expectations from a finance program.

Here’s a solution to one problem I’ve encountered repeatedly, just to make this blog entry at least somewhat useful: if you move your account files to another computer or path, you’ll lose all your reports. They’re still there in ~/.gnucash/books, but they don’t go with the data files. If you move the data file *back*, you still won’t have your reports, because gnucash will have “forgotten” them.

If you look in ~/.gnucash/books, you’ll see a file corresponding to the path of each data set you have, with %2F substituted for /. Copy the file there to the corresponding name of your new data file.

Now edit ~/.gnome/GnuCash and find the section that corresponds to your old data file, and create a new section with all the same data except the title ( [MDI : ]). That should do it.

If someone knows a simpler way to do this, please let me know. Also if anyone has any inspiring ideas about what might move the gnucash project forward, I’d be interested in hearing ideas.