Live data from Hacker News

Cognitive Debt: When Velocity Exceeds Comprehension

rockoder.com

171–180 of 234 posts

Re: Cognitive Debt: When Velocity Exceeds Comprehension

#171
post #136

"The system they built feels slightly foreign even as it functions correctly." This is exactly the same issue that engineers who become managers have. You are further away from the code; your understanding is less grounded, it feels disconnected. When software engineers become agent herders their day-to-day starts to resemble more that of a manager than that of an engineer.

And like good management, the solution is to define clear domain boundaries, quality requirements, and a process that enables iterative improvement both within and across domains.

Re: Cognitive Debt: When Velocity Exceeds Comprehension

#172
post #48

Not to disagree with anything the article talks about but to add some perspective... The complaint about "code nobody understands" because of accumulating cognitive debt also happened with hand-written code. E.g. some stories: - from https://devblogs.microsoft.com/oldnewthing/20121218-00/?p=58... : >Two of us tried to debug the program to figure out what was going on, but given that this was code written several year…

Probably, we need to start saving prompts in Version Control. Prompts could be the context for both humans & machines.

I wonder how scalable that is. After the twentieth feature has been added, how much connection will the conversation about the first feature still have with the current code? And you’ll need a larger and larger context for the LLM to grok the history; or you’ll have to have it rewrite it in shorter form, but that has the same failure modes why we can’t just have it maintain complete documentation (obviating the need to keep a history) in the first place.

Re: Cognitive Debt: When Velocity Exceeds Comprehension

#173
post #148

Earlier quoted context omitted.

Isn’t the commit message a better place to add what and why? You might need to feed some info that the agent doesn’t have access to “we are developing feature X this change will such and such to blah blah”. The agent will write a pretty good commit message most of the times. Why do you need a markdown file? Are releasing new versions of the software for third parties?

Cheaper and faster retrieval to be added to the context and discoverable by the agent. You need more git commands to find the right commit that contains the context you want (either you the human or the LLM burning too many token and time) than just include the right MD file or use grep with proper keywords. Moreover you could need multiple commits to get the full context, while if you ask the LLM to keep the MD file…

I doubt you can give more context to an LLM from a README file than 500 properly written commits. Or to a human for that matter.

Re: Cognitive Debt: When Velocity Exceeds Comprehension

#174
post #86

This seems very similar to the situation of a new employee dropped into a large codebase of varying quality. It seems like similar techniques will get you out of the mess? Also, you can ask the coding agent for help at understanding it, unlike the old days when whoever wrote it is long gone.

Only the coding agent will only give you plausible answers, not necessarily correct ones. So read the code. Oh, but you now can't because all you know is how to ask coding agents.

You can ask it to read over all the commits to tell a story about what happened, backing that up by quoting the code and linking to the changes in the commits. Then you can read the code yourself and see what it did.

You could also ask it to write bits of code to do experiments to figure out what the code really does. Then you could reproduce the same experiment.

These things are pretty similar to what a human might do to reverse-engineer a program. Some skills might atrophy a bit, but the idea that this makes you helpless is a fallacy.

But what is more broadly true is that as we adopt new technologies we depend on them more and more, and eventually start removing the backups. I'm old enough to remember when people didn't have Internet and saw Internet service gradually change from a luxury to a necessity. Eventually people cancel their landlines. Eventually, you can't get a new landline even if you wanted to.

Re: Cognitive Debt: When Velocity Exceeds Comprehension

#175

> When an engineer writes code manually, two parallel processes occur. The first is production: characters appear in files, tests get written, systems change. The second is absorption: mental models form, edge cases become intuitive, architectural relationships solidify into understanding. That absorption only takes place in the mind of that individual, unfortunately. That doesn't help when they no longer work there…

Someone taking over a project and working directly in it can build up their own deep understanding about it over time even if they didn't write it all. Documentation from the last expert can help, or just reading and changing things as you build up a mental model. But asking an LLM to change it for you will not arrive at the same place.

Re: Cognitive Debt: When Velocity Exceeds Comprehension

#176
post #48

Not to disagree with anything the article talks about but to add some perspective... The complaint about "code nobody understands" because of accumulating cognitive debt also happened with hand-written code. E.g. some stories: - from https://devblogs.microsoft.com/oldnewthing/20121218-00/?p=58... : >Two of us tried to debug the program to figure out what was going on, but given that this was code written several year…

This underlines the argument of the OP no? The argument presented is that the situation where nobody knows how and why a piece of code is written will happen more often and appear faster with AI.

Indeed, it’ll just result in legacy code faster. We’d need AI to be much better in reliably maintaining code quality, architecture and feature rationale documentation, than the average developer in the average software project. And that may be indistinguishable from AGI.

Re: Cognitive Debt: When Velocity Exceeds Comprehension

#177
post #165

The post itself is 100% AI written https://www.pangram.com/history/f4d6b5be-271b-45fa-a732-8182...

And you don't need to trust Pangram (I think Pangram is pretty good, but). Imho the headings alone are sufficient to give it away, Claude et al love "The XYZ Dilemma" etc and that's every single one of the headings here.

Re: Cognitive Debt: When Velocity Exceeds Comprehension

#178

If the AI can just refactor the whole app whenever it wants w/o taking a person-month of effort, and you have rock-solid tests for everything, maybe human code comprehension isn't necessary? Yes I am aware this means my job is gone.

Yup. This is exactly what is going to happen. It’s strange that so many people here can’t seem to extrapolate from the current state of things. It’s inevitable.

My guess is humans will still be necessary for financial, life-or-death, and mission-critical software. But what % of developer jobs work on those systems? 5%?

Re: Cognitive Debt: When Velocity Exceeds Comprehension

#179
I've been building https://github.com/kstenerud/yoloai entirely by AI, and what I've found helped is to make the AI keep solid documentation:

- Document the purpose

- Document the research

- Document the design

- Document the architecture

- Document the plans

- Document the implementation

Also put in documentation that summarizes the important things so that you understand broadly the why and how, and where to look for more detailed information.

This documentation not only makes your agent consume less tokens, it also makes it easier for YOU to keep your head above water!

The only annoying thing is that the AI will often forget to update docs, but as long as you remember to tell it to update things from time to time, it won't drift too far. Regular hygiene is key.

Re: Cognitive Debt: When Velocity Exceeds Comprehension

#180

This thread is closely related: https://news.ycombinator.com/item?id=47194847 "The right amount of AI is not zero. And it’s not maximum."

Author from the other thread here. I'm surprised to see so many similarities, but in good faith I'll assume that it's just a coincidence because many devs start to notice the upcoming problems.

This article is certainly substantially AI written.
Post reply on HN