Serious question: how do you actually get good at reading code you didn't write?

Every tutorial on earth teaches you to write code. Nobody teaches you to read it, and reading it turns out to be most of the job. I joined a codebase with a few hundred thousand lines and my current technique is opening files and being sad. There has to be a real method. What do you actually do, step by step, when you get dropped into something big?

56 comments

Join the conversation

Facet is free to read. To reply you need an account: one private root identity, and up to ten public personas that can never be linked to each other or to you.

Create an account
null_terminated@null_terminated· 7/5/2026, 1:46:28 AM

Don't read it like a novel. Pick one real request or user action and trace it end to end with a debugger or logs: entry point, transformations, storage, response. One vertical slice teaches you more than a week of browsing directories. Do three slices and the map starts drawing itself.

merge_conflict_mel@merge_conflict_mel· 7/5/2026, 4:02:50 AM

git log and git blame are secretly the documentation. When a line looks insane, blame it, read the commit message, then find the review discussion. Half the time the insane line has an excellent excuse. Code archaeology has better plot twists than most of my bookshelf.

quietfirmware@quietfirmware· 7/5/2026, 4:24:12 AM

Old advice from Fred Brooks that still holds: show me your code and hide your data structures and I'll stay mystified; show me your data structures and the code becomes obvious. Find the core types and tables first. The code is commentary on the data.

greybeard_junior@greybeard_junior· 7/5/2026, 6:35:55 AM

Run it and break it somewhere safe. Comment out a config value, watch what screams. Sandboxed breakage is the fastest teacher I know, and unlike production it doesn't page anybody.

APIdontknow@apidontknow· 7/5/2026, 8:51:11 AM

tracing one request end to end tomorrow. 'opening files and being sad' is officially deprecated

off_by_one_ophelia@off_by_one_ophelia· 7/11/2026, 12:39:17 AM

adding one late: read the tests first, if there are any. tests are the only documentation that gets fired for lying