Some of the Best Things Are Free: Pt. 3 - Banking Software

Post date: Dec 31, 2009 2:29:03 PM

I know this is not quite the blog-entry I had promised, but I did get a question about it, so I thought I'd throw in the answer as best I could....

I've been using Quicken to do my personal finances since 1994, back when it was still a DOS based application. That's well over 15 years now. There's only one small problem with that: a little over 5 years ago, I decided to cut myself loose from the Redmond owned operating system and run Linux. Why was that a problem? Because Quicken isn't available for Linux. Since that time I have been looking for a good alternative, and I am starting to think I am close.

If you are a die-hard Quicken fan, you may want to consider just staying with it as there are some things it does that no one else can do because of patent restrictions. If you are just looking for something to do you own banking or run a business, and you are not partial to Quicken, then there are some alternatives. I have also included some pointers on how to use Quicken under Linux if that's a road you want to go down.

Before I go to far, I should make a quick disclaimer that I have only a passing knowledge of these alternatives. I have played around with them, but I still don't use them full-time. This is also not a complete list of alternatives.

BTW, I am not sure if I mentioned it in my previous blogs, but you can click on any picture to see it in full size!

HomeBank -

For personal use, my favorite free personal banking software is HomeBank. It is fairly intuitive in it's interface, and it offers some nice charting features. It also runs on a variety of platforms including Mac OS X, Windows, Linux, and even the Nokia n810 Internet Tablet. For me, the last

one is a big plus because it should enable me to take my accounts with me wherever I go -- even if it is just to the store. (note: I'm not sure how well it synchronizes data files between multiple machines, so this may or may not work as well as I think it could.) HomeBank provides the ability to import standard format banking files (QIF, QXF/OXF, CSV) and to export QIF files. I played around with importing 15 years of Quicken data, and it worked very well. It also showed me just why credit-cards and I are not a good mix.I really like HomeBank's User Interface. The first window you come to shows all of your accounts and any automated transactions that are pending. If you want to look at an account, you simply open it by clicking. That will open a window that shows the details of the transactions in the account and allows you to add or edit transactions. Reports are also quick and easy to make. Just select "Reports" from the top menu of the main window, and you are off and running.There are a few quirks in moving to HomeBank from Quicken. The first one is that a "Reconciled" transaction is called "Validated" in HomeBank. The other is creating repeating (or "automated") transactions. To create an automated transaction, one has to first create the basic transaction, then archive it, then go to the list of archived transaction, select the transaction, then click automate and fill in the appropriate data.There are also a couple of important to know differences in how HomeBank and Quicken store their data. The first one has to do with data integrity & a vailabilty. In Quicken, additions or changes to transactions are immediately stored to disk. If something goes wrong, you don't loose anything. In HomeBank, the data file is stored only when you explicitly save it. That means you should consider saving regularly.The other important difference is that HomeBank stores its data in a simple XML file. While very transportable, it does not provide any sort of security. If you wish to either protect your data from prying eyes or ensure data integrity, you will need to do some sort of outside encryption or data signing. [Data signing let's you check that the data has not been altered, but it may not prevent someone from reading the data, that's the job of encryption.] There are tools that do provide that, and if there is interest I will be glad to point out a few I know and have used.

GnuCash -

GnuCash is not personal banking software. It is accounting software. As such, it scares me. I'm not an accountant. Having said that, let me tell you what I know about it from my experience with it.

To someone use to simply (not) balancing their checkbook, the road into GnuCash is a little steep.

First, you need to get some basic understanding of accounting principles. From the Quicken world view, accounts are things you hold at a bank, and categories are things you assign transactions to. In the GnuCash view, categories are just special accounts. This is related to the double-entry system of book keeping that GnuCash employs. Some invaluable introductory information for non-accountants can be found here: How this really works starts to become quite clear if you look at the ledger from "John's Checking" account (left). This is the same data as from the HomeBank examples above, so you can see the difference in how it is represented. [The data was simply exported as a QIF file form HomeBank and then re-imported into GnuCash.] If you click on the picture with the green lines of text, you can see that every entry is shown as a transfer to an account. The pay check (1st line) is shown as a transfer from account "Paycheck" into account "John's Checking." The same idea applies to the payment to "Fairport Telcom." It is shown as a transfer from "John's Checking" to the "Telephone" Account. The picture on the right shows the list of accounts that were created when I set up the data file. This also highlights the categories-as-accounts idea.

The User Interface to GnuCash uses a different approach from HomeBank. Where HomeBank uses different windows, GnuCash uses different Tabs within the same window. (The tabs are visible in all of the screen shots in this section.) While not my favorite way of presenting things, it does work.Reporting in GnuCash is geared towards accounts. It offers a wide variety of business type reports. It does not do as well as HomeBank on some of the more interesting "personal" style bank reports, but that is as much a reflection on the target audience as anything else.GnuCash runs under Windows, Mac OS X, and Linux. Since it is open source, it is also buildable on most Unix platforms. GnuCash does support importing of QIF files, but it does not support QXF format. It will export into QIF files.GnuCash is a little safer in how it handles it's data than HomeBank. While it still stores the data in an unencrypted, XML file, it does store log files of the changes that you have made. This allows some degree of recoverability, but saving often is still a good idea. Again, if you are interested in ensuring data integrity or privacy, you should investigate signing and encrypting software.Conclusion

In this article, I looked at two different pieces of free financial software. The two of them represent [to me] the extremes of the financial software field. GnuCash is designed for the accountant who wants to do double entry bookkeeping. HomeBank is designed for the average person who just wants to be able to keep track of their bank accounts. Which is better? That depends on your needs.

There are other free accounting packages out there, including Grimsbi, that I have not mentioned. Feel free to leave a comment if you find one you really like.

Addendum: Running Quicken under Linux

There are two ways to run Quicken under Linux.

CrossOver Office -

The first method is to run a commercial package called CrossOver Office. This Linux package is based on the WINE project and provides a Windows API interface that runs on Linux. It does not emulate Windows, it just provides the functions and methods Windows software expects to use. CrossOver Office is more advanced than Wine and has been specially tuned to run some programs, like Quicken.

The biggest issue I have with this solution is that it is a bit slow, especially in the screen repaints.

Use a Virtual Machine

The second way to run Quicken under Linux is to run Windows under Linux and then run Quicken under Windows. There are several packages out there that allow you to create a Virtual Machine (VM) under Linux. A Virtual Machine can be thought of as a virtual computer that has been created within the Operating System you are running. It acts and behaves like a real computer, except that there is no extra hardware being run. This has great possibilities for many things, including running Windows in a Virtual Machine while running Linux.

While there are several different VM packages available, my personal favorite is VirtualBox. Since Virtual Machine software is a topic for a different post, I'll leave it here for now.