frontpage.
newsnewestaskshowjobs

Made with ♥ by @iamnishanth

Open Source @Github

fp.

Open in hackernews

10 years of personal finances in plain text files

https://sgoel.dev/posts/10-years-of-personal-finances-in-plain-text-files/
114•wrxd•2h ago

Comments

zahlman•1h ago
This seems to be, in effect, advertising for a book about how to use the underlying FOSS software to do this.

I would be okay with that as a monetization model, except that the book author despite being a self-described FOSS dev doesn't seem to have anything to do with the project (https://github.com/beancount/beancount/graphs/contributors).

Ah, not quite true. The author fixed a typo in a docstring once (https://github.com/beancount/beancount/commit/8584763b618f76...).

veltas•1h ago
If you look at their personal profile they've made a lot of content with activity and collaboration outside of the main beancount repo, related to beancount. They definitely meet the criteria for 'FOSS dev' in that it's FOSS, too.
zahlman•49m ago
Thanks. I was not denying the author FOSS creds generally, just expecting actual involvement. It seems this is someone who cares about the project (and I do like the sound of the project).

I'm just, you know, pretty sensitive to HN submissions trying to sell me something.

OJFord•1h ago
And only... what, Italians, can write books on the Romans?
zaphirplane•56m ago
That’s a bad analogy because the qualification is being born in a region not acquiring knowledge thru working. an equivalent would be only electrician can write a book on wiring.
rplnt•35m ago
Do you mean wire and tool manufacturers? Electrician is mostly a user. Or to avoid flawed analogies - should books on Windows, Office, ... be only limited to a small subset of Microsoft employees? I'd assume the book is for users, what does it matter if the author contributed to the project?

And that's still ignoring that evangelism is also a valuable contribution.

fragmede•1h ago
Oh no, someone might make some money off work they did that was related to work a different somebody did! What a travesty! Somebody stop him!

I know money is the root of all evil and all that, but a total aversion to it isn't a very healthy way of interfacing with it at all.

mtlynch•9m ago
Aside from the fact that writing a book about Beancount is a positive contribution, the author maintains a list of Beancount resources[0] and has written several beancount plugins.[1, 2, 3, 4] I have personally benefited from his contributions to the Beancount ecosystem.

Can you point to some of your contributions to this project?

[0] https://github.com/siddhantgoel/awesome-beancount

[1] https://github.com/siddhantgoel/beancount-n26

[2] https://github.com/siddhantgoel/beancount-ing

[3] https://github.com/siddhantgoel/beancount-dkb

[4] https://github.com/siddhantgoel/beancount-commerzbank

yanis_t•1h ago
Plain text files are appreciated.

I started storing all my notes (500+ by today) in markdown files locally. It's easy to search and navigate with grep and ag/rg. It's easy to edit in Vim or your favorite editor. It's easy to append all sorts of informations. I add some flags and properties in metadata, like last_reviewed, some tags, etc.

The versioning and sync is solved by git + a private github repo.

skwee357•1h ago
I have 14 years of personal (and 2 years of sole proprietorship) finance data in beancount. I tried all the available personal finance apps there are, from cloud/online offerings to offline apps. Eventually, I settled on beancount because it is the most versatile file format. In addition to tracking finances, I can track stocks, unvested RSU grants, vacation hours, and even personal training I have paid for but yet to use.

It's cumbersome at times, and I do miss the (G)UI of entering transactions, but with (neo)vim I got used to it and I breeze trough my finances in 15-20 minutes once a week.

altmanaltman•1h ago
it's good (even novel) if you're a dev or are used to working with this kind of interface.

But for the vast majority of people (even including devs), this will not be ideal at all and most people don't really care about it being in text files.

What I'm trying to say is that its designed for a very specific niche userbase and I doubt most people will have the same experience as you described after trying every single personal finance app to settle on this.

commandersaki•12m ago
Do you manage your beancount files in version control? Or just keep free floating files around?

I'm intrigued by this and now thinking I should start doing it. Just start with a clean slate for 2026 and see how I go.

jayfx•1h ago
> 30-45 minutes every single month

That's 6–9 hours every year!

5 years: 30–45 hours

10 years: 60–90 hours

fodkodrasz•1h ago
wow, a whole workday a year! People spend more time arguing on the internet in topics of no impact to their lives each year.
jayfx•1h ago
I'd still consider that toil (repetitive, manual, automatable work).
fodkodrasz•1h ago
the beauty of beancount (and other plain text accounting ledgers) is the ability to automate them. I also have to go over my accounts in my bank app's automatic categorization and revise them every month, as some transactions get mislabeled.
fragmede•1h ago
Yeah ok but tabs really are better than spaces!
tkfoss•1h ago
How many hours a year do you spend to make the money? How many hours is ok to spend then managing that money?
djhworld•1h ago
I've been beancount'ing for years now

As we've crossed into the new year I've switched to a similar directory setup as the OP with 1 file per year. Previously I just had one file that was from 2022 which ended up being like 2 million lines of text, which was starting to bog down the emacs plugin.

What I appreciate the most about this approach to personal finances is it just tracks everything. Investments, pensions, RSUs, bank accounts. You could even go as far as accounting for any resource that's modellable, e.g. energy usage in kwh vs. bills. I probably wouldn't go that far though :D

Also you can build a bunch of tooling around it too, with the advent of LLMs my toolset for beancount management has expanded quite significantly. Most recently I got claude to rewrite my transaction rules engine https://djharper.dev/post/2025/08/19/using-llms-to-turn-scri... into something nicer with a UI. This would have taken days to build in the before times, and I probably would not have bothered because it's overkill for 1 user (me)

JulianWasTaken•1h ago
I have my electricity bills tracking into a KWH commodity. It has been... effectively useless :D.
quietsegfault•23m ago
I struggle with tracking the actual cost of my energy usage between changing electric rates, the various solar costs, SRECs, different loans and credits and incentives to be able to make an intelligent decision on what the benefit or cost is of cutting an appliance or adding something new. It’s a lot.
avdwio•1h ago
I'm curious about this as I've thought about building personal software to manage my data (such as finances) via LLM, however I'm apprehensive about actually supplying that data to the LLM to help build the tool. Is this what you're doing? Now that I think about it, I could probably 'anonymise' the data with a local model...
djhworld•1h ago
Nah not exposing the data to the LLM, just building the tools to help me manage the data, usually python scripts
ivanjermakov•1h ago
Having all transactions in bank accounts makes it trivial to regularly export statements and parse them into financial insights.

I made a tool that parses transactions (of my specific bank) into categories based on tx description and a GUI to analyze them in different time frames.

Highly recommend.

JulianWasTaken•1h ago
beancount is definitely fun. I also jumped on this bandwagon in 2025 and it's been a great archaeology experiment of digging through old emails and trying to find as much data as I can about what the heck this random checking transaction is from 2012.

I think a nice thing about beancount is that given how simple it is you can almost even ignore whole parts of it. In my case I chose to write my own importing tooling essentially without learning at all about the built-in one: https://github.com/Julian/alubia. I had no intention to make that approachable for lots of users not named me (in fact none of my actual importers are present) but it's been very fun to watch my ledger get more and more accurate.

thomascountz•1h ago
I began with PTA recently. I think the barrier to entry is high because you first need to learn double entry bookkeeping (if you haven't already) and then you need to decide between ledger-cli, hledger, or beancount, with the differentiators being on the margins and with some promise of being able to switch later. The choice really comes down to which tool has the documentation/community that makes the most sense to you at the time.

Then, there's the import workflow: which "accounts" should you start with? How much history do you pull in? How do you set up an automatic importer? Hledger has a DSL. Beancount uses Python. Either way, an OP says, much of your time is spent manually editing text.

And finally, then what? Can I make a budget now? Will this thing do my taxes? Am I more financially responsible? How do I explain this to my spouse? My pension is kind of like a commodity, but I don't know what the unit price is, and I don't sell units, but what's a virtual PnL and what if I only have a quarterly PDF!?

It may sound like I'm ranting, but I have found that realizing I don't know the answers to these questions (or even that they exist) is the true benefit of PTA.

Every year, I'm asked if I want a different pension investment mix or if I want to change my car insurance. Or, I might wonder if I'm getting a good deal on my internet plan or if a new job offer's total comp is actually better. Am I "on track" for "retirement," how long until I have enough for a new roof, am I keeping up with inflation, did I spend too much on gifts this year?

There's immense privilege in not really needing to know the answers to these questions; getting them "wrong" won't really hurt you. But, being familiar with the routine minutiae of your economy by way of counting every cent, is rewarding, enlightening, and empowering—even if it's also finicky and brittle sometimes.

I may have to try beancount again. OP's importers look promisingly robust compared to my hledger scripts.

djhworld•42m ago
I think there's definitely something in it around there's a huge learning curve.

Double entry book keeping isn't that difficult but that's easy to say once you've been doing it a while

I've been doing PTA since around 2018 and there's definitely lessons I've learned along the way along with plenty of mistakes.

I think the main benefit for me is just the system gives you a complete picture of your finances. The commercial services you can pay for just give you a view into a certain slice (e.g. open banking in UK/Europe to see your current account(s)) - I think mint.com did something similar in the US but it never came over here, I don't know if it still exists. Maybe that's enough for most people, but for me I want everything, investments, liabilities, assets etc. None of these commercial offerings have that because it's so complex and niche, e.g. your open banking provider won't tell you how your pension is doing.

It's also just nice to have the provenance of transactions, e.g. if you receive some shares from work, and you sell the shares and the money ends up in your bank account - the incoming transaction will just be the net proceeds but it won't tell you if you paid any tax prior to that - PTA gives you a more of a complete picture that tracks the whole chain of events that led up that transaction into your bank happening. Overkill for most people? Probably.

skobes•1h ago
Shoutout to fava, the beancount GUI frontend:

https://beancount.github.io/fava/

I really like its big picture view of the accounts, the search / query interface, and live editing of transactions.

leobg•1h ago
In case the author reads this: Your imprint is incomplete. The legal address is missing. And the blog is missing an imprint altogether.
ob2•52m ago
I can get all my historic accounting records into any of the PTA tools, but then I'm stuck without standard processes for creating invoices, doing deposits, writing off bad debts, depreciation, loan repayments, recurring payments, etc. etc.

All those require standard entries and processes, which I've yet to find, which means that now I need to become an accountant and write these standard tools.

None of which generates any income and only creates more work for myself.

I absolutely hate my current accounting software, but this is not (yet) a viable option as far as I can tell.

Happy to learn I'm wrong.

xtiansimon•43m ago
Very good for a budget. And as a text file, they rot just about the same speed as the media.

But what about basic Cost Of Goods Eaten?

I have fading thermal tapes in boxes with grocery store purchases. They get scanned once a year into large PDFs: grocery, home goods, repairs (large purchases are kept separately for easier finding).

I’m considering if a personal AI subscription to manage the data interrogation is worth the cost (not excited about the $20/mo cost. NPR should get the next $5 of my monthly).

Now here’s the funny part. The data sits in a box all year or in PDFs for years, and gets little attention. What janky home server AI could I spin up to perform as bad as me (but no worse)? Maybe move the data in those text files and PDFs into SQLite?

wongarsu•36m ago
If you just want to ingest varied data into a consistent format, qwen2.5vl:7b works well (in my use cases better than qwen3vl). The ollama version is quantized, perfectly adequate, and runs on normal consumer hardware (even more so if you don't care about speeds that feel interactive)
accountofthaha•39m ago
Thanks for showing this! I personally have a 4 years old Money Manager EX (MMEX) database, but I am always looking forward to something new, yet nothing for me have worked as good as MMEX. This looks good enough, albeit I need a GUI for this, and the comments might already put me into the right direction.

I am already used to logging everything manually, so importing isn't needed for me. Also I think having some 'manual labor' in this regard can help with becoming more 'in tune with your finances', to actually learn what is going on, instead of having an app that you check once a month.

draven•37m ago
I started to use PTA several times already, and I always have an issue with the granularity of transactions. For example when I go to the local supermarket, do I track food and hygiene products separately ? Some supermarkets give the subtotal for different categories, some don´t. It could be useful to see where the money goes.

I'm about to start out again and I chose not to track different categories individually, knowing that I can still add sub-accounts to distinguish between them later (even if I can´t recover the information for older transactions.)

Now I just need to investigate how to track gains/losses on the ETFs I own but that's common enough that there should be information out there on how to do it.

bravura•13m ago
What's the startup time for using beancount if I've never done it before?

I just spent a few hours using LLMs (aider, specifically) to reconcile my books for the past year. Worked great, but was slightly fiddly.

mtlynch•4m ago
+1 to OP's book, which is the best beginner guide I've found for understanding Beancount / plaintext accounting.

I was also confused about double-entry accounting for most of my life until I read the article, "Accounting for Computer Scientists"[0] by Martin Kleppman (author of Designing Data-Intensive Applications). It explains double entry accounting in a surprisingly accessible way be putting it in terms of graph theory. I don't even like graph theory that much or consider myself competent in it, but Kleppman's explanation was extremely effective.

[0] https://martin.kleppmann.com/2011/03/07/accounting-for-compu...

10 years of personal finances in plain text files

https://sgoel.dev/posts/10-years-of-personal-finances-in-plain-text-files/
114•wrxd•2h ago•37 comments

FracturedJson

https://github.com/j-brooke/FracturedJson/wiki
30•PretzelFisch•45m ago•4 comments

Standard Ebooks: Public Domain Day 2026 in Literature

https://standardebooks.org/blog/public-domain-day-2026
157•WithinReason•4h ago•25 comments

One Number I Trust: Plain-Text Accounting for a Multi-Currency Household

https://lalitm.com/post/one-number-i-trust/
39•ayi•3h ago•14 comments

Happy Public Domain Day 2026

https://publicdomainreview.org/blog/2026/01/public-domain-day-2026/
330•apetresc•11h ago•63 comments

HPV vaccination reduces oncogenic HPV16/18 prevalence from 16% to <1% in Denmark

https://www.eurosurveillance.org/content/10.2807/1560-7917.ES.2025.30.27.2400820
106•stared•3h ago•40 comments

Why users cannot create Issues directly

https://github.com/ghostty-org/ghostty/issues/3558
457•xpe•12h ago•168 comments

A website to destroy all websites

https://henry.codes/writing/a-website-to-destroy-all-websites/
596•g0xA52A2A•16h ago•309 comments

Matz 2/2: The trajectory of Ruby's growth, Open-Source Software today etc.

https://en.kaigaiiju.ch/episodes/matz2
51•kibitan•6d ago•23 comments

FreeBSD: Home NAS, part 1 – configuring ZFS mirror (RAID1)

https://rtfm.co.ua/en/freebsd-home-nas-part-1-configuring-zfs-mirror-raid1/
75•todsacerdoti•6h ago•6 comments

Show HN: I built a clipboard tool to strip/keep specific formatting like Italics

https://custompaste.com
7•EvaWorld9•1h ago•1 comments

Can I throw a C++ exception from a structured exception?

https://devblogs.microsoft.com/oldnewthing/20170728-00/?p=96706
13•birdculture•4d ago•1 comments

Round the tree, yes, but not round the squirrel

https://www.futilitycloset.com/2026/01/02/round-and-round/
41•beardyw•5h ago•37 comments

Joseph Campbell Meets George Lucas – Part I (2015)

https://www.starwars.com/news/mythic-discovery-within-the-inner-reaches-of-outer-space-joseph-cam...
20•indigodaddy•23h ago•3 comments

Going immutable on macOS, using Nix-Darwin

https://carette.xyz/posts/going_immutable_macos/
79•weird_trousers•4h ago•43 comments

Cameras and Lenses (2020)

https://ciechanow.ski/cameras-and-lenses/
457•sebg•20h ago•52 comments

Can Bundler be as fast as uv?

https://tenderlovemaking.com/2025/12/29/can-bundler-be-as-fast-as-uv/
280•ibobev•15h ago•89 comments

Contact the ISS

https://www.ariss.org/contact-the-iss.html
57•logikblok•5d ago•17 comments

Linux is good now

https://www.pcgamer.com/software/linux/im-brave-enough-to-say-it-linux-is-good-now-and-if-you-wan...
873•Vinnl•16h ago•684 comments

Marmot – A distributed SQLite server with MySQL wire compatible interface

https://github.com/maxpert/marmot
125•zX41ZdbW•11h ago•24 comments

BYD Sells 4.6M Vehicles in 2025, Meets Revised Sales Goal

https://www.bloomberg.com/news/articles/2026-01-01/byd-sells-4-6-million-vehicles-in-2025-meets-r...
279•toomuchtodo•21h ago•440 comments

Show HN: OpenWorkers – Self-hosted Cloudflare workers in Rust

https://openworkers.com/introducing-openworkers
459•max_lt•22h ago•143 comments

Bluetooth Headphone Jacking: A Key to Your Phone [video]

https://media.ccc.de/v/39c3-bluetooth-headphone-jacking-a-key-to-your-phone
510•AndrewDucker•1d ago•184 comments

2025 Letter

https://danwang.co/2025-letter/
334•Amorymeltzer•22h ago•252 comments

High-Fidelity 3D Shape Generation

https://pku-yuangroup.github.io/UltraShape-1.0/
6•nkko•2h ago•0 comments

Python numbers every programmer should know

https://mkennedy.codes/posts/python-numbers-every-programmer-should-know/
382•WoodenChair•22h ago•157 comments

50% of U.S. vinyl buyers don't own a record player

https://lightcapai.medium.com/the-great-return-from-digital-abundance-to-analog-meaning-cfda9e428752
223•ResisBey•21h ago•265 comments

Show HN: Enroll, a tool to reverse-engineer servers into Ansible config mgmt

https://enroll.sh
191•_mig5•1d ago•34 comments

Extensibility: The "100% Lisp" Fallacy

https://kyo.iroiro.party/en/posts/100-percent-lisp/
63•todsacerdoti•11h ago•15 comments

I rebooted my social life

https://takes.jamesomalley.co.uk/p/this-might-be-oversharing
455•edent•1d ago•334 comments