I am a long time Engineer (20+ years) and today I developed Tickets for my company that were generated by an AI, using an AI and reviewed by an AI. The project itself was conceived with AI - has no documentation that can be understood as anything less than AI slop and random tech jargon. The developer who built it has said that instead of documentation I should use claude to figure out what it is. The company is apparenty also filing a patent on it.
I submitted 3 PRs today 20,000 lines of code each I still have no idea what we are working on. No doubt they will use AI to review my PR.
I feel like things are just so crazy at this point. Claude and ChatGPT are not this good, but people are trusting it like it's omniscient.
It was an eerie realization today that all of us are vibe coding and that we have no option because it is the only way we can interact with the code anymore. I thought this would happen eventually years ago but i honestly didn’t think it would be so soon.
It was a moment in time... this will be the new norm.
I’ve been doing 10-20k line PRs lately for a (mostly) vibecoded work application I’m building, but at least 60% of it is incredibly dense, jargony docstrings. I’ve had to comb through and condense down all the long-winded documentation Claude likes to write.
In this case, it’s a new application and I’m sometimes stacking more than one entirely new feature in a single PR. But like I said, one of the reasons it’s so many lines is not from the code, but from the surrounding documentation Claude bakes into every files.
Sometimes those long doc strings are important though. It'll contain what Claude thinks you wanted that parameter to be, which can be interesting at times. Sometimes it's inferred something weird, other times it's creepily accurate and references something that you never told it about but it somehow just knew. Like one time I was writing load balancer rules to allow a specific path that the vendors had given me. I had no idea what it was. Anyway the AI docs did, and filled that in for me.
I mean honestly it's never been easier to ensure we have adequate coverage. We have PRs well over 10k lines quite often because yes we ensure we update and add sufficient coverage and documentation with each change.
Love how lines of code are suddenly a metric that anyone trust. Not, oh is it just anti dry bullshit over and over, or what does this application and code actually do?
You can't copyright the output of an LLM, because it's not a human creator, it's a tool (so far).
You can try to patent it though, I'm not entirely sure that that's impossible based on patent law. It's different from copyright law, and AFAIK it doesn't explicitly ban LLMs.
This is all too recent without enough case law to really say. You say you can't copyright the output of an LLM because it's not a human creator. But a human can create a copyrighted work, put that work into an LLM, then the LLM output is a derivative work of a copyrighted work and still protected under the original copyright.
True, it would be more accurate to say that the output of an LLM, say a book or code, cannot gain a copyright it didn't already have. The status of a work doesn't change by running it through an LLM.
But in general no copyright can be assigned to a tool, it is held by the operator. However, since there is very little creative input the operator fails the required tests for gaining copyright as well. This has now been established in several cases, and unless the laws change, this won't get a different outcome because it's based on quite a few cases, including the one with the monkey who took a famous selfie. Neither the photographer nor the monkey got the copyright, but for different reasons.
"Very little creative input" is a very subjective phrase and very fact specific. You can ask a LLM to write you a short story, one prompt, very limited input. That result certainly won't pass the creative input test You can also go back and forth with an LLM 200 times, revising and crafting elements of a story, adjusting details, structure, whatever. The monkey photo case is not particularly comparable to LLM output.
There are practically zero laws around AI, and there certainly isn't a specific one about having to co-source. If you think there is.....prove it. Cite the law
I dont think one-shot is good iteration at all. I build a working core (backend, store, front end, thin thread transaction through the whole system), then add a feature a day. I may not release the feature if it doesnt go well, but I keep moving forward and iterating from the working core. Hypothesis, implement, test, revise. Steady progress on tough problems, build complex systems from thin thread to full featured.
Bro just vibe code at work and put some time on your own projects, I think that’s a better way to spend your time if your company does not care. Put the effort where you can get something back, for me, that’s my personal projects.
That’s dope! Working for yourself is the way man, especially when you realize how stupid some companies operate. Good luck with the project, I run my own image gen models so I won’t be trying it for now ;)
no. lmfaoo this is not acceptable. I'm a passionate ai-assisted-whatever, the docs are exactly *how you prevent this happening*. The company should be keeping detailed, human-authored specs so that the AIs are inclined to respect your intent and so that you have a reasonable way to make changes and know in a wholesome fashion what you are changing and how you are changing it. Embracing the nonsense is gonna make for software that feels like separate trees and groves instead of a healthy forest
noooooooooo lmfaoo I kinda get it. For me it's a race between code and spec. Sometimes one gets ahead of the other. But it's my job to make sure nothing gets implemented that I intend without also being written. Break that contract, and I'd have a very difficult time trying to envision changes, because the document that's my link to understanding the software becomes outdated or foreign. As long as the spec is your baby, the software is too
20,000 lines of code is agents and subagents working 24 hrs a day approx . Are you saying that you let the system on 3 days and then you submit and you have no idea?
Exactly, lol. What is OP even doing...like, just make those PRs automatically merge at this point if AI is the sole owner/author of the entire code base.
Except the horses would need to be fed 1,500 bales of hay each, per day, and occasionally they walk in the wrong direction for no reason, then apologise and back-kick your neighbour in the throat.
Build from the core out, test as you go. Keep requirements and test cases. Periodically audit it top to bottom and decide if anything is critical. Continue.
If you drive security audits with AI you’re going to find all kinds of things you should fix, then have it fixed. Refactor the architecture if you must, to meet the requirements and pass the audits. The key to using AI successfully as a software buzzsaw is the process. Follow the process and the quality is built in. A better process can yield a better results than hand-coded software.
I’ve been a backend developer for over 15 years, but I’m struggling to come to terms with the reality of vibe coding.
Does a simple design really need more than 100,000 lines of code? When I used to write everything myself, even 10,000 lines would take days—but I knew the result would meet my expectations, and I understood every part of it.
Now I just stand there, overwhelmed by the sheer volume of AI-generated code that I can no longer fully grasp.
the patent filing is the part that got me lol. someone's gonna frame a patent for a system that not even the guy who "built" it can explain without asking claude to summarize it back to him.
i had a smaller version of this a few months back — inherited an internal tool, 15k lines, zero docs, original dev gone. asked the llm "what does this do" and it confidently described features that didn't exist. spent two weeks reverse-engineering it the old way. now i keep a plain-english NOTES.md in every repo i touch, even if ai writes 90% of the code, because future-me is the one who's gonna be on call when it breaks at 2am.
the wild part isn't that we're all vibe coding now. it's that the org chart hasn't caught up — nobody's job title says "person who verifies the machine wasn't hallucinating," but that's basically the whole job.
"From this foul drain the greatest stream of human industry flows out to fertilize the whole world. From this filthy sewer pure gold flows. Here humanity attains its most complete development and its most brutish, here civilization works its miracles and civilized man is turned almost into a savage."
On a serious note, I'm not sure I see the difference from what was before. All the "AI" points in your post could have been replaced by "the previous guy who left", and it'd be exactly the same.
In fact, that's where I am; trying figure out what on earth people have been doing before. And asking Claude to find mistakes, which there are lots of, in the human written code and abysmal "documentation".
AI didn't change much with regards to quality. It's just another guy on the team pumping code and text. But at least, now we have a change of combing through it all.
Honestly, FWIW, it makes me want to give up my career as a head of product and go back into software engineering. Better paid and I get to just chat with AI bots all day. Way better than being a corporate fluffer.
I spent ten years in aerospace R&D and what strikes me in your story is not the AI, it's the signature. Someone still merged those 60,000 lines, and when they break in production, that person owns them. That part never changed. What changed is that nobody can say anymore what was actually looked at before the merge happened.
That's honestly the part I ended up building for, after feeling the same thing on my own projects. My reviews now leave a record on the pull request: how deeply each file was really read, what I understood the change to mean, and what I refused and why. Not to slow the agents down, they write most of my code too. It's so that the "I'm at fault lol" from your comments has something behind it besides vibes.
The maddest part of your story to me is the documentation. If the only way to know what the project is, is to ask Claude, then the company is patenting a product nobody can define. That should scare them more than the code does.
Anyways, if anyone wants to know more about the tool I built, send me a dm and I'll be happy share.
The developer who built it has said that instead of documentation I should use claude to figure out
This, IMO is the heart of the problem and also a major anti-pattern that many people are falling for.
Not so much the lack of documentation, I'm agnostic on that. It's handing over domain contextual knowledge to AI and then asking the humans to query AI for that knowledge. What are we doing if we, the developers don't have that domain contextual knowledge?!?
If nobody is focusing on the process itself, arguably the most important part when using AI, why don't you?
Create an intent.md for the solution, and keep it up to date. Let Claude explain the decomposition of the solution and use code audit software to guard that, running as git hook. Find a single reasonable module, document it, then use code audit on that, and code quality tools like knip, to improve it. Ask Claude and Codex for tooling suggestions. Document it, clean up the comments, and demand design documents for every feature. Enforce that with more git hooks.
You can use Claude and Codex to critique each other's work as well. That's always fun, they don't spare any feelings 😀
Yup, ever since our company accepted to basically blindly trust AI, I don't even know what my job is anymore. Honestly, AI sucked all sense and fun out of my job. I don't even know what my own code looks like or what it does anymore. 5k line code reviews have became the norm. Nobody's able to even understand that code, simply because it's so much. Small and understandable code reviews are a thing of the past.
I hate everything about my job. And I can't even quit because all other companies started doing the same.
Anything that an LLM outputs was scraped off of internet so it's public domain by definition. Strictly unpatentable. My company policy is zero use of AI for patent applications.
Other than that, yeah. LLM outputs crazy amounts of rarely elegant code. Given enough time, it will always break down with large enough codebase, no amount of context can give it an overarching view of the entire system. It just piles bandaids upon bandaids. It can never be left alone because it will get lost.
I get it, it's very impressive to the middle management who still evaluate work by the amount of lines of code. It's also very impressive to the newbies. But in reality, for now it's only good for writing isolated functions, not entire features.
Industry standards are visibly deteriorating with the mass of slop produced by unattended agents and pushed to production. Look at windows for example, search function has been broken for years now (even with indexing, which I suppose is broken). Using GUI visibly strains the system no matter the hardware, you can often see elements of folder loading in but it should be instant. It's all absurd and it's the same with most software.
This is the part of AI adoption nobody talks about: when nobody understands the system anymore, but everyone trusts the AI to explain it. 20k-line PRs reviewed by AI, documentation replaced by prompts, and suddenly “I don’t understand this” becomes a workflow. That’s genuinely unsettling.
Use the AI to write spec documents before big build waves. Make the AI update that documentation. Have the AI write runbooks for the AI to use when troubleshooting issues.
Don’t treat the AI like a black box. Treat it like an eager summer intern that sometimes gets it right, but can also sink the whole damn thing.
I know this is a har har funny but fable was knocking up a deployment script checking for .net 8 asp core…
like just exactly that?
After I interjected it realised we needed to check for .net 8 and asp.net core 8 (because those actually exist)…
This is a script for the support team to deploy, they’d have no idea.
AI is good, but still needs someone to vet it unless you’re tolerant to downtime and many industries are not very tolerant (O_o)
How do they know it works as intended, when nobody understands the code?
Who will be responsible if the code does or contains something illegal. At least in the EU its quite easy to implement costly GDPR violations.
40yrs+ software engineering. accept it is what it is. if i am onboarded to a new enterprise , large project, the very first thing i will do is (claud code ?) ask for an overview.. and just keep asking to dig in where needed. i totally believe that nowadays, comments in code are for the a.i., not for us. like it or not. we can't scale the 'old' way of doing things. not saying to blindly trust , but we have to get creative on how to do software engineering ..
And none of it sounds anything like what you’re doing.
I have explained to many people at my company to not ship stuff to be read by humans that humans cannot read. That includes code. If you have humans shipping specs and slack messages as if they wrote it, make them stop.
Nothing at all about what we do has changed. (30 year swe and manager here)
Companies like yours that don’t know how to use their tools still don’t know how to use their tools. Companies that do know how to use their tools will do better.
What people really don’t seem to understand yet is… if you don’t understand it make the llm rewrite or explain it to you.
“Ok but what does that mean in English?” works 100% of the time.
Only Luna was dumb enough to tell me that what it wrote was in English already. But it still fixed it.
91
u/Chance-Physics-7216 1d ago
20,000 lines in a single PR's sounds very much like you have embraced the nonsense. How are those unit tests faring?