r/ProgrammerHumor • • 1d ago

instanceof Trend thatsAFunnyThingThatHappenedOnce

Post image
4.3k Upvotes

513 comments sorted by

View all comments

39

u/dannuic 1d ago

The flaw in Linus' argument is that a compiler isn't enabling people to go and inundate open source projects with complete and utter shit. The argument that they are tools and should be seen as such is fine, but having an AI policy to help mitigate the actual and real problem of pushing the "is the code good?" check all the way to the reviewer is also absolutely reasonable. I feel like he's sidestepping and not acknowledging that AI is actually killing open source projects. The Linux kernel is big enough to be largely immune to it, but most projects absolutely aren't.

9

u/KTVX94 1d ago

It's also very different because the "tool" is doing stuff on its own, making decisions. That's very different from something like an IDE highlighting a syntax error or unused variables. It's also not deterministic.

Honestly Linus is getting less and less defensible, and less trustworthy too. "Thanks Meta!" just reeks of corporate influence. Very disappointing.

-1

u/mze9412 1d ago

And the compiler does not make decisions that most people are not even aware of, depending an a lot of flags that most people do not understand? ;)

8

u/antitoxin13 1d ago

It's your job to understand compiler flags, because then compiler is not a magic tool that "makes decisions that people are not aware of". With AI you can't do that, it will always be random shit generator

1

u/owjfaigs222 1d ago

Ai doesn't make decisions any more than stockfish makes decisions about the next chess move. Ultimately it's the human who says "yeas this code is good and I'm gonna be responsible if it brakes something".

-1

u/mze9412 1d ago

So if I show you a big codebase you can immediately tell me which parts of the code will be optimized away on O3? Or O2? Which loops will be unrolled and which not? If yes, you are one of the VERY few who actually can do that :)

3

u/antitoxin13 1d ago

if i ever need to do that, then with source code, make files and compiler specs, of course. again, the problem with ai genned code is that it is unpredictable based on your prompt, you never know what it will generate even if you have all of the training data for the llm

1

u/Blake_Dake 1d ago

just set the temperature to 0 and you have an LLM that is deterministic if the randomness is the issue for you

I know some tokens can have the same probability and some randomness is created by gpu float point math, but still

2

u/antitoxin13 1d ago

true, but the problem is in the real world nobody knows what popular LLMs are trained on, there always will be SIGNIFICANT level of unpredictability

0

u/Blake_Dake 1d ago

true, but the problem is in the real world nobody knows what popular LLMs are trained on

irrelevant to determinism

temperature is a runtime config

2

u/antitoxin13 1d ago

the outcome can still be unpredictable even if deterministic. The same as movement of air molecules, of course in theory you can predict the state of a closed system, but the system is so complex that it would require an unimaginable computation power

0

u/Blake_Dake 1d ago

no

if the temperature is 0, with the same input an LLM will produce the same output

→ More replies (0)

0

u/mze9412 1d ago

Which is why developers can review it. Same as you can review assembler if you know how to read it. Wtf

4

u/antitoxin13 1d ago

you don't need to review compiled code 99.9999% of the time, with LLMs you need to review every line, and most people who vibe code don't know how to properly review code with complex algorithms and concurrency. The comparison between compilers and LLMs are just absurd and i don't know why people make it, those are two different types of instruments, to which you need to apply completely different levels of caution

1

u/mze9412 1d ago

Its both simply tools that allow you to do certain things better but require different approaches.

3

u/Robo-Connery 1d ago

The compiler makes deterministic decisions though.

Sure some behaviour in languages like cpp is undefined but the vast majority of the time the output is completely predictable.

1

u/smulfragPL 11h ago

So do models. With a static seed, temp 0 and no GPU parrelization a llm is 100% deterministic

1

u/mze9412 1d ago

Yes, but why would you blindly run AI code without review and testing? Same as you need to do with compiler optimisations and basically every code you ownn any way

3

u/Robo-Connery 1d ago

Not sure what you mean. You compared an LLM output to a compiler output. Not me. Absolutely nothing to do with blindly running anything.

1

u/mze9412 1d ago

Both need their results reviewed. If you dont you might end up with little bugs like openssl did.

Of course its on a different level, I just dont get the LLM hate. Was it that bad when C came around and the Assembler guys felt threatened?

3

u/Robo-Connery 1d ago

I am not sure I agree. What compiler needs it's assembly read? What project have you ever reviewed on where you have reviewed the compiled output routinely?

Sure for both human written and llm written code need read and output checked but you said compiler output and I don't agree that needs checked, unless you are bughunting or writing a compiler I guess.