Readit News logoReadit News
LeanOnSheena commented on Calling All Hackers: How money works (2024)   phrack.org/issues/71/17... · Posted by u/krrishd
globular-toast · 2 months ago
He's talking about bonds, though. These can't generally be paid back early. The same goes for some other loans like mortgages which often come with an agreement that you won't pay it back within a number of years (unless you pay a fee). If you intend to pay back the interest normally then you could totally book it as a liability up front, it's the same thing at the end of the day. I mean, it is literally a liability. You've agreed to pay back the amount of the loan plus interest.

I'd encourage people doing their own accounts to think of it like this and don't do things that professional accountants do "just because".

The thing is accounting is all made up. We try to squeeze this idea of "value" into this abstraction called "money" and make it all work. But it's trivial to find cases where it's overly simplified and doesn't really work.

For example, how do you book depreciation of a motor vehicle? For the average person with a single utility vehicle the vehicle's value remains roughly the same from the moment of purchase until the moment is is written off. The value is its utility to you. In my accounts, I book this simply as "1 car" in my assets. But accountants don't like that. Everything has to be valued in money. So you end up with stupid stuff like averaging the depreciation over time that is pure fiction and only exists to make the books work and reduce the "shock" when a vehicle is finally written off.

LeanOnSheena · 2 months ago
CPA here again, You're poking and some very interesting concepts! There is a lot to explore. Some thoughts:

- Yes money is in many ways best thought of as an abstraction. A socially agreed upon store of value that is easily exchangeable for other things of value. There is a tension (and a spectrum) between commodities that have use value and money commodities that have exchange value. In nascent market economies, commodities with use value can emerge as money commodities through consensus, that is, they emerge as socially agreed upon exchange value commodities. Think cigarettes in prison or precious metals like gold. Money commodities emerge naturally once there is enough stable volume of market activity which ensures liquidity. It's all contingent on constant market activity to keep it liquid as well as a sustained social consensus that is represents a store of exchange value. This is a lot of what Marx's Das Capital explores.

- Things like vehicle depreciation are not just so the books "work" nor is the intent for it to perfectly represent how an asset depreciates. Consider a milk delivery business. I buy a delivery vehicle year 1 for $40,000 and I expect it to last me 10 years approximately. Let's say I earn $10,000 a year for the delivery business and I pay a driver $7,000 a year to deliver milk using my delivery vehicle. If i don't include depreciation of the delivery vehicle my net income is $3,000 annually or 30%. Pretty darn good! However, we know the vehicle asset was used in service of earning all that revenue, so we should include something to ensure all revenues are netted against all known expenses whether they are wages or capital assets deployed in service of earning said revenues. Otherwise we have an incomplete picture of the business performance in our annual income statement. If I include $4,000 of annual depreciation on the vehicle suddenly I am no longer profitable to the tune of $1,000 a year. This is the matching principle. Profitability needs to ensure all revenues netted against all expenses associated with earning those revenues regardless of cash flow timing.

- But your point stands... The specific amount of depreciation annually is made up mostly, maybe the asset depreciates slower or faster. But there is enormous value in a rule consistently applied. Let's say you're an expert in delivery trucks and you know that the asset will last 20 years not 10... You could purchase the business at a cheap valuation because on paper it loses money annually, but you know the depreciation should only really be 2,000 and therefore the business is actually profitable all other things being equal. You leverage a widely recognized and understood standard applied very consistently as being imperfect, and you use that as a stepping stone to back into what you believe is the true value. This is where things like EBITDA come from that start with GAAP measures and back into what are believed to be better representations of business value, but it hinges on widely understood accounting standards being applied very consistently to create financial information that can be modified for other uses.

Deleted Comment

