TE
TechEcho
Home24h TopNewestBestAskShowJobs
GitHubTwitter
Home

TechEcho

A tech news platform built with Next.js, providing global tech news and discussions.

GitHubTwitter

Home

HomeNewestBestAskShowJobs

Resources

HackerNews APIOriginal HackerNewsNext.js

© 2025 TechEcho. All rights reserved.

Ask HN: How to efficiently learn a codebase new job that has no documentation?

4 pointsby virtuexruover 6 years ago
So I'm in a bit of a pickle, I've started a new job and am trying to get "familiar" with the code over the holidays while most people are away. Unfortunately there is absolutely zero documentation. The codebase is massive and spanning across multiple repositories. I want to dive in and be productive as soon as I possibly can. Outside of code pairing with the the other developers (which is currently impractical due to most people being on vacation), what is the best way to approach learning the codebase at a high level (and eventually granular) so that I can make an impact ASAP?

1 comment

davismwflover 6 years ago
Pick use cases and walk through the code. I usually start with something simple like login, or common functions like logging etc. Use case focused lets you see the app in use and then trace what the code is doing which to me is far more valuable than just reading code. Reading code without a purpose is useless IMO. Also doing this is sometimes great for the team because you will find stuff they have missed and can ask questions about it which will result in either them explaining why it is that way or saying crap, good find.<p>Other options (I usually use these to build documentation from a codebase I don&#x27;t know but to get up to speed faster I use the above method):<p>If it is object oriented, find all the base classes and work your way up through the derived classes learning what they do. Once complete, follow the procedural method below.<p>If it is procedural, then find the entry point and walk line by line, and at the first non-system&#x2F;sdk level function call start building a function map so you know what calls what and what data is needed, passed etc.
评论 #18770977 未加载