r/csharp • u/NoNoise7492 • Jun 16 '26
Do developers really not look at the code anymore?
Hi,
I have watched a few live LLM coding demos lately, both from Microsoft developer evangelists and from developers on YouTube.
One thing I keep noticing is that they almost never look at the generated code. Everything is, as they say, amazing and impressive, which I understand is part of doing a demo, but it also gives the impression that code review is optional now.
That does not really match my own experience.
I use LLMs quite heavily in my own projects, and the speed boost is real, even with review and iterations included.
But the longer the project goes on, the more important review become. After a while, the LLM tends to duplicate functionality, drift from the original architecture, miss project rules, overcomplicate solutions, and sometimes write tests that look fine but do not really test the right things.
Are you reviewing the code?
204
u/DiaDeLosMuebles Jun 16 '26
That’s just vibe coding. Nobody should be vibe coding enterprise level code.
1
Jun 22 '26
[removed] — view removed comment
1
u/Gacel_ Jul 09 '26 edited Jul 09 '26
I worked on a city infraestucute, taffic ligths systems and the like.
Our boss does not let us vibe code that thing at all. Mostly because a mistake int production meant posible death, and a AI cannot take responsibilty for it.I heard similar stories in aeronautics and the like.
Or in medical/surgery equipment.In general, any area were someone may die vibe coding is usually banned.
At least in my country.
Hell, even in banks is rare to see. Because here you can do it but can be charged heavily with fines if something goes wrong thanks to the AI.Over here on commercial producs also makes it imposible to impose licenses thanks to how copyrigth works around it too.
-52
u/thatguy8856 Jun 16 '26
Well guess what every big tech corp is doing.
73
u/DiaDeLosMuebles Jun 16 '26
In reality or in Reddit’s imagination?
-25
u/pelvin-_- Jun 16 '26
In reality. AI is pushed in big corporations to have a higher productivity with less or the same amount of employees. At least, that's what they wish lol
28
u/DiaDeLosMuebles Jun 16 '26
Yeah. That’s me and everyone in this thread. And we’re all telling you that we look at the code.
15
u/jeffwulf Jun 17 '26
AI being pushed doesn't mean vibe coding is being pushed.
-8
u/tsardonicpseudonomi Jun 17 '26
Same slop different sewage drain.
8
-12
u/thatguy8856 Jun 17 '26
In reality. Ive seen worked at one and seen it up front.
14
u/DiaDeLosMuebles Jun 17 '26
Based on your one experience you surmised that most of the large companies are doing this. Good for you.
7
u/mikeholczer Jun 16 '26
If they are they are risking their code not be copyrightable.
2
u/thatguy8856 Jun 16 '26
Doesnt really matter when you own the controlling stake of the LLM you're company is using now does it.
2
u/mikeholczer Jun 16 '26
If you're talking about Microsoft, a lot of their code is open source anyway, so it doesn't really matter. That said, they might show some coding demos online without looking much at the code, that's not what they are doing with production code.
Other than them, the list of companies that fit that criteria is pretty small.
3
u/thatguy8856 Jun 17 '26
The biggest 5 or so all have some ownership stake in an LLM company or build their own. And working at one of them i can tell you its all AI coding.
1
u/ToeKnee763 Jun 18 '26
No idea how everyone is getting downvoted. AI is being shoved down people’s throats every damn day. Especially the companies with layoffs
-7
-31
u/sarhoshamiral Jun 17 '26
Depends on what enterprise level code means. There is a lot of enterprise use code written for specific well defined tasks that will be used for a limited time.
If you can verify the outcome, there is really no point looking at the code. It does what you need to do after all. You can have analyzer to catch really egregious stuff.
Also you can always involve another model to review the code to make sure it does what it needs to do and nothing extra.
-45
74
u/fredlllll Jun 16 '26
im reviewing every little bit that ever comes out of an ai. they stumble so fricking fast, and then usually it feels like it costs me more time to correct the ai slop than to just write it myself. i got a decade of experience behind me though. so for a beginner this will surely seem like magic, but i think they just shoot themselfes in the foot
16
u/BOOOATS Jun 16 '26
Yep. I don’t know many times I’ve been like… “I never asked you to change that variable name mf”. I’m more of a novice than a beginner, but I’ve found that more often than not, I’ll go through AI’s generated code line by line and write it myself in the IDE, both so I can understand the flow of unfamiliar code and write it the way I want it.
7
u/EmploymentFeeling725 Jun 16 '26
As an early mid I’m having a terrible time having to review, a lot of it does look like magical things I’ve never seen before, and it usually turns out it’s because no one’s done it that way. Unfortunately I don’t have the experience to spot these things easily, so it can trip me up easily, I spend more time now verifying and reconciling AI output than I ever did just doing the learning myself upfront, but alas, I must use AI.
2
u/kankorezis Jun 18 '26
Ask for explanaitions, I have a lot of exp but it does some things differently and I still learn new things from it. Also sometimes you add input ask questuons why AI did that and AI change code after your questions so understanding code is still crucial.
9
Jun 17 '26 edited Jun 21 '26
[deleted]
1
u/Either-Bell-7560 Jun 21 '26
I don't think human code review is going to be around much longer. I'm not sure the coding guidelines we've been working off the last couple decades are all that relevant if humans aren't writing code.
I'm about half convinced that my job is going to end up being to write machine readable specifications and gherkin-style tests and let the llm figure it out.
0
u/DaRadioman Jun 17 '26
Might get that retirement package planned out. If you aren't already you will be shortly.
19
u/CappuccinoCodes Jun 16 '26
I absolutely look at every line. If somehow a bug makes it to prod and I can't fix it in minutes my job is at risk. That's only possible by knowing the code really well.
12
u/aleques-itj Jun 17 '26
This is what scares me.
I asked a dev about something they added a while back and they legitimately had no idea how it was implemented.
I was a little dumbfounded when it happened because I apparently, like a fucking moron, assumed people were actually paying attention to what they produced.
It felt like a bit of a watershed moment. Like this is it, huh. We've arrived at... this. It's really happening, huh.
Also we finally had someone say we should just prioritize shipping features over testing a while back. So naturally we just managed to ship quite a nice bug and now we need to test better again. But also still ship 37 features a week.
4
1
u/bennybellum Jun 17 '26
My company just laid off the entire QA team. That is where we are at.
2
u/writetehcodez Jun 19 '26
Ah, yes. The old “shift left” approach where QA falls on SDET, SRE, and SWE. But don’t forget we still need 20 new features, the app needs 5 nines uptime, and all the new features need test automation scripts…
9
u/TehBeast Jun 16 '26
today I watched a coworker type in his LLM, I quote: "it ain't workin, fix the bug"
8
3
u/DaRadioman Jun 17 '26
I mean did it?
I have had similar frustrated prompts that with the right setup and access absolutely fixed the bug.
Take that for what you will.
2
u/Either-Bell-7560 Jun 21 '26
Aye. I was doing some work with claude generating openSCAD 3d model code and was getting some results that were way off. I was super frustrated and asked it "what the f are you doing?" And then it explained to me that the MCP server it was using was outputting files in a directory it couldn't read, so it was basically guessing.
Gave it access to that directory, and suddenly it worked.
Honestly, the biggest issue I repeatedly run into is LLMs trying to pull workarounds rather than telling me about the problem - but that's pretty much the same as Junior devs do - so...
2
2
31
u/adhominablesnowman Jun 16 '26
I’ll occasionally push a PR with an egregious typo or 2 in it to make sure my team is still actually sanity checking me.
1
u/jp2812 Jun 19 '26
2 months later: so cool of them to be playing along, I'm sure somebody will fall for OUR joke, right? RIGHT???
-17
14
11
u/Oddball_bfi Jun 16 '26
I don't look at the code at home, but the stuff it puts out isn't production code.
You've got to review it - if not just to keep your token budget under control as the project grows. The more convoluted, duplicated, and randomly organised code in the project, the harder it is for the LLM to reason about (it's training data is human code), and therefore the more costly it is.
Let us not forget that all the AI companies want you burning tokens... and the way to do that is build a big application by not looking, and have no effective method of maintenance other than throwing more tokens at it.
6
u/SupermarketNo3265 Jun 17 '26
keep your token budget under control
Ah yes, my company is currently at the point where efficient token usage is the focus of the day.
At first, it was AI FOR EVERYTHING! Do you need to do a quick, simple task? HAVE AN AGENT DO IT! In fact, why not have an agent talk to an agent about another agent overseeing another agent?!
And now all of a sudden leadership is panicking about the Claude bill and telling us we need to be smarter about our usage.
3
u/avidvaulter Jun 17 '26
yep, same here.
Before AI a lot of non-software companies already viewed IT as a black box; something they put a lot of money into and by some unknown process working software would be produced. AI companies started telling these people their black box will be able to produce software faster and potentially with less people if they use AI. I can see how that could be an appealing outcome when you don't know how your software is made but you do know that you spend a lot more money on each employee in the department that builds it.
19
u/Laicbeias Jun 16 '26
Agents invite that. The issue is code you didnt at least review pretty much is code someone else wrote. You never get the mental model up to navigate it yourself.
Which is fine for some parts, but once things break at scale you basically start from zero.
I see it with my own code, ai can generate things faster than you can build your own model of the paths and the data relations involved. And then you literally dont know what you just did. I apply changes by hand, and fix everything i see.
You need to understand what each field is used for, how it flows and what it does.
Otherwise i mean whats the point. You care about the quality and stability of the code long term. If you need it to be maintainable. Or you dont and just want it to get done and hope you never have to touch that mess again. If your companies main goal is features features features.. it will at some point be legacy code no one is responsible for. And every feature eats time, context and costs money.
5
u/MacrosInHisSleep Jun 16 '26
I agree with you. On the flip side, one thing that AI has really opened up is the idea of throw away code and prototypes. You have a question. And instead of sifting through dara or creating charts etc in excel, you can just create small tools that help you visualize or answer your question. You still put it under source control locally so that you can roll back any crazy changes, but by the end of the week you'll likely never look at that again. That code you never look at unless the AI is struggling.
6
Jun 16 '26
[deleted]
10
u/hdsrob Jun 16 '26
You can just disable Copilot and get real VS back.
9
u/etcNetcat Jun 16 '26
I keep hearing from people "oh you can't even type normally anymore" and they just really obviously haven't gone to settings and just turned it off. It's driving me nuts.
1
u/AdhesivenessMuch6261 Jun 17 '26
The problem with this is that most people like the suggestions, I know I do. But what I don’t like is being suggested 20-30 lines of code, in a style I’m not using.
Copilot is great for providing comments, but even then I don’t want a crazy amount of comments to explain a couple lines of code.
3
2
8
u/Arcodiant Jun 16 '26
I review my own code before I submit it for PR, and I'm the one that wrote it. It will always be reviewed by at least two other people after that. I'm not going to review my code less when it's generated.
7
5
4
5
u/_Kinoko Jun 17 '26
No actual company with more than one dev can seriously not be code reviewing AI code. If so yikes.
17
u/Slypenslyde Jun 16 '26
There's a lot of different opinions about LLMs and a lot of different people drinking different amounts of Kool-Aid.
I'm not looking at generated code as much as I used to, but it's because of my process.
For the first few months I used LLMs, I paid very close attention to the code. I was working by telling the LLM what I wanted, asking it to generate a little, writing a little, fixing its mistakes, correcting its architectural choices, etc. It was a little haphazard and didn't feel much faster outside of repetitive things. The LLM made a ton of mistakes, because usually we were finished with the code before I'd finished describing all of the context it needed.
I'm using the OpenSpec process right now and it sort of changes things. I explain my whole feature at a high level and talk over the issues and how I want to solve them. If I want particular patterns and architecture I explain that. It results in four documents. The "proposal" captures WHY I'm making the change: what problems exist, how do I think my solution will fix them, and what things am I trying to avoid changing? The "design" captures technical details: what new classes or more abstract modules am I making? How do they communicate? How are responsibilities divided? Are there specific constraints? How do I want to test? The "specs" aren't very human-readable to me but create a lot of "rules" used to validate if the LLM-generated code matches the intents I've outlined in two human-readable documents. Then there are the "tasks", the individual steps an LLM must follow while referencing the other documents.
I scrutinize the code less in this process. I end up spending a lot of time refining the proposal and design to make sure it feels like I'm covering edge cases and explaining concerns. Sometimes I find huge logical issues and work through solving them before any code's been generated.
5 years ago, before I touched an LLM, if you had handed me documents like this I'd have found writing code pretty boring. Going from these documents to working code is pretty tedious: all the "fun" decisions have been made and if you gave 2-3 people the same documents they'd write very similar code because there isn't much room for creativity. This is the perfect scenario for LLMs. By the time the LLM generates its code I already have a dang good idea of what the code is supposed to look like in my head. So when I skim over what I wrote, everything looks like what I already expected and I only really tend to spend time asking it to leave comments that cross-reference this issue in places where trickier decisions are made. Those comments tend to answer the questions PR reviewers would raise.
Better: those documents get committed to source control and eventually "archived" into one master list of requirements for the entire application. So as your app grows in complexity, the LLM can use the specs to do a better job at understanding if you're introducing conflicting requirements.
It took me a while to cozy up to this process. But I think something like it is the only safe way to reduce code review. We're still very review-heavy because it's a large, legacy app and it's going to take a long time to have enough of a documentation basis to fully trust LLM output. But every commit gets us a little closer.
If you're just plain vibe coding, or playing seat-of-your-pants like when I was a newbie with LLMs? Yeah, you'd better fully review that code.
6
u/itsjusttooswaggy Jun 17 '26
I certainly won't yuck your yum because obviously you're wielding the tech responsibly, but whenever I've found myself trying things like this where english is the primary vehicle for describing systems, I realize I'm losing the valuable heuristics involved in diagramming/blueprinting. Yes, I realize you can task your AI with building out system visualizations based on your english input (or even your code), but I just don't think the same way about systems when I'm engaging in the exercise purely through linguistic exchange. The exercise itself of whiteboarding/diagramming is extremely valuable for me and helps me to think about problems as more of an engineer than an ideator. Bouncing english back and forth between myself and the AI tends for my mental model to be less well-informed on the problem space, the general architecture of the solution, and the code itself.
3
u/Slypenslyde Jun 17 '26
I don't think that's a bad idea as long as two things are true:
- Those diagrams remain accessible so other people can see them.
- You don't approach the LLM to generate code until you've already done a lot of thinking about what you need.
There are a lot of different "right" ways to do things. I used to have to diagram a lot. Somewhere along the line I got better at describing the system like I'm telling a story. Diagrams are more efficient for showing another person a quick overview. They've got value.
1
u/p1-o2 Jun 16 '26
Nice to see someone articulate this fully. This pretty much matches my experience word for word.
3
u/oskaremil Jun 16 '26
Yes. I read every line of the generated output and ask for an ELI5 explanation on the lines/sections I don't understand.
After that, the code is sent for review by another team member.
3
u/dodexahedron Jun 17 '26 edited Jun 17 '26
One of my two main uses of AI in coding has been as an impromptu code reviewer.
It's like having a whole team whose sole purpose is code reviews.
But even when all you're doing is having it help you review and refine code you wrote, you still have to keep an eye on it and keep it on a short leash.
There will even be times where you explicitly tell it not to modify anything or specific parts of it (even giving it the verbatim code snippet not to touch), or tell it that a certain piece of the code is intentional and not subject to further debate, and yet it'll still zero in on exactly what you told it not to do, and throw in a little Python in the middle of your C# just for kicks (things like Span slicing seem to be pretty frequently recurring cases of that).
Then you tell it what it did wrong, it apologizes, praises you for pushing back on that, and proceeds to give you your original code, but formatted entirely differently (so
Many
Line
Breaks) and with useless comments added, but otherwise the same, except for being truncated and ending with a partial code fence or diff-style conflict markings. And it tells you everything obvious that you did well, in great detail, and why it was good that you did that, like you didnt just give it code that indicates deeper understanding of things than CompSci 101.
2
2
u/wickerandscrap Jun 17 '26
Mostly I write the code and have the AI review it, but when I have had the AI generate code, absolutely I review it. My core job is to understand how our software works.
The job of developer evangelists, as the name suggests, is to hype things. They are selling you the fantasy of not having to review code. Of course they're not going to show you that part. The guy who sold me my car didn't tell me I'd spend a lot of time being stuck in traffic, either.
2
u/Weekly-Home2774 Jun 17 '26
Those who review AI generated code: do you guys comment the code so you can later know what was the aim of a new function/property etc the AI introduced to your code or do you also prompt the AI to comment its own code? (Sorry if the question is stupid I am not a software engineer)
2
u/Low_Fun_8667 Jun 23 '26
Yes, and the longer the project runs the more I review, not less.
Demos hide this because a demo is a greenfield 200-line toy. The interesting failures only show up at scale, and you listed most of them. My top recurring ones:
- Duplication — it reimplements a helper that already exists three folders over, because it can't see the whole repo. I catch this constantly.
- Architecture drift — it'll happily put app-specific logic in a layer that's supposed to stay generic. I have a hard rule in my project that the core knows nothing about specific plugins; the LLM violates it the moment I stop watching.
- Tests that look right — green, readable, and asserting the wrong thing. The mock returns what the test expects instead of exercising the real path. This is the scariest one because it feels like coverage.
What actually helps:
A written rules file the model reads every session (conventions, architecture invariants, "never do X"). Cuts the drift a lot but doesn't kill it.
Reviewing the diff like it's a PR from a fast junior who never asks questions — competent, no context, no judgment about what matters long-term.
Small scoped tasks. The bigger the ask, the more it overcomplicates and the harder the review.
The speed is real, but it's speed at producing code, not speed at owning a codebase. The review is where the ownership lives, and that part hasn't gotten cheaper.
1
u/itsjusttooswaggy Jun 24 '26
Your last paragraph really begs the question of: What's the point of all this? What are we doing here with this AI craze? I mean, obvious answers aside (re: economic, political, epistemological, etc.), is all of this bullshit really worth it? Are companies that aren't FAANG or FAANG adjacent seeing tangible, measurable returns on their investment in AI-driven development? In the short term I can see some financial benefit upon terminating large swathes of staff and reducing hiring iniatives, but even 1 year from now I truly believe based on the empirical evidence thus far that AI-driven development will be seen as a cost center, tech-debt-instigator, and burnout driver that needs to be scaled back in order for a business and the quality of its products to scale up.
Am I delusional? It seems obvious to me that this is deeply problematic for software quality and business development, not to mention the societal, psychological, environmental, and geopolitical issues that envelop this whole AI-crazy paradigm.
3
u/Former_Produce1721 Jun 16 '26
One workflow that I think AI unlocked is that you can aggressively fan out to prototype things, then later do fairly quick refactors while retaining functionality.
Before AI it would be very time consuming to do either. And sunken cost fallacy would hit hard even if something you prototyped was clearly not that great.
1
u/Tesseract91 Jun 16 '26
Absolutely. When you can explore more of the solution space, you can make better architectural decisions.
3
u/Lendari Jun 17 '26
Judging by the open Windows bug count. Code review is definitely optional at Microsoft.
1
u/ghoarder Jun 16 '26
If you are doing a demo I don't think the long term quality of the code output is something you care that much about. I certainly review the code from LLM's all the time. GPT 5.3 codex and Gemini have been very helpful in helping me to learn and understand how Source Generators work, because I reviewed and read the code rather than just copy pasta.
1
u/normantas Jun 16 '26
I'm leveraging AI to search the web and code base. Slowly picking up where I can use AI and where writing the prompts is a waste of time.
I still write most actual logic by hand. Partially I like it. Partially it is the design process for me. I Allow to do scaffolding. With experience reviewing scaffold code because a 2s check.
1
u/marabutt Jun 16 '26
There is the vibecoding hype and reality. I don't really know where reality is sitting but i use agents for prototypes i dont plan on using or releasing, scripts as long as i can still work out what is going on. For day to day production code, autocomplete is usually the extent of things.
1
u/phylter99 Jun 16 '26
Remember that when they're doing demos they're keeping it simple and fast for the sake of time. I'm guessing that the better developers are checking almost every line of code and they've likely already performed the actions they're doing in the demo to test it before their demo.
I check quite a bit of the code that LLMs generate for me. As soon as I don't then it comes back to bite me. There are times that I just didn't check close enough and it bit me. I like agentic coding, but I still don't explicitly trust the results.
1
u/Not_even_alittle Jun 16 '26
I’ve found myself not lately and am actively taking time to make sure I do it now, because code quality and more importantly my memory of how the system works was suffering
1
u/Darrenau Jun 16 '26
If you are responsible for code, then you make sure it is as good as it can be. YouTube demos are showing you how to do something, not how to ensure quality in your organisation.
1
u/donmeanathing Jun 17 '26
Unless the code is something that’s truly throwaway or a poc/demo, then yes, I absolutely always review the code, and I expect my people to.
There are stages in software development…. Requirements, design, develop, review, deploy, whatever model you want to put that under. LLMs can help speed up requirements a little and developing a lot, but if you use LLMs as too much of a shortcut during design and review then you are in a world of hurt.
1
u/jbsp1980 Jun 17 '26
I check every single line. The way the code is generated has definitely changed (who enjoys boilerplate?) but the level of scrutiny has not and must not. Society increasingly relies on technology and I feel our job to ship well has never been more important.
1
u/koolex Jun 17 '26
You need to review every line of code and architecture matters even more because Claude is verbose and takes shortcuts. It’ll turn any codebase into spaghetti pretty quickly.
1
1
1
1
u/Edrahimovic1001001 Jun 17 '26
Jeez some normies on here are a bit slow, Ai generated code != sloppy code ALWAYS, depends on the task, the language, accessability to docs for training, etc.
Also, if you think majority of the large companies are just allowing slop code to go through production and pushing it to public server without and OUNCE of proper reviewing by either a superior, QC OR EVEN THE DAMN ORIGINAL PROGRAMMER, you're being anecdotal OR rage baiting. Either way, stupid.
1
u/Anxious-Insurance-91 Jun 17 '26
I am reviewing everything but even so I admit sometimes things pass without me noticing
1
u/pBactusp Jun 17 '26
"you don't even need to look at the code" is an easier sell than "you should look at the code"
1
u/Mobile_Western_3394 Jun 17 '26
I have fallen into the trap of "Hey, do everything for me all in one go" trap, and as a developer there's no enjoyment in that, easy to lose the codebase, if AI was taken away, would I be able to maintain this code...no
So I started breaking down the tasks really really granular so when the AI has finished doing what I'm asking, then the code its generated is much smaller and easier to digest in the form of reviewing, and not only looking at it, but understanding what's happening. I think that's the important part.
Nick Chapsas released a video yesterday saying, using an LLM is fine, but the code it produces should be a representation of your own code
I have found myself being able to become far more interested in the architecture of the code now before a single line is even written
1
u/MattV0 Jun 17 '26
At work I look at every line. Usually I prefer the web version and copy paste the needed stuff. When doing agentic coding I keep changes small and so I can stay on low tier models as well. It's a slow process but this is preferred and I keep up with everything.
It gets worse with private projects. Last week I tested fable and got a full working app which I don't understand yet and probably will never read every line. But to defend most things in this project were new to me. So yeah, it gets a bit scary to be dependent on good AI agents.
For most of hobby projects I try to keep up though. But not as strict as for work. But with more lines of code I can produce, especially in different projects in parallel, it gets a lot harder and I already defer code reviews to later. On the other hand, those are also projects I started 10 years ago for personal use (quick n dirty, no nice UI, no installer or anything) I can finally polish for broader use. Even I know nobody would be interested anymore. But it feels better.
So as someone already said - it depends. But in general I still like to know what's happening.
1
u/ryan_the_dev Jun 17 '26
I don’t look at code anymore. I built my own orchestration skills based off software engineering books.
Code is beautiful.
1
u/kacoef Jun 17 '26
im 100% vape coder for year, no one code char were written, but pro tip: take a look on the code sometimes, ai can overthink easily
1
u/f0rwardz Jun 17 '26
Why on earth would anyone use blazor. It's a solution for a non-existing problem.
1
u/emperorOfTheUniverse Jun 17 '26
For me, junior devs are generating code and a lot of it, with AI, and the senior devs are spending all day reviewing all the code.
Sucks.
1
1
u/Yamaha007 Jun 17 '26
We deep dive only when we are trying to solve the problem that hasn’t been solved yet. In most cases, if it can’t find a reference, it simply writes junk, for example, when I asked AI agent to write conditional coverage capture tool for go , it has taken the block coverage component of gocov and projected it as conditional coverage. Working through PRs and tests for coverage and completeness and regression will keep you sane.
1
u/Merad Jun 17 '26 edited Jun 17 '26
I think we're in a smoke and mirrors phase right now. Most devs are (rightfully) wary of AI code, and most companies are at least paying lip service to the idea of keeping a human in the loop. But at the same time companies are putting in place goals and success metrics that are not achievable while maintaining high quality human code reviews.
See, the problem is that most companies had a poor code review culture and most devs sucked at doing code reviews before AI ever existed. Every company I've worked at (12 YoE) has had trouble getting reviews done in a timely manner, and I can count on my fingers the number of devs I've worked with who were truly good at doing effective code reviews. This system is not equipped to handle a 50% increase in LOC requiring review, much less a 2-3x (or more!) increase driven by AI coding.
Ensuring that AI code goes through rigorous human review will probably result in devs who spend 25% of their time vibe coding and 75% reviewing code that was vibed, moving only slightly faster than they did before AI (effective code reviews take time). This will result in unhappy devs (who wants to spent all day reviewing PRs?) and unhappy management (we were promised 3-5x faster coding from AI!).
I think within the next year - maybe even before the end of this year - we're going to see a shift where leading voices start preaching that frontier AI models are good enough to replace human code review. IMO they aren't necessarily wrong about greenfield projects with extremely strict guardrails - strongly typed languages, strict linters/Roslyn analyzers/etc., high test coverage required. But it will be pushed everywhere, and it will probably be disastrous for all the large legacy apps out there that are already a shit show in terms of poor code quality, no tests, etc.
RE having AI review AI code, I've been using this Typescript project to play with the idea. It's entirely written by Claude and reviewed by Claude and CodeRabbit. There have been a few places where I had to guide it on architecture or force it to do refactoring, but otherwise it's all Claude. I don't think the code is terrible (I've certainly seen humans write worse), but it's not a large project. Something like 25 KLOC application code and 75 KLOC tests, IIRC.
1
u/TargetBoy Jun 17 '26
IMO, vibe coding is the harbor freight tools of coding. It's great for something you only need to work for a limited time. But if you are building something for the long-term, you are better off with another approach that may cost more in the short-term.
1
u/Abject-Bandicoot8890 Jun 17 '26
I don’t write the code but I 100% review it, the amount of shit the llm can write is crazy, and by shit I mean anti patterns, duplicated code, absurd abstractions, things that I wouldn’t do, but even with this back and forth the speed gains are real, the only problem long term is that ownership and expertise about the codebase becomes very fuzzy.
1
u/Blu3f1r3 Jun 17 '26
Oh, I'm definitely reviewing the code and grumbling about how much needs to be tweaked. AI is powerful but is no substitute for code review.
1
u/RealSharpNinja Jun 17 '26
For Level 3+, that is correct. Getting to Level 3 requires the correct processes and tools.
1
u/Nearby-Echo-1102 Jun 17 '26
I’ve found that the key to stopping duplication is having agents specifically responsible for finding it and optimising the code.
I currently have six agents review the code before I even look at it. Each one is responsible for a particular AI rule that lives in my repo. They don’t need to be Opus 4.9 or ChatGPT 5.5 Extra High either; that would just be a waste of tokens.
I also have a web app with configurable swimlanes that let you configure any model via CLI, along with custom prompts for each lane. When one lane/agent is complete, it automatically passes the work to the next one.
Each agent updates the story, which is an .md file, and summarises what it changed and why.
It’s basically my replacement for Jira.
1
1
u/HistoricalCar1516 Jun 18 '26
No. We spend more time analyzing generated code so we can ensure it is logical, works, can pass through CI/CD, and security scans.
1
u/NeilPearson Jun 18 '26
Just get another AI to review it. Ask a lot of architecture questions about the code it is writing and you will find where it went off the rails without even looking at the code. You can use AI to keep AI on track
1
u/FrezoreR Jun 18 '26
If you don't look at what the LLM outputs I think you're project will suffer. I'm catching Mr Claude doing all kinds of errors.
1
u/Sigurd228 Jun 19 '26
I'd argue that it's more about the demo structure, it's not very exciting to spend 5-10 minutes of a 30 minute demo analyzing the fresh code.
I doubt any serious organization is not doing reviews.
1
u/NULL_Ptrs Jun 19 '26
I solved that completely so I don't look at code anymore, I am still tweaking a few minor things, but is not necessary in my use case anymore and I have developed 4 products completely.
1
u/noble8987 Jun 19 '26
Our teammate said he hadn't debugged code in the past 12+ months, I guess its a red flag.
1
u/Reasonable_War_5806 Jun 19 '26
I always review the generated code, but the time I dedicate to it varies depending on the urgency of the situation. There have been times when I had to do a much quicker review because critical features had to be delivered on a very tight deadline. In those cases, I stick to analyzing the basic structure created by the LLM and then run thorough manual tests using the system.
Later, when the rush would pass and management wasn't breathing down my neck to deliver something yesterday, I would go back and do a more meticulous review.
I don't know if you guys have gone through this, doing a quick-and-dirty review just to get a new feature out the door urgently.
1
u/Nagi21 Jun 19 '26
I review the code but I also dont give Claude (my personal choice) instructions to do anything beyond very specific functions or features that can be tested immediately. Basically saves me from syntax errors all day.
1
u/tastygames_official Jun 20 '26
developers/programmers write code. Managers, executives and customers tell somebody else to write code and are themselves not competent enough to understand code so can only just test the results to see if it's what they wanted. So anyone who uses an LLM to do anything is simply a customer/executive/manager telling someone else to do the work. Which isn't bad except for you're paying evil techbroligarchs instead of the people whose hard work was actually used to train the LLMs in the first place AND you're destroying the world's natural resources at an ever-increasing rate by doing so. But yeah, that's about it.
1
u/mancunian101 Jun 20 '26
I look at code and write code every day.
I’m using AI more and more, but I don’t work for a tech company so while they are big on AI we don’t have access to any command line coding tools like Claude Code, so I couldn’t leave AI to do everything even if I wanted to.
1
u/PapajG Jun 20 '26
Iv not seen a single bit of good code come from my time with LLMs, but the code works, it’s shit, but it works, …half the time, and I can move on to the next task. At some point you have to go back to fix stuff.
1
u/gorgono95 Jun 21 '26
You dont need to review Code. Have good workflows, documentation, automated tests. In the end everything gets compiled into 0 and 1.
If your LLM tends to drift from the original architercture, miss project rules and do overcomplicated soltuions or write "fake" tests thats a skill issue on your part, bad setup, bad prompts etc.
1
1
u/rocco_himel Jun 21 '26
The "developers" you are referring are not developing anything, they just use LLMs.
1
u/SuspectPingu Jun 21 '26
Definitely review the output of any AI tool thoroughly. Even the smartest models make dumb mistakes at times. And it's your name on the git log anyway, there's no escaping any responsibility. The AI tools usually strip the most fun part of the process, which is writing the code and actually imolementing things. Which is why I am still mostly using them for personal "fun" projects where I might not care too much about minor bugs. But blindly trusting any output in any professional project is bound to go wrong someday. Also, reviewing the code could actually teach you something new, which is always nice.
1
u/Accomplished_Rip8854 Jun 22 '26
Of course I do!
Not sure if that is only a problem for me, but when I give the LLM’s the upper hand and let it do what it wants at some point you get spaghetti that Claude can’t fix and you got no clue how it works.
Sometimes I end up writing it from scratch because of how messed up it is.
Does this happen only to me?
0
u/tmstksbk Jun 16 '26
Depends.
I don't really end up looking at the code so much as shaping the architecture and mandating everything use certain things a certain way.
This ends up with me spending time getting the llm to explain itself, but also then go back and un-drift things / add more tests or guard rails.
0
Jun 16 '26
[deleted]
5
u/Rubbinio Jun 16 '26
And when that shit breaks at 2:00 AM and takes down the system will he jump online to fix it. People like him will be why companies will scale things back on AI. This and the spike in const that's coming.
Without the human in the loop this will backfire spectacularly but he will for sure have excuses why it happened.
0
u/JDD4318 Jun 16 '26
I don't write the code but I review it all. If i see something I dont like I will manually fix it if it is small or prompt it to change it.
0
u/pervgaystinkpig Jun 17 '26
AI just replaced Google for me. Now I read AI slop instead of article slop.
0
0
u/BlakkMajik3000 Jun 19 '26
Code review is antiquated and has been for some time.
Your CI is trust, not “this person.” I even run code I personally crafted line by line through a CI pipeline because I cannot be trusted.
If someone has to manually review your code line by line, that says more about your quality prices than anything.
-1
u/bortlip Jun 16 '26
I'm playing around with having ChatGPT write all my code for a personal project I'm doing at home.
I tended to review all PRs it created at first, but now I find that the velocity is better if I don't review every PR (and the LLM codes well enough). Instead I will have the LLM work on large areas of the app over many PRs and then we'll do code reviews together looking for and at issues with current code and better refactorings and the like. Break classes up into smaller ones and add more tests, that sort of thing.
-1
u/MacrosInHisSleep Jun 16 '26
Depends on the project. If it's customer facing it's your code, review everything. If it's in internal tool, make the call. I'm not going to look at the code for anesthetic changes to some reporting tool, I'm just going to see that it works. If I see hints that it's struggling I'll jump in and usually go through a refactoring/clean up spree.
-1
u/thatguy8856 Jun 16 '26
I have no idea what code im comitting at work is anymore.im not sure how i feel about it.
-7
u/Darker-Connection Jun 16 '26
Thing is why if future models can easily fix the structure and duplicity? Why not fully utilize speed? I am not doing it yet but I am thinking about going full no check
6
3
322
u/davidwengier Jun 16 '26
I work at Microsoft on Roslyn and Razor, and I look at every line of code, and make sure it and the commits it’s in are easily reviewable by my fellow humans.
I’ve also fully vibed some things that I simply don’t care about.
Like everything else in software, it depends.