Hacker News new | ask | show | jobs
by Spooky23 2988 days ago
Seems like alot of work to replace a spreadsheet!
1 comments

These ledger programs don't really do the same job as a spreadsheet. You could do it in a spreadsheet, but it would be very difficult and error prone.

A spreadsheet is more of a general calculating device. I have rows and columns and I can do arbitrary calculations on rows, columns and various cells. A ledger is a tool for double entry accounting. You have transactions against accounts and you are trying to validate that the transactions are consistent. There are other kinds of reports you can do, but your main purpose is to ensure that there haven't been any errors.

I find double entry accounting weirdly soothing. "Fun" is not really the word to use, but it's a bit like fishing when you don't really expect to catch anything ;-). For most people double entry accounting for your home finances is overkill -- you probably don't care if you make mistakes because the consequences are pretty small. But it's kind of neat/cool/zen to do it anyway.

If you are running a company, or you have a large portfolio of stocks/bonds/etc, or if you are dependent on transactions in FOREX, then double entry accounting is usually a necessary tool. The downsides for screwing up can be massive (especially if you get your taxes wrong!) I have personal experience with the government handing me huge penalty fees for mistakes that my employer made with various things (stock options, etc). I never reconciled the books and so never noticed the errors. Perhaps that's why I find double entry accounting soothing now :-)

As a programmer, I find ledger/hledger/beancount to be the most convenient way to do things. My text editor is already an extension of my hands. I can use any version control I want. I can write my own reports using any language I want. I can write code to automate transactions and I can do it in any language I like. ledger and the like are really just file formats coupled with a validator and a few canned reports. Like I said, you could do it with a spreadsheet, but without the constraints of the file format/validation it will be pretty easy to make a mistake. Also it would be a pretty huge piece of code to write using spreadsheet macros (not that this ever stopped anyone before ;-) ).

This. It's overkill for most people, but I wanted it anyway. I've made plenty of financial mistakes over the years despite having finances tracked in systems like mint. And for better or worse I'm not much of a spreadsheet person and wanted a fast experience when chugging through manual changes/updates.

Ultimately, I'm looking forward to making some custom reports where I force myself to learn the math behind finances, and try to add some visualization ideas I haven't seen yet.

Also, the other thing about doing plaintext over a spreadsheet is that I feel like I can be more liberal about adding comments for certain transactions - if anything it makes things feel a bit more personal than trying to cram in comments within a spreadsheet or an off-the-shelf app.

Thanks for the perspective!