LeanOnSheena commented on Calling All Hackers: How money works (2024)   phrack.org/issues/71/17... · Posted by u/krrishd
danielmarkbruce · 2 months ago
You might be right. It's also possible you are wrong though. Some things have a lot of moving pieces and if one piece is off the entire thing is wrong - so you have to commit to getting a grounding that is quite thorough to have any understanding at all. I'd argue accounting is one such subject, finance is one, the legal system is one, software engineering is debatable, math isn't one.
LeanOnSheena · 2 months ago
I am a CPA by training originally, but have spent most of my time in operational finance roles for PE-backed technology companies. While my work is all finance and accounting related, I mostly work with SQL and Python day to day creating internal applications for things like ARR etc.

I agree completely on your "thorough grounding" comment. I spend a lot of time explaining to finance people how tools like python, SQL, AWS stuff can be leveraged in simple ways for analytical purposes, and I spend a lot of time explaining to technology people what all the finance and accounting stuff is really about. In both cases my experience is it always comes back to explaining fundamental ideas or concepts over and over, but applying them to different situations and contexts (I do so much more confidently when explaining accounting and finance stuff since I have deeper education & experience there).

A lot of times these fundamental ideas and concepts can be explained very simply and intuitively using toy examples. the problem is it can take years and years to build up enough experience to really separate the signal from the noise and see clearly what is truly fundamental (yes that's where formal education is helpful but it can be hard to really grok absent experience imo... In the same way learning a programming language can be easier if you just try to build something).

A deep understanding of fundamental concepts is what allows you to pick apart very complex and novel problems into it's component parts. A deep understanding of fundamental concepts is one of the things that separates professionals from non-professionals in my opinion.

LeanOnSheena commented on Calling All Hackers: How money works (2024)   phrack.org/issues/71/17... · Posted by u/krrishd
gerdesj · 2 months ago
You are fixating on one tiny point which isn't really that important within OP's ... errm "opus".

Why not critique the entire work?

Anyway:

I borrow 100 from someone. I am now in debt and they are in credit - to balance, both are 100.

However, they require a return on investment - usury: 10 for 100 (or a 10% margin - call it what you like).

When I take out my loan, I am in debt for 110 and they are in credit for 100 with a promise of 10 later. So we have some accounts - my one account is 110 in debit (I borrowed 100 and promised to pay 10 on top) and they have two accounts - one for the principal (100) and another for the 10 interest. To me, in this case, the principal and interest are part of the same account but to the lender they are separated out because the interest is probably taxable as income.

However, it might be the case that I can set off my debt or the interest on my debt against some tax. In that case I will maintain two accounts - the principal and the interest.

All those interests will also end up in additional accounts related to probably banking.

I've probably pissed off a few accountants with my choice of terms but in the end I do understand how fiat money works.

What gets on my tits is assertions such as "People who don't understand ..." with no working.

LeanOnSheena · 2 months ago
Yeah CPA here. On the day you take out the loan you're not in debt 110, you are in debt 100; you would accrue interest expense over the term of the loan. What if the lender called the loan day 2 for some reason? You wouldn't pay 110, probably just 100 plus one day of interest. Goes back to fundamental definitions of financial statement elements. Liabilities are present obligations.

Anyways, recognizing the interest over time would debit an expense account and credit some liability account... Could be the same account as the loan or could be an interest payable account, doesn't really matter in the context of the example.

Also you would not be "in debit"; the liability is on the credit side of your balance sheet.

LeanOnSheena commented on Calling All Hackers: How money works (2024)   phrack.org/issues/71/17... · Posted by u/krrishd
isubkhankulov · 2 months ago
The $100 does become a liability on your balance sheet. You’re right that interest doesnt and is an expense.

In the context of this post, does it matter? He’s not teaching bookkeeping here. He’s explaining the time value of money.

LeanOnSheena · 2 months ago
He's explaining the time value of money but uses an example that accrues interest before any time has passed?
LeanOnSheena commented on Calling All Hackers: How money works (2024)   phrack.org/issues/71/17... · Posted by u/krrishd
danielmarkbruce · 2 months ago
Most of the really stupid stuff written is written in good faith. It's not an excuse. There are many good books written about the financial system, accounting, etc. Rather than writing just another (incorrect) blog post, why not point to the good sources of information?
LeanOnSheena · 2 months ago
I didn't say it was an excuse. There is value in articles that correctly synthesize fundamental concepts in ways that bring in new learners who are curious and open to learning. There are things the author gets right, even if they are a bit facile.
LeanOnSheena commented on Calling All Hackers: How money works (2024)   phrack.org/issues/71/17... · Posted by u/krrishd
dghlsakjg · 2 months ago
Extremely simplified:

When I deposit a dollar, the bank records a $1 deposit liability. If the bank makes a $1 loan, it creates a new $1 deposit for the borrower.

If that dollar is spent and redeposited, deposits increase even though the amount of base money has not. It looks like multiplication, but what’s really happening is that loans and deposits are expanding together on the balance sheet.

The bank is not creating wealth out of nothing. It now has matching assets (loans owed to it) and liabilities (deposits owed to customers), backed by capital that absorbs risk.

With reserve ratios effectively zero, lending is constrained by capital requirements and risk management, not by reserves. Banks cannot recirculate a single dollar endlessly without sufficient capital.

LeanOnSheena · 2 months ago
The bank of England has some incredible articles that explain this that have been circulated on HN before. Really fantastic reading for those wanting to understand the mechanics.

https://www.bankofengland.co.uk/quarterly-bulletin/2014/q1/m...

LeanOnSheena commented on Calling All Hackers: How money works (2024)   phrack.org/issues/71/17... · Posted by u/krrishd
danielmarkbruce · 2 months ago
This is bad, don't read it. When you borrow $100 you do not create a liability which includes the interest to be paid.

People who don't understand the very basics of finance and accounting shouldn't write about finance and accounting.

LeanOnSheena · 2 months ago
Yes, at the time of the initial transaction the borrower would not have a liability on their balance sheet that included the interest due.

Over the course of the borrowing period the borrower would accrue interest expense commensurate with the passage of time that would increase the borrowers total liabilities. The author misunderstands the fundamental accounting definitions of liabilities (and also assets). Liabilities (under US GAAP but same core idea under IFRS) are present obligations. At the initial time of borrowing the borrower does not have a present obligation to pay interest on the liability. Similarly, an asset is a present right, and at the time of initial borrowing the lender is not owed the interest.

It's not the worst thing I've read, the author has clearly spent time learning things in good faith. That said, there are lots of indicators the author is not an expert in accounting / finance.

LeanOnSheena commented on Every System is a Log: Avoiding coordination in distributed applications   restate.dev/blog/every-sy... · Posted by u/sewen
Animats · a year ago
This is a basic concept in accounting. The general ledger is an immutable log of transactions. Other accounting documents are constructed from the general ledger, and can, if necessary, be rebuilt from it. This is the accepted way to do money-related things.

Synchronization is called "reconcilation" in accounting terminology.

The computer concept is that we have a current state, and changes to it come in. The database with the current state is authoritative. This is not suitable for handling money.

The real question is, do you really care what happened last month? Last year? If yes, a log-based approach is appropriate.

LeanOnSheena · a year ago
You're correct on all points. Some additional refining points regarding accounting concepts:

- General legers are formed by way of transactions recorded as journal entries. Journal entries are where two or more accounts from the general ledger are debited & credited such that total debits equals total credits. For example, a sale will involve a journal entry which debits cash or accounts receivable, and credits revenue.

- The concept of the debits always needing to equal credits is the most important and fundamental control in accounting. It's is the core idea around which all of double entry bookkeeping is built.

- temporally ordered Journal entries are what form a log from which a general ledger can be derived. That log of journal entries is append-only and immutable. If you make an mistake with a journal entry, you typically don't delete it, you just make another adjusting (i.e. correcting) entry.

Having a traditional background in accounting as a CPA, as a programmer I have written systems that are built around a log of temporally ordered transactions that can be used to construct state across time. To my colleagues that didn't have that background they found it interesting but very strange as an idea (led to a lot of really interesting discussions!). It was totally strange to me that they found it odd because it was the most comfortable & natural way for me to think about many problems.

LeanOnSheena commented on Accounting for computer scientists (2011)   martin.kleppmann.com/2011... · Posted by u/Anon84
rendaw · 2 years ago
I'm eternally interested in learning more about accounting, but I think this is missing crucial information to actually explain what "accounting" is while laying on this patronizing anti-intellectual "accountants use hard words" writing style.

1. What are you trying to solve by "doing accounting"? After reading this article, it seems like it's some sort of arbitrary aesthetic, like people who think the point of organizing is to have no more papers on your desk.

2. How do the actions in this guide solve those questions? Why make a graph? Why make extra buckets? Why color them? Relatedly, I couldn't find an answer to "why is double entry bookkeeping revolutionary" despite spending a fair amount of time searching. I think it's either related to manual accounting (i.e. not relevant to computers) or is directly related to this question.

I appreciate the mapping of accounting terms to graph features, but the title is way too grand for the contents. I just noticed another commenter who seems to know a lot more than me says roughly the same (although much more negatively).

In addition, here are some things I'd like to know (in addition to the above, although I have guesses to the answers to some):

1. How to deal with accounting over time? When received payments and made payments are at different dates, amortization, etc. If you're trying to identify missed payments, time disconnects create permanent gaps which may or may not be an issue.

2. How to deal with multiple currencies. Related to variance over time: exchange rates, balance calculation, etc.

I feel like "make a graph" is the easy 5m answer and the first thing you arrive at if you look up double entry bookkeeping.

Lastly, I agree that accounting is a fundamental skill, but before you can do accounting you need _data_. All transactions, categorized, all accounts, all balances. This is the hard part. If you're an accountant and this is your job, okay. If I need to manage N accounts in my time after work, well that's a significant chunk of my non-work time.

Mint doesn't work well outside major western spheres. For a while I maintained my own scrapers, but I've fallen back to "just spend as little as possible and you'll avoid going negative" which is not where I want to be but until there's open banking here I don't see many options.

LeanOnSheena · 2 years ago
Hi rendaw, I made an account just to reply to you because I think your questions are excellent ones.

I am a CPA by background. While much of my professional work today involves programming and working with data, I continue to work primarily in accounting and finance contexts because it is the type of work that I find most interesting.

I don't have a ton of time right now but let me at least answer your first question "what are you trying to solve by doing accounting?". At its core double-entry accounting is a control system (e.g. safeguarding the resources / assets of a corporation by tracking their use). The most important control is that debits must always equal credits. You might understand that in the context of a balance sheet, however it's important to recognize that double-entry accounting systems record business events by way of journal entries. A valid journal entry must include two or more accounts where the sum of debited amounts always equals the sum of credited amounts (if you want to understand why that is a rule I can talk about that in another post). It is a simple & rigid rule, however it still affords enormous flexibility in terms of being able to precisely express business events.

All financial statements are derivative of a series of time ordered journal entries. This series of entries is known as the general journal (not the general ledger which is more often talked about). The general journal is basically just a log of business events. Business events recorded in the form of journal entries are discretely understandable, although you often need the context of other entries to be sure about what's actually occuring.

It's also very important to recognize that this log of journal entries is append-only and immutable. If a mistake is made you never go back a delete an old journal entry, you just make a new one to correct it (sometimes called an adjusting entry). This preserves the ability to review journal entries and intuitively understand what a business is doing over time.

For example, when a company makes a sale you might see a journal entry where accounts receivable is debited and the sales account is credited. A week later you might see a journal entry where cash is debited and accounts receivable is credited, reflecting that the amount for the sale made a week earlier was collected.

This concept of an immutable time-ordered log of events is / was a powerful and useful idea for some obvious and not so obvious reasons that I could talk about for days.

I believe this blog post is also valuable to read and it specifically mentions accounting data structures (I believe it is fairly well known) https://engineering.linkedin.com/distributed-systems/log-wha...

Can talk more later if anyone is interested.

u/LeanOnSheena

KarmaCake day43October 21, 2023View Original