Time to get back to Assembly, I guess.
But do you trust the CPU?
Well, fuck
Hint: :q!
Sister communities:
Community rules (click to expand)
1. Follow the site-wide rules
sudo in Windows.Please report posts and comments that break these rules!
Important: never execute code or follow advice that you don't understand or can't verify, especially here. The word of the day is credibility. This is a meme community -- even the most helpful comments might just be shitposts that can damage your system. Be aware, be smart, don't remove France.
Time to get back to Assembly, I guess.
But do you trust the CPU?
Well, fuck
The CPU runs Minix, are you going to tell me you don't trust Minix now?
Dev's what?
Dev is screwed.
For the uninitiated: who compiles the compilers?
I've had it on my todo for years to work through ddc and trusting trust.
Which is a method to verify a compiler is matching its source and thus trustworthy.
An orthogonal approach is reproducible builds, which among many benefits can make sure a few people verifying things benefit everyone who can then see they have the same verified binaries.
Quis custodiet ipsos custodes?
If I remember correctly, they used KenC to bootstrap the Go compiler.
Maybe? If you poison the prompt then there's evidence and it can be undone. Poison fragments of the source training data, however, and that's some KT shit right there. Enterprise foundation models cost bonkers money to train and pretty much slurp up all the data on the internet for mostly automated annotation. Stick something in an obscure part of the internet which becomes part of the training and produces the malicious response and it's going to be both hard and expensive to detect or correct.
Should be relatively easy, with the amount of once trusted packages that become attack vectors
except for poison to take in, it should be a pretty significant part of the dataset. Also, ngl, i'm not much informed on the topic, but aren't all the datasets, if we're talking about generic diffusion models and LLMs, already been formed? From what i gather, the innovation in AI mainly comes from utilizing new architectures, rather than training a model on something unique.
The datasets are constantly expanding as new content is generated online. There's a degradation issue currently where the models are training on incorrect data generated by previous iteration of their own or other models and effectively poisoning itself to more confidently give the same incorrect information in future.

