Trouble Accounting

I could imagine nothing more boring than writing accounting software. When I accidentally fell into it I was shocked at how rampant misinformation tainted every package ever written.

Accounting is a process by which we hold individuals and organizations accountable in their financial behavior. It has its roots counting inventory. The standard is "generally acceptable practice" which hints at slop and confusion underneath a veneer of respectability.

We confuse counting for measurement when we assume we can reliably identify things.

It makes sense to count apples when all apples are the same. If they are sold by the unit then they are sufficiently identical until the small ones don't move.

It makes sense to count people when all people are the same. This could be a philosophically righteous position or the source of religious argument. When does one pregnant woman become two?

It makes sense to count pennies when all pennies are equivalent. Human culture advanced with the minting of gold and silver into uniform coins. See Fungible Assets

Our convention of counting pennies in units of dollars routinely confuses programmers because it makes a count look like a measurement. If one had 365 cents this would be printed as 3.65, a format only available to floating point numbers. Here begins the tragedy of rounding error.