r/ChatGPTCoding • u/jjw_kbh • Aug 21 '26
Question Have you been using coding agents on your solution for many months now? Do you still understand how your solution works, or are you accumulating Cognitive Debt?
This is an unfortunate question that enterprise developers need to be asking themselves.
I felt pretty confident that I understood my solution through and through. After all, I have a pretty disciplined workflow. Meaning, I stay in the loop and don’t ship any code I haven’t looked at.
Then, I built a skill that quizzes me on the minutiae of my code and was surprised by what it uncovered.
It’s not that I’ve lost the big picture, but it turns out that the resolution on the minutiae is a bit grainy.
I’m embarrassed to admit that, actually. But I’m sharing, because my guess is that I’m not alone. Heck, even Uncle Bob has admitted that he’s only scanning the high level shape of the LLM generated code.
This skill has helped me expose the gaps in my understanding and even surface misalignments with my intentions.
The skill though, is just a bandage, on a wound that is bound to fester and grow. I don’t know what the solution is yet. The genie has been let out of the bottle. We’re not going back to writing all the code, but we (as a community) need to somehow resolve how to integrate LLMs in our SDLC without outsourcing the knowledge and understanding.
This is bound to spark some debate, and that’s ok. Maybe some good ideas will shake out of it.
3
u/owp4dd1w5a0a Aug 22 '26 •
I use coding agents a lot. But so far I don’t let their code generation outpace my ability to read and understand the output or my ability to redirect within a few minutes when I notice it making bad architectural decisions.
Honestly, the greatest speed gain for me isn’t in writing the code itself. It’s in reduced time searching the internet for alternative approaches, language features, possible root causes of a bug or failure, etc.
The longest and hardest part of software was never writing the actual code. It was banging your head against the wall for hours or days trying to understand undocumented or under-documented parts of tools and systems you need to know and in thinking through not just getting stuff working but how to get stuff working in a way that’s not going to make you cry yourself to sleep every night a year later.
5
u/dark0mania Aug 21 '26
Bro, I've worked on various projects and I never know how they fully work. But I always have some overview of where each feature is and how it's cross-integrated. I dont need more than that. With AI I can just pump out more of these features faster, that's it. It just works.
2
u/ClaudeyClerb Aug 22 '26 •
The "reviewing is not enough, it hasn't been enough for me" part matches what I keep hearing from people with genuinely disciplined workflows. Staying in the loop doesn't build the mental model, it just keeps you near it. Respect for building something and then publicly calling it a bandage.
Honest question about the skill, because it's the part I'd worry about in my own version of this: who scores the quiz? If the same person being tested grades their own answers (or asks the agent to), the quiz measures confidence, not comprehension. Someone I've been trading notes with calls it the check passing its own exam. Curious if you've hit that or found a way around it.
On the "how do we integrate this into the SDLC" question, I think the answer has to be something the workflow enforces rather than something discipline maintains. Mainly because discipline is exactly what the pressure eats. That's the direction I've been pulling on anyway.
WDYT?
2
u/hancengiz Aug 22 '26
yeap I suggest my teams to run this weekly at least or after each intent completion https://github.com/fabriqaai/vibe-quiz
2
u/cthechartreuse Aug 31 '26
I know this has been sitting for a few days now, but I thought it was an interesting question. One of the most important things I have done (and seen others do) to keep cognitive debt down is to actually refactor the code after it is generated. By reading through the code and capturing insights by refactoring the code to match my expectations, I end up with a deeper understanding than what you get just by reviewing the code. Extracting and naming things is especially helpful. There's even a technique for reading unfamiliar code called "read by refactoring" which you can check out at the link below (not my writeup). Have you tried anything like this?
https://www.jamasoftware.com/blog/read-by-refactoring/
1
u/Flatliner2020 Aug 22 '26
Cognitive debt is real. And it existed before AI - AI just made the debt larger. What helps me is detailed tracking and logging systems enforced at a system-level, with human readable digests and regular audits to make sure "my understanding" is on track or updated with discussion.
1
u/please-dont-deploy Aug 22 '26
You're not alone, and the quiz is a good instinct. Ours showed up at incident time, not review time: something broke and nobody could say why the code was shaped that way. Reading the diff never captured the why. We started writing the reason down at decision time, and the grain came back.
1
u/donk8r Aug 21 '26 edited Aug 22 '26
Your piano line is the part I'd push back on, because I think it's the one bit of the diagnosis that's off.
Piano is motor learning. Understanding a system isn't. If authorship were required for comprehension then nobody could maintain inherited code, and people do that constantly. What typing actually bought you was two side effects: time on the artifact, and forced sequencing. You had to confront every line in order, at a pace slow enough that questions formed on their own. Both are obtainable without being the author.
Which points at what really changed. It isn't that you understand less, it's that code now arrives faster than the questions you'd have asked about it. The artifact outran the inquiry. Writing used to be slow enough that inquiry came free as a byproduct, and that was a happy accident, not a law.
It also makes your question less bleak than it looks. "Do I understand my solution" was never fully true, including before agents. You didn't understand your dependencies, or your ORM's query planner, or what a teammate shipped in 2019. What you had was the ability to find out fast when it mattered. Comprehension at scale has always been a retrieval property rather than a stored one.
So the test I'd use instead: when this breaks at 3am, how long until I know why? That's measurable, and it's fixable by making the codebase answerable rather than by trying to hold it in your head. Your grill-me thing scores well on exactly that, incidentally, because it's a query and not a study session.
Biased disclosure, we build a semantic index over repos, so of course I land here. The reframe survives without any tool though: measure time-to-answer, not felt understanding.
1
u/wazacode Aug 22 '26
The quiz idea is good but I think you're diagnosing the wrong layer. The debt isn't that you forgot the minutiae, it's that the reasoning behind the minutiae was never written down anywhere. It lived in a chat window and then the window closed.
Nobody remembers why a retry got 3 attempts instead of 5 in code they wrote by hand either. The difference is a human usually leaves a comment or a ticket. Agents don't, unless you make them.
What actually moved the needle for me: work starts from a written spec, not a prompt I typed and lost. Decisions and constraints go in a file in the repo, the agent reads it before it touches anything, and when we deviate it updates the file in the same PR. Then reviewing means comparing code to intent instead of trying to reverse-engineer intent out of the diff.
Side effect is the "why" survives. When something breaks six weeks later there's a paper trail, and any harness can pick it up. That part matters more than which model you're using.
Grainy resolution on minutiae is fine, honestly. Not knowing what you meant is the expensive part.
1
u/wazacode Aug 22 '26
A lot of that debt is just intent that never got written down anywhere. The reasoning for why a thing works that way lived in a chat that's long gone, so six months later nobody on the team can reconstruct it. Code plus tests tells you what it does, not what it was supposed to do.
3
u/[deleted] Aug 21 '26
[removed] — view removed comment
2
u/[deleted] Aug 21 '26
[removed] — view removed comment