|
|
Subscribe / Log in / New account

The Grumpy Editor's Guide to Personal Finance Managers, Part 2

Personal finance managers are complex applications, though it is only recently that finance applications available under free licenses have reached anything near the capabilities of the proprietary alternatives. In the first part of this series, your editor introduced the three packages under review (GnuCash, Grisbi, and KMyMoney) and covered the basic tasks of setting up accounts and entering transactions. A good personal finance manager can do more than that, however. So this article, the second and final part of this series, looks at a few advanced features.

Reports

Any spreadsheet can compute the balance of a banking account and let you know just when that account became overdrawn. One of the useful things a personal finance manager can do is to generate reports which provide a more complete picture of what is happening with one's money. Such reports can prove most useful at those animated dinner-table discussions on why the accounts are overdrawn yet again. The financial situation may be disastrous, but at least you have a nice pie chart explaining the situation.

For those who do need pie charts, GnuCash is currently the only viable option. This program offers a wide set of reports in both tabular and [Piechart] graphical formats, with a high degree of configurability. Unlike account registers, reports are displayed in the GnuCash main window, so only one can be viewed at once. Reports are persistent across sessions, so one need not worry about having to repeat a lengthy series of customizations.

GnuCash can export reports to HTML files, nice for posting a group's finances on the web. HTML export only seems to work for the tabular reports, however; the others yield a blank page. There is a "stylesheet" feature which affects both on-screen and exported reports. Two stylesheets are provided: "ugly" and "ugly with brighter colors" (the GnuCash developers used less informative names).

[KMyMoney report] KMyMoney 0.8 does not provide graphical reports, but it does have a wide variety of tables. The display is readable, and highly configurable. Reports are persistent, but the mechanism takes a little getting used to. When a report is created, it is represented by a tab in the top of the report frame. The next time KMyMoney is started, that tab will be missing, but the report (if customized) will appear in the tree-oriented list of options. KMyMoney reports can be exported in HTML and CSV formats.

[Grisbi report] Grisbi, too, only offers tabular reports. There is an unbelievable number of configuration options, obtained by navigating through two layers of tabbed windows. The output has the requisite information, but is, in your editor's opinion, relatively hard to read. While both GnuCash and KMyMoney can create reports on investments, balances, and net worth (along with transactions), Grisbi is limited to transactions only.

None of the packages reviewed offers a useful report seen in some proprietary offerings: a projection of an account's balance into the future taking scheduled transactions into account. Such reports are necessarily inaccurate, but they can give a useful indication of whether trouble is approaching in the near future or not.

GnuCash's graphical reports set it apart (for now - KMyMoney 0.9 will have charts as well), but the truth of the matter is that the tabular reports are the truly useful ones. Unless your dinner-table budget discussions require using OpenOffice to present the situation, pie charts and the like are not often helpful for real decision making. KMyMoney's tabular reports are as good as GnuCash's, and arguably easier to read. Grisbi's narrower range of reports detracts from its usefulness here.

Scheduled transactions

Any worthwhile personal finance manager will have the ability to handle transactions scheduled for the future. This feature can be useful for future cash flow planning, speeding up the transaction entry process, or for simply getting a reminder to send off that car payment before the repo man shows up with a tow truck. Scheduled transactions can also be used to handle loan repayment and to help track loan balances.

GnuCash has a well-developed transaction scheduler, currently the best of the three packages reviewed here. The usual parameters can be set: amount, begin date, number of occurrences, payment frequency, accounts to use, etc. GnuCash has the widest selection of frequencies, and is the only one [Scheduler screenshot] which can handle semi-monthly events. Since semi-monthly paychecks can be common - at least in the US - its omission in the other finance managers is an annoyance. An existing transaction can be used as a template for a scheduled transaction, which is a nice time saver.

Scheduled transactions can be entered automatically into the relevant ledgers, or they can wait for a manual action by the user. Another feature unique to GnuCash is a popup reminder of due transactions when the program starts up; those transactions can be edited and entered immediately, or that work can be postponed for later. The main window for scheduled transactions offers both a list view and a six- or twelve-month calendar showing when events will occur.