The very fact that Anthropic is now injecting a kind of watermark into every output, is solid proof that such a Ken Thompson hack is a inevetable risk
Ugh. Fuck "AI" and fuck Anthropic. But please read how the "watermarks" work. TL;TR its like a seeded run in a video game. With the seed and pseudo rng, you get the outcome i.e. the extruded text. In the watermark its the reverse, outcome + prng = seed. The result will be the same "quality" extruded garbage as before.
A bit of a late response, but why are they mutually exclusive? I get that the "seed" can be extracted if you check for it, but who says that seed can't be somrthing nefarious? Like, someone vibecodes a website. You visit the website, extract the seed and it shows you the complete userbase of that website.
I'm just sptiballing here though. It might not be the best example. I get where you're coming from, but why we cant we both be right.
I don't think you got how it works. Not being mean, might have explained it badly. Maybe read their blog https://www.anthropic.com/news/claude-text-watermark
Thanks, I'll read it tommorrow (it's almost midnight here)
Good luck.
Lemmy is damn near the when it comes to wanting to hold an opinion on a topic without having first understood that topic.
That's just a reflection of the real life and not unique to Lemmy, dw
Amazing story, i loved it.
I think about this every day.
Devs should be "dev managers and executives". Real developers know LLMs are basically just a tool for finding examples and helping with syntax. Sure they're useful, but I'd never let them write code, much less compile it. Who knows what they'd inject into a build.
At work, I use AI for some things. Right now I'm rewriting some legacy spaghetti code that's had a bunch of things hacked into it over the years. I spoke to the person most familiar with the expected behaviour and used AI to combine his info plus the existing code and unit/integration tests into a list of requirements.
I wrote the new code and tests based on the requirements rather than based on the old code. After each commit, I used AI to check for parity between the old and new code, and it keeps a Google Sheet up to date with the progress (which features were fully implemented, and which ones were missing or had gaps). I had AI write some tests cases too - given the list of requirements, write integration tests for them based on the style of a few tests I wrote by hand.
It has some quirks (eg for tests it loves over-mocking even though our skills tell it to mock as little as possible) but it definitely speeds things up.
I use AI for small side projects at work too. Tweaking and adding features I want to shared libraries, internal tools to help our team debug stuff and automate triaging of bug reports (they're all still reviewed by a human), etc.
The entire reason I can trust its code is because I can read it and tweak it myself. I sometimes need to go through a few iterations to get AI code into an acceptable state. AI writing machine code directly, like what's been talked about recently and what this post is referencing, is such a dumb idea.
There's other people at work that use AI for absolutely everything. Writing code, reading code, writing posts in our internal groups, etc. That's something I don't understand. Some people that are all-in on AI produce so much low-quality AI slop.
I think that's the distinction between an expert using a tool diligently and responsibly, and a lazy person using it haphazardly as a crutch.
If that tool ever gets ripped out from under you, you'll possibly suffer a loss in performance, but you'll still be able to perform and do your job.
If their crutch is kicked out, they'll crash.
Who??
notice
javascript required to view this site
why
measured improvement in server performance
awesome incremental search
Boo! Just give me the text!
Edit: It's long, but here's the opening section, at least:
In 1984 KenThompson was presented with the ACM TuringAward. Ken's acceptance speech Reflections On Trusting Trust (http://cm.bell-labs.com/who/ken/trust.html) describes a hack (in every sense), the most subversive ever perpetrated, nothing less than the root password of all evil.
Ken describes how he injected a virus into a compiler. Not only did his compiler know it was compiling the login function and inject a backdoor, but it also knew when it was compiling itself and injected the backdoor generator into the compiler it was creating. The source code for the compiler thereafter contains no evidence of either virus.
Ken wrote, In demonstrating the possibility of this kind of attack, I picked on the C compiler. I could have picked on any program-handling program such as an assembler, a loader, or even hardware microcode. As the level of program gets lower, these bugs will be harder and harder to detect. A well installed microcode bug will be almost impossible to detect.
Ken does not mean bug in the sense of error, but in the sense of listening device. And it is "almost" impossible to detect because TheKenThompsonHack easily propagates into the binaries of all the inspectors, debuggers, disassemblers, and dumpers a programmer would use to try to detect it. And defeats them. Unless you're coding in binary, or you're using tools compiled before the KTH was installed, you simply have no access to an uncompromised tool.
In fact, given the amenability of microcode to the KTH, not even then.
All manner of controls and monitors could be secreted this way in the OSes of all the devices we all use day to day. It isn't very far fetched to suggest that the hack, in software, can create an updatable backdoor. This way every piece of software on the planet can be KTH bugged without any possibility of detection by any mortal engineer anywhere.
Well, maybe with the diligent use of an electron microscope.
Given last week's horrifying revelations concerning the US government's TotalInformationAwareness of every US domestic phone call, it is difficult to imagine that the ThreeLetterAgency's KTH-hacked binaries are not omnipresent. I mean, can you really imagine AdmiralPoindexter would pass up an ability like this?
What does that even mean. Whoever said that just uttered some empty but smart sounding catch phrase. Such is all the talk about the wonders of Ai
Linus Torvalds
Not exactly, but something along those lines.
We are talking about a guy still using mailing lists and patch files to conduct development on one of the largest codebases in the world, not exactly someone who jumps on any new shiny thing just to sound smart.
https://thenewstack.io/torvalds-ai-programming-productivity/
just to clarify, he'd not so much called LLMs "the new compilers" as he compared both to each other in a sense that an LLM is just another layer of analysis tooling between the developer and the final machine code, which, IMO, sounds much more reasonable than calling LLMs "the new compiler".
I think it's supposed to be that how AI turns high level instructions into code is compared to how compilers turn code into assembly. Implying that using AI is just a natural extension of the handing off work to the computers that we've already been doing.
I wonder if you gave different AI models some c++ or something and told them to write assembly based on it how well they would do compared to an actual compiler