By Jonathan Corbet
August 19, 2009
Back in 2005, your editor wrote
a
review of personal finance tools for Linux, focusing on GnuCash,
Grisbi, and KMyMoney. The conclusion at the end of that research was that
GnuCash had the strongest feature set, but that KMyMoney looked to surpass
it sometime in the near future. Four years later, KMyMoney 0.8 remains
the current stable series, but that is about to change; the long-awaited
KMyMoney 1.0 release is imminent. So it seems time to revisit this
important piece of free software.
In 2005, GnuCash appeared to be at a low point. The port to GNOME 2
still wasn't done, distributors were talking about dropping the package,
and developer morale seemed low. But when looking at KMyMoney, your
editor saw a different picture:
KMyMoney, instead, is on a roll. The development community is
active and happy, features are being added at an impressive pace,
and that 1.0 release appears to be getting closer. At current
rates, it will be a matter of months, at most, before KMyMoney
surpasses GnuCash in every area which matters to most users - and
keeps on going.
Since then, GnuCash has produced a number of well-received releases and
appears to (still) be the dominant program for personal finance management.
Active
development continues, with the long-defunct database storage option poised
to make a return in GnuCash 2.4. On the KMyMoney side, instead, the
0.8 release that your editor reviewed is still the current major stable
release; the 0.8.9 update
came out in March, 2008. For whatever reason, things seemed to stall for a
long time; if there were a need for more evidence that your editor's
predictions deserve ridicule, this would be it.
Behind it all, though, the KMyMoney developers have continued their work. As of
this writing, the 1.0 release can be expected almost any time. Your editor
pulled a copy from the project's CVS repository to see where things stand;
the short answer is that KMyMoney has taken some important steps toward
being a full-featured personal finance management program. For many (if
not most) users, it should be all they ever need.
Building the tool was relatively straightforward, with only a couple of
"./configure; install a missing dependency; repeat" cycles required.
One interesting surprise was that KMyMoney remains a KDE 3
application. Work is being done to port the code to KDE 4, but the
developers are not making any promises about completion dates; getting the
1.0 release out the door seems to have taken priority. Despite
being a KDE 3 application, KMyMoney will run fine in KDE 4
environments.
KMyMoney 0.8 was a reasonably polished application; the 1.0 release
continues that tradition. Some of the artwork has been toned down a bit;
the windows tend toward a relatively sober blue and grey presentation now.
As a general rule, the application's presentation is clean, readable, and
usable.
As with previous versions, KMyMoney includes an importer for files in the
GnuCash format. It gets the job done, mapping GnuCash entries into the
KMyMoney way of doing things without any real trouble. There's no support
for the business features of GnuCash - KMyMoney is not looking to be a
business bookkeeping application - but most users will never notice.
Saving a file in KMyMoney 1.0 brings a nice surprise: the application has
been integrated with GPG to encrypt financial files by default. For a user
who already has a GPG key, it all works automatically, with no additional
configuration work required at all. More advanced users can configure the
application to encrypt for multiple keys or (to protect against disaster)
for a special backdoor key controlled by the KMyMoney developers. The
program also advertises the ability to save a file to an SQL database.
According to the documentation, SQLite, MySQL, and PostgreSQL are all
supported, but your editor was only offered SQLite as an option - and it
didn't work. The database storage feature looks like something that is
expected to mature in future releases.
One of your editor's grumbles with version 0.8 was that transaction entry
was relatively hard; it was more mouse- and keyboard-intensive than
GnuCash. Version 1.0 has improved things somewhat. If one knows the magic
control-insert sequence, it is now possible to enter transactions with no
mouse clicks required at all. Annoyingly, check numbers cannot be
incremented or decremented from the keyboard; one can only type in the new
number. Beyond that, it still seems to require too many tabs, and
the single-line GnuCash presentation still seems more natural than the
two-column form used by KMyMoney, but things have gotten a lot better.
There is a budgeting and forecasting module built into KMyMoney 1.0. The
application can put together a provisional budget based on past
transactions, then track how the user is doing against that budget in the
future. The forecasting code can extrapolate trends into the future,
giving the approximate date when the money runs out and foreclosure
proceedings begin. The program was, however, unable to forecast when your
editor's long-awaited federal bailout would arrive.
A GnuCash feature totally missing from KMyMoney 0.8 was graphical reports.
Version 1.0 fills that gap. The tabular reports available in KMyMoney
have always been nicely done; now it's possible to get the information in
manager-friendly pie-chart form as well. The value of this kind of plot is
debatable at
best, but there is a certain eye-candy value to them and some of the other
plots are more useful. It is, in any case,
a feature checkbox that the project needed to fill.
Some progress has been made with online banking; European users with banks
supporting HBCI or OFX will be in luck. Your editor, lacking such a bank,
was unable to test out those features. Importing of downloaded bank and
credit card data is also now supported; the only working format, though is
QIF. The GnuCash importer provides an intermediate window showing the
transactions to be imported and providing an opportunity for the user to
change what will be done. KMyMoney, instead, just dumps the transactions
into the specified account; the user must then go through a mouse-heavy
process to classify transactions that the program does not recognize. All
of the needed functionality is there, but it's a bit rough around the
edges.
In summary, KMyMoney 1.0 is a solid application which now has support for
all of the features most personal finance users will need. It appears to
be quite stable; your editor was unable to make it misbehave or crash - at
least, when not trying to use the database storage feature. The developers
behind this tool should feel content as they head toward their 1.0
celebration. Thanks to their work, Linux users have two high-quality
personal finance tools to choose from.
(
Log in to post comments)