I really don't get those takes. AI is the best thing that ever happened to the Free Software world, it is basically turning any software into Free Software. You can just throw file formats, protocols or even plain binaries at the AI and it'll reverse engineer everything in a pinch. Users can finally modify software themselves, which was always the goal of the Free Software world, but very rarely happened in actuality, since it was just so damn complicated. AI lowered the barrier of entry tremendously, not just in terms of required knowledge, but especially time. Same with Creative Commons, sharing art and stuff, was a nice gesture, but rarely useful, since the level of work to modify a work to fit your project was pretty close to just doing it from scratch anyway. With AI everybody can toy around with image generators and get what they want.
Is a social contract being broken? Yeah, kind of, but the problems that that contract existed to solve are no longer a thing. Creation is now easy and commodified. We finally have computer we can interact with in natural language, something people tried to do for at least 70 years and never made any significant progress on until LLM arrived.
If you want to gatekeep or only create stuff to boost your own ego or portfolio, then AI might be an issue, if you actually want to build stuff, AI is godsend. We are essentially living in the StarTrek future with Holodecks and replicators and people still find reason to complain.
> If you want to gatekeep or only create stuff to boost your own ego or portfolio, then AI might be an issue, if you actually want to build stuff, AI is godsend.
Exactly this. I've been very confused by the free software advocates that seemed to hate AI until I realized their reasons for releasing software under an open source license were very different than what I assumed they were.
I release my code as free software for two reasons:
1. The credits for my code are protected (with the GPL you have to tell where your code originates from). That's the ego part. It's important to me because I'm not paid for my software. So credits are an important reward.
2. I want people to think twice about reusing my code. I use the GPL license because I think sharing software is the ultimate goal. So I force people to share my software by using the GPL. That may sound "extreme" (that's the whole open source vs free software debate) but, not being a full time politician, I can't change laws to push society in the direction I want. At my level, that "push" is the GPL choice. Maybe it's not noble enough, maybe it's cowardice, but it's my way (compare that with those who simply don't care).
AI severely weakens both of these. And for people like me, this forces us to reconsider our position. For my part, I accept the legal point of view that A.I. doesn't steal code, and just reproduces the ideas in the code. So, as far as ideas can flow in society, I'm OK with that (that's the principle behind copyright laws).
If AI has its way, one day one will not need to write software, we'll just ask the AI. In that case, software will be dead and free software will die with it too. By then I'll do my "local politics" another way and follow the next RMS.
> A.I. doesn't steal code, and just reproduces the ideas in the code
Then they don't need to train on github, no? Why not release a new model trained from Knuth's Art of Programming, Cormen's Introduction to Algorithms and the C specification.
Feel free to throw in any other published literature related to STEM, but stick to the code samples from the books.
I'm certain it'll be able to change the color of a CSS button, right?
To be fair, you also don't restrict yourself to those texts either. You read news, you use other programs, you look at websites and so on. And while the norms vary per field, things aren't really reinvented from scratch. The standard FPS controls aren't reinvented for every shooter game. The standard website layouts aren't reinvented for every website. The standard command line behaviour isn't reinvented for every CLI program and so on.
But software isn't like traditional academia. It might have grown from it but most advances aren't really published in the traditional sense, you've got blogposts, presentations and source code instead.
This would be like teaching cooking without looking at any recipes, just from physics and first principles. Or learning music without looking at the sheet music / listening to any existing songs, just generic musical theory and chords. I don't think humans can do it "zero-shot" either...
I don't see how this disproves my point. There's a vast divide between "theoretical" and "applied" software engineering. You don't usually see Google engineers publish their search optimisations in journals. And similarly, you don't see university professors making commercial libraries from their articles' ideas. This isn't the case in every field but in software, it very much is.
And this implies that training on the "theoretical" side of things doesn't give you much insight on the "practical" side. Stuff like cyclomatic complexity, UML diagrams and all that stuff might be well-represented in literature but way less so in real software, so training on the literature will produce completely different software than training on production software code.
grumbel · · focus · HN ↗
Is a social contract being broken? Yeah, kind of, but the problems that that contract existed to solve are no longer a thing. Creation is now easy and commodified. We finally have computer we can interact with in natural language, something people tried to do for at least 70 years and never made any significant progress on until LLM arrived.
If you want to gatekeep or only create stuff to boost your own ego or portfolio, then AI might be an issue, if you actually want to build stuff, AI is godsend. We are essentially living in the StarTrek future with Holodecks and replicators and people still find reason to complain.
rpdillon · · focus · HN ↗
Exactly this. I've been very confused by the free software advocates that seemed to hate AI until I realized their reasons for releasing software under an open source license were very different than what I assumed they were.
wiz21c · · focus · HN ↗
1. The credits for my code are protected (with the GPL you have to tell where your code originates from). That's the ego part. It's important to me because I'm not paid for my software. So credits are an important reward.
2. I want people to think twice about reusing my code. I use the GPL license because I think sharing software is the ultimate goal. So I force people to share my software by using the GPL. That may sound "extreme" (that's the whole open source vs free software debate) but, not being a full time politician, I can't change laws to push society in the direction I want. At my level, that "push" is the GPL choice. Maybe it's not noble enough, maybe it's cowardice, but it's my way (compare that with those who simply don't care).
AI severely weakens both of these. And for people like me, this forces us to reconsider our position. For my part, I accept the legal point of view that A.I. doesn't steal code, and just reproduces the ideas in the code. So, as far as ideas can flow in society, I'm OK with that (that's the principle behind copyright laws).
If AI has its way, one day one will not need to write software, we'll just ask the AI. In that case, software will be dead and free software will die with it too. By then I'll do my "local politics" another way and follow the next RMS.
za_creature · · focus · HN ↗
Then they don't need to train on github, no? Why not release a new model trained from Knuth's Art of Programming, Cormen's Introduction to Algorithms and the C specification.
Feel free to throw in any other published literature related to STEM, but stick to the code samples from the books.
I'm certain it'll be able to change the color of a CSS button, right?
Pannoniae · · focus · HN ↗
za_creature · · focus · HN ↗
Just skip the source code. Consider it an easier challenge than reinventing relativity from 19th century physics.
Pannoniae · · focus · HN ↗
This would be like teaching cooking without looking at any recipes, just from physics and first principles. Or learning music without looking at the sheet music / listening to any existing songs, just generic musical theory and chords. I don't think humans can do it "zero-shot" either...
za_creature · · focus · HN ↗
<a href="https://dl.acm.org/" rel="nofollow">https://dl.acm.org/
Pannoniae · · focus · HN ↗
And this implies that training on the "theoretical" side of things doesn't give you much insight on the "practical" side. Stuff like cyclomatic complexity, UML diagrams and all that stuff might be well-represented in literature but way less so in real software, so training on the literature will produce completely different software than training on production software code.
za_creature · · focus · HN ↗
<a href="https://patentimages.storage.googleapis.com/db/8f/cb/dad63e985797ec/US7058628.pdf" rel="nofollow">https://patentimages.storage.googleapis.com/db/8f/cb/dad63e9...
I'm going to stop arguing with you now.