top 50 comments

sorted by: hot top controversial new old
[–] 182 points 1 month ago (25 children)

Never seen a non-deterministic compiler though

  • source
  • hideshow 25 child comments
  • [–] 92 points 1 month ago* (8 children)

    C/C++ compilers are non deterministic due to support of super macros that change run to run, non-deterministic optimisation strategies or ordering due to parallelism, and linkers often produce different outputs every time they are run where subtle bugs can cause crashes when addresses don't line up how you expect. And that's without mentioning projects that use a configuration step.

    It's actually a big problem in producing reproducible builds for security.

  • source
  • parent
  • hideshow 8 child comments
  • [–] 15 points 1 month ago (3 children)

    I’m not very good with C/C++ so please correct me, isn’t that what’s called a “race condition”? Parallelism can cause non-determinism but not in the same sense LLMs generate non-deterministic output. Compilers are not statistical machines.

  • source
  • parent
  • hideshow 3 child comments
  • [–] 17 points 1 month ago

    You don't need parallelism to have a race condition, just not handling an event with expected timing can cause one - like when two keys are pressed within one polling cycle and you depend on one being pressed before the other for some logic like up and right arrow for a diagonal but they register as right and up so the diagonal movement doesn't trigger

    Compiler optimisation strategies sometimes use statistical machines and link time optimisation does use random number generators for producing output

  • source
  • parent
  • load more comments (2 replies)
  • [–] 27 points 1 month ago (1 child)

    An LLM is not inherently non-deterministic though - if you don't randomly sample and instead have a fixed rule (which is what the recent fingerprint embedding approach does), if applied in all cases the output is deterministic, as the neural net at its core is deterministic function. A lot of the randomness beyond that is due to optimizations [source].

    LLMs are however unreliable at 'compiling'. Whether or not it will be able to complete the requested task (translate human language into code) correctly it not guaranteed - at least nowhere near the compilers we use.

  • source
  • parent
  • hideshow 1 child comment
  • load more comments (1 reply)
  • [–] 17 points 1 month ago* (3 children)

    Technically, LLMs (and most ML models) are deterministic with the same input and same seed.

    I get what you mean though.

  • source
  • parent
  • hideshow 3 child comments
  • [–] 8 points 1 month ago* (2 children)

    So does ChatGPT intentionally change seed at every interaction so it always spits two different outputs given the same input?

  • source
  • parent
  • hideshow 2 child comments
  • load more comments (1 reply)
  • [–] 17 points 1 month ago (2 children)

    There is a parameter in llms called temperature. If you reduce it down to zero it will become deterministic. And probably even worse.

  • source
  • parent
  • hideshow 2 child comments
  • load more comments (1 reply)
  • [–] 6 points 1 month ago (4 children)

    Exactly this. If you made an LLM that had deterministic code output then I’m all up for saying “AI is a compiler for human language”. But until then AI is most definitely not a compiler.

  • source
  • parent
  • hideshow 4 child comments
  • load more comments (1 reply)
    [–] 87 points 1 month ago* (13 children)

    Even Linus is conflating "doing more" with "being more productive". A car factory could, if they wanted, pump 10x more cars out the door. But qualiry would decrease these would be full of defects, so in the end you weren't more productive

    I don't care if there's more PRs. It's just and illusion of productivity

  • source
  • hideshow 13 child comments
  • [–] 8 points 1 month ago

    Even Linus is conflating “doing more” with “being more productive”.

    No he isn't:

    Torvalds’ broader argument is that generating code has become easy, while maintaining a system over years or decades remains hard — and AI does not close that gap on its own. Without a working understanding of the underlying architecture, he suggested, AI assistance can help someone make mistakes faster rather than build something durable.

  • source
  • parent
  • load more comments (4 replies)
    [–] 78 points 1 month ago* (23 children)

    I wish more would listen.

    Many seem to interpret the headline as “Torvalds is an AI Bro now,” when its more like him yelling “If you all don’t treat these things as tools, shit is going to hit the fan.”

  • source
  • hideshow 23 child comments
  • [–] 27 points 1 month ago (21 children)

    After seeing what happened to windows because of this "tool" I think many of us are rightfully skeptical of what will happen to this community.

    It happened before, why are we okay with it happening again?

  • source
  • parent
  • hideshow 21 child comments
  • load more comments (1 reply)
    [–] 34 points 1 month ago (1 child)

    Linus seems to be taking a perfectly pragmatic approach, given that AI is not going away short of WW3.

    I can imagine some individual sub-system maintainers introducing various AI-roadblocks though.

    I also expect this to be increasingly addressed (in general) with model & tooling improvements, giving more weight to higher quality reports and MRs, and more respect for project rules and processes. A mix of soft and hard gates, CLAs, improved early automated bug report & patch reviews and other CI gates.

  • source
  • hideshow 1 child comment
  • load more comments (1 reply)
    [–] 27 points 1 month ago* (last edited 1 month ago) (2 children)

    Did the headline change? The current headline is Torvalds: "100% of Their Code is Written by Compilers" Too

    The title of this post makes for a dumb headline, at any rate. Linus, in response to claims in the industry that projects are now "99% written by AI", drew an analogy to compilers by saying that all machine code for projects are written by compilers, yet no one says their project was 100% written by a compiler. It's just talking about stupid hype, which is valid.

    That being said, it's still quite unfortunate that Linus has fallen into the trap of LLMs.

  • source
  • hideshow 2 child comments
  • [–] 10 points 1 month ago*

    I don’t get the impression he’s fallen in the trap at all.

    More so, he sees it for what it is. It’s a tool that can help, but needs smart people that can validate its output. It can’t design entire systems nor effectively solve real world business problems on its own. It’s not going anywhere, so may as well adapt to our new reality.

  • source
  • parent
  • load more comments (1 reply)
    [–] 25 points 1 month ago (1 child)

    I understand the spirit of what he means, but I still don't know how an LLM can be used efficiently as a precise tool like this. If I can describe a problem narrowly enough to guide an LLM to give a useful output, I've already solved it myself and may as well just type it out.

  • source
  • hideshow 1 child comment
  • [–] 6 points 1 month ago* (last edited 1 month ago)

    Exactly same thinking. I can usually type it out faster than AI (when taking into account latency, context building, prompt writing, prompt fixing, AI hallucination review) if I know what exactly needs to be done.

    When you're out of your depth, it shines in providing beautifully confident and a botanical garden of a code piece that wil most likely be broken and break in new and exciting ways. Great for incompetent sycophantically-challenged managers that forgot how to code, or never actually had any experience.

    Large-scale code transformations, taking into account the bigger picture of the repository are most likely hallucination free (not generative, just transformative, as per the actual LLM model) and a very exciting use-case.

    Also it's currently a very nice pragmatic tool for checking for any mistakes, because it can connect the larger context of the repository quickly to the diff. Terrible if done by a manager without understanding of copilot and workflow, but a great tool if done through claude and cli as a pre-commit step with just quick checklists. Makes plenty of mistakes, but allows to catch your own big mistakes nicely quickly.

  • source
  • parent
  • [–] 20 points 1 month ago* (last edited 1 month ago)

    If there's anybody I trust to use LLMs in a responsible way, (to whatever degree that's even possible) it would be Linus Torvalds. He has some of the highest standards for software development in the world, and the same can be said for the core Linux kernel development team.

    The general problem though, is that the people who are the least qualified to do software development are very often the people who are the most likely to use LLMs to try to slop their way to the top.

    I think that the combination of cost increases for inference, inherent limitations in model integrity, and the economic destruction that will ensue when these fraudster CEOs have finally squeezed every last drop of blood from every last stone they can find, will leave "AI" in a similar place as blockchain/crypto/NFTs.

    There will be a relatively niche market for software engineers and related tech workers; local LLM boxes, some subscription-based models that companies pay for with their licensing packages, hobbyists, and some minimal integrations into software suites for tools like background removal, lighting enhancement, etc.

    There will be no Singularity, no AGI, no all-knowing Machine God.

  • source
  • [–] 16 points 1 month ago (7 children)

    @inari@piefed.zip , may I ask why do you change the title so awfully it does not only not state the same as the article but misleads it?

  • source
  • hideshow 7 child comments
  • [–] 10 points 1 month ago (1 child)

    So it looks like the source originally used that awful title misrepresenting the article it self. In other words the source needs to be blacklisted for spreading bullshit. Dose this community have a blacklist yet?

    I know blacklisting sources is a steep slope to censorship, but at a certain point if the source feels they need to click bait people with tabloid headlines they are not worth our time.

  • source
  • parent
  • hideshow 1 child comment
  • load more comments (1 reply)
  • [–] 11 points 1 month ago

    AI is the new grifter buzzword 😐

  • source
  • [–] 9 points 1 month ago (9 children)

    Torvalds was careful to frame this as a correction of language rather than a rejection of the technology itself.

    Ok...

    A maintainer burden few are talking about

    Alongside the productivity gains, Torvalds described a less-discussed cost: a rising flood of low-effort, AI-generated bug and vulnerability reports hitting open source projects, including the kernel’s own security channels. He said it has become common for someone to run an AI tool against a codebase, file a report flagging a “possible” issue, and then vanish when a maintainer follows up asking for more detail or a fix.

    Everyone is talking about that and it is surprising to me that he doesn't recognize that as two side of the same coin. Why are you rejecting the low-effort, Ai generated bug reports, Linus, isn't AI just a productivity tool? What's wrong? Is it not being productive?

    I say "surprising", it's not that surprising. It's a "guns don't kill people, people kill people" attitude. It's willfully excluding the impact that technology has on people, and framing the outcome as coming purely from people and the existence of the technology not affecting the outcome.

  • source
  • hideshow 9 child comments
  • [–] 39 points 1 month ago* (2 children)

    Tools are just tools; there are good ways and bad ways to use them. "Grok, go find bugs in the Linux kernel" isn't a good one. This isn't hard to understand...

    There were many, partially well-intentioned, mostly fame-seeking, one-off 'projects' 'scanning' public repos and flooding them with low-quality low-effort PRs and issues; things that no human ever read until the a maintainer did.

    "They made a poison and sold us a cure" is absolutely a valid criticism; that's two sides of the same coin. But pretending that he's being hypocritical or that LLMs aren't useful is just being wrong for the sake of hating AI

  • source
  • parent
  • hideshow 2 child comments
  • AI is useful as tool like he said, unfortunately these days in many organisations it is used as a replacement rather than a tool.

    His conclusion was that as AI tools get more capable, the people who actually understand how systems work become more valuable, not less — because someone still has to review, maintain, and take responsibility for what the tools produce.

    Humans still need to learn how to code.

  • source
  • parent
  • [–] 6 points 1 month ago

    Tools are just tools

    I don't think that's true, but we simply disagree on that.

    I don't think he's hypocritical. He simply doesn't have to deal with that negative impact he "warns" about. He is in support of using it as a tool and thinks the criticism is invalid. That's a consistent perspective, even if I don't agree with it.

    If he used LLMs to create bug reports, but also complained about LLM written bug reports he gets, that would be hypocritical.

  • source
  • parent
  • [–] 31 points 1 month ago (1 child)

    .... What?

    Lazy people using tools in a shitty manner has been an age old problem.

    This just lets it scale, which is the problem. There used to be a barrier to entry for those less knowledgeable or experienced, now there isn't and that's the result.

    It is a productivity tool, and it's being used as one, by both people that know how and people who don't.

  • source
  • parent
  • hideshow 1 child comment
  • load more comments (1 reply)
  • [–] 26 points 1 month ago (3 children)

    Why are you rejecting the low-effort, Ai generated bug reports, Linus, isn't AI just a productivity tool?

    Because they are low effort. Good software engineering is never low effort, whether you use AI or not.

    If you let AI replace people, and let them mess with software or report issues without understanding what's going on, without putting in the effort to understand what's going on, you're not adding any value; just noise.

    But if you use AI to find issues, then investigate the issue, reproduce it, document it, etc, then you've got something meaningful that someone can do something with.

  • source
  • parent
  • hideshow 3 child comments
  • [–] 6 points 1 month ago (2 children)

    But if you use AI to find issues, then investigate the issue, reproduce it, document it, etc, then you’ve got something meaningful that someone can do something with.

    In principle that is sound, but LLMs can't do that, yet, if ever. Sounds like anthropomorphism. The 'hallucination' thing is intrinsic. What you can do is point it at easily verifiable problems like searching for security flaws, and then verify them. Whether that's cost effective in wasted energy and human time is still an open question, especially as token cost ramps up pre IPO.

  • source
  • parent
  • hideshow 2 child comments
  • load more comments (2 replies)
  • [–] 8 points 1 month ago

    fuckin gross.

  • source
  • [–] 8 points 1 month ago (3 children)

    But you still have to compile

  • source
  • hideshow 3 child comments
  • load more comments (1 reply)
    [–] 7 points 1 month ago

    Well, unlike the compiler I don't trust the AI enough not to re read the result.

    For now it's the pair programing buddy that helps me debug. There are stuff where it's definitely more efficient than a human is.

  • source
  • [–] 6 points 1 month ago (1 child)

    I hope this new adoption didn't contributed to recent AMD GPU driver bugs

  • source
  • hideshow 1 child comment
  • load more comments (1 reply)
    load more comments
    view more: next ›