Ask HN: How do you search large codebases before adding a feature or fixing bug?
Off the tools topic, but IMO the most important consideration: the mindset should be entirely about understanding the <i>existing</i> approach, conventions and philosophy, vs a critical assessment leading to &quot;this needs to be modernized&quot;.  Particularly on small-medium codebases with smaller teams, I&#x27;ve seen projects be fundamentally damaged by new, well-meaning devs who bypass most of the hard-slog of really understanding the existing how&#x2F;why, and instead try to jump to the more comfortable space of using tooling or approaches they&#x27;re more familiar with.  There is certainly a place for that, but depending on the project, that might be 3 to 6 months later.  Programmers need to appreciate the power and consequences for management and non-programming team members (product) when a new dev brings a condemning assessment of an existing codebase after one or two weeks.