Posted by lladnar 2 hours ago
"Do you genuinely believe changes like cd170a4 make the code somehow not derived from Reckless anymore? It appears to me like it's just trying to obfuscate its origins, to make it easier to appeal to plausible deniability. The reality is, coda 100% has code derived from AGPL or unlicensed engines in it, and pretending otherwise won't convince anyone other than maybe yourself. This, combined with the fact you conveniently moved the plagiarism roadmaps to a private repo mere days after people started raising concerns about it, reads to me like you're not at all concerned with actually using code fairly, and much more with being able to claim that you are, backed up by these nonsense "cleanup" commits."
> After our initial 0.9.0 pre-release (July 2026), community feedback raised that Coda contained AGPL-licensed code. This prompted a full audit of our codebase and dependencies, and steps to correct what it found. We now believe Coda complies with all applicable licenses. If you have any concern, please open a GitHub issue with the details and we'll happily investigate.
They can remove all of the literal code matches from the codebase, but if it was written by having an LLM study the original code and then write something similar, it's hard to argue it's not a derivative work.
There is a lot of legal history of doing new designs with influence from reverse engineered sources. The basic rule is that you can't have someone familiar with the original code involved with writing the new code.
LLMs are a new area, but I would expect that feeding the original source into an LLM context and saying "Write this, but different" wouldn't qualify as a clean-room design. There isn't enough general removal from the original subject matter.
It's not like ideas are protected by copyright though. Copyright protects the specific expression of the idea, not the idea itself. Anyone can "lift ideas" from anyone else, including proprietary software.
Is it a fact that they did that?
So "lifting ideas from other engines", as you yourself put it, is entirely licit, no matter how you do it. _Should_ you credit others when so doing? I err on the side of yes, on that question. _Must_ you? No, there is no such requirement, this is not academic publishing. Does it constitute violation of license? Absolutely not. Straightforwardly, no. Furthermore, it _should not_, we would not like the result of that.
Think: SCO suing Linus Torvalds over his use of a.out: and winning. It would be bad. Even though I understand the reasons for it, it's still eerie to me to see hackers coming down hard on a side of an issue we spend decades passionately defending the other side of.
As I lead this post with: maybe there's something in the repo which is infringing, it's quite possible that commit doesn't tell the whole story. If so, keep in mind that I don't know that, and am able to change my opinion in the face of new evidence.
Based on what I _have_ seen, no: you do not get to lock down a bit-packing pattern just because you're the first to come up with it. Nor should you have that right.
[0]: https://github.com/adamtwiss/coda/commit/cd170a4ea9993cf8246...
But copyright and plagiarism are orthogonal, and questions of morality are much more tied to the latter. It would be illegal (in the United States) for me to publish a copy of Nineteen Eighty-Four, but not immoral. It was not immoral, in my view, for Aaron Swartz to try to liberate JSTor articles.
That doesn't make plagiarism acceptable, either. And therefore, I'm willing to call it out when I see it.
Now you're demoralized because of... artificial intelligence?
Edit: I'll leave the original _bon mot_ in place. Among other things, I'm curious about your answer to the question. But you deserve a more topical reply as well.
My response in this thread was prompted by @Sp00ph's post[0], which is straightforwardly an accusation of infringement.
You seem more interested in credit, which is a third thing aside from infringement or plagiarism. I would not say that infringement and plagiarism are actually 'orthogonal', perfect plagiarism is, after all, infringement.
Credit is the odd one out of the three. I think it's entirely reasonable to want it, and even to open an issue demanding it (kind of).
But what I want to note about your post: it's hostile. It's aggressive. It's mean. It offers the person you're replying to no avenue to remedy your anger.
I think that's shitty behavior and you shouldn't do that.
https://github.com/adamtwiss/coda/issues/15#issuecomment-519...
Anyway, I don't see how this relates to the original discussion. Nor do I think the irony is particularly deep: As far as I'm aware, Deep Blue didn't plagiarize Kasparov, and indeed alpha-beta search is quite different than how humans calculate.
> it's still eerie to me to see hackers coming down hard on a side of an issue we spend decades passionately defending the other side of
Yeah, it's surreal. It's not just intellectual property either, Hackers have already started complaining about automation now too.
Computers must have replaced tens of millions of jobs. It's the ultimate job destroyer, since it allows capital to do more with less. Automating me, a doctor, out of his job is essentially the holy grail of Hacker News.
But when hackers are automated away, then suddenly it's a crime against humanity.
Like imagine if your hobby was cooking, but you hated the cleanup. If you buy a robot that automates the fun part at the cost of making twice the mess, that is not a good trade off no matter how many extra cookies you end up with.
The workers will see the fun evaporate but now they have to clean 10x cookie trays in the same 8 hours.
I'm lurking around the OpenBSD mailing list and it seems that code review is where collaboration starts. You send a patch, explain its purpose, people try it out and comment. If it's OK (various factors decide that), it's imported inside the codebase.
The main issue in corporate settings is that the author of the PR wants to browbeat you into accepting his/her changes. Either directly or by appealing to the manager. They don't want collaboration, they just see you as the blocker between them and the "Done" status on the ticket.
Main course is this this and this, 1. Do this 2. Plug this 3. Run this.. step by step plan.
So you get a precise top down construction plan. Then it’s easy to split the parts where the coding needs to be manual (smoothing walls) vs where it can be whateverz (laying concrete).
LLMs reward seeing forest instead of trees.
This way one person can implement a whole new hobby project instead of only writing a single specialized part in an existing project.
Good luck making a grand strategy game in two months holidays without an LLM. Now you can.
People focused on the trees will however lag behind as implementation details matter less and less.
Yes manual touch is still needed in some parts of the construction process but architecting the whole thing is the most important in 2026.
⢀⡄⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀
⠀⠀⠀⢀⣼⣦⠀⠀⣠⣿⣿⣦⣀⠀⠀⠀⠀⠀⠀⠀⠀⠀⢀⣼⣆⠀⠀⠀⠀⠀
⠀⠀⠒⣿⣿⣿⠓⠀⠀⠻⣿⣿⠀⢀⣴⣿⣦⡀⠀⢀⣾⣦⠘⢿⣿⣧⡀⠀⠀⠀
⠀⢀⣴⣿⡿⠃⡄⠈⠻⣿⣟⣉⣀⠉⣽⡿⠋⠡⠴⣿⣿⣿⠓⠀⠙⢇⠀⠀⠀⠀
⠀⠿⣿⠟⢁⣾⣿⣦⣀⠘⠿⠟⢁⣼⣿⣿⣷⠂⣴⣿⣿⣿⣆⠘⢶⣶⣿⠶⠤⠀
⠀⣀⣀⡀⢉⣿⣿⣿⡍⠀⢀⣀⠙⢻⠿⢋⣤⣾⣿⣿⣿⣿⣿⣷⣄⠙⢿⣦⡀⠀
⠀⠟⠋⣠⣾⣿⣿⣿⣿⣦⣌⠉⠠⣤⣤⣤⡌⢙⣿⣿⣿⣿⣿⣿⠛⠛⠂⢈⣙⠀
⠀⠀⣉⡉⣹⣿⣿⣿⣿⣏⠉⣉⣀⣈⠙⠋⣠⣿⣿⣿⣿⣿⣿⣿⣆⠙⠛⠛⠛⠀
⠀⠀⠋⣴⣿⣿⣿⣿⣿⣿⣷⣌⠉⢁⣴⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣷⣄⠀⠀⠀
⠀⠴⢾⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⠦⠈⣙⠛⠛⠛⠛⠛⠛⠛⠛⣉⣉⠁⠀⠀⠀
⠀⠀⣦⣤⡄⢉⣉⣉⣉⠉⣡⣤⠀⠀⠀⣿⣿⣷⠀⢰⣿⣿⡇⢸⣿⣿⠀⠀⠀⠀
⠀⠀⣿⣿⡇⣸⣿⣿⣿⡄⢻⣿⠀⠀⠀⣿⣿⣿⠀⢸⣿⣿⡇⢸⣿⣿⠀⠀⠀⠀
⠀⠀⣿⣿⠁⣿⣿⣿⣿⡇⠸⠿⠀⠀⠀⣿⣿⣿⠀⢸⣿⣿⣇⠸⣿⣿⠀⠀⠀⠀
⠀⠀⠛⠛⠀⣿⣿⣿⣿⡇⠀⠀⠀⠀⠀⠉⠉⠉⠀⢸⣿⣿⣿⠀⠿⠿⠀⠀⠀⠀
⠀⠀⠀⠀⠀⠛⠛⠛⠛⠃⠀⠀⠀⠀⠀⠀⠀⠀⠀⠈⠉⠉⠉⠀⠀⠀⠀⠀⠀⠀ADHD wins over autism in the immediate future. It was balanced in the past for development to need both but now it’s a total hyperactive victory of general knowledge, master of none.
Specialists will be fed to the model weights, generalists will inherit the world.
I use an LLM to make custom software for myself not because I enjoy coding but because I want software that I can't afford to hire a human to make for me. Buying a robot to do it (current agentic coding LLMs) is the only way it gets done at all.
These two things are not the same, and should not be viewed in the same light.
All that being said, I would 100% buy a weeding robot. Weeding sucks.
You enjoy the act of gardening, so you do not automate it away.
You enjoy the clean home, not the act of cleaning, so you may be interested in automating it away.
It seems you enjoy designing or using software, as opposed to programming/building software. So you automate the programming/building away.
Unless your hobby is backyard robotic gardening.
Which is my way of saying that people have different reasons for enjoying a hobby.
Like most hobby debates, this one comes down to "Let people enjoy things"
The people like me that sort of just stumbled into this career as a result of spending the evenings of our youth trying to get the computer to do interesting things don't seem to have as much appreciation now that the LLMs are taking over the fun part.
I enjoy optimizing code to the point of obsession, but I can't find economic (daily-job) justification to spend time on this. Lately I've had several extremely productive and enjoyable sessions that go like this: - I run Claude on my desktop PC, explain the problem, and let it explore the code around the problem and build a test harness so it can run experiments - I ask it to run experiments and try things; at that point I can leave my PC and continue over my phone in brief stolen moments here and there, over the course of many hours - it comes back with results; I ask it to try new things based on those results - after multiple rounds of this, I have explored a vast search space I could have never had time to do myself - I ask it for an implementation of the most promising path; this is usually something simpl-ish (on the order of 50-100 LOC, not huge new systems) - I return to the PC and do something between polish the implementation and redo it fully manually - partly because I enjoy it
This is something I can see myself do for fun in areas I care about, not for money and reasonable business objectives for my day job.
I also woodwork and I remember this discussion there between hand tools, power tools, and CNCs. It's all the same hobby just different entry points and doing it the least automated way doesn't make your work more or less than anyone else's.
I LOLd very hard at that one, thanks. Very relatable.
A hobby of mine is also woodworking. I can make jigs, I can buy jigs. I can use hand tools, I can use power tools. I can use screws I can use joints. I can even buy made furniture and just assemble it. Though the latter is more of interior designing. But the point is it is a spectrum and everyone has their own niche. SDLC are not the same and there is different value to be derived. But the process of woodworking makes me handy. The experience allows me to elegantly and cost efficiently fix broken things. It enables me to do interesting things in interesting ways and there is more of a community around that. If I automated away all the woodworking and just bought the furniture... Well there isn't much of a community around that except flexing who has more cash. Idk, I'm trying to have empathy for both those who are for and against it.
Boy isn't that the truth haha, I feel like my previous phase of dotfile ricing has become "LLM ricing."
Not complaining though, it is genuinely fun!
So while LLMs solve the technical implementation side, there's still upside since now we get to materialize the dang thing we were setting out to build in the first place.
Though there's a huge sense of loss since so much of our skills and identity and time and value were devoted to the engineering side.
It's an age-old debate in every hobby.
Some people are in it for the process. Others are in it for the end result, which is what they want to use or play with.
In woodworking there are some circles who will sneer at you for using certain power tools instead of hand tools. I do think it's more impressive when someone makes something entirely with hand tools. I don't have all the time in the world to work on a project, so I'm going to use the power tools when I can.
Some people care a lot about impressing others with how they made a thing. Some times that's appropriate, like if there's a competition for hand-made or human-written something. Other times, nobody cares. They're getting together to enjoy the end result, not the artisanal process used to make it.
Indeed, and this is the problem: unlike woodworking, where my power-assisted creation is independent of, or complements, your handcraft, this engine is directly competing with other engines. Twiss is being disingenuous when he says he has no interest in submitting it to competitions; it plays on a rated account on Lichess, for example.
What is the "end result"? You refer to cleaning here, but many people use AI spam slop to bombard people with garbage text. That is not "cleaning up", that is literally wasting the time of real people here. And that's just one example of many more that can be given of AI slop not being so great.
Yes if your end result is technical debt and endless bullshit. (Some enterprise environments do be like that.)
LLMs can generate lots of code quickly there's no evidence they actually speed up the dev process e2e.
So at least in my experience, it’s not about gatekeeping as much as it’s about keeping the experience bearable for the existing hobbyist community.
Keeping the experience bearable BY gatekeeping. That is the point, gatekeeping is not inherently a bad thing. It's a required thing in many circles.
Personally, I find that when I start thinking "hmm, I wonder if I could write a program to automate this" is when I quit the pursuit. After figuring out the basic tricks to sudoku, it turned into busywork. (Or trying to micromanage StarCraft)
(Tagentially, if you want to automate programming, then I'm going to find myself a different field, because I have no interest in the results of sudoku puzzles. I especially have no interest in managing agents, which I see as junior-dev bullshitters, and would not enjoy managing such a team in real life)
That seems as natural as being against doping in sports or marking cards in poker.
None of this is anything against LLMs or AI assisted coding in general, even though the people involved probably have strong feelings about it given their preferences. It’s just the preferences of particular people and communities. Seems reasonable to me.
> Moreover, you are giving absolutely nothing back to the community, which is central to open-source engine dev. You are only taking.
What would that user prefer? That the developer push a PR upstream...that presumably would be shot down and the user subject to further harrassment because it would be LLM derived at minimum? It seems like a catch-22 where the only winning move is not to play.
That thread also highlights the overlap between "people who are against LLM usage for coding" and "people who are very particular about AGPL."
Presumably no one is forcing the maintainer at gunpoint to have an LLM slightly shake up other people's code, relicense it under an incompatible license and then claim that "every single line of code is written by Claude Code", so I don't see the issue with not playing if that's the only option.
If you can't make contributions that anyone finds interesting enough to include upstream and have no plans to publish your AGPL derived code under a compatible license, you can keep your changes to yourself. Nothing lost, nothing gained, license honored.
I find that a lot of "pro-AI" folks are very much doing software for the ends (myself included) and in the past, we were happy with the "means" primarily because there was no other way. The "anti-AI" folks are, as mentioned, mostly in the camp of caring about the means equally with the ends.
Lots of nuance here, but those buckets seem to generalize pretty well (so far) in my experience.
I happen to think the alternative world where no one’s skill capital can be devalued sucks more, but it’s hard to build a community around that because the same hours that build skill also build taste, and when you remove the former you remove the latter.
So you get a community with garbage in it. Haha!
What's the solution, to just disengage entirely and not share back issues I find or features I'd like to see?
I get the negativity, because I enjoy hobby programming too, so I also enjoy the process sometimes. But then sometimes there's a problem and the fastest way to isolate the core of that issue is to use claude.