Remix.run Logo
sidrag22 6 hours ago

> fully understand every change and every single line of the code.

im probably just not being charitable enough to what you mean, but thats an absurd bar that almost nobody conforms to even if its fully handwritten. nothing would get done if they did. But again, my emphasis is on that im probably just not being charitable to what you mean.

Maxatar 6 hours ago | parent | next [-]

You're most likely being pedantic, like when someone says they understand every single line of this code:

    x = 0
    for i in range(1, 10):
      x += i
    print(x)
They don't mean they understand silicon substrate of the microprocessor executing microcode or the CMOS sense amplifiers reading the SRAM cells caching the loop variable.

They just mean they can more or less follow along with what the code is doing. You don't need to be very charitable in order to understand what he genuinely meant, and understanding code that one writes is how many (but not all) professional software developers who didn't just copy and paste stuff from Stackoverflow used to carry out their work.

sidrag22 6 hours ago | parent | next [-]

you drew it to its most uncharitable conclusion for sure, but ya thats pretty much the point i was making.

How deep do i need to understand range() or print() to utilize either, on the slightly less extreme end of the spectrum.

But ya, im pretty sure its a point that maybe i coulda kept to myself and been charitable instead.

_puk 5 hours ago | parent | prev [-]

Understand your code in this day and age likely means hit the point of deterministic evaluation.

print(X) is a great example. That's going to print X. Every time.

Agent.print(x) is pretty likely to print X every time. But hey, who knows, maybe it's having an off day.

hunterpayne 15 minutes ago | parent | prev | next [-]

I do. If you don't, maybe you shouldn't be writing software professionally. And yes, I've written both DBs and compilers so I do understand what is happening down to the CMOS. I think what you are doing is just cope.

thomasmg 6 hours ago | parent | prev | next [-]

Well that is how it mostly worked until recently... unless if the developer copied and pasted from stackoverflow without understanding much. Which did happen.

satvikpendem 6 hours ago | parent | prev | next [-]

How is that an absurd bar? If you're handwriting code, you'd need to know what you actually want to write in the first place, hence you understand all the code you write. Therefore the code the AI produces should also be understood by you. Anything else than that is indeed vibe coding.

Maxatar 6 hours ago | parent | next [-]

A lot of developers don't actually understand the code they write. Sure nowadays a lot of code is generated by LLMs, but in the past people just copied and pasted stuff off of blogs, Stack Overflow, or whatever other resources they could find without really understanding what it did or how it worked.

Jeff Atwood, along with numerous others (who Atwood cites on his blog [1]) were not exaggerating when the observed that the majority of candidates who had existing professional experience, and even MSc. degrees, were unable to code very simple solutions to trivial problems.

[1] https://blog.codinghorror.com/why-cant-programmers-program/

sidrag22 6 hours ago | parent | prev [-]

its an absurd bar if you are being a uncharitable jerk like i was, the layers go deep, and technically i can claim I have never fully grasped any of my code. It is likely just a dumb point to bring up tbh.

satvikpendem an hour ago | parent [-]

I saw your reply to another comment [0], I see what you mean now. By "understand each line of code" I meant that one would know how that for loop works not the underlying levels of the implementation of the language. I replied initially because lots of vibe coding devs in fact do not read all the code before submitting, much less actually review it line by line and understand each line.

[0] https://news.ycombinator.com/item?id=47894279

andrewjvb 6 hours ago | parent | prev | next [-]

It's a good point. To me this really comes down to the economics of the software being written.

If it's low-stakes, then the required depth to accept the code is also low.

sbarre 6 hours ago | parent | prev | next [-]

Could they have meant "every line of code being committed by the LLM" within the current scope of work?

That's how I read it, and I would agree with that.

raincole 5 hours ago | parent | prev | next [-]

I mean "understanding it just like when you hand wrote the code in 2019."

Obviously I don't mean "understanding it so you can draw the exact memory layout on the white board from memory."

torben-friis 5 hours ago | parent | prev [-]

You don't understand every change you make in the PRs you offer for review?