
It's not okay to pretend your software is open source - Bl4ckb0ne
https://drewdevault.com/2018/10/30/Its-not-okay-to-pretend-youre-open-source.html
======
staticassertion
I believe I'm in the minority when I say this.

Ultimately, if I choose to, I will license my project however I want. If I
want to restrict others from selling my product I will do so.

Calling it Apache 2.0 + Common Clause makes sense, it's an extremely well
known license and it's easier to start there and then say "but with some
restrictions". That said, I do see the issue that people may use this software
and not understand that the restrictions are there (but they clearly didn't
look at the license) so changing the name is a reasonable ask.

This article definitely reads as overdramatic, as do the repeated comments on
the subject.

~~~
vorpalhex
These are brownies, but they happen to contain a bit of horse shit. Not a lot,
it's just like a tiny sprinkling on top, but they are definitely still
brownies!

You can't make a substantive change to a license and pretend it's a small
deal. You can't hijack core tenants of a license, and then just put a little
disclaimer at the bottom. "Buy one get one half off! *The one half off is
actually just a plastic model and doesn't do anything"

Abusing FOSS licenses to try and control your users software while still using
their claim strikes me as pretty bad faith. If you want to use a dual license,
that's fine - just do that. "Hey, you can use this for free if you don't make
any money, but we want 10% if you're using this in a paid product" -> See?
Done, easy, nobody upset. Don't pretend "Hey, this is open source, except it
isn't, and please give me your money."

~~~
staticassertion
I won't address your analogy since I think it's obviously quite different.

Ultimately, people want to keep their code open, develop in the open, bring in
contributors, make it easy to adopt and audit their code, etc. They also want
to eat and have a home.

The extreme hostility I've seen over the years to every OSS project that tries
some new way of monetizing is just absurd and damaging to the concept.

> "Hey, you can use this for free if you don't make any money, but we want 10%
> if you're using this in a paid product" -> See? Done,

Confusing since what you've just described sounds very much like what is being
railed against? You're just talking about taking an open source license and
adding a restriction around monetizing the code - this is _not_ open source,
as it violates one of the 10 or so requirements to be Truly Open Source (by
some organization's standards).

~~~
bunderbunder
So, here's the key text of the Commons Clause:

 _Without limiting other conditions in the License, the grant of rights under
the License will not include, and the License does not grant to you, the right
to Sell the Software._

> Ultimately, people want to keep their code open, develop in the open, bring
> in contributors, make it easy to adopt and audit their code, etc.

The Commons Clause doesn't really change any of that from the base license. It
says so explicitly - "Without limiting other conditions..."

> They also want to eat and have a home.

This is the very thing that the Commons Clause tries to prohibit: "the License
does not grant to you, the right to Sell the Software."

In other words, it's a way for the maintainers of a project to say that _they_
get to sell the software, but nobody else does.

Which, hey, I develop proprietary software for a living, I'm fine with doing
that in the general case. What I don't like is trying to mix that kind of
restriction into an open source license. Because then what you're saying is,
you want other people to contribute code, _and you want to be able to benefit
financially from those contributions_ , but you expect it to be a one-way
street. There's a basic principle of fairness at play there.

If you want to do that kind of thing, I'd say it's much preferable to go with
something more like the oldschool "dual GPL/commercial licensing" approach.
Or, if it fits your needs better, something like one of the non-OSI Microsoft
Shared Source licenses.

~~~
Bartweiss
> _they get to sell the software, but nobody else does... what you 're saying
> is, you want other people to contribute code, and you want to be able to
> benefit financially from those contributions, but you expect it to be a one-
> way street._

It seems like a lot of the positive responses to the Commons Clause have
missed or skipped past this entire concern.

People are understandably touchy about "AWS profits off this free code", and
understandably concerned that "just make it AGPL" will scare away some big
players but not actually keep the developers solvent.

But the Commons Clause isn't at all reducible to "pay us if you profit from
selling our code". A clause like that might not be FOSS either, but I think
there'd be a lot less anger over it. (Especially if it wasn't achieved by
taking a FOSS license and adding on a misleadingly-named "...but not really"
clause.) Instead, the Commons Clause restricts sale rights to one entity,
leaving the software with a clear 'owner'. And _that 's_ what people are mad
about: it turns an entire development community into a farm team for one
license holder.

"Pay if you profit" has real potential, and as you say has been achieved in
the past via dual licensing. It allows for ecosystems where free code is
included in and extended from multiple paid projects, and while the code
originator might be guaranteed revenue they aren't in control of the project.
That's vastly preferable to the you-work-for-us structure of the Commons
Clause.

