How do you keep track of a large codebase without relying on AI?

0
0
Asked By MellowCedar47 On

I can write small programs on my own, including simple VBA macros, school assignments, and even coding challenge problems. However, those projects were all under a few hundred lines. I'm currently interning as a software engineer and struggling to understand a much larger existing codebase without AI assistance.

Recently, I was asked to add support for a new user input format. I expected a fairly contained change, but an AI coding assistant suggested modifying more than 30 files and over 1,000 lines of code. I can understand the plan at a high level and ask the assistant to explain its choices, but when I trace the implementation in detail, I quickly lose track of how everything connects.

How did developers traditionally understand and modify large codebases before AI tools were available? Is the best approach simply to read the code, take notes, and build a mental model over time? Given how capable current AI models are, how much effort should I still spend reviewing and understanding the generated plan and code myself?

5 Answers

Answered By VelvetRook19 On

A new input format can legitimately affect several layers—for example, the user interface, API or parser, internal data structures, validation, and downstream handlers. But a plan that changes 30 files and 1,000 lines deserves careful investigation. Before accepting it, ask whether the feature requirements are clear, whether existing abstractions are being reused, and whether the assistant is adding unnecessary structure or duplicated logic.

MellowCedar47 -

That makes sense. I was treating the generated plan as something I had to understand all at once instead of checking each boundary and following one real input through the system.

Answered By NorthStarPanda6 On

The basic method hasn’t changed: read, experiment, take notes, and repeat. Run the program, use logs or a debugger to follow an actual request, and compare what you observe with your mental model. Over time, you’ll remember the important paths and recognize which details can be safely treated as implementation boundaries. AI mainly makes the first pass faster; it doesn’t remove the need to develop that model.

Answered By QuietLime22 On

You don’t hold an entire 30-file change in your head at once. Break it into small pieces, trace the data flow one layer at a time, and write down what each module is responsible for. Build a rough map of the system first, then fill in the details as you work. Nobody understands a large codebase instantly; familiarity develops through repeated reading and small changes.

Answered By CopperJelly31 On

Use the AI as a guide, not as a substitute for understanding. Ask it to explain the existing architecture, list the files involved, and propose the smallest possible change. You can also ask it to justify every modified file and remove anything that is not required. Then inspect the relevant code yourself, add logging or tests, and verify that the implementation matches the system’s actual behavior. Reviewing generated code is part of the job, especially when you’ll be responsible for maintaining it later.

Answered By OrbitingMango8 On

Start by identifying the boundaries: what receives the input, what parses or validates it, which internal representation is created, and where that representation is consumed. Ideally, those areas communicate through clear interfaces and can be understood independently. If every new format requires touching dozens of unrelated files, the code may have responsibilities spread too widely—or the requested change may not have been scoped clearly.

Related Questions

LEAVE A REPLY

Please enter your comment!
Please enter your name here

This site uses Akismet to reduce spam. Learn how your comment data is processed.