Edit: A more open source version of this is to GPL the source and offer a more commercial friendly licensed product for a fee. I don't know if this technically goes against GPL but I have seen people do this.
Edit: A more open source version of this is to GPL the source and offer a more commercial friendly licensed product for a fee. I don't know if this technically goes against GPL but I have seen people do this.
This is same kind of pedantry that haunts every thread like the last. We know that a bowl of cereal isn’t thought of as a soup, nor is a hotdog thought a sandwich. And yet, there’s always someone out there with the time to argue semantics.
The proof is in the pudding! Software developers who have any business sense will tell you that customers presume that open-source is synonymous with source-available. Marketing your software with that presumption isn’t a moral failing — It’s business!
And if anyone out their still has an unfulfilled quandary, I would recommend that they try to monetize their open-source code and experience the illucrative rewards of the MIT and BSD licenses.
Openness is an important principle and it includes not discriminating against fields of endeavour. Think “open society” not “open jar”.
And if you disagree? Well, then I have some free software to sell you!
> Software developers who have any business sense will tell you that customers presume that open-source is synonymous with source-available.
As a software developer with business sense, I call BS on this made-up “fact”. All true scotsmen agree with me.
The problem with this viewpoint is that the OSI is not the final arbiter of the English language.
Yes, the OSI has an "official definition" of what constitutes "open source" software, but there is a large group of people in the industry that equate the term "open source" with the concept of the source being available, and nothing more. You can shout "wrong, wrong, wrong!" all you want, but I doubt you are going to change many of those people's minds.
The Free Software Foundation has a similar problem with the term "free software".
The people making the definitions are generally passionate about those definitions (for good reasons, mostly, in my estimation). However, I don't think an approach that starts with "Sorry but you don't get to hijack the term" is going to have a net positive effect. If anything, it will probably have a negative effect.
As I said, there’s a reason we have the OSD and it’s to avoid these silly conversations in which people try to argue that because a sufficient number of people think that turquoise is blue, that it is therefore blue.
This is a solved problem, it was solved 15 years ago. Nobody working in this industry has any excuse for being unaware of it. We should not be attempting to re-litigate it on every thread ever.
Too many people trying to pass their work off as open source when it’s not are not acting in good faith and are looking to trade off the goodwill of the phrase “open source” for personal profit. I’m going to complain about this, net positive effect be damned.
> Because multiple people are wrong, this makes them right?
I am sympathetic to your point of view, but in terms of spoken language, this is actually how it works (to my dismay, sometimes).If enough people use the term wrong, then that becomes the new definition. c.f. "literally," which can now mean "figuratively." I roll my eyes, but there it is.
For me, I feel there is some fuzzy line to draw between "some use" and "over-use". For "literally," it seemed to get really bad maybe 10-15 years ago, where literally everyone was literally dying over literally the smallest things, and it has tapered off a bit since then (just my personal experience).
I feel like my eyes start to roll when it is paired with a lack of self-awareness. Using it as though it were for emphasis, but not actually being emphatic — just tacking it on pointlessly.
Now I'm getting flashbacks to the complaints about inserting "like" everywhere, which somehow has managed to, like, find its niche and persist irregardlessly.
Richard Dawkins I think made a very good point on Twitter once: If word usage is new and novel and increases expressiveness, we should keep it. If not, we should try and oppose it. Because we want richer ways of expressing ourselves.
This in response to people using "like" too much. As in "Jane was like ... And then I was like ...". "like" doesn't mean "I said" here. So he was supporting the new usage even though he hated it.
Merging "literally" and "figuratively" reduces our expressiveness. Without context ques and maybe not even then if something outlandish actually happens, you can't be sure what was meant. What's the benefit of ambiguity?
Similarly "open source" has a precise meaning especially if you are a programmer. Lots of disciplines have precise meanings for words that might mean something else to the lay person. We don't change maths and physics to suit the layman. Why should we change the meaning of open source? If you don't like the concept as defined, you can invent your own term! Some people have and we have things like "Copy Left".
You could argue that there is some natural evolution of language, but we are also the only species on earth that has literally (not figuratively) changed the planet. So why not mold our languages too? Why should these people who are sticklers for language give in?
Many languages, and especially most subsets of languages in technical use are prescribed; however.
Enough people using literally when they mean figuratively will eventually make literally mean figuratively in casual conversation. But no amount of people saying squid when they mean octopus will make squid mean octopus within the marine biology community.
A marine biologist might reasonably talk about an octopus' tentacles, and understand what other people mean when they talk about those tentacles, even though octopuses actually have "arms" in strict terminology.
Similar friction happens with the word "theory" in science or "proof" in mathematics.
But back to the topic: I think enough people use "open source" in a non-rigorous sense that it's worth leaving room for multiple definitions, versus trying to stamp the non-technical ones out. Marine biologists don't generally go around emphatically saying "they're arms, not tentacles!" (well, maybe some do, but mostly in a good-natured, aware-of-how-silly-it-is sense)
Sorry to have tortured your metaphor so much (:
I'd suggest that forums like this are good at being specific about terminology, and rigorous about its application.
In other words you, and others, may have used Open Source incorrectly in the past, and may learn from this thread so you don't I the future.
Perhaps your analogy would better apply to Open Source versus Free Software. That's more akin to octopus and squid. Open Source to commercial is more like talking about tentacles when describing a whale.
I did not say they were right. Effectively I said a lot of people use the term "open source" differently than you do, and that I didn't think the wording you chose to argue your case was going to be effective.
I understand the frustration.
> This is a solved problem, it was solved 15 years ago
I guess that depends on what problem you are referring to. In my experience, the use of the term "open source" to refer strictly to "source available" software is about as common as it ever has been.
> I’m going to complain about this, net positive effect be damned.
Well that's your choice, but in my opinion by doing so in the way you have in this thread, you are working against the goal of persuading people to use the term in the way you want it to be used.
The OSI is not the final arbiter of the English language, but this definition is long-settled by the vast majority of people who know about software. For example, many governments (including the US) have definitions of "open source software" written into their laws and regulations, and they all basically agree with the OSI definition.
For example, the US Government's "OMB M-16-21: Federal Source Code Policy" defines "Open Source Software (OSS) as: "Software that can be accessed, used, modified, and shared by anyone. OSS is often distributed under licenses that comply with the definition of “Open Source” provided by the Open Source Initiative (https://opensource.org/osd) and/or that meet the definition of “Free Software” provided by the Free Software Foundation (https://www.gnu.org/philosophy/free-sw.html)." https://obamawhitehouse.archives.gov/sites/default/files/omb...
We obviously disagree on this point, although "the vast majority of people who know about software" is a fairly vague qualifier.
The fact that many software projects distribute under licenses that comply with the OSI's definition is not particularly relevant to my argument anyway. I'm not talking about people distributing the software, I'm talking about the large number of people I am aware of who think of "open source" strictly as software where the source is available.
The US government examples aren't particularly relevant either. A small number of people make those decisions, and there are legal ramifications for them in how they define things, so I'm not at all surprised that they define the term that way.
As I said elsewhere in the thread, I was not arguing that people who use "open source" as equivalent to "source-available" are right. Mainly I'm arguing that there is still a very large group that see it that way, and that the meaning of the term is far less settled among people who use it than some would like it to be.
It's important to have clear terms for important concepts. If you mean source-available (aka "open box"), use that phrase instead. If you mean open source software, call it open source software. Although I don't think it applies in your case, in my experience many of the people who misuse the term "open source software" (OSS) to identify something that is NOT OSS are expressly trying to deceive. Hopefully we can agree that fraud is not acceptable, and then move on to discuss whether or not this is (intentional) fraud.
The term "open system" was not well-defended years ago. It has a definition, but vendors wanted to redefine it into its opposite. Eventually "every vendor with an open mouth had an open system", making the term "open system" mostly useless. It is reasonable to defend clear definitions of important terms, because otherwise communication breaks down.
They can obviously modify it, or extend it for their own development.
So its clearly not Open Source (and I don't market it as such.)
I haven't found a generally recognizable term for commercial products shipped as source code (with or without pre-compiled binaries.)
I think that term would be useful, to distinguish something that is not Open Source and also not Binary.
Currently we describe it as "all source, no black boxes or dlls." which is a bit wordy.
I would say though that regardless of what some customers may _understand_ Open Source to be, this is not Open Source. As programmers it behoves us to use correct terminology not hide behind "what we think the customer thinks."
I never said that the OSI's definition of "open source" wasn't widely held. My argument is that it isn't the only widely-held definition. And I still don't find the government's use of the OSI definition to be particularly relevant - in terms of there being multiple widely-used definitions. It is just an example of one of them.
> in my experience many of the people who misuse the term "open source software" (OSS) to identify something that is NOT OSS are expressly trying to deceive
It has been my experience that most people who use the term "open source" to refer to source-available software are not trying to deceive anyone (although, I am aware of some examples where that has happened). They just haven't dealt with the legal details, and are mostly unaware that a different large group of people attach a lot more meaning to the term than they do.
It is in those corporations (listed as Sponsors) interest to have access to vast array of Open Source projects to exploit them commercially without committing to any R&D costs and paying the authors.
I would argue that you have hijacked the "open source" term.
What’s valuable to them is to drive the price of a particular product down to $0, if that will undermine a competitor in an area that the original company has no hope of winning, or if that product being free will cause people to buy more of their product. That is worth a huge amount of money and is something that they are otherwise unable to achieve.
Sometimes they're buying decades worth of debugging/testing
Casual comment. Being capable doesn't mean it makes viable sense to build it on your own and how are you so sure about the "low marginal cost". It never is when you have to build something, anything.
It doesn't really matter who defines it as what. What matters is what people mean when they say it.
The only argument against that would be that the term has gained popular usage outside of the open source community and become a generic term. I haven't heard or seen any argument that that should be the case.
Most developer just uploaded their project to GitHub and attached a license. If OSI defines some licenses as open-source or not is irrelevant. Legally only the license is binding.
In the end for open source to be open source it should be publicly accessible.
Anything else should be defined in the license as the maintainer/creator wishes.
Anyone familiar with english but unfamiliar with the Open Source concept would just think that open source is "source code available", not that there are all these other constraints applied to it as well.
That doesn't mean nobody ever put the two words together before, only that they did a reasonable job to make it probable that no one could point to it as an established term. The whole idea was to trademark and protect the term, which would have been useless process had they not done their homework.
That fell through because the phrase was too generic, but the whole process was very open and well argued, in my opinion. If you have objections to the term, why did you not put them forward in 1998? It sounds a bit late to argue that the term was hijacked 25 years after the fact.
Here's Caldera using the term "open source" for a specific purpose, to describe their DOS offerings as "source available" in 1996[1], which does not fit the definition of "Open Source". Two years later, according to OSI, Bruce Perens proposed "Open Source" as a replacement term for "Free Software"[2]. The Caldera example is just an easy to find public, widely read announcement which uses the term open source in a common-English sort of way. There are more, especially if you troll around old comp.* newsgroups.
> If you have objections to the term, why did you not put them forward in 1998?
I suppose because I was 12 and just learning C at the time. Though I do recall liking the "Free Software" term better, coupled with the phrase "Free as in freedom, not free as in beer".
[1] https://web.archive.org/web/20180402143912/http://www.xent.c...
[2] https://web.archive.org/web/20021001164015/http://www.openso...
The use you have found by Caldera, which just had become a Linux company at the time, likely precedes this however. I think that falls under "putting the two words together", as it was not an established term at the time.
There is simply no denying that the people around the OSI and related organizations (there were many, but mostly with people in the same circles) popularized the term and give it a specific meaning. Trying to deduce a historical event by cherry picking newsgroup messages is hard. Better to ask anyone who was around Linux related circles at the time. Being 12 at the time is certainly no guarantee of anything, there are many 12-year-olds that know more than adults, especially at the time when there was such a social explosion from the Internet, and many people were just known by their nicknames.
The situation around open source was really interesting as a social commentary at the time. A lot has been written about the connotations around "free" being problematic in English, but there was so much cultural values around the FSF, and my personal feeling (of which I have no proof) was that it was even more important to find a term that the FSF didn't own, thereby taking control over the discourse around permissionless software development which was just getting started at the time.
We have a legal mechanism for dealing with this situation. They could have trademarked the term "Open Source", but that wouldn't be very open then.
More controversially, a "non-commercial" license is not open source. This is clearly the position of the OSI, though that isn't necessarily dispositive. But note that this is not the same thing as a license with terms that happen to incidentally make some commercial use impractical (like the AGPL), which may be what the parent meant by "non-commercial", in which case we just have people talking past each other.
> The GPL is a copyright license. It applies when copyright law would otherwise prevent distributing some program. If I were to violate the GPL, for example by sending someone a compiled version and refusing to provide the source, then there's a clear legal theory by which copyright law could be applied.
> That "one added requirement" in the AGPL turns it into a EULA, because it's an attempt to regulate for which purposes a user may run the program. If I were to run a modified AGPL'd SSH server on my own hardware, the question of whether I'm violating the AGPL depends on whether I'm allowing others to access it remotely. If the AGPL can be violated without copyright infringement, it's clearly in a different legal category than the GPL.
Copyright law -- at least, in the US -- protects both the right to distribute something and the right to modify it (technically, to "prepare derivative works"; see 17 USC §106 for the exact wording). Both the GPL and the AGPL grant you the right to modify and/or redistribute a covered work, it's just that the conditions that they impose are different.
In particular, section 9 of the AGPL says quite clearly:
> You are not required to accept this License in order to receive or run a copy of the Program. Ancillary propagation of a covered work occurring solely as a consequence of using peer-to-peer transmission to receive a copy likewise does not require acceptance. However, nothing other than this License grants you permission to propagate or modify any covered work.
And all of the other clauses of the AGPL are carefully phrased as conditions under which you may modify or distribute the work, not conditions under which you may use it.
So if you simply receive a modified copy of an AGPL-licensed program and run it, then no matter who accesses it you aren't in violation of the AGPL, because you have no need to accept it. But if you are the one who does the modification, and the modification doesn't comply with the AGPL (e.g. because the modified software doesn't provide remote users with the source) then you are in violation, and it's because you did something that wasn't permitted by copyright law.
Note: AGPL in the above example is specifically to deter commercialization of the application by competitors while allowing the consumers to read the source and use the application without paying to my web service if they wish so.
So, It's best to use permissible license for the open-source version of the application in case of dual-license if we want to take back the contributions to our non open-source version.
I see this is what dual-licensed projects seem to do, I use open-source version of Aseprite[1] under MIT but I paid for the license on their website under EULA.
If anyone has seen a dual-licensed project where the open-source version is under AGPL or similar restrictive license then please mention.
That's one option; the other is to require that contributors assign you copyright of their contributions (perhaps with compensation) so you can release it in the same manner as your own code.
Narrowly focused on the effectiveness of the dual license scheme itself, permissive licenses "don't work as well" because there is less incentive for anyone to pay you for the other license; typically all they'd be avoiding is the attribution requirements.
I thought about it before I made my previous comment, Good to know this is a thing.
> permissive licenses "don't work as well" because there is less incentive for anyone to pay you for the other license; typically all they'd be avoiding is the attribution requirements.
As far consumers are concerned, I think it largely depends upon the project; If it's complex to setup and run then I guess people would use the hosted version. I use open-source Aseprite because it's available on AUR, But I did pay for the license on their website which I presume most wouldn't.
Perhaps the real concern with permissible license are the competitors, Who get to use your code to reduce their barrier for entry. Then again, Software code at current times aren't that big of a barrier to entry.
One thing which all these discussions prove to me is that open-source application funding is very complex, Depending upon it for livelihood with just good will of the consumers is very risky as consumers are on average poor and corporations are on average greedy.
Once again, LGPL being more permissible than AGPL shows IMO the need for having a permissible license for the dual-license.
A more permissive license generally improves adoption. For the same level of adoption, a less permissive license drives more revenue in the dual-license model. Maybe a permissive license is still the way to go (certainly getting adoption is often difficult), but it is not the dual license situation motivating that. Contrast a "give away the software and sell support" business model, where (sufficient) adoption is everything and more restrictions on the license doesn't do anything for the business.
With a maximally permissive license, I hesitate to call it "dual licensing", as it stops being the license your paying customers are actually paying for but rather hosting, support, or warm fuzzies.
But we've so far encountered just one example for that, Even there we don't know the financial status to claim whether it's indeed more successful (revenue wise when compared to a permissible license).
On the other hand we have numerous successful products (by revenue) with permissible licenses incl. those sighted in the OP.
Then again, We all know the fiasco with Elastic.
Which? I didn't see any using a dual license approach in the OP?
A separate version is "open core", not "dual license" - that's a different business model.
Use case differentiation by means of providing the same thing under different licenses is what dual license (or multi license) means. One license (say, GPL) will be appropriate to some use cases (downstream open source projects) but not for other use cases (downstream proprietary software) and so the latter has to pay for a license other than the GPL.
> I didn't find any explicit mention of copyright transfer
It's possible they know the people who've submitted code outside of github and handled it out of band, or that github has some way I've missed of requiring submissions to assign copyright in a way that wouldn't be visible to us. It's also possible they're being legally reckless and might be subjecting their paying customers to potential (if perhaps unlikely) copyright claims from their submitters. There is nothing about it being the same code under both licenses that would imply they wouldn't need their submitters' blessing in some form to sell their code under the proprietary license, and the more implicit blessing the more likely it'll wind up in court at some point.
Crucially, one cannot make their code "for non-commerical use only" and have it still be open source. It must be available for any entity to do with it what they wish. One can of course restrict that, but it would no longer be open source. Source available, perhaps, but not open source.
Therefore, ironically, it is you who should not mangle language, not me.
It's great that the phrase "open source" has been so intuitively understood but to claim it has an obvious literal meaning is just nonsense.
An open door implies you can see what's behind the door, as opposed to a closed door. An open book implies you can see what's inside a book, as opposed to a closed book. Likewise, open source implies that you can see inside the source code, as opposed to closed source.
So I think the claim that it has no obvious literal meaning is a bit hyperbolic, but I get where your thinking, since most developers automatically associate "open source" with "free code".
Perhaps Glass Source would be a more accurate phrase for code you can see but not touch.
No that is how the English language works. Car gas and gas are two different things.
Source available is akin to putting a paper behind a piece of glass, how is that open? You can't touch it, can't modify it.
By that definition GPL and attribution required aren’t open source.
More to the point with a no commercial clause, it isn't freely available there are restrictions on what you can do with it.
See the provided link. I am used to the source open / source available phrasing, but, I did not know the history behind it.
Promotion of (corporate version of) open source is designed to cut costs of R&D - so people use their own money and resources to create projects and then big corporation comes in and appropriates the successful ones without paying anything. Sometimes they contribute some code back, job done.
Then you have a situation where big corporation makes millions or even billions using the software and original developers are struggling to make ends meet.
This is wrong!
Every open source project should be dual licensed, so the authors can be properly compensated!
The OSD was created precisely to prevent this kind of underhanded twisting of words.
Want to use a non-open license, go for it! But find your own phrase to describe it. “Open source” is taken.
This is much earlier than sponsorship and goes to Stallman’s Freedom 0.
You’re looking for “source-available.”
Yes, permissive open source licenses tend to benefit large industry players.
However, you have it backwards.
We promoted these licenses to these industry players under the "Open Source" label so that we could use and contribute to free software at our day jobs, rather than being locked into a proprietary landscape.
It seems you are solving a different problem.
Beyond security and interoperability I don’t see the point in projects that anyone can contribute to but only one person can profit from. Why would I contribute? I always felt this way about dual-license GPL code. It has a first-mover effect that sucks all the air out of the room for someone to create a project with more liberal licensing. How am I to set up a rival project if I don’t also want to be your business rival?
That being said, if you contribute to an open source dual licensed project, you should be getting a share of the revenue coming from corporations paying for the license.
Your idea of free software is similar to that in the music industry, where corporations want to pay for the content in "exposure".
Another thing - that comes back to my first point - is that if we allow open source contributors to not be compensated, when their projects are being used commercially, we are creating inequality, where only privileged people who can afford to commit their time for free contribute to these projects, get recognition and then subsequently may be looking at getting better jobs than those who cannot afford to contribute, because they come from poor background and need to be in paid work in order to live. In my country, when unpaid internships were legal, they were usually taken by white kids from privileged middle class families, who could pay for their food and accommodation. They were getting experience and better start in life than their poor peers.
Your idea of open source enforces inequality and is wrong!
That's part of why it works. If you start making money, you have to pay to use the software you've already designed your product around.
I’d say that all of those scenarios are commercial.
Is that Net or Gross?
Where does it work? It seems almost non-existent to me. Maybe we are looking at different areas of the market though.
Openness is much more than “source available”. Open for use by others is an important part of that.
i.e. https://www.synopsys.com/blogs/software-security/unlicensed-...
Sadly, GitHub support for this doesn't really exist:
Example: https://github.com/dragonflydb/dragonfly/blob/main/LICENSE.m...
https://github.com/getify/You-Dont-Know-JS/blob/2nd-ed/LICEN...
https://en.wikipedia.org/wiki/GNU_Affero_General_Public_Lice...
> The GNU Affero General Public License is a modified version of the ordinary GNU GPL version 3. It has one added requirement: if you run a modified program on a server and let other users communicate with it there, your server must also allow them to download the source code corresponding to the modified version running there.
> The purpose of the GNU Affero GPL is to prevent a problem that affects developers of free programs that are often used on servers.
This allows people to run your code as is but as soon as they edit the source code, they must make it available to their users. My understanding is if they only use it for their employees on their own corporate network, they only need to share the changes with their own employees? I think that is a fair compromise, no?