The Dimesum blog
How a money share tracking app is actually built: the ledger that cannot drift, the bill maths, the parser we deleted, and the art direction behind the dumplings.
-
Money
Best bill splitting apps: 11 ranked on what lasts
We ranked 11 bill splitting apps on the four things that decide it: edits that keep history, per-currency balances, fewer transfers, and a clean exit.
-
Engineering
We deleted our natural language expense parser
Dimesum deleted its rules-based natural language expense parsing after four money bugs, and shipped one refusal rule that returns a number or nothing.
-
Money
The rent split guide: divide rent with roommates fairly
A practical rent split guide: divide rent by room size or income, prorate a mid-month move, and split utilities by a different rule. Worked $2,400 example.
-
Money
How to split an itemized bill when one dish wasn't shared
Split an itemized bill line by line: name who ate what, let the total derive from the lines, and allocate tax and tip by what each person ate.
-
Money
Settle up: how to clear group expenses in fewer transfers
What settle up means and how to do it: net every balance instead of repaying receipts, clear a group in at most n-1 transfers, and confirm both sides agree.
-
Money
Six money bugs in multi-currency expense splitting
A multi-currency expense splitting audit found six money bugs a green test suite never saw. Read every defect, its cause, and the fix that deleted an engine.
-
Design
Four illustration styles, and the one that ships
Dimesum drew four illustration styles and shipped one. The brand art direction rule: a colour that cannot become a token cannot be re-themed.
-
Money
Why editing a shared expense must restate the split
Editing a shared expense in Dimesum means restating the whole split, so fixing a typo never pulls in a flatmate who joined later or flattens 70/30 to 50/50.
-
Engineering
The append-only ledger that keeps split-expense balances exact
Dimesum posts every split expense to an append-only ledger, so balances become a projection you can delete and rebuild instead of a number that drifts.