Software licenses masquerading as open source
marble.onl
marble.onl
I think of speakers who might talk about terms like "justice" in an attempt to have something in common with a group, all the while hiding that their definition of "justice" is different than the group's definition.
Same goes for "telemetry" or "analytics" or "advertising", which mostly means using surveillance to build a dossier for everyone.
Stallman should get credit when he nitpicks the finer points, because it might be annoying, but it is important to make the finer distinctions:
https://www.gnu.org/philosophy/open-source-misses-the-point....
I've long thought that the aspects that make him annoying are the very same aspects that make him invaluable.
Complaining about Stallman's persistence in making his points and sticking to them despite being mocked and ridiculed is like complaining diamond is hard.
A world full of people like him wouldn't be a pleasant place to live in, but when the emperor has no clothes and everyone is paid to say otherwise, you do need obstinate people like Stallman who can't be bought or cajoled.
I've come to a place where I just consider the phrase as noise, and generally ignore it. Instead, I just pay attention to the license and if it's acceptable to me, I'll use it. If it's not, I won't. That serves my needs.
I also stopped associating my own software with the term, even when it's actually open source by OSI's definition. Doing that avoids a whole lot of unnecessary arguing.
It's a little sad for me, though. I've been a strong OSS advocate since the Dark Ages, and it's painful to have to disassociate with it.
For me open source means that the software comes with its source code, that's all. It may not mean much from a freedom perspective, but it is not noise. Simply having access to the source code is still great, if anything because it is the most complete and accurate documentation you can get.
Now, if you want to actually work with the software, check the license. BSD and GPL are both unambiguously open source, and yet, they are very different.
And back to the subject of AI. Calling a model "open source" makes no sense to me, no matter the license. These models don't have a source code, if they had, that would be the code that performed the training along with its dataset, which most people won't have the resources to use anyways. Call it "open" if you want, whatever that means, but "open source" in that context is ridiculous.
Yes, but the definitions are objectively clear, really. They're the ones put forth by the organizations who defined them in the first place. The confusion comes from people who are misrepresenting, or are ignorant of, those definitions.
"Open source doesn’t just mean access to the source code. The distribution terms of open-source software must comply with the following criteria:"
I'm actually happy that companies like Epic would expose their source code (I'm taking GP on faith that they were accurate). One thing I'm afraid of is the idea of losing access to software that I love because the company goes defunct. I wish this practice was more common even if they don't wish to permit free usage. It's probably only enforceable on a small subset of software though.
That's an interesting point of view. Do you apply that for everything? "I don't need a dictionary: when I don't know a word, I just choose to understand it the way I find obvious, and hope that the rest of the world will follow me".
It's not, really.
Words don't live in a vacuum. Their meaning is determined by their actual usage, which is depends on the cultural context, which is itself determined by history.
"Open source" started being used when the Open Source movement started, to mean what the OSD means. Before, the phrase was not used.
You can't rewrite history and you can't decide for everyone the meaning of a word because it's obvious for you the way you decide.
It's not just "that organization". It's the whole computing world. That organization took the Debian Free Software Guidelines, called it the Open Source Definition and called software related to it "open source"... and the whole world picked up this usage. There's nothing you can do about it, history played out like this. The phrase has always had this meaning.
Maybe the meaning of the phrase will change over time, but that hasn't happened yet and I don't see this happening in the next years too.
What you are expressing is not facts. It's wishes and your taste.
Depending on the context, the actual license used is a technicality and you don't want to be this precise. You may need to express the broader concept / context. Open source is recognized more broadly by non-technical people. Try mentioning the MIT or the GPL license instead, you are in for a fun ride.
I don't see the point in actively trying to destroy this usage. Now we could discuss on pushing "free software" vs "open source" but this is another topic. I'm saying all this as a free software proponent. I don't quite like it that the OSI came and cast a shadow on the free software movement and pushed for the "open source" phrase. Open source is good but the values pushed by the free software movement is really what we ought to spread IMO (and FWIW, even Bruce Perens, one of the founders of the open source movement and the writer of the OSD, agrees with me [1]). But again, it is what it is, history has been playing out this way.
About your second paragraph, I mostly agree with you, but precisely open source / free software is what you really need for this. Source-available is a step in the right direction, but even if the company goes defunct, you still have no rights to adapt the code to make it work on future systems unless an explicit clause tells you otherwise. You can decide to do it anyway but you expose yourself to legal risks. So if it's important to you, you should advocate for open source / free software specifically, and not merely source availability. And you need to use the right words the way people understand them for this because the subtleties matter.
[1] https://lists.debian.org/debian-devel/1999/02/msg01641.html
What's with people in this HN thread knowing full well about the open source definition but advocating for this confusing use of the term anyway, don't you strive for clarity and ambiguity-free expression when talking about something?
And also... what is the link between unreal engine and this text from RMS about the different philosophies behind the Open Source and the Free Software movements?
Open source has nothing to do with whether something is free-as-in-beer or commercial, whether something is free-as-in-libre or proprietary, or whatever else.
Open source simply means source code that is open for public viewing, all other rights reserved unless declared otherwise.
Obligatory IANAL, don't take legal advice from random internet comments.
Open source is whatever follows the open source definition. No more, no less.
What you are talking about is source available. This is the only designation that is not confusing and that is uncontroversial.
I haven't seen any half-serious project use "open source" that does not actually use an OSI-approved license.
But I agree with the parent commenter. Do check out what is the actual license in any case, and feel free to avoid the term open source altogether if you think it confuses people. As this HN thread seems to show, the term does seem to confuse people indeed. You can use free software, or even "libre" if you find free software confusing. Or FLOSS.
What you describe is "source-available": https://en.wikipedia.org/wiki/Source-available_software
Open source implies stuff like free redistribution and derived works (among others): https://opensource.org/osd/
Free/Libre implies open source, but goes one step further, implying freedom for the end-user. If I license my library as LGPL (for instance), I am saying that I want the end-users to be able to read and modify my library in the products they buy. And therefore if you want to build a product using my LGPL library, then you must make sure that your users can do that with my library.
The whole point of this discussion is that this term is contentious. Your comment reads to me as dismissive of the arguments/context/nuance without engaging in a dialog.
Especially as a reply to the GP who essentially says "I stopped using the term open source because it was problematic."
I've seen plenty of open source software published under restrictive licenses, and closed source software published under free-as-in-beer and/or free-as-in-libre licenses.
Open/closed source seriously has nothing to do with payment terms, usage rights (aside from viewing the source code, obviously), and whatever else. It is very counterproductive that people keep trying to conflate what open/closed source means.
You keep saying this, yet you haven't provided any example. I don't believe you, happy to change my mind after you provide some examples.
And I can't make any sense out of your closed source software that would be published under a free as in libre license. Closed and libre are pretty much opposite.
I mean no disrespect, but you are the one conflating everything with everything.
Kerbal Space Program mandates that any mods published on their website also publicly disclose their full source code so that players can audit them prior to execution. However, all other rights are at the discretion of the respective authors and many of them use licensing terms that restrict use and redistribution.
CDisplay[2] comes to mind as an example of free (as in beer) closed source software.
I stand by my view that "free" source code and "open" source are two separate concepts that should not be conflated.
[1]: https://forum.kerbalspaceprogram.com/index.php?/topic/154851...
I know source available programs with a license restrictive enough to be proprietary exist. Here's one: CompCert [1]
By the way, its non commercial license itself claim claims it is non-free [2] and the download page claims it's not free software. Even if it is "free" (gratis) to use in a non commercial setting.
That's software with source code available. Source-available software. It's not open source.
And I also know freeware (gratis, proprietary software) without any available source code exist.
But a source-available program that pretends to be open source is yet to be seen. CompCert certainly don't advertises itself as open source. Because it's not!
By that definition, Harry Potter is open source. As is every Star Wars novelization, New York Times article...
I'm looking forward to your fork of your favorite open source franchise.
So if that is the acceptable term for open source it does not mean much. It seems to me that historically the meaning of open source implies much more than being able to view the code. It implies the right to compile the code, to run the compiled code, to make changes, etc.
As an example: When people say Intel Management Engine is a backdoor, it's because the code concerned cannot be publicly viewed (aka closed source) for auditing. Nobody would have a problem with Intel Management Engine if the source code was open for public viewing, regardless the other actual license terms.
Licensing also cannot, as a matter of simple practicality, police what you do strictly within the privacy of your own home. Even if the license forbids it, if you want to compile the source code or otherwise somehow use it strictly for your own personal and private use there's nothing stopping you.
If false or incomplete source code is provided, that is by its very nature not open source because the source code was obviously not opened to you (and everyone else) for viewing.
It's why "FLOSS" and "FOSS" as terms exist, open source is a separate question from the question of free-as-in-beer or free-as-in-libre.
Oh, but it very much is: https://en.wikipedia.org/wiki/Open-source_license
The original inspiration for all that is the Debian Free Software Guidelines[1] and The Free Software Definition[2], emphasis mine, because it concerns usage and distribution rights among others. According to those guidelines and definition, free source code must be open. However, the opposite, that open source code must be free (whether beer or libre), is never stated nor implied.
[1]: https://en.wikipedia.org/wiki/Debian_Free_Software_Guideline...
[2]: https://en.wikipedia.org/wiki/The_Free_Software_Definition
No, it does not. It mentions "free and open-source software" (FOSS), which is a phrase in itself that cannot be split the way you did. Just go follow the link you are referring to! [1]
> Free and open-source software (FOSS) is a term used to refer to groups of software consisting of both free software and open-source software
Free and open are vague adjectives and it's a shame because it does not help at all, but when used in "open source" and "free software", they have a specific meaning. Gratis (non-free) software is referred to by "freeware".
[1] https://en.wikipedia.org/wiki/Free_and_open-source_software
Conflating one with the other is counterproductive and inhibits understanding of the concepts concerned.
[1]: https://www.gnu.org/philosophy/floss-and-foss.en.html
[2]: “Free and Open Source Software” is misleading in another way: it suggests that “free and open source” names a single point of view, rather than mentioning two different ones. This conceptualization of the field is an obstacle to understanding the fact that free software and open source are different political positions that disagree fundamentally.
Apart from a few exceptions, free software and open source software are the same set of software, but the terms carry different philosophical / political values and it's sometime convenient to be able to designate this set of software without taking sides. Which he recognizes in this article, even if he is of course on the free software side.
He is also not using the "free source code" and "open source code" expressions at all in this document.
"free [source code]" or "open [source code]" aren't defined. They are not two different, distinct concepts in that neither of them is a clearly defined thing at all.
"[Open source] code", on the contrary, is code that's open source, that is, which follows the OSD. We don't use brackets like this in English, but "open source code" is really "[open source] code". Free software is software that follows the Free software definition. "Open" alone means nothing, and free alone can mean two different, almost unrelated things when applied to software: gratis or "libre" . It therefore requires disambiguation, so I'd suggest avoiding using it at all unless very clear from the context.
The phrase [free software] and [open source] can't be split. They are their own thing and that's what we have clear definition for. This is exactly why RMS argues against using FOSS by the way:
> since it fails to explain that “free” refers to freedom
"Free" is separated from "software" in "FOSS". Now, he was probably right to be worried about this at the time, but today I think FOSS is quite well understood the same way as FLOSS and we know that free in FOSS means libre. FOSS is not ambiguous nowadays. FLOSS might still be a better designation though for the reasons he gives. The explicit "libre" also can't hurt. Unless you are speaking about brushing your teeth with some free software, maybe avoid FLOSS for clarity.
RMS literally says "free" and "open" are quote "two different ones". The two concepts should not be conflated with the other because it inhibits properly understanding them.
>"Open" alone means nothing,
"Open" source code is one of the requirements for "free (gratis and/or libre)" source code, as I cited earlier. Clearly it does mean something.
He writes "free and open source" in this sentence. "source" is there right after "open". And it's not his words, he is giving the meaning of the acronym he is arguing against here... because he finds it sloppy!
Software is not mentioned after "free" because it's not there in the FOSS acronym. Actually, I'm sure he would not object if it was actually repeated there as in "Free software and open source software". He does not like that software is factorized in "Free and open source software", making it look like free and open source go together. He objects precisely because "free" alone is not a thing. "Free software" is the phrase he is pushing for. He does not want people to understand the phrase as "[free and open source] software" because it misses one of the two words. The sad part is that I'm actually paraphrasing RMS, he says it better than me, he is already exceptionally clear.
You can ask him, he answers mails quite consistently. Just make sure you are very clear in your questions. He will be prompt to dismiss anything sloppy.
And yes, "free software" and "open source" are two different things, that's what he is pointing out and I mentioned this.
> "Open" source code
You are entirely ignoring my comment on how "open" and "source" cannot be separated if you are referring to the concept which the rest of the world is familiar with.
Just try to find a precise definition of "open" applied to software or to source code from a recognized source. The open source definition does not count, because it has "source" right after "open". It must be "open" alone, without "source" next to it. I don't want to spoil anything but you probably won't be able to.
I think I'll stop there because I will likely fail any further attempt to express myself in such a way you understand me as precisely as I would like to, and probably nobody else is reading this thread anymore anyway.
The following is of interest for us here: https://www.gnu.org/philosophy/open-source-misses-the-point....
"Open" means what it says on the tin, and the common understanding of "Open" source is along the lines of what the state of Kansas wrote down as cited in the above article: "OSS is software for which the source code is freely and publicly available, though the specific licensing agreements vary as to what one is allowed to do with that code."
RMS even goes on to point out that OSI's definition of "Open" source is fundamentally incompatible with English, which is among the chief reasons for any of this disagreement; quote follows:
"But the term 'open source' has only one natural meaning, which is different from the meaning its supporters intend. So there is no succinct way to explain and justify its official definition. That makes for worse confusion."
Again, "Free" software refers to the question of how the software is licensed for use. "Open" source refers to the question of how the software's source code could be accessed by the people at large.
Personally, I find the "F(L)OSS" term redundantly pointless when used in the way most people use it. Free software by its definition already requires that the software be Open source, there is no need to state "Free(/Libre) and Open" unless you want to refer to two distinct categories of software in one breath: Free/Libre software, and Open source software.
You can disagree that it should be included in the definition, but that doesn't change the fact that it specifically is included in the definition.
It's also called "source-available": https://en.wikipedia.org/wiki/Source-available_software
The term lacks consensus in the way that evolution lacks consensus. Overwhelmingly, it's those least in a position to disagree stating that they disagree.
But the majority of devs out there aren't so invested in this stuff and will just use the term in the way they've heard it used. If they've heard it used in a loose fashion, that can lead to confusion. I can't fault those devs for that.
The windows source code was leaked several years ago, so obviously windows is open source.
I feel like the DFSG is the most concise version of what the Internet used to generally consider open and free software: https://wiki.debian.org/DebianFreeSoftwareGuidelines
I actually prefer the Free Software Definition though, which I find easier to digest.
https://polyformproject.org/licenses/noncommercial/1.0.0/
And without fail, people will howl ITS NOT OPEN SOURCE. They ignore that the code is on GitHub, and as long as you're not trying to make money with it, then do whatever you want with it. I don't like the idea of companies getting code for free and giving nothing back. I do like to support people who want my software for personal use.
Could just... not say that it is open source when it is not. The widely used definition of open is not limiting the usage of the code, not "just" showing the source code.
"All rights reserved" code is still all rights reserved even if you put the code out there.
> I don't like the idea of companies getting code for free and giving nothing back.
Doesn't GPL/AGPL prevent that enough?
There’s been a lot of effort to conflate those terms over the years.
I’m saying that there is a large amount of software out there that calls itself open source but that doesn’t meet these terms.
The usual qualifier for software with available source code is source-available. There's no doubt about it.
We really don't need even more confusion around the terms of free software and open source than we already have.
The two I remember (Mongo and Elastic) were shat on for their license change and fake open source.
Assuming no evil intents, MongoDB might have been confused themselves, genuinely thinking the SSPL was actually open source, since they tried to submit it for approval to the OSI. At the time it was unclear the license was not open source, even if some people immediately noticed issues with it.
I have literally only seen Free Software folks claiming this in similar discussions to this, and have not once seen that term used in practice (I'm sure you can find at least one example, but it's far from being common). The typical term for this is still "open source" whether it technically conforms to the OSI definition or not.
And corporations that try to get some free marketing and code I guess.
The term is clear - lack of limitations of usage for the code makes it open source. If you put any limitations, whether noncommercial, "not for evil" etc. it stops being open.
It's not hard. If you close a door, it's not open anymore.
Except the GPL has a huge limitation (can only be used in GPL code) which "closes the door" to a lot of uses, and yet it's the gold standard.
Well, the typical term coming from people who don't understand the terms. That's why there is a need to explain them, repeatedly.
If your source is available, tell people that your source is available. If you're not going to charge for your software, call it "free software" if you want to confuse people, say it's available for free if you don't. Otherwise I'm going to start selling apples that are 30% plastic as organic.
I mostly agree, although I don't think they have to use the official licenses to qualify for the terms. Your license does have to adhere to the underlying principles those official licenses are built on, though!
And this is where things fall down a bit, because too many people don't understand that these terms have very specific meanings and end up misusing them.
Agreed. But the solution is to educate them :).
And here is where I'm a bit selfish -- after many years of doing that and ending up in countless emotional arguments with people who want the terms to mean things they objectively do not mean, I've grown weary of the fight. That, in the end, is why I've stopped doing that.
I don't say that thinking it's the right thing. I say that just out of plain, weary, honesty.
"Source-available" means that you can see the source code: https://en.wikipedia.org/wiki/Source-available_software. If I make a library, publish the source code online, and do NOT add a license, then you are not allowed to use it.
"Open-source" means more, including (among others) free redistribution and derived works: https://opensource.org/osd/. If I make a library an publish the source code under an open source license (permissive or not), then you can use it under the conditions of that license.
"Free/Libre" means that the end-user keeps the open source rights, i.e. the rights to view and modify the free/libre code running in the product they bought. If you build a product by assembling permissive-licensed libraries, you can sell it as proprietary code (with some attribution). So your customers have somehow "lost" some of the open source rights you got. If you build a product by assembling copyleft-licensed libraries, then you need to provide those libraries to your customers; they kept their rights.
> “Libre software” means you can do what you like with the software. The terms get conflated, but it seems to me that when you want to argue semantics, these are quite clear definitions.
The term was perfectly clear before people like you tried to conflate it by throwing bullshit terms like "libre software"
To me, "sugar" means cane sugar, so I should be able to call food that's full of HFCS "sugar free".
People who use "open source" for "source-available" don't seem to have another word for what is actually called "open source". What does that mean? Do they just use whatever code they find online the way they want? They surely use open source code, so somehow they should have a need for a word that design open source software.
What next, gotta call Windows "open source"?
Just wait. That's coming.
Right, they mean that, as a user, you are not free to use the software for any purpose, nor are you free to change it in any way. Whether open source is morally/ethically better is separate from its definition.
It's fine for you to say you only want to support non-commercial use, but if you call it "Open Source" it dilutes the definition.
Lots of source available projects are not open source. The source code being available on GitHub means that the source is available, not that it is open. I can post my copyrighted source code only permits me to use it in a project on GitHub. That doesn't make it open.
> If you set your pages and repositories to be viewed publicly, you grant each User of GitHub a nonexclusive, worldwide license to use, display, and perform Your Content through the GitHub Service and to reproduce Your Content solely on GitHub as permitted through GitHub's functionality (for example, through forking).
It doesn't say "modify", but it says "use [...] through the GitHub Service". I wonder if that means that all the code publicly available on GitHub can be used (but not modified) even if there is no license?
Even in this time left: I'm in a choir that does not make any profit. Can we use your NC software even if we pay our director or if we make people coming to our concerts pay? In doubt I would not.
You could make your code open source copyleft (so people cannot lock you out by building closed software from your code), and distribute binaries with a more restrictive license that people who need to use them commercially need to pay. As such you have your free software, people with commercial needs give back by paying you and people with non commercial needs can use your software for free. People with commercial needs could compile your software from source but probably won't and probably be happy to pay you a few bucks.
I work for a software company that develops an open source wiki enginr (XWiki) and also sell paid GPL'd extension. People actually pay. It helps founding further developments on the wiki engine and the extensions. See also premium WordPress extensions, or open source apps on the Play Store that are downloadable for a few bucks. As a dev, it's gratifying and your users' liberties are respected. I can't recommend this model enough. It can also enable commercial users to contribute code instead of having to find alternatives and directing their money elsewhere. I really believe an open source license can greatly benefit you and your software, helping a community to gather around it. NC will strongly limit how big this community can be.
You could also make your binaries downloadable for a fee for everyone and send them for free to whoever sends you a message telling you they want to use your software in a non commercial setting.
In any case, you do you and that's already very nice to provide the source code.
Using dubious marketing for a software product that isn't free for all uses would only tarnish the reputation of open source projects that ARE free. Eventually you get a company where someone was familiar with a lawsuit and makes a rule where using open source code is forbidden. Is that the path you want to go down?
Every place I've ever worked treats OSS in exactly the same way as closed-source software. You don't get to just use it based on your own judgement as a dev. You have to request to use it, which involves providing the license it is under to legal and getting their approval.
In most cases, legal will require a commercial license to be purchased if that's an option (even for OSS) because they value the legal certainty more than the cost of the commercial license.
So there's another point of confusion/disagreement.
I don't recall open source ever meaning "no restrictions." Copyleft, for example, is OSS with the restriction that any future use must also be OSS and copyleft.
"PolyForm is not… Open source or free software."
So what's the matter with just defending that position? Or ignoring those who don't read? People are allowed to not like software that's not open source. (And open source DOES have a particular definition. Which is very much not, "it's on github so it must be open source!")
This seems quite abusive. If I notice that using your software put people at risk of infringing some patent, I should be free to warn people about it.
Usually patent clauses are revoked when the user sues the author over patent infringement and this is arguably already bad (though I have no sympathy for patents, one could argue that it's fair game).
But this clause is quite nasty.
In the end, it's hard work to actually enforce any license and can cost a lot of time, energy and money.
That said, I would trust any OSI or FSF-approved license, they've been reviewed by a lot of people including lawyers. but this one does not seem very solid.