> Ledger is almost the most boring, austere accounting
> program you could think of.
This does not strike me as a good way to get yourself doing accounting properly. I am anal about keeping dual-entry accounting, but part of the fun is the graphs, and part of what keeps me sane is auto-import from all sorts of sources.
I use MoneyDance, which is like GnuCash only much less ugly.
Auto-import with Ledger is trivial and programmable. You should have a look at the ledger convert command.
Another major benefit is that Ledger data is stored in plain text files and can be put in a git repo.
Currently I have more than 7 accounts across various regions (Ledger has great currency support) and I am able to process a full month of transactions in under 10 mins. Ledger so far has been the most painless system I have ever used.
> Auto-import with Ledger is trivial and programmable. You
> should have a look at the ledger convert command.
That's good to hear
> Another major benefit is that Ledger data is stored in
> plain text files and can be put in a git repo.
I don't think I've encountered a situation where that would be useful.
> Currently I have more than 7 accounts across various
> regions
I am running 37 accounts in 4 currencies. Some of these represent checking accounts, some are CC accounts, some are stocks and shares, one or two are assets that I'm depreciating over time, there's an informal loan owed to me, a loan I have been given from a bank, and I use a couple of virtual ones as a budgeting mechanism. On top of that, I have about 60 various categories (which are - I guess - another type of virtual account) for various sources of income and expenses. Many of the above are hierarchal in nature. About 1/8th of my transactions are actually one-to-many transactions rather than one-to-one. This represents my personal accounts, and not my business accounts, which I let FreeAgent + an accountant handle the gnarly details of.
While this may sound complicated, it is in fact incredibly convenient, and it's exceptionally easy to pull out (or put in) almost any kind of data I want.
The GUI autocompletes my transactions as I create them, remembers how I like to categorize stuff, comes with a lot of built-in graphs, syncs to my iPhone (although the iPhone app is a bit naff), will automatically create transactions for me on a monthly basis if I want, and presents me with a dashboard.
I am just about old enough to remember people dismissing colours in their xterm's as being too hipster and distracting, and also about old enough to remember some people proudly saying `lynx` was all they needed from a text editor.
I cannot imagine why I - and I spend almost all day in a `screen` session already - would want to hand-edit my transactions in a text-editor and use a CLI tool.
> I don't think I've encountered a situation where [a git repo of financial data] would be useful.
The repeated SHA1 commits would form a kind of semi-proof, and of course having history information would help catch and resolve data entry errors.
> I cannot imagine why I - and I spend almost all day in a `screen` session already - would want to hand-edit my transactions in a text-editor and use a CLI tool.
Ease of use. Adding a transaction is a simple 'echo … >> FILE'. Scheduled transactions are just cron jobs. You can easily write your own code to handle interesting transaction types (e.g. sum-of-years'-digits depreciation). You can easily import & export data.
If you actually live on a CLI, odds are that you actually enjoy working in your text editor.
Unfortunately, MoneyDance does not provide for split transactions. I use that quite a lot in GNUcash. My monthly salary is split up in 7 different components (income, taxes, insurance, reimbursement for work-expenses, bonuses, pensions and payment on checking-account).
It would really make the accounting messier, would I have to split this in separate transactions.
I would be willing to pay (or help develop) a good, versatile accounting program for personal finances and small businesses.
I use MoneyDance, which is like GnuCash only much less ugly.