Exactly what does "immutable" mean here?
Reading the page, that's exactly it; journal entries are an append-only log.
11–20 of 66 posts
Exactly what does "immutable" mean here?
Reading the page, that's exactly it; journal entries are an append-only log.
It’s also the original event-sourced conflict-free replicated data type and the joke about CRDT for your debits is a classic thigh-slapper in the exciting world of accounting software backend implementation
[1] https://www.waveapps.com/ [2] https://play.google.com/store/apps/details?id=com.waveaccoun...
> immutable Man, don't fuck up.
We built our own double-entry accounting engine at my previous company, and while the engine was not as fancy as what Square describes, the real challenge was building out the accounting models that manipulated the engine's primitives.
To this day, I have yet to find another resource on multi-currency that is as solid as this one:
https://www.mathstat.dal.ca/~selinger/accounting/tutorial.ht...
> It’s impossible to split a single payment into multiple payouts, since there is a many-to-one relationship of payments to payouts.
So your model used a many-to-one relationship when you really wanted a many-to-many?
> Since this is just a SQL database, there’s nothing preventing the payouts from becoming inconsistent.
Preventing inconsistencies by enforcing constraints is a key point of an RDBMS. This is literally why people use SQL DBs.
> The payout_id can be ensured to be a valid foreign key, but nothing is stopping it from being nulled out.
You mean, like a NOT NULL constraint? Or, if you mean zeroed out, an appropriate constraint and/or before update trigger protecting the amount?
For personal use, Beancount[1] looks like a good double-entry bookkeeping tool. [1] https://docs.google.com/document/d/1RaondTJCS_IUPBHFNdT8oqFK...
For personal use, Beancount[1] looks like a good double-entry bookkeeping tool. [1] https://docs.google.com/document/d/1RaondTJCS_IUPBHFNdT8oqFK...