top | item 43387754

(no title)

aNoob7000 | 11 months ago

Are there any demos showing how to manage an existing codebase? Everyone loves to demo how AI can create new programs with a snap, but the elephant in the room is how well AI works with existing codebases and manages things like naming conventions, APIs from other apps, etc.

discuss

order

ghuntley|11 months ago

That's an interesting question, and I spend plenty of time exploring this at my current client. The best tip I can give you right now is really - it depends.

For example .NET/Java have this horrendous convention of splitting files into separate locations by the hundreds onto the filesystem.

ie. com/yada/repository | com/yada/models | com/yada/controllers | com/yada/services | com/yada/dtos et al

See https://www.youtube.com/watch?t=1507&v=J1-W9O3n7j8&feature=y... for an excellent discussion from folks sharing learnings that this is an anti-pattern for the current generation of AI assistants. By splitting the tests + everything related to the code being modified into separate files the LLM does worse.

Depending on the 'uniqueness' of the codebase and how it has been 'structured for humans' (vs being structured for LLMs - see above) then one will need to do some funky stuff with building custom MCP tools that teach the AI assistants how to work with the codebase...

ghuntley|11 months ago

> manages things like naming conventions, APIs from other apps, etc.

These particular concerns can be handled via https://ghuntley.com/stdlib and it works very very well.

relaxing|11 months ago

Ah yes, the famous “multiple source files” antipattern…

Could it be the LLM simply not up to the task of maintaining an enterprise codebase?

No, it is the hard-won lessons from the history of software engineering that are wrong.