I think the conversation has been undermined by the way the Commons Clause FAQ
and authors have skipped across that nuance to say "GPL doesn't suffice here,
therefore Commons Clause!" We'll all be better off if we don't let the middle
ground stay excluded from the discussion.

~~~
dragonwriter
> Pay if you profit" has real potential, and as you say has been achieved in
> the past via dual licensing.

But, often, that involved straight-out lying about a FOSS license, though, and
presenting the dual license scheme as if it were the near-equivalent of
Commons Clause. (E.g., the old MySQL GPL or commercial license scheme.)

~~~
Bartweiss
Would you be willing to elaborate what's wrong with the MySQL GPL scheme?

I'm far from an expert on that whole debate, but my casual understanding was
that they offered the same code under GPL or proprietary licenses. And, that
doing so had been found legal and had even gotten (somewhat grudging) approval
from Stallman and the FSF as a way to ensure monetization and adoption of GPL-
covered code. His justification has a weirdly deontological logic that I don't
particularly accept ("you're not making proprietary code, just causing it to
be made" is pretty thin), but I think I'm fine with the result.

More generally, though, I completely agree. Misrepresenting FOSS status to
dual-license isn't ok, and has all the same problems as the Commons Clause. I
think there's a strong case for restricting proprietary use via a single new,
non-FOSS license (probably derived from an existing FOSS license) rather than
via dual-licensing or worse, added clauses.

~~~
dragonwriter
> Would you be willing to elaborate what's wrong with the MySQL GPL scheme?

For quite a while, MySQL AB purported on the website and elsewhere that
commercial use of MySQL required a paid proprietary license, and that the GPL
did not allow commercial use, only non-commercial use.

Eventually, they stopped doing that, but it took a while.

~~~
Bartweiss
Ick, that's part of the story I hadn't heard; my awareness of the whole thing
mostly started with the Oracle acquisition. Yeah, that's way different that
just _offering_ dual licenses, and not at all ok.

------
Fuxy
I don't understand why everyone is so against his point as far as I'm aware
even wikipedia says under "Open source license"[1] that "Licenses which only
permit non-commercial redistribution or modification of the source code for
personal use only are generally not considered as open-source licenses."

So his point is valid you can't advertise your product as open source if it's
not and you shouldn't be allowed to trick the community into thinking it is.

Companies can use whatever license they like it's their right but advertising
it as open source when it isn't just to take advantage of the now large
community of open source contributors is not acceptable.

Using “Apache+Commons Clause” is just one way used to trick people into
believing it's open source when it's not; you may not be using it like that
but do you honestly think a company with a team of lawyers didn't do this
intentionally so they can take advantage of the open source community?

[1]([https://en.wikipedia.org/wiki/Open-
source_license](https://en.wikipedia.org/wiki/Open-source_license))

------
freehunter
I agree that if you've labeled your software incorrectly as open source and
you've been corrected, it should be re-labeled and the problem shouldn't be
ignored.

I will say, though, that personally I feel "free" software has a labelling
problem. I'm not heavily engaged in the open-source movement, and a lot of the
terms and wording and licensing confuses me to the point where I don't want to
use it because I'm not sure what legal or press hell I might be unleashing in
the future. The fact that "free" needs to be clarified with "free as in beer"
or "free as in speech" is the most notable. Any thesaurus can give a dozen or
more great words to use other than the ambiguous "free".

Some of the OSI/FSF licenses can be (in my opinion) just as restrictive and
encumbered (albeit in different ways) as non-free/non-open licenses. The
biggest ambiguity to me is having multiple pieces of software with different
licenses. I've seen some Ruby gems where they're GPL'd, and I'm not sure what
the definition of "modified" means as it pertains to when I need to
redistribute the code. If I used MIT licensed code inside of a GPL
application, do I need to release the MIT code too? What if I need to use non-
free code in an otherwise GPL codebase? I'm just SOL? Do I need to guarantee
my released GPL code works, or can I release completely broken code and still
satisfy the license?

And this post highlights that pretty well those franken-licensing problems.
What the hell is Commons Clause? I've never even heard of it... or maybe I did
hear of it and like the post says I just thought it was Apache Commons or
Creative Commons. Again, ambiguous terms that have tons of better words in a
thesaurus.

FSF/OSI have changed the world for the better for sure, but like with the
million and a half Linux distros, the tyranny of choice ends up making the
process harder. I've never released any of my code as open-source because to
be honest, I have no idea what "open source" actually _means_.

~~~
esotericn
If you want to provide the source to your software, you put the code on the
Internet and you're done.

You don't need to even choose a licence. That only comes in to play if you
concern yourself with downstream users that care about licensing.

It really only becomes complicated when you want to release it and _also_
monetise it or restrict its use.

Licenses exist because of how this is ultimately at odds with how software
actually works - it's basically legal DRM.

(I think licensing has valid uses in the current environment, but it's worth
keeping in mind how absurd it is as a concept, it's basically a massive hack).

~~~
Flimm
Copyright applies by default. You _do_ need to choose a license:

> When you make a creative work (which includes code), the work is under
> exclusive copyright by default. Unless you include a license that specifies
> otherwise, nobody else can use, copy, distribute, or modify your work
> without being at risk of take-downs, shake-downs, or litigation. Once the
> work has other contributors (each a copyright holder), “nobody” starts
> including you.

See [https://choosealicense.com/no-permission/](https://choosealicense.com/no-
permission/)

~~~
esotericn
I addressed this in my comment.

> That only comes in to play if you concern yourself with downstream users
> that care about licensing.

``` println!("gosh, no LICENSE!"); ```

I just published some source code without choosing a license.

(Yes, yes, I do licence my actual projects. But letting legalistic bullshit
put people off releasing their source, even by a microscopic amount, is
something that I disapprove of strongly.)

------
kijin
Creative commons licenses have had optional NC (no commercial use) and ND (no
derivative works) clauses for years. FOSS purists don't like them, but a lot
of artists depend on those clauses to make a living.

There is no widely recognized equivalent of a CC-BY-NC license for software,
partly because neither the FSF nor OSI will recognize such a license. Maybe
someone needs to write one nonetheless. And stick it on their software clearly
and unambiguously. They obviously think that OSI-approved licenses don't suit
their needs. Then don't use them, period.

The author is right that "Apache 2.0 + Commons Clause" is potentially
misleading. We've seen "GPLv2 + Classpath Exception" before, but that was to
give additional permissions, not a restriction. Similarly, most examples of
dual-licensing don't add restrictions to either license. Adding a restriction
is something new. It's understandable that people find it disingenuous.

Just write a new license already and call it Redis Labs Open License (RLOL) or
something like that.

I'm sure antirez would be rather unhappy if you forked Redis, deleted a bunch
of features, and called it Redis Lite. At least have the courtesy of changing
the name if you're going to use an incompatible license.

------
koonsolo
We need a different name for this, so either

\- Source-available software ([https://en.wikipedia.org/wiki/Source-
available_software](https://en.wikipedia.org/wiki/Source-available_software))

\- Shared source
([https://en.wikipedia.org/wiki/Shared_Source_Initiative](https://en.wikipedia.org/wiki/Shared_Source_Initiative))

So that it's clear that source code is available in some form, but it's not
open source.

~~~
duckerude
Shared source ranges from actual free software to software that you aren't
allowed to modify or redistribute, and it's only used by Microsoft.

I don't think it's a good idea to expand the meaning to cover software that
isn't Microsoft's.

~~~
koonsolo
So we need a different name, I don't really care which. But I think it's clear
we need one to make the distinction.

------
npr11
This post seemed aggressive and vague to me. I'm not even sure what problem
the author has with these licenses. I _think_ the issue is confusing naming -
which seems pretty solvable - and not a fundamental problem with "dual
licensing" / "source available" / "commons clause" software?

People can develop software out in the open and say "use it as it is, for
free!", "use it as part of a new product, for free!", but also say "please do
not sell this software as it is" and "please do not make and sell an almost-
identical product using this software". That seems good to me, if the other
option is closed-source.

E.g. I could make a product, you can use it for free, I will try to make money
selling consulting services around the product (you can compete with me on
that!) just don't sell the software.

I am happy to be corrected if there is a problem with these licenses being
misused (or misrepresented as free and open source), but the post didn't give
any examples.

~~~
hatsunearu
[https://commonsclause.com/](https://commonsclause.com/)

>People can develop software out in the open and say "use it as it is, for
free!", "use it as part of a new product, for free!", but also say "please do
not sell this software as it is" and "please do not make and sell an almost-
identical product using this software".

The Common Clause isn't about preventing shovelware, it's specifically about
restricting the user's freedom to sell _any derivative work_ \--it straight up
says in the 1st FAQ that it's to transition existing actually FOSS projects to
non-libre software.

Also that's just the way SirCmpwn writes!

------
hendzen
At the end of the day, open source projects need developers... and developers
need to eat.

These license changes have been forced by the business reality of larger cloud
companies capturing all the value created by open source communities and
leaving OSS developers to starve.

Who deserves the value created by Redis? Antirez and the Redis Labs
developers? Or Jeff Bezos?

~~~
emersion
This is not the point.

The point is: stop calling open-source stuff that isn't. You shouldn't lie to
your users.

~~~
thrower123
Open-source doesn't necessarily imply everything that the FOSS and GPL folks
think it does outside of their semantic bubble. It's one of those bastardized
terms that has become so mangled and situationally-dependent as to be almost
meaningless.

For a significant number of people "open-source" just means, "I found this on
GitHub"

~~~
falcolas
Do you consider Microsoft Windows, or Oracle database to be open source
software? Because the source code _is_ viewable (albeit under an NDA).

Open source does have a specific meaning, and twisting it like this does
nobody any favors.

~~~
thrower123
No, I'm well aware of what open-source is _supposed_ to mean, as opposed to
shared-source or whatever the proper term is for that type of arrangement.

I just try to deal with the world as it is, and the damage has been done
already to the popular meaning of the term. I don't have the energy or
interest to tilt at this particular wind-mill, so at this point if somebody
says something is open-source, unless I have prior knowledge of what they
think open-source means, I can't really infer anything in particular, and have
to ask some more questions.

~~~
icebraining
Sure. And plenty of companies have stretched thin the definition of "free" or
"unlimited". But that doesn't mean we have to accept that as OK.

------
stevenacreman
People are upvoting the title because I guess they agree to some extent.

It seems everyone starting an open source project nowadays needs to protect
against the cloud providers.

The topic on here about the new CI tool from the creator of Ansible also had
an element of this. But I actually quite liked his solution. He gives
everything away for free and the source is open. You just cannot profit from
his work unless you join a partner system.

Maybe I'm being naive but that seemed like it may work. Although not sure how
you qualify not being used for commercial benefit if the software you're
building with the CI tool produces a paid product. I think the software
creator would only really enforce the license if you started a business up
doing hosted CI with it or offering it as a cloud service.

~~~
icebraining
The question is not whether it works or not. This new alternative to open
source may be great, we're just asking people to clearly distinguish their new
model as such.

------
zekevermillion
People are talking past each other here b/c we can't decide if we're concerned
primarily with the ethics of software freedom, or just with confusion of Open
Source (TM) labeling.

This discussion says to me that maybe RMS was right to insist on using the
term "free software", and to refuse to promote "open source". When we debate
the merits of an "open source" (or more confusingly, a "FOSS") license, people
end up talking past each other. Are we talking about what is an effective
licensing / development strategy, or are we talking about software ethics?
People who do not agree with the free software ethos are understandably
confused to find themselves criticized on moral grounds for choosing a license
that makes source available but does not permit full exercise of user freedom.
Hey, I thought we called it open source b/c we didn't want to focus on user
freedom as ideology? Right? Maybe that was a mistake.

My personal view is that there is no logical problem in an author talking
about open source as the basis for a restrictive, source-available license --
as long as there is no implication that the license is endorsed by a
particular standards body. And conversely if you are a proponent of software
freedom, maybe you have to recognize that there is some merit in referring to
this as "free software" instead of something else, to avoid confusion.

------
barnson
Blocking the sale or hosting of software is one thing; Commons Clause also
blocks any "consulting/ support services related to the Software." That's way
too broad; is a system that uses Redis "related to the Software"? It's also
short-sighted: it limits the ecosystem's growth to the ability of one company
to expand and take on "consulting/ support services."

------
myWindoonn
At least non-free licensing gives us an easy way to tell which software is not
worth using. It's funny how these recent packages in the news all have FLOSS
alternatives:

* Mongo? Why not Pg?

* GitLab? Why not Fossil?

* Redis? Why not better architecture?

* Vespene? Why not Nix tools?

You may see each of these as flamebait. I see each of these as a discussion
that, here on HN, usually ends in stalemate. What I'm suggesting, then, is
that we simply allow these package authors to tip the scales decisively for
us: Reject non-FLOSS and the path is clear.

~~~
vorpalhex
Mongo and PG are not quite alternatives. That make different kinds of
consistency promises. One FOSS alternative to Mongo that offers similar
consistency behaviors is RethinkDB.

An alternative to Redis if you don't need persistence is plain old Memcache.

------
mrjn
(Author of Dgraph here).

To Drew Devault: Just came across this article, and there's no comments
section in your blog post.

> Finally, I have some praise to offer. Dgraph was briefly licensed under
> Apache plus the Commons Clause, and had the sort of misleading and false
> information this article decries on their marketing website, docs, and so
> on. However, they’ve rolled it back, and Dgraph is now using the Apache 2.0
> license with no modifications. Thank you!

Please don't "praise" us. When we switched to the clause (back in April 2018),
we had changed wordings on our site (we don't do any marketing, so not sure
which marketing website you're referring to) to not mention open source but to
mention liberally licensed (which I strongly hold that Apache + Commons Clause
is, more so than AGPL). There was no false or misleading information. In fact,
that was pointed out to you multiple times, but that didn't change your
rhetoric.

Dgraph is no longer under Commons Clause and (its core) is under Apache 2.0
license, so I think I can speak as an open-source guy here. There are people
like me out there, who'd like to ensure that they can make a livelihood out of
writing open source software, without asking for donations, or doing another
job. We'd also like to ensure that if we run a company around open source,
that company can be sustainable and profitable. If your answer to these people
is to switch to closed source, then you're doing a bad job of promoting open
source.

In fact, your attitude towards open source is damaging to anybody who is
willing to spend their time and effort building open source and expects to
make a good living out of it.

------
_wmd
If you don't like software with these new style licenses, then don't use
software with these new style licenses. Explain what it is that apparently so
deeply violates your right to exist, but puritanical screaming and finger-
pointing black & white contrasts never really convinces people of anything.
All these rants are lame.

The best comment I've heard so far w.r.t. CC is how it complicates acquisition
of software by businesses. That's a hugely legit complaint -- but the same
complaint applied to the GPL not more than 2 decades ago. Companies adjusted
before, assuming value exists in this new breed of license, they'll adjust
again.

Meanwhile as a free software author, I'm very happy to see smaller companies
experimenting with methods to protect their work in whatever way they see fit.
Hopefully something "socially acceptable" comes from all this that might be
useful to me at some stage in future.

Finally it's worth remembering that there is a HUGE degree of freedom to
explore between closed source, pay-only software and free software as we have
it today. I have yet to see a recent example of a license that removes what
for me is the greatest benefit of all: the ability to fix and debug things
without opening a ticket. Fundamentalist shouting matches erupting every time
someone tries something new reminds me of another modern debate - religion,
and like there, the loudest and most annoying rarely have meaningful new
information to share

\----

There is another angle that seems very interesting. Industry consolidation and
typical policy within large companies towards employees working on free
software ("you can't unless it's approved & we own copyright") means 'the
movement' that existed in the 90s is all but dead and gone. Any big real
development that happens in the open typically happens because some employer
is explicitly paying an employee to advance their agenda through technical
means (see e.g. Kubernetes).

To me, a new license that not only incentivized but made practical and
sustainable large software projects independent of those large consolidated
employers is far more valuable than not having to toss a few dimes in the pot
if that software is used in some circumstances where profit is made.

~~~
cameronhowe
His problem with them is in the title of the post. If you want to do something
that is non-free, don't call it open source or free software, both words have
accepted definitions, by osi and fsf/gnu respectively. Your reply is entirely
off-topic.

~~~
chappi42
“Apache+Commons Clause” does imo not pretend that it is free/open-source. It's
a free/open-source license _combined_ with a restriction. I think this is or
should be plain for everybody who reads the license.

In a way I can accept that 'Commons' is being used as a restriction in order
to restrict monetary profit. With land, air and especially water there are
also restriction in place. E.g. there is much critic if a multinational comes
and bottles the water and (in some places) impairs local usage. Rules are then
necessary.

~~~
detaro
The Apache Foundation says it has gotten confused questions about this almost
immediately and has asked that this combination not be used (it's own "brand
guidelines" say to only use combinations like this if users are granted
additional rights, not if the user is restricted further)

------
nqzero
i'm sympathetic to (and in the same boat) as the developers that are
considering "licenses" like this one. but i agree with the author that the
language being used is fraudulent and the terms are one-sided (hence the
quotes). i've made an attempt at coming up with a license that better bridges
the gap between open and closed. my goals were:

* pay to use the software * assure developers that they can also monetize their work * assure users that prices won't change unpredictably

[https://github.com/db4j/pupl/blob/master/PUPL.md](https://github.com/db4j/pupl/blob/master/PUPL.md)

would love any feedback or alternative licenses that capture similar elements

------
kowdermeister
He should have been linked to one repo to have some context. Is the commons
clause limited to the project itself or can I still sell my software using a
library with a commons clause?

------
fiatjaf
Why is there a canonical definition of free English words guarded by an
institution? Isn't the English language free and open?

