Earlier quoted context omitted.
I tried using John Wiegley's Ledger, which uses negative numbers. Everything was great about Ledger except for that part - I just couldn't wrap my head around it.
Maybe this is one of those things that's harder to understand if you have an accounting background. As someone without an accounting background, I found it incredibly intuitive: if money moves out of an account, that's a posting with a negative number; if money moves into an account, that's a posting with a positive number; a transaction is a set of postings that together sum to zero, indicating that no money has bee…
Double-entry bookkeeping as a directed graph
341–350 of 388 posts
Re: Double-entry bookkeeping as a directed graph
#342Everyone should do their own accounts. I've been doing it for over 12 years and I'm so glad I've kept up with it. I don't bother keeping my ledger immutable, though. The point about immutability is that whatever happened is immutable (because it's in the past; it already happened!) and the ledger should just reflect that. So if I somehow made a mistake in my ledger I just correct it. I keep my ledger in git so that d…
Great idea to treat of personal finances like a business. Also makes a great source of data for stats. Can you share more on the system you've come up with? In what format do you store the data? Do you store files per account, or per day, etc.? Do you have a CLI helper to quickly read, write, edit the files? Maybe you can even share a demo repo?
I believe this same plain text format is used by other tools, which you can find info about here: https://plaintextaccounting.org/ (In particular a lot of people seem to use hledger and beancount)
The ledger is written using a text editor. The purpose of the software is to add everything up, calculate the balances and make sure everything balances. I keep all of my 12 years of accounting in one file and haven't noticed any slowdown. But a real business would surely have many more accounts and may want to split files by financial year or something.
I use helper scripts to convert the data from my bank CSV downloads into ledger format. It uses machine learning to associate payees to accounts (e.g. "Tesco" gets filed to the account "Expenses:Groceries"). I haven't maintained the ML part although it works for me most of the time. In case it's useful, the code is here: https://github.com/georgek/accounts/
Re: Double-entry bookkeeping as a directed graph
#343Earlier quoted context omitted.
> And how about food? I can understand a book having a resale value I keep in my books, but once I've eaten the hot-dog I bought it is gone forever. Perishable and consumable food wouldn't be counted as an asset in the first place. You spend the money - it's credited to your asset account (reducing the value of your cash-in-hand) and then debited from your expense account (reducing the value of your equity - or, in m…
Of course it would be, asset is anything of value, you're confusing with subtypes of assets. Just mujhe liability is anything you owe regardless of for how long
Re: Double-entry bookkeeping as a directed graph
#344Earlier quoted context omitted.
It's a trade off. Immutability is a big enough win to pay the price of a few extra CPU cycles. In practice it's very quick anyway. Computers are very good at adding numbers together (it's almost like it's what they were made for!). I keep all my accounts for over 12 years in one file and I still don't notice any delay when calculating balances etc. If it does become a problem then one solution is to take sums at some…
I mean, yes for personal accounts with a couple of thousand transactions - sure. But esp. in payments or in exchanges there can be accounts with millions of transactions a day. So you get a double-whammy - those are hot-accounts which also slow down the system, recalculating the balance for those accounts each time a transaction happens isn't an option
Re: Double-entry bookkeeping as a directed graph
#345Earlier quoted context omitted.
> That's exactly right -- you don't need to. The problem is that people do use this terminology, and they use it in a way that conflicts with common usage I used to think that way, then I understood this thinking is the exact opposite of what’s happening. Hundred million people on earth know how to work with debit and credit exactly as it has been written in accounting books for hundreds of years. When you need to ex…
That's because people are trained into the system. If you started teaching it another way, eventually that other way would be the norm.
Re: Double-entry bookkeeping as a directed graph
#346Earlier quoted context omitted.
> Bob's account has a credit of $12 and a debit of $7 (I'm 80% sure that the above reads that Bob actually owns $5 he can spend. But I'm equally sure that I get Debits and Credits backward, so I probably read it wrong.) In any case, you've only described a single account at rest. You need to go one step further and describe an entire transaction in those terms, so that someone can swoop in and say "you got it backwar…
You read it correctly. The account's "balance" would be a "credit of $5". A transaction involves multiple accounts, so it would be written as multiple sentences: "Alice's account has a credit of $7. Bob's account has a debit of $7." If you want to write about the transaction itself, you could do that with a verb: "Transaction #23254 applies a debit of $7 to Bob's account, and a credit of $7 to Alice's account." A dou…
Re: Double-entry bookkeeping as a directed graph
#347Earlier quoted context omitted.
You were the one advocating for incompetence.
That was not the incredible burn you hoped for, because it kinda suggests a lack of consideration for the practical design of a modern computer, in which memory is tiered in orders of magnitude of time latency from CPU registers on down through on-die caches and so forth, each tier effectively acting as a local cache for the next level. Writes are super expensive and bust cache lines and coherency all the way down to…
Re: Double-entry bookkeeping as a directed graph
#348Earlier quoted context omitted.
Well, if I have a local entry ACME, inc Employment Income $100 DEBIT in my employment income account that money has not come out of thin air. Remember, money can not be created nor destroyed in this system. Somewhere there is a matching entry something like bregma, services rendered $100 CREDIT in my employer's books. And that money, in turn, was probably moved in from some other account internally. Mean time the onl…
I agree generally speaking, but what does that have to do with your local books? Nothing. You almost certainly don't have access to your employer's books. Also, the ledger entries for "bregma, services rendered" i.e. payroll will be much more complicated than that, there will be taxes, deductions, etc they have to account for as well.
It's how double-entry bookkeeping works. Money can neither be created nor destroyed. On your local books you have an account where money goes and appears to be destroyed, but in reality there is a doubled entry in someone else's books. Just because you're unaware of it does not mean it does not exist.
And it's true that bookkeepers will have splits in their ledger in which one transaction consists of multiple entries, but that's a convenient shortcut for consolidating multiple items each of which is one half of a double entry. It has no bearing on how double-entry bookkeeping works and just needlessly complicates a description of the fundamentals. It has only to do with conventions for recording double-entry bookkeeping, just like using DB and CR to indicate whether entry is moving money into or out of an account.
Re: Double-entry bookkeeping as a directed graph
#349Earlier quoted context omitted.
One way to think about is you always "credit" the source of the money. If you get money from somebody you "credit" them for giving you the money. You say "I must give you credit for having done this". If money goes into your bank-account you don't credit your bank-account because money didn't come from there it went there. If you don't credit the bank account you must be doing something else and that is called "debit…
Thanks this explanation helps. Does that mean that from the banks perspective my deposits are a liability?
Re: Double-entry bookkeeping as a directed graph
#350Earlier quoted context omitted.
The 'double' in double entry book-keeping is related only to the book keepers own records/books. It has nothing to do with counter party's record keeping. If Alice purchases a house worth $100,000 in cash, then 2 (double) accounts will get effected. Her cash account will decrease (Credit) by $100,100 and simultaneously her House equity account (or any other appropriate name such as immovable asset etc) will increase…
Don't forget the depreciation, interest, maintenance, and tax accounts if you want to track those against the real estate cost basis for various purposes. You also need to figure out how to create and map accounts to IRS rules or you could put yourself in a real bind when it comes to figuring out tax liabilities or deductions.