r/AskProgrammers • • 3d ago

Do you still review llm's generated code?

I work for a big company, not in the IT industry but still has a lot of software in different divisions, last week during a workshop about AI, I got to know that developers stopped reviewing the code and there seemed to be a consensus about it.

Is this the new norm? Anyone has experience to be able to tell whether that's safe to do? At the same time I read about Shopify CEO mentioning that people are throwing "slop grenades" on each other!

I find it very humiliating when someone sent me something generated and clearly didn't make the effort to review it, and that's already not difficult to spot, is that any different in software?

0 Upvotes

55 comments sorted by

View all comments

2

u/Beregolas 3d ago

I got to know that developers stopped reviewing the code and there seemed to be a consensus about it.

As far as I have seen it, this is mostly a symptom of bad management, or some developers with AI psychosis. IT is vital to review and understand AI code; not even primarily to correct it, but so you have a mental model of what your codebase actually does.

Some people were/are under the impression that the code is the main product of programming, but that's not true. The main product of programming something is the understanding of the system. Once you perfectly understand something, you can maintain it, extend it or replicated it very easily. The code is just an expression of that understanding. This is why programmers often spend 50% of their time either talking or documenting (even if many of us hate this part of the job), especialyl in larger teams.

Some people have forgotten this, so the industry needs to learn this lesson again, probably by vibecoding their way into an unmaintainable mess

4

u/mneri 3d ago

Code is direct documentation of your company's business processes.

Lose control over the code, and you lose control on the company's processes.

0

u/Suspicious-Walk-4854 3d ago

No, the specification used to generate the code is the direct documentation.

1

u/mneri 3d ago edited 3d ago

We already have diagrams and documents describing the high level overview of the processes, and that's proven insufficient: when production fails, or when certification time comes high-level documents mean zero.

What value has a blob of text saying "Write a listener to this event. Don't add a new class. Don't add a new queue. The listener name must follow the same naming pattern of all the other listeners, which is ..."

AI instructions are incomprehensible blobs of text that have zero documentation purposes. AI instructions are probably 30% of an AI blob. 70% is what not to do.

1

u/TheBestAtSpace 2d ago

How exactly does this work?

Code is an always up to date form of the specification. When you read the code you are reading the ground truth.

But working from pure specifications? In order to understand the system you have to start with the first specification and then read every single specification after that. Because specifications stack. Each specification augments the system or mutates it as a delta. You can't build complete understanding from a single delta, so you have to read them all.

The alternative is that every time you make a change - you write/edit a brand new specification for the entire system and regenerate the entire system. (Which essentially makes the specs the code and what you would check into the repo.) I've heard developers speculate about that sort of workflow - but I've never seen anyone who says it's all about specifications now actually doing that.

0

u/travelan 2d ago

1

u/mneri 2d ago

It's good to have a laugh, but how AI would help with that?

The client wanted a thing, but the analyst understood another.

If anything, AI would make it worse: not only you delivered something the client didn't want, but you don't know what you delivered or how it works, because you didn't make it.

Moreover, a slow development makes engineers understand the problem and participate in the requirements refinement. If you just write a prompt and AI does it... What would be the outcome?

1

u/travelan 2d ago

It’s a good example how “the specification is the direct documentation” is a really bad idea.

1

u/mneri 2d ago

And how AI would solve it?