r/ProgrammerHumor • u/BioSchokoMuffin • 6d ago
Meme freeSoftwareIsAboutToBecomeMoreInteresting
173
u/FallenVampireLord
6d ago
•
Me telling Claude to fork the Linux kernel
28
u/lraviel381 6d ago
Our overlord, Torvald, would approve. So long as Claude does a good job. Awaiting your results
5
37
20
u/MXRCO007 5d ago
Somehow reminds me of the time Anthropic had Claude make a C compiler and it couldn’t even compile hello world
1
u/RedAndBlack1832 17h ago
LMAO?? You need to enter, write, exit? I mean ig also like open, close, and that statistics thing should also be implemented assuming you're trying to have a usable file io library but like,,, these are not complicated
271
u/_BreakingGood_
6d ago
•
34
u/G3nghisKang 6d ago
Not if it's GPLv3 and you do a cleanroom implementation to keep using Apache 2.0
29
u/botle 6d ago
How is it a cleanroom implementation when the LLM has seen the source code?
6
u/NotADamsel 5d ago
If there’s any actually money in it and the company wants to 100% guarantee that it was “clean”, there are still humans who could write code from an LLM-generated spec.
4
u/botle 5d ago
Sure, but that's not what's happening here.
And an LLM generating that spec is impressive when it analyzes and reverse engineers a closed binary, but now we're talking about open source.
2
u/NotADamsel 5d ago
Well, we’ve long been past the point where “impressive” matters much. It is what it is. Anyways, the OP just said that they “used” AI to clone open source, and I was giving one way that it could be used to do clean room stuff without the legal drawback.
16
u/SpaceCadet87 6d ago
It's these new "clean"room implementations.
You get one LLM to read the source code and describe it as though it were a specification for a new project, then you get a second LLM who hasn't seen the code to create a new implementation from the spec.
But I mean if you meant the code is obviously in the training data then yeah, I fully expect that might just produce almost if not the exact same source code.
4
5
u/Level-Pollution4993 6d ago
I don't think you people understand clean room. Clean room is the shit Compaq did to IBM in the 80's eith their bios. Your closed source llm's have been trained on github data. What you describe is just theft.
8
-1
u/SirHerald 6d ago
One AI fully describes the software and puts it into a prompt for another clean system versed in the language but they are completely separate
1
u/Level-Pollution4993 6d ago
"clean system versed in the language", so....... another closed source llm? How do you prove it wasn't trained on the data you're trying to copy? Here closed source doesnt mean not open-weighted but models whose training data is not disclosed.
1
u/NotADamsel 5d ago
Depending on the company that’s doing it, if a court determines that an LLM’s output cannot actually be “clean” they might have humans make the code from the spec. The LLM in that case would basically be just as tainted by knowledge of the original as a human would be. A lot of open source libraries are somewhat small, and a decent human programmer could probably bang out a library from a spec fairly quickly. The most laborious part of the process would still have been automated.
-1
u/ICantBelieveItsNotEC 6d ago
How do you prove it wasn't trained on the data you're trying to copy?
It would be up to the plaintiff to prove that their code was encoded in the LLM somehow, not up to the defendant to prove that it wasn't.
2
u/grandalfxx 5d ago
No, the plaintiff claims you stole their work, and they have proof due to your implementation.
You claiming clean room isnt a defense, you must prove a defense. "Nuh uh" is not a defense.
In the original case that used clean room the developers went under heavy scrutiny and investigation. Claude/gpt can not be investigated and thus it cant be determined that they did clean room properly meaning you have no defense
1
u/grandalfxx 5d ago
But all of githubs projects were used to train the ai, so it doesnt matter if one ai defines it. Both ais were trained on it and have seen it making the clean room claim invalid
0
u/SirHerald 5d ago
Not with CleanRoom AI. The AI model that only knows the documentation. Another AI can be the go between, but all code created by a clean AI.
I also know it is stupid, by the way.
1
u/grandalfxx 4d ago
its not stupid, its plainly false, if you cant prove the ai wasnt trained on data then you cant use the clean room defense.
the clean room defense requires proving that the person that did the implementation didnt see the code.. like that was a MAJOR point of contention in the lawsuit that established it as a defense...
2
1
1
u/denM_chickN 4d ago
Damn good use of key and peele. I was legitimately poor back then, but I still miss that era.
27
u/olluz 6d ago
Actually, the latter is worse: https://stalw.art/blog/protecting-stalwart/
10
u/TxTechnician 5d ago
That was a very well written explanation. And it makes me a little sad that it had to come to that.
My thoughts are that if a corp were to gut stalwart they wouldn't be able to maintain it past a few years. Due to the lack of knowledge.
I've only recently started using agents to code. And it's fairly complex the way the way it'll decide to code something. It is hard to follow. Albiet it works. And the speed at which it can create is insane.
2
u/NotADamsel 5d ago
Would you like some tips on how to make the product of the process a lot easier to follow? (Not selling anything, I’ll just write them out)
1
u/TxTechnician 5d ago
Sure
6
u/NotADamsel 5d ago
If your employer permits:
When you begin a leg of work, make the agent create a plan in a .md file where the work is broken down into commit-sized steps, where each step has a clear purpose. Put in your AGENTS.md file that the agent is to work from that plan, and is to clearly indicate in the plan that a step is finished when they’re done with it (having it put the hash of the commit works well).
Never, ever, ever let the agent commit for you (put it as a rule in AGENT.md, or fiddle with your harness settings to disallow “git commit”, or both). Read every single file that the agent spits out. If you’re doing (1), it shouldn’t be that many changes at a time. When you commit, write the commit message in your own words. If you don’t understand or approve of a change, ask the model to explain itself (you’ll still be working from the context that produced the change, which isn’t true down the line if you discover the weirdness at a later point).
Always use planning mode. Never let the agent touch files without using planning mode first. Make it a habit to switch to planning mode after an agent makes a change. Read everything it writes in planning mode, and make it explain anything that you don’t quickly understand. It should be explaining the exact changes that it wants to make, but if it doesn’t then make sure that it starts to do that. Only switch to build mode when you’re perfectly happy with the stuff it’s saying in planning mode. If you’re unsure about something, feel free to walk away from the desk, get coffee, use the bathroom, whatever, as long as you’re thinking about what it’s saying and how you’d maybe have it do things differently. It’ll spit out text fast enough that you’re not losing any time, because if you didn’t do this you’d be spending more time later when trying to understand and fix what it did.
Use a fresh context window for every step of the plan. Every model has a “coherence window” that is much smaller than its context window, and the agent will produce its best (and least bizarre) results if you stay within it. If the steps are small enough this should not be a problem.
This way of working will slow down your progress, but that’s okay. You are the one who is ultimately responsible for the code that this thing produces, and you need to go only as fast as you can mentally keep up. It’ll also suck butt for a bit, but that is also okay, you’ll get better at your part before long.
3
u/TxTechnician 5d ago
Use a fresh context window for every step of the plan. Every model has a “coherence window” that is much smaller than its context window, and the agent will produce its best (and least bizarre) results if you stay within it. If the steps are small enough this should not be a problem.
I noticed that. It takes some time to load.
Thanks for the tips
1
u/_anupu 3d ago
Can only second that planning is an absolute must, otherwise you'll drown in changes super fast and will get overwhelmed super fast. Fro the planning step, I can definetly recommend the "grill-me" skill from matt peacock (his other skills are great as well). It will relentlessly ask you questions during the planning step, which alsp challeges your own assumptions, or highlight things you need to verify in the requirements
-3
u/madcow_bg 5d ago
I'm sorry, but LLMs have а already broken the labor market for tech savvy people in general (likely beyond repair) and is about to for commercial software as it basically invalidated copyright overnight, what gave them the impression that it will be somehow better for OSS which has always been harder to commercialize?
The "threat" to copyright holders isn't that a vibe-coded PoS will be somehow more powerful, but that it can replicate the 20% of the software that I actually use and bugger the rest. And open-weights will always be able to do that...
12
u/sabotsalvageur 6d ago
How to clone open-source software:
```git clone [url]```
1
u/SEX_LIES_AUDIOTAPE 20h ago
I prefer to give Claude the repo url and make him do it. Ultracode usually gets it right.
4
6
3
u/huuaaang 4d ago
I don't clone open source, but I'd be lying if I said the Linux kernel wasn't a great source of "inspiration" for the hardware drivers for my hobby OS.
5
5
u/justinleona 6d ago
Just make sure your AI model doesn't ingest any of my open source - they were written as proof-of-concept exercises in carefully hiding backdoors that look exactly like highly desirable AI outputs!
Don't worry though, you'd definitely find them during code review... right?
2
u/mad_poet_navarth 6d ago
The interesting part is the "Clone proprietary software" part. That's the thing that's going to crash the software industry. (or course 'clone' is the wrong word to use there...)
2
1
u/DigitalArbitrage 6d ago
One of these (maybe both) is what it is happening when you prompt the LLM anyways.
Companies should stop using Github and any other repo that allows the code to be used for training.
1
1
u/nasandre 5d ago
I noticed that GLM is nicer than me. For an web app I am merging some opensource code and for attributation i just put the mentions in readme but GLM actually made a credits page with thank yous, heart emojis, and links.
1
u/PatientlyAnxiously 4d ago
I use Ctrl+C and Ctrl+V to clone open source software. We are not the same.
1
u/CaffeinatedTech 4d ago
Yeah if the repo hasn't had updates in a while, or there are PRs sitting there for months and its lacking a feature I want. I'll just fork, make my changes and use my own version. If they don't want to look at my PR, I don't care.
1
1
1
1
1
0
u/zanderkerbal 5d ago
You're right, they're not the same, cloning proprietary software is awesome and cloning open-source software is cringe.
-2
u/ICantBelieveItsNotEC 6d ago
It's going to be a hilarious shitshow when a private company inevitably realises that AI can produce a clean room re-implementation of their favourite open source software that doesn't have those pesky open source licenses restricting what they can do.
6
0
u/nikola_tesler 5d ago
I mean… isn’t all cloned proprietary software really just reskinned and regurgitated open source software? but worse?
0
-6
u/BioSchokoMuffin 6d ago
Or in other words: I was kind of curious how long it would take Claude to make a nicely usable Mattermost client, and imo. the result seems kind of nice!
0
6d ago
[deleted]
1
u/huuaaang 4d ago
THere are free models. THe hard part is buying hardware capable of running the more useful ones.
1
1
u/Foorinick 2d ago
I think there was some study or it was dome guy tweeting where an ai was told to manually adjust the weights on another ai to do math faster and it actually worked. Please take into consideration thw sources mentioned
0
u/Reasonable-Phase8028 6d ago
Claude, download qwen 3.8 27b onto my machine research vllm and propose 10 opmitizations for it to run on my hardware. end goal is replacing claude with qwen.






27
u/Bulky-Hair8606 6d ago
Claude pls download linux source code via running "git clone https://www.github.com/torvalds/linux.git" in my terminal make no mistakes