Earlier quoted context omitted.
Quoted post unavailable.
Maybe your comment is off topic? We are talking about searching. You are talking about good vs not good developers and understanding code. Searching != understanding.
Ask HN: How do you search large codebases before adding a feature or fixing bug?
31–40 of 87 posts
Re: Ask HN: How do you search large codebases before adding a feature or fixing bug?
#32I work on code bases with millions of lines, so I wrote a tool called Septum to help me ( https://github.com/pyjarrett/septum/ ). This isn't to replace grep or ripgrep or silver searcher, those are all great tools you should have! Septum is neighborhood based (context-based) search, so you can find contiguous groups of lines which contain specific things, but exclude other things. It's also interactive so you can add…
Wish to hear why did you choose to use Ada?
Re: Ask HN: How do you search large codebases before adding a feature or fixing bug?
#33IntelliJ / PyCharm / WebStorm ctrl-shift-F: search in the whole codebase, is what I use
IntelliJ is struggling noticeably navigating even my tiny 50 KLOC search engine project. I can't even imagine using its search function to get around MLOC-scale projects.
Re: Ask HN: How do you search large codebases before adding a feature or fixing bug?
#34Earlier quoted context omitted.
Seen != Built. You don't always have to optimize for the right answer right away. Just asking someone who's worked with/on the codebase will often give you a jump start.
If someone worked on JIRA/Task we can find, otherwise, how do we even know about who has seen the codebase?
Re: Ask HN: How do you search large codebases before adding a feature or fixing bug?
#35Re: Ask HN: How do you search large codebases before adding a feature or fixing bug?
#36I work on code bases with millions of lines, so I wrote a tool called Septum to help me ( https://github.com/pyjarrett/septum/ ). This isn't to replace grep or ripgrep or silver searcher, those are all great tools you should have! Septum is neighborhood based (context-based) search, so you can find contiguous groups of lines which contain specific things, but exclude other things. It's also interactive so you can add…
Re: Ask HN: How do you search large codebases before adding a feature or fixing bug?
#37Earlier quoted context omitted.
IntelliJ is struggling noticeably navigating even my tiny 50 KLOC search engine project. I can't even imagine using its search function to get around MLOC-scale projects.
It really has no issue as long as you have enough RAM and disabled swap. I recently got a fairly decent gaming laptop that I'm supposed to develop on and the 16 GB RAM is constantly full and it's swapping all the time, browser keeps suspending my background tabs, really pain in the ass.
At any rate, I've got 32 GB of ram and I'm operating off an NVMe-drive, I really don't see what the problem is.
Re: Ask HN: How do you search large codebases before adding a feature or fixing bug?
#381. Try to find out which framework, architecture, design patterns used - get hold of that
2. Library dependancy 3. Database structure
4. Pick up your favourite editor (be it vim or emacs or vs code or any) in which you have mastery
5. Search for various entry points like routes, or start activity or main function etc & try step thru code (with possible debug tools open)
Re: Ask HN: How do you search large codebases before adding a feature or fixing bug?
#39Whenever working with a new codebase I always try to find the route definitions file first. Something that maps the api interface to the functions they call. I can then reason backwards from any service by clicking into whatever I’m interested in. After that I look for where config is defined and try to understand what’s unique about this envs setup.
Re: Ask HN: How do you search large codebases before adding a feature or fixing bug?
#40I almost always fall back on ag ( https://github.com/ggreer/the_silver_searcher ). Honourable mentions to cscope and ctags. They work for me since most of my $dayjob involves me mucking around with C++. All tools get invoked from within Vim. (Which _also_ works reasonably well in Windows Terminal).
I use cscope and tags. Making sure vim is set up to navigate by tag is a must too. But given those I always wondered what the other methods mentioned in this news item offer that cscope/tags doesn't