The GnuCash scheduled transaction code does appear to be a work in progress in spots. Different graphical conventions in parts make it look like something bolted on late in the development process. There is a mention of variables which can be used in transactions, but no apparent way to use the capability. Your editor was also able to crash GnuCash by playing with the scheduler windows.

KMyMoney offers many of the features needed in a transaction scheduler, but this feature needs a bit of work yet. Your editor succeeded in crashing the scheduler when attempting to create an event from an existing [Schedule editor] transaction; let it be said that crashes in a program intended to be managing one's money can be disconcerting. That said, KMyMoney's scheduler is close to what it needs to be.

The transaction editor contains the usual information. There is no provision, however, for split transactions, and no reminder options. The list of available frequencies does not include semi-monthly. It does offer both "fortnightly" and "every other week," however, leading the user to wonder just what the difference is. "Quarterly" and "every three months" are also distinct options.

The main scheduler window comes up in a list view, sorted by transaction type. There is also a single-month calendar view which is far less useful than the multi-month calendar provided by GnuCash. The single-month calendar has space to put actual information - payee and amount, for example - on the screen, but KMyMoney, instead, just puts in a large, red number showing only how many transactions fall due that day. The list and calendar views cannot be seen at the same time. One might think that double-clicking on an event in the list view would allow editing that event, but, instead, it switches to the calendar view. There appears to be no way to get KMyMoney to step through transactions which have fallen due; instead, they must be selected and entered, one at a time, from the list view.

[Grisbi scheduler] Grisbi's scheduler is the least featureful and hardest to work with of the set. A number of features, such as creating a scheduled transaction from an existing register entry, do not appear to actually work. The editor is awkward to use, and makes poor use of the screen space. There is no useful calendar view. The list of available frequencies is quite small. If you are a Grisbi user, you'll be able to create and work with basic scheduled transactions, but it will be harder than it needs to be.

As mentioned above, none of the packages reviewed here is able to perform any sort of future cash flow projection based on scheduled transactions. Another missing feature, found in some proprietary packages, is the ability to detect manual entry of (what appears to be) a regular transaction and offer to create a schedule; this is not a feature that all users will miss, however.

Both GnuCash and KMyMoney have nice utilities for dealing with loan payments. A series of dialogs collects the relevant information and sets up an appropriate scheduled transaction. GnuCash displays a repayment table when the loan is set up, but there appears to be no way to ever get that table back later on. GnuCash also neglects to initialize the loan account to the starting balance; the user must do that separately or the loan balance will not be properly accounted. Both packages can handle interest calculations and various add-on payments. Grisbi, instead, has no functionality for dealing with loans.

Investing support

No modern personal finance manager would be complete without providing the ability to watch as one's money vanishes into the stock market. Both GnuCash and KMyMoney have investment tracking capabilities, with similar features. Grisbi, instead, lacks any sort of investment handling.

GnuCash and KMyMoney both treat stocks and mutual funds in a way similar to their treatment of currencies: they are commodities which, at any given time, can be exchanged for money at a particular price. Both of them can go to online sites to update their idea of what stocks and funds are worth, making it easy to get a snapshot of the value of a portfolio at any time.

[Commodity editor] The GnuCash way of dealing with stocks is borderline painful. The user must create a "commodity" entry describing the stock, providing information like the ticker symbol and where to get online updates. Then it becomes possible to create a new account associated with that stock. Only then can purchases and sales be entered. Sales are particularly obnoxious: one might think that entering the number of shares sold in the "sell" column would do the trick, but the Wrong Thing happens. One must, instead, enter a negative number of shares. It is not clear why there are separate columns, given this behavior.

KMyMoney is a little more straightforward, providing a set of dialogs which hold the user's hand through the process of setting up a new investment. [KMyMoney investment screen] The creation of individual accounts for each stock or fund is not required (or, at least, is hidden from the user). "Buy" and "sell" operations are easy to enter correctly. KMyMoney also has handling for brokerage fees; GnuCash can do the same through split transactions, but the user must take explicit action to make that happen.

