Live data from Hacker News

Accounting for Computer Scientists (2011)

martin.kleppmann.com

21–30 of 76 posts

Re: Accounting for Computer Scientists (2011)

#21

I never understood double entry bookkeeping and that's where the author immediately loses me again: Early on after 4th diagram, author includes sentence : "Because every transaction appears twice, once positive and once negative" There is something so obvious about this to accounting folks that they always make the massive jump without any explanation. The previous diagram absolutely does not have positive and negati…

> I never understood double entry bookkeeping

While I completely agree with you and have had the same experience, I'll try to phrase it in a way that might "click" for you:

1. An account is an abstract bucket that aggregates things of the same type. For example, the "Sales" account contains all the income from sales and the "Furniture" account represents the value of all the furniture. The "bank account" represents your dollars stored in the bank.

2. A transaction is an event where something of value is moved from one account to another. For example, when you buy furniture, money goes out of your bank account and is "transformed" into furniture. When you get paid, dollars go from an "Income" account to a "Bank account".

3. The goal of double-entry bookkeeping is to show both the source and destination of every transaction. For example, if you have furniture worth $375 in your possession, where did that value come from? Right, a transaction "debited" the furniture account by $375 and also "credited" the "bank account" with the same amount.

I suspect the original article only makes sense if you already have a solid understanding of both graphs and double-entry bookkeeping though...

Re: Accounting for Computer Scientists (2011)

#22

I never understood double entry bookkeeping and that's where the author immediately loses me again: Early on after 4th diagram, author includes sentence : "Because every transaction appears twice, once positive and once negative" There is something so obvious about this to accounting folks that they always make the massive jump without any explanation. The previous diagram absolutely does not have positive and negati…

> Early on after 4th diagram, author includes sentence : "Because every transaction appears twice, once positive and once negative"

This isn't quite right, but it is a simplification that works here.

> The previous diagram absolutely does not have positive and negative for each transaction! In fact, there is 5000 going into banking account and 500+5 coming out of it.

Yes, those are two separate transactions. Each arrow is a transaction, and each of the accounts that it connects reflects the transaction (one as a positive, the other as a negative.)

> Nothing in 4th diagram is obviously the negative of that 5k transaction, to me.

The arrow with the $5000 has both the positive and the negative.

Each arrow (each edge of the directed graph) represents a "negative" for the account at the tail and a "positive" for the account at the head.

Re: Accounting for Computer Scientists (2011)

#23

Earlier quoted context omitted.

Accounting generally wouldn't depict it this way, and it's quite confusing with the bubble diagram. I always found it easier when looking at things called "t accounts" [1] Anyway, for the example you mention, it's supposed to mean that it takes 5k from the bubble on the left (founder) and gives to next bubble (bank) Then each line again takes from left and gives to the new bubble on right. So each line is a transacti…

Thanks, I appreciate your answer, though sadly it does not move the needle much for me. * the article still loses me because it defines transactions one way (the edges) and then seems to make this big switch that each edge/transaction is really two transactions suddenly (one on each side of the edge) . Similarly the explanation In Wikipedia is completely contrary to my mental framework: "tenant who writes a rent cheq…

Fwiw, I think the four in the wikipedia comes from two people using the double entry system simultaneously.

So it's two records in the landlord's own books which u dont necesarily know about, and two records in your books.

Re: Accounting for Computer Scientists (2011)

#24

I never understood double entry bookkeeping and that's where the author immediately loses me again: Early on after 4th diagram, author includes sentence : "Because every transaction appears twice, once positive and once negative" There is something so obvious about this to accounting folks that they always make the massive jump without any explanation. The previous diagram absolutely does not have positive and negati…

Money must flow from a source to potentially multiple destination. Because of that previous fact, you must have at least two postings per transaction (the double in double entry). If you manage to move money correctly without any errors, those postings in that transaction will add up to zero, making it trivial to verify you've done everything correctly without any errors.

Re: Accounting for Computer Scientists (2011)

#25

I never understood double entry bookkeeping and that's where the author immediately loses me again: Early on after 4th diagram, author includes sentence : "Because every transaction appears twice, once positive and once negative" There is something so obvious about this to accounting folks that they always make the massive jump without any explanation. The previous diagram absolutely does not have positive and negati…

Money must flow from a source to potentially multiple destination. Because of that previous fact, you must have at least two postings per transaction (the double in double entry). If you manage to move money correctly without any errors, those postings in that transaction will add up to zero, making it trivial to verify you've done everything correctly without any errors.

can't two errors cancel each other out and you still wind up at zero?

Re: Accounting for Computer Scientists (2011)

#26

I never understood double entry bookkeeping and that's where the author immediately loses me again: Early on after 4th diagram, author includes sentence : "Because every transaction appears twice, once positive and once negative" There is something so obvious about this to accounting folks that they always make the massive jump without any explanation. The previous diagram absolutely does not have positive and negati…

I wrote this a long time ago. It does tend to upset some people, but it did work as an accurate and testable mental model: https://django-hordak.readthedocs.io/en/latest/accounting-fo...

Thank you for writing and sharing that. It's one of the simplest and sane explanations I've seen. How did discussions go with accountants separating the debits/credits into being a presentation issue?

Re: Accounting for Computer Scientists (2011)

#27
post #21

I never understood double entry bookkeeping and that's where the author immediately loses me again: Early on after 4th diagram, author includes sentence : "Because every transaction appears twice, once positive and once negative" There is something so obvious about this to accounting folks that they always make the massive jump without any explanation. The previous diagram absolutely does not have positive and negati…

> I never understood double entry bookkeeping While I completely agree with you and have had the same experience, I'll try to phrase it in a way that might "click" for you: 1. An account is an abstract bucket that aggregates things of the same type. For example, the "Sales" account contains all the income from sales and the "Furniture" account represents the value of all the furniture. The "bank account" represents y…

Thanks, this was a good explanation.

Re: Accounting for Computer Scientists (2011)

#29

I never understood double entry bookkeeping and that's where the author immediately loses me again: Early on after 4th diagram, author includes sentence : "Because every transaction appears twice, once positive and once negative" There is something so obvious about this to accounting folks that they always make the massive jump without any explanation. The previous diagram absolutely does not have positive and negati…

Double entry bookkeeping is a view that was confused for a model centuries ago, and has persisted ever since.

There have been attempts to correct this, such as the "Resources, Events, Agents" (REA) model[1], which according to the Wikipedia article "is a standard approach in teaching accounting information systems." But it doesn't really seem to have had a substantial impact on the practice of accounting.

The bottom line from a modern system design perspective, is that double-entry accounting makes much more sense if you treat it as a view of some more fundamental underlying model. REA provides one example of such a model.

[1] https://en.wikipedia.org/wiki/Resources,_Events,_Agents

Re: Accounting for Computer Scientists (2011)

#30

I never understood double entry bookkeeping and that's where the author immediately loses me again: Early on after 4th diagram, author includes sentence : "Because every transaction appears twice, once positive and once negative" There is something so obvious about this to accounting folks that they always make the massive jump without any explanation. The previous diagram absolutely does not have positive and negati…

I wrote this a long time ago. It does tend to upset some people, but it did work as an accurate and testable mental model: https://django-hordak.readthedocs.io/en/latest/accounting-fo...

I like that. The fourth rule, "flipped on display" makes it conceptually a lot easier than the lengthy table of sign rules for different accounts that my boss kept on his wall.

A way I learned about it was that you want to be able to know the tangible cash value of your business at any given moment.

Post reply on HN