You can still read the code, ask the AI questions about it, and ask it to fix things. Coding agents are a power tool for cleaning up codebases, but you have to ask for the right cleanups, which means figuring out what it is based on your understanding. (You can also ask the AI to suggest ideas.)
This takes time away from implementing new features, but that’s true of all code health maintenance.
> You can still read the code, ask the AI questions about it, and ask it to fix things
This only works in small projects. For large projects, it is close to impossible. Everybody talks about how new models appear all the time and nobody comments on the fact that context size has almost stalled.
Sure. But in order to do central refactoring and actually improve stuff you need to keep in context all the small pieces.
You can split a small program into piece A, B, C All of them look correct on their own. But they duplicate something in 3 different ways and person/agent who can "see" all of them can see the duplication and refactor.
Current model context is simply not enough for large projects.
Same problem for letting AI review code. A PR might look correct on its own and be small enough to fit into context. But somebody who has access to the whole code of the project again sees the duplication.
I am an OSS developer and when reviewing PRs I actually look at how the same problem was solved in other popular OSS projects. No AI can check this today because there is simply not enough context.
Basically if we had unlimited context what you said might be true. But context size is limited today.
I suppose it's not enough to break everything down into smaller pieces, your architecture also needs to be composable. That would address the issue of duplication. Think a plugin system.
Duplication was just an example. Code architecture is the general topic.
Yes a plugin system is great, but it only works if that plugin API/interface it designed correctly and gives plugins what they need while still enforcing good practices.
But somebody needs to design a plugin system that does this first. And designing a plugin system (for large projects) brings us back to square 1 :-) (that you need a large enough context to see what the code does in order to anticipate plugin needs).
skybrian · · focus · HN ↗
This takes time away from implementing new features, but that’s true of all code health maintenance.
kkapelon · · focus · HN ↗
This only works in small projects. For large projects, it is close to impossible. Everybody talks about how new models appear all the time and nobody comments on the fact that context size has almost stalled.
hard_times · · focus · HN ↗
kkapelon · · focus · HN ↗
You can split a small program into piece A, B, C All of them look correct on their own. But they duplicate something in 3 different ways and person/agent who can "see" all of them can see the duplication and refactor.
Current model context is simply not enough for large projects.
Same problem for letting AI review code. A PR might look correct on its own and be small enough to fit into context. But somebody who has access to the whole code of the project again sees the duplication.
I am an OSS developer and when reviewing PRs I actually look at how the same problem was solved in other popular OSS projects. No AI can check this today because there is simply not enough context.
Basically if we had unlimited context what you said might be true. But context size is limited today.
hard_times · · focus · HN ↗
kkapelon · · focus · HN ↗
Yes a plugin system is great, but it only works if that plugin API/interface it designed correctly and gives plugins what they need while still enforcing good practices.
But somebody needs to design a plugin system that does this first. And designing a plugin system (for large projects) brings us back to square 1 :-) (that you need a large enough context to see what the code does in order to anticipate plugin needs).