A particular project I'm working on will be on a private Git server until I complete and open it as a package. Even after that, I might keep the development closed and release tarballs only (aka Catherdral Model).
All code I write is also AI-Free.
It won't be possible to trust in people for a long time, it seems.
No. I don't believe that. I personally want my code to outlast me and help people in the future, but I don't want allow anyone to just scrape it, strip its license and use for whatever. I use (A)GPLv3+, because I believe in "Freedom for the user", not "Freedom for the developer" which permissive licenses provide.
My code is not free labor for anyone. It has conditions attached.
Do you owe everyone you have ever read a royalty for influencing your writing style or voice? How about for all the other things you have leaned and become competent in?
There is a bigger issue here that is related to what humanity actually is and how we have been abused for many decades and several generations now, to the point that the abused generations have become the abusers of future generations simply because they are mentally trapped, addicted even.
A good uncontroversial example of this may be the excessive and deficit spending of governments, all based on what otherwise would be considered loan fraud, which is called national debt. It is used to keep perpetuating this system we call an economy because it has been so “successful” over ~100 years of “line go up”, solely because everyone wants the gravy train of reckless good times to continue forever.
Unfortunately for some generation of the future (maybe even our own), it simply cannot go on forever, so it won’t, because it is by definition unsustainable. But the goods times and “success” everyone sees everyone else having, keeps people from stopping the insane and utterly suicidal process of not only consistent, but accelerating addiction to every greater deficit and debt loan frauds called the national debt. It isn’t “Trumps fault” it “Biden’s fault”, or any other totem that can excuse or own actions. These are forces we don’t even understand any more than we are blindly changing at breakneck speeds. And if anyone tells you they understand these forces they are simply lying, when we cannot even understand the most basic concept of the fact that there is no alternative to this planet… as we destroy its ecosystem that produced us at ever accelerating speeds, in millions of different ways.
It’s quite similar if not the same as any other process we call addiction; we know it will cause ruin, yet we cannot extract ourselves from the endorphins, so we just keep lying to ourselves.
Humans don't read other codebases en masse. Hell, I haven't read the entirety of our own codebase. I learned by doing, from books (that I paid for or legally borrowed), and yes, by looking at a small amount of other people's code (permitted by the respective licenses).
Humans are not remix machines, AIs (currently) are.
Moreover humans learn and evolve their knowledge from other experiences other than books and others’ code.
As you said LLMs just remix something semi randomly according to a weighted graph with no underlying knowledge or understanding whatsoever.
The models isn't generally recreating your software, but might be spreading your way of thinking in pieces.
I get it from the artists and to a lesser degree, writers. I just don't understand it from software projects.
I guess if you think of it as something to replace you, but since you are already a creator, it is also a way to unlock much greater capacity for turning your ideas into solutions.
An LLM unburdened by restraint could like produce page upon page of story nearly identical to the original.
I always did it without any expectation of gains from it, and with the intention for people to use it for whatever they want. That calculation hasn't changed, even considering machines will slurp it up now.
I do agree that it sucks for people who do care about what the code is used for, and I hope these people migrate to other licenses that support their ideas about control and ownership.
In 50 years they'll be useless anyway when computers are just plotting every iteration and combination of 1's and 0's that might be.
I too see no difference in machines learning from the works of others than man standing on the shoulders of those before them to reach higher plateaus.
It's all a big to-do about nothing.
That's because you have either not read enough or have been dismissing the very sound case: Scale.
In law, scale matters. It might be legal to possess a single joint while at the same time being illegal to possess a warehouse of 400 tons of weed.
Now, at least, you cannot say anymore that you have not heard a convincing case for why ingesting every single piece of work by an artist with the intention of out-producing them is a bad idea.
You have heard at least one, supported by precedent in law in multiple jurisdictions.
And, as such, when your favorite AI generates code similar to my code after having read my code, that's infringement, the same as if a human had done the same thing... only, the AI doesn't bother to consider that angle, and, even if you know to care, you have no way to know what is going on, in the way a human at least usually can know when it is cribbing off of what it knows (though even a human can do this accidentally).
However, when you look at the license of the software I release, there are some terms I put forward. In short, it’s called GPLv3+ or AGPLv3+ depending on the thing I have written. You can use/develop/fork/integrate/sell it. I don’t care, as long as you obey the license terms.
Don’t obeying these terms, and running with the code is wrong. Even if you put the laws aside, that’s unethical. This is what makes my blood boil.
I do not develop software as a job. I do it as a side quest, and more importantly as research. I don’t want my research to be laundered and closed down, but be available and free as much as possible. This is why I use copyleft licenses.
If you care about developer freedom, you write Open Source code with permissive licenses. If you care about users’ freedom, you write Free Software with copyleft licenses.
I care about users’ freedom, not developers’ freedom to rip any code and embed into their code bases, which permissive licenses are designed for.
This blatant selfishness of “we are doing something great, we need no permission” is angering me.
Otherwise, get my scrappy code and make a million dollars with it. As long as you obey the license, I don’t care. On the contrary, I applaud you.
Open Source software is not about users generally. It’s about other developers. Like a trade gathering. People in the know get there, get the tools they need, build the things they need with these open things and sell them to make a living. That’s fair. I understand, agree, and respect them.
Free Software’s different. Think like end users get the things they need with all the blueprints and specifications of that thing. They can do anything to these things, but if they want to share it, they have to share the new blueprints and specifications as well, to keep the thing available and free from abuse.
I’m in the second camp. I give you something for free, but there are terms attached. If you modify the thing, you have to give modifications away. Plus, you can’t integrate it into a tool which is or can be closed.
I just don’t want the thing i built for you to be closed and used against you to make your life more difficult. Because the aim was to make your life easier in the first place.
Again, this doesn't have to be this way. Either Y-Combinator needs to boot the thiefs and invite the original dev, the thiefs need to invite them in with a fair equity share, or else we continue to perpetuate this culture. And, I agree with others, creatives have already become more and more afraid of sharing their work and having it stolen. Ours was covered with a bullet proof contract that the other party presented us with. We also have a patent pending. Neither of those stop someone from stealing from you and it's your job to protect your IP (and money). It almost bankrupt us... but because it was their contract, our lawyer constantly was scratching his head since it was a slam dunk case.
Steve Jobs and Apple stole the UI from Xerox, Tesla wasn't Elon Musk's, and you can go down the list. Look up the history of Arduino and wiring. I have no problem buying Arduino knockoffs because of it. (The two profs that didn't give their grad student attribution have a history of stuff like this as well as infighting)
But it doesn't have to be like that, it's our choice to continue perpetuating it and it will lead to emergent properties that people won't like. The question is: how long can the party last for investors, incubators, and thief startup founders in our highly connected age?
Instead of waiting to find out, I hope that Y-Combinator and associated investors pioneer a better culture of rejecting these people when they find out and promoting the actual creators. Michael Seibel talked about the best creators not being the best networkers back at startup grind 2019, and that the old model of investing is broken. 6 years people. (I've been building a network of us who are expert at going out and finding the best creators, but it would be nice to have the resources and platforms of larger institutions).
Why don't we promote the actual creators OR pair those good at identifying the opportunities and pitching and marketing them. That would be WAY better, and everyone wins while making a better, long term sustainable culture and model.
My code will never be publicly available. That's a key trade secret of our business. When investors and others tell us that someone else could build it, I let them know that they could build their own, similar version, but it wouldn't be what we have.
We've verified that by having friends and family, some of the best coders that we know - Stanford, MIT, and other CS alum, as well as top FAANG programmers - try to reproduce it. It's always something done in their own style that doesn't do the job as it needs to be done (they work ok, but they all miss some key crucial parts of why our system succeeds at what it does).
GitHub is good for those looking for a job or to share their projects openly. I wouldn't even trust a private repo. Everything is either on systems and servers that we have control over or in my head. As we grow and scale, we have a roadmap for how to keep control over those trade secrets until it's time to pass off the company (if we do). At that point, I'm confident that whoever takes over will realize that this will be like the Coca Cola recipe, or any other trade secret which could be reproduced but not necessarily in the same way. (Knowing the history of that recipe and what others have created that tastes identical, it's more apocryphal and maybe not a perfect example, but you get the idea).
Anything controlled by another company is something out of your hands. Pick and choose wisely where you keep your stuff.
Use value of OSS remains high. Because of that, when I can add to the body of OSS, I do. People will do what they do.
All I control is me. They do them.
We all benefit from the high use value.
I do wish those who have made fortunes would contribute more and keep their roots, and the labor of many high quality humans just a bit more firmly in mind.