KMyMoney has an explicit "dividend reinvest" operation, while GnuCash forces the user to figure out how to get the same effect via the register. GnuCash, instead, has an operation for dealing with stock splits. KMyMoney makes do with "add shares" and "remove shares" operations, which causes shares to arrive from (or disappear into) the void.

Both programs can generate reports showing the value of an investment portfolio and return over a period of time. Neither, however, can handle capital gains calculations - something that US users, at least, would appreciate. Neither program can plot the value of a portfolio over time. It does not appear to be possible to set up scheduled investment transactions in either program.

Other notes and conclusion

Your editor imported one year's worth of financial transactions into all three programs, and was able to make a couple of other observations. First of all, the size of the resulting files varied considerably:

PackageFile size (KB)
GnuCash1700
Grisbi410
KMyMoney54

The interesting thing is that all three packages use (different) XML-based file formats. KMyMoney compresses the file, however; when uncompressed, the file weighs in at 725KB. Grisbi gains its space savings by using a great many single-letter attributes.

The other observation is that KMyMoney is far slower to start up than the other two packages.

As mentioned in the first part of this report, GnuCash has a whole set of business-related features not found in the other two packages. These include a database of customers, vendors, and employees, and the ability to generate and track invoices. Job tracking is built in, and there is some capability for dealing with tax tables. The business features have a bit of an unfinished feel to them, however, and your editor suspects that very few businesses are actually using them.

GnuCash also has a poorly-maintained ability to operate with PostgreSQL as a back end. Sadly, this backend is unable to deal with business objects, making it unusable by the group which would be most likely to want that capability.

So which program would a grumpy editor recommend? One can start by eliminating Grisbi. This application has reached a level of functionality which, only a few years ago, would have placed it among the best available in the free software community. At this point, however, it lacks too much in the way of features, usability, and charm to be seriously considered by most users.

Among the other two, GnuCash still comes out on top with regard to both features and usability. Your editor hesitates to recommend GnuCash without reservation, however. One of the most important things to do when evaluating a free package is to come to a conclusion regarding the health of the development community. Unless you plan to take over maintenance and addition of new features yourself, it is nice to know that there is a strong community behind the software.

The GnuCash development community appears, from the outside, to be stuck in some sort of low point. The port to GNOME 2 has been ongoing for years, but there still is little idea of when it will be complete; as a result, distributors are considering dropping GnuCash because the pain of maintaining GNOME 1, now used almost exclusively by GnuCash, is getting to be too much. Discussion on the development mailing list is muted, and releases are increasingly scarce. GnuCash is at a bit of a crisis point. If its developers do not resolve the GNOME 2 issue and get development moving again in the near future, this outstanding application could be facing the end of its active life.

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. For this reason, along with the fact that KMyMoney 0.80 is nearly good enough already, your editor would have to recommend KMyMoney to anybody looking for a free personal finance manager at this time.


to post comments

The Grumpy Editor's Guide to Personal Finance Managers, Part 2

Posted Sep 28, 2005 21:54 UTC (Wed) by nijhof (subscriber, #4034) [Link]

With regards to the future balance: (with GnuCash) I simply enter the scheduled transaction a month in advance(*). That does the trick for me. For each account window GnuCash helpfully displays the 'Projected Minimum'

(*) including a '(misc)' transaction for GBP xx scheduled weekly, which I delete at the end of each week after I know the real 'misc' expenses.

The Grumpy Editor's Guide to Personal Finance Managers, Part 2

Posted Sep 29, 2005 10:38 UTC (Thu) by pointwood (guest, #2814) [Link]

Will there be special deals for LWN subscribers when the IPO becomes a reality? :p

The Grumpy Editor's Guide to Personal Finance Managers, Part 2

Posted Sep 29, 2005 12:30 UTC (Thu) by sean.hunter (guest, #7920) [Link] (1 responses)

The use of the word "commodity" to describe "Type of investment" in the share portfolio part of GnuCash is nonsensical. "Instrument", "Investment" or even "Thingy" would have been much better choices.

A commodity in financial terms is specifically not an equity share. It is usually a specific quantity and grade of a tangible physical thing, often a mining or agricultural product. Gold, Pork Bellies, Soya Beans, Brent Crude and Electricity are all commodities. msft, scox etc are not.

The Grumpy Editor's Guide to Personal Finance Managers, Part 2

Posted Oct 3, 2005 9:15 UTC (Mon) by ekj (guest, #1524) [Link]

Agreed. It is an example of exposing to the user the fact that two (from the point of view of the user) separate entities are *implemented* the same way.

From the point of view of Gnucash (or any finance-application) commodities and stock are very similar both:

  • You can buy and sell them.
  • Prices (and thus value) change over time.
  • There can be fees associated with buying or selling them.
  • The prices are denoted in some currency, and can frequently be found online.
On the other hand, the two are not identical, even from the POV of the program because:

  • Stock can split, or join operations that make no sense for a commodity. 100kg of gold won't spontaneously transform into 200kg of gold at half the price.
  • Stock can pay dividended. I don't know that commodities ever do.

The Grumpy Editor's Guide to Personal Finance Managers, Part 2

Posted Sep 29, 2005 15:38 UTC (Thu) by wsand70 (guest, #4482) [Link] (1 responses)

I have been using GnuCash for a few years now and am finding it sad to hear the dev community of this project is at a dismal. I do hope to see it pick up too.

I don't do any sort of stocks or online trading but find GnuCash to fill my needs coming from Quicken 2000 era. My biggest difficulty was finding something to import my data. I finally gave up and started from scratch and have been happy ever since.

The only problem I have had is fulfilling all the dependencies to get it installed as for some reason I can never find one or two needed bin packages and am forced to roll them myself. So yes I am finding difficulty with modern distros fulfilling all deps most likely due to the Gnome2 issue.

The Grumpy Editor's Guide to Personal Finance Managers, Part 2

Posted Sep 29, 2005 16:46 UTC (Thu) by ber (subscriber, #2142) [Link]

I have been using GnuCash for a few years now and am finding it sad to hear the dev community of this project is at a dismal. I do hope to see it pick up too.

Setting up a regular small financial transaction transfering a few bucks to a capable GnuCash developer or a relevant organisation might help as good example.

The Grumpy Editor's Guide to Personal Finance Managers, Part 2

Posted Sep 29, 2005 16:47 UTC (Thu) by dgrant (guest, #32752) [Link]

Gnucash rocks. That's all I want to say.

The Grumpy Editor's Guide to Personal Finance Managers, Part 2

Posted Sep 29, 2005 17:19 UTC (Thu) by oak (guest, #2786) [Link]

The internationalization support could also be tested. I've been using
GnuCash and while I'm otherwise happy with it, in the diagrams it cannot
show umlauts in the text properly.

The Grumpy Editor's Guide to Personal Finance Managers, Part 2

Posted Oct 4, 2005 22:01 UTC (Tue) by nlee (guest, #730) [Link]

Some very good and insightful comments.

Personally I've thought for a while that the main thing holding back Gnucash and diverting energy to the wrong direction is the additional business features. Personal and Business finance management are two very different things.

Although it might seem better to manage them in the same application, particularily for the many self-employed consultant who run Linux, there are better products (Sql-Ledger or Linux Canda) out there for specific business management. Its usually better to link personal and business side of transactions though a single control (GL) current account rather than mixing the two. So Gnucash ends up being not quite a good enough business finance application and a personal finance application that is now falling behind.

KMyMoney is doing well because it is focusing on a core feature area for development and has built up momentual. Hopefully things stay on track.


Copyright © 2005, Eklektix, Inc.
Comments and public postings are copyrighted by their creators.
Linux is a registered trademark of Linus Torvalds