Can Open Source defend against copyright claims for AI contributions?
If I submit code to ReactOS that was trained on leaked Microsoft Windows code, what are the legal implications?
Welcome to the main community in programming.dev! Feel free to post anything relating to programming here!
Cross posting is strongly encouraged in the instance. If you feel your post or another person's post makes sense in another community cross post into it.
Hope you enjoy the instance!
Rules
Follow the wormhole through a path of communities !webdev@programming.dev
Can Open Source defend against copyright claims for AI contributions?
If I submit code to ReactOS that was trained on leaked Microsoft Windows code, what are the legal implications?
what are the legal implications?
It would be so fucking nice if we could use AI to bypass copyright claims.
AI is at its most useful in the early stages of a project. Imagine coming to the fucking ssh project with AI slop thinking it has anything of value to add 😂
The early stages of a project is exactly where you should really think hard and long about what exactly you do want to achieve, what qualities you want the software to have, what are the detailed requirements, how you test them, and how the UI should look like. And from that, you derive the architecture.
AI is fucking useless at all of that.
In all complex planned activities, laying the right groundwork and foundations is essential for success. Software engineering is no different. You won't order a bricklayer apprentice to draw the plan for a new house.
And if your difficulty is in lacking detailed knowledge of a programming language, it might be - depending on the case ! - the best approach to write a first prototype in a language you know well, so that your head is free to think about the concerns listed in paragraph 1.
AI is only good for the stage when...
AI is only good in case you want to...
Can't think of anything. Edit: yes, I really tried
Playing the Devils' advocate was easier that being AI's advocate.
I might have said it to be good in case you are pitching a project and want to show some UI stuff maybe, without having to code anything.
But you know, there are actually specialised tools for that, which UI/UX designers used, to show my what I needed to implement.
And when I am pitching UI, I just use a pencil and paper and it is so much more efficient than anything AI, because I don't need to talk to something, to make a mockup, to be used to talk to someone else.
I can just draw it in front of the other guy with 0 preparation, right as it came into my mind and don't need to pay for any data center usage.
And if I need to go paperless, there is Whiteboards/Blackboards/Greenboards and Inkscape.
After having banged my head trying to explain code to a new developer, so that they can hopefully start making meaningful contributions, I don't want to be banging my head on something worse than a new developer, hoping that it will output something that is logically sound.
AI is good for the early stages of a project ... when it's important to create the illusion of rapid progress so that management doesn't cancel the project while there's still time to do so.
Ahh, so an outsourced con~~man~~computer.
Its good as a glorified autocomplete.
Except that an autocomplete, with simple, lightweight and appropriate heuristics can actually make your work much easier and will not make you have to read it again and again, before you can be confident about it.
True, and it doesn't boil the oceans and poison people's air.
the best approach to write a first prototype in a language you know well
Ok, writing a web browser in POSIX shell using yad now.
I'm going back to TurboBASIC.
writing a web browser in POSIX shell
Not HTML but the much simpler Gemini protocol - well you could have a look at Bollux, a Gemini client written im shell, or at ereandel:
https://github.com/kr1sp1n/awesome-gemini?tab=readme-ov-file#terminal
It’s not good because it has no context on what is correct or not. It’s constantly making up functions that don’t exist or attributing functions to packages that don’t exist. It’s often sloppy in its responses because the source code it parrots is some amalgamation of good coding and terrible coding. If you are using this for your production projects, you will likely not be knowledgeable when it breaks, it’ll likely have security flaws, and will likely have errors in it.
So you're saying I've got a shot?
Microsoft is doing this today. I can't link it because I'm on mobile. It is in dotnet. It is not going well :)
Have you used AI to code? You don't say "hey, write this file" and then commit it as "AI Bot 123 aibot@company.com".
You start writing a method and get auto-completes that are sometimes helpful. Or you ask the bot to write out an algorithm. Or to copy something and modify it 30 times.
You're not exactly keeping track of everything the bots did.
Or to copy something and modify it 30 times.
This seems like a very bad idea. I think we just need more lisp and less AI.
If humans are so good at coding, how come there are 8100000000 people and only 1500 are able to contribute to the Linux kernel?
I hypothesize that AI has average human coding skills.
The average coder is a junior, due to the explosive growth of the field (similar as in some fast-growing nations the average age is very young). Thus what is average is far below what good code is.
On top of that, good code cannot be automatically identified by algorithms. Some very good codebases might look like bad at a superficial level. For example the code base of LMDB is very diffetent from what common style guidelines suggest, but it is actually a masterpiece which is widely used. And vice versa, it is not difficult to make crappy code look pretty.
"Good code" is not well defined and your example shows this perfectly. LMDBs codebase is absolutely horrendous when your quality criterias for good code are Readability and Maintainability. But it's a perfect masterpiece if your quality criteria are Performance and Efficiency.
Most modern Software should be written with the first two in mind, but for a DBMS, the latter are way more important.
Average drunk human coding skils
Well according to microsoft mildly drunk coders work better
My theory is not a lot of people like this AI crap. They just lean into it for the fear of being left behind. Now you all think it's just gonna fail and it's gonna go bankrupt. But a lot of ideas in America are subsidized. And they don't work well, but they still go forward. It'll be you, the taxpayer, that will be funding these stupid ideas that don't work, that are hostile to our very well-being.
Ask Daniel Stenberg.
who makes a contribution made by aibot514. noone. people use ai for open source contributions, but more in a 'fix this bug' way not in a fully automated contribution under the name ai123 way
Counter-argument: If AI code was good, the owners would create official accounts to create contributions to open source, because they would be openly demonstrating how well it does. Instead all we have is Microsoft employees being forced to use and fight with Copilot on GitHub, publicly demonstrating how terrible AI is at writing code unsupervised.
Yes, that's exactly the point. AI is terrible at writing code unsupervised, but it's amazing as a supportive tool for real devs!