1. 39

  2. 12

    @bcantrill misses huge issues I brought up in my last comment. What he and other FOSS advocates push for has gotten us a net loss in legal freedom and created new oligopolies that got there parasiting off of FOSS. License Zero’s approach couldve reduced that by forcing them to pay for any commercial use and/or forcing them to submit any change to code regardless of what they do with it.

    The Parity license or something similar lets new players aways attempt to compete with market grabbers using their same tech. The Prosper approach of forcing payment, but sharing source, generates income needed to fight for our freedoms in Congress and courts. Telling people who value freedom to not make money needed to protect it against well-funded adversaries only erodes freedom.

    And, as usual, one can approximate most benefits of open source:

    1. Allow inspection, modification, and forks of source among licensed users.

    2. Give free licenses away for non-commercial and/or small business use (eg sub-$1mil). License cost scales up with use and/or revenue of company.

    3. Contract saying it goes permissive license if they stop supporting it. Another provision for a third party to determine what constitutes that. That organization will be biased in favor of FOSS but with history of fairness.

    4. Rates cant go up past inflation for specific products without customers permission. Open formats and protocols so they cant be locked in. So, they’ll keep paying if it makes sense to (eg company lowballed too much).

    5. Public, benefit company or nonprofit with charter saying it will do some subset of above for all software, prioritize adoption over profit, not sell out users, wont patent sue companies for FOSS offerings, and so on. Make a list.

    I mean, whats left that most indivuals and companies care about? Aside from freeloaders, this is nearly identical to the FOSS they’re already using. The difference is it generates funds to pay developers and fight legal battles for freedom. I think that’s the best outcome.

    1. 13

      The benefits of free software are that it allows users their important natural freedoms to use, modify and redistribute software, and to use, modify and redistributed modified copies of the software.

      What you suggest is not ‘nearly identical to the FOSS they’re already using’, because it’s an enormously complicated system trying to approximate something like free software, but without actually taking into account the reasons free software licenses exist in the first place.

      An analogy would be someone talking about the fundamental human right to life, and you saying ‘okay well you can have that but not for prisoners’. Well no, prisoners are the exact people whose right to life is being threatened in most countries! Similarly, commercial use of software might be uncomfortable to some people, but it is really important! Being only able to make use of your software freedoms in an hobbyist way is like having a software framework that only works on projects less than 1000 lines of code and just breaks in weird ways at scale. Is it an alright idea? Maybe. But it’s fundamentally useless.

      The point of software, for a great deal of people, is that they can build something commercial out of it, or that someone else can. Even if they don’t intend to do so at first, they certainly might want to do so later.

      What does it even mean to say ‘license cost scales up with use and/or revenue of company’? It’s all very well saying ‘it’s only 1% of your revenue, you can afford that, that’s tiny’, but that’s a lot when you have even 5 licenses, and many projects have hundreds of dependencies.

      What does it even mean to say that it goes permissive if you stop supporting it? I don’t want something to be permissive, I want it to be GPL. But even if we said ‘copyleft’ instead of permissive there… what does that even mean? What defines ‘stops supporting it’. What if it’s just done? Sometimes software is done, especially software with a well-defined scope. Do they have to just make changes? Do they have to make changes that fix problems? Do they have to be still adding new features? Do those features and bugfixes have to be somehow related to the problems their customers submit, or can it be an entirely ‘throw it over the wall’ business model?

      Rates can’t go up beyond inflation? Rates are fixed, now? I assume they can’t be a proportion of revenue because that goes up with inflation anyway. Why make them fixed? That just punishes the smallest businesses. That’s not fair.

      I have absolutely no idea what you fifth point means.

      What if I don’t want to fund your idea of what free software needs politically? What if most people don’t? What if I’m not an American and just don’t care about your legal system and its woes at all? If I contribute to a project, can I start redirecting part of its funds towards lobbying in New Zealand instead of in America?

      The reality is that free software is generally these days a community effort. When it is, why should companies like Redis Labs be freeloading on the work of the community and taking all the financial rewards, when in fact if anything the community should be being rewarded by Redis Labs.

      Really if Redis Labs is incapable of making money from their own product, that’s their fault. They should be the best in the world at using it. They should be able to have paid prioritisation of bugfixes and new features. They should have the best support in the world. They should know how to host it with just the absolute best results in the world, because they’re so familiar with it. If they’re not making enough money from it, that’s their own incompetent fault, and blaming the license and the license system is just stupid in my opinion.

      1. 4

        The benefits of free software are that it allows users their important natural freedoms to use, modify and redistribute software, and to use, modify and redistributed modified copies of the software.

        Are those natural freedoms? Does Amazon, which according to the Supreme Court, is kind of a person, have a natural right to use modify and distribute my work as a programmer? Can they take musicians and writers work and use that too? Why pay Yo-Yo-Ma or Pink or Dolby or Rob Pike when you have a “natural right” to use, modify, and redistribute?

        1. 1

          Legal persons aren’t the same as natural persons, and software isn’t the same as other kinds of works.

          1. 2

            Eban Moglen of the FSF explicitly ties software “freedom” to free use, modification, and redistribution of copyrighted music or performances. And I think he is correct: there is no difference in principle. Where I disagree with him is that I don’t think you should be able to appropriate other people’s work.

        2. 3

          “The benefits of free software are that it allows users their important natural freedoms to use, modify and redistribute software, and to use, modify and redistributed modified copies of the software.”

          It really doesn’t if opponents of freedom can rewrite copyright law with the money they make or sue FOSS users over patents. People supporting what’s in this quote have a lot of work to do. They’ll need a lot of money to do it. Yet, most money on FOSS is made by the companies working against the statement above. Therefore, we need new models.

          “because it’s an enormously complicated system “

          It really isn’t. It’s the same, exact things in OSS with two parts changed. One, a user needs a license if commercial. Two, redistribution of source changes is between licensed users. That license can be free and irrevocable for 99% of the users. So, for 99% of users, they can freely use, modify, and redistribute the software. They could even try to compete with the company in feature development if they want. That’s so risky for the company that I have ideas for restricting it like no backports of version N+1 features to N if a company wanted to reduce that risk. My basic model, though, effectively lets people compete with shared-source software just like new FOSS companies can do.

          “Similarly, commercial use of software might be uncomfortable to some people, but it is really important! “

          Are you even replying to my post in this paragraph? The License Zero approach allows people to make money off the software if they pay the software provider. As in, if you make money off it, I get a chance to make money off it. All this value you’re describing can still happen. It just won’t be purely people on demand side freeloading off people on the supply side while building riches on the demand side. This isn’t theory either: wealth-building and hoarding shifted to users is the actual result of FOSS licenses getting wide-spread use.

          “What does it even mean to say ‘license cost scales up with use and/or revenue of company’? I”

          There’s a lot of ways a company can do this part. Most don’t do it by revenue. More common are number of cores, VM, users, team size if collaborative, and so on. Just another administrative item in a business that probably has many of them. Companies really worried about such things can buy one of those license, management solutions that keep track of all that for them. There’s already a decent-sized market doing that. The new licenses just get added to the list. If anything, they’re simpler than the previous proprietary licenses since less stuff can go wrong.

          “What does it even mean to say that it goes permissive if you stop supporting it?”

          This is the one part that’s complex. It’s not even really necessary if we’re already saying it’s a highly-utilitarian, but proprietary, license. It’s about protecting the community. There is a risk that companies get to the point they want to keep charging for it without maintaining it. The kind of people that might contribute to stuff with source available will likely find that parasitic. So, some of us experimenting with license ideas are adding ways to transition these shared-source licenses to open source.

          The simplest one is an expiration. An example is it’s paid, shared source until 10 years passes. Then, it goes Apache or GPL or something. Thats unfair to the business or developers in many cases where the product needs to continually improve in a way that costs labor. So, I considered identifying when that point passed. Unfortunately, companies have a long history of making tiny chanes or uses with no significance to just… technically… be doing enough work to keep the copyright. My recent experiment was to let a 3rd party assess if they need to give it up in event of such disputes between supplier and community. That 3rd party will also be a OSS/FOSS-promoting organization so the bias will be in favor of FOSS instead of against it. A fair one so they won’t rule against a company actually investing in the work just for ideology. In this scenario, there’s more risk on the company’s profits than the users’ freedoms.

          “That just punishes the smallest businesses. That’s not fair.”

          I already said it’s free without support for smallest businesses or with low-cost support. That’s not fair to developers, but I’m aiming for increased public benefit. Besides, I again don’t understand your concept of what’s “fair” to small businesses who are, in a capitalist system by default, for-profit organizations maximizing what they get from people and minimizing what benefit they give. We should be “fair” by making developers work for free to maximize the owners’ profits so they can buy a luxury car or something? I don’t think so.

          So, I’m ignoring precise version of fairness to focus on public benefit while taking care of developers supporing that public beneift. Small businesses, bootstrapped and startups, are both important for innovation and job creation. I’d rather help them than financially penalize them. So, my license proposal makes it free for commercial use under certain amount, number of users, etc.

          “I have absolutely no idea what you fifth point means.”

          A lot of these discussions involve companies that support open-source software which are adopting paid licenses. In QNX’s case, they did open-source initiative, community helped build it into something desktop-worthy, and then they closed it back up. There should be massive fines for something like that. There’s basically a bunch of bad behavior that stems from company’s incentives or future outcomes (i.e. acquisition or IPO). FOSS folks saw the license as the root problem, but it was incentives. I think we should fix them additionally because it makes no sense to expect for-profit, VC-funded companies to be good stewards of FOSS projects.

          Unlike people in FOSS, folks in other industries and lots of communities out here in the US have addressed the problem directly. Coops are all over rural America. Credit unions fixed some problems with banks. Nonprofits, foundations, and recently, public-benefit companies, can be chartered to do and not do certain things with penalties for the organization, the executives, and so on. FOSS promoters tell us to use copyright, a legal tool, to help protect freedom since it works for certain problems. I’m simply using more legal tools at an organizational level to protect them even more. And if combined with paid, shared source, it can theoretically provide most of the benefits of software freedom to most people while still generating revenue to improve product and fight legal battles over software freedom.

          “What if I don’t want to fund your idea of what free software needs politically? What if most people don’t? What if I’m not an American and just don’t care about your legal system and its woes at all?”

          Didn’t New Zealand ban software patents? That’s a perfect example of the legal battles we have to fight for protecting software freedom. If that didn’t happen, you could be sued for using a Linux desktop, server, or phone if anything in it was patented. I don’t think OSS advocates want to be sued for the very things they’re contributing to. Yet, they can be if they don’t fight political battle necessary to ensure the benefits they claim these licenses give, like using the software, are actually possible in their legal system.

          So, in America, they say the BSD license says you can do whatever you want with software. That’s a lie: patent and trademark law say otherwise. If they want to achieve that goal, they need to remove or have safe workarounds for its obstacles. That requires politics.

          “If they’re not making enough money from it, that’s their own incompetent fault,”

          Exactly. So, they should just try something new like a proprietary product, leave the OSS/FOSS to the community that you believe is always most central to OSS/FOSS development, the community will automatically fork those projects, and they will be better via community contributions than the proprietary product with much more use. And they won’t write negative articles or whine about what the company is doing with company resources if that’s the company’s problem as you describe.

          Yet, they keep talking like the company has a duty to a free thing when their own license says the company has no duty to it past what’s in the license. My licenses could force company to have some minimal level of responsibility. Some in past and present even warrantied their code at specific defects rates and/or over specific periods of time. That’s just a quick example on fixing bugs side.

          “An analogy would be someone talking about the fundamental human right to life,”

          There’s no fundamental right to life: only death with the 100% death rate being solid proof of that. Most humans have a man-made believe in valuing human life that leads us to protect and extend it. The solution was and is constant political and financial investment into laws, regulations, private goods, and charitable activity protecting it. That’s exactly what I’m doing with software. You’re saying we need to stop at one law or type of law with only what charity people have been willing to give. And then the charitable people should keep telling the greedy or murderous people to stop being greedy or murderous without legally or economically forcing them to. And somehow that will actually work. That would’ve been ridiculous solution to protecting human life but some folks think it works with software freedom.

        3. 7

          It seems weird to group bcantrill with “FOSS advocates”; he was one of the big Solaris guys, after all. :)

          It seems you’re responding to the moral argument of FOSS advocacy with an economic argument. Your argument seems sensible and well-justified, but I imagine it won’t get much traction among people who joined the FOSS community for moral rather than economic reasons. People have been thumbing their nose at economic considerations since Gates’ Open Letter to Hobbyists, and they’ve done OK so far.

          1. 2

            “It seems weird to group bcantrill with “FOSS advocates”; he was one of the big Solaris guys, after all. :)”

            Maybe I made a bad assumption based on his involvement in illumos and what’s in the post. I could very well be wrong.

            “It seems you’re responding to the moral argument of FOSS advocacy with an economic argument.”

            I’m doing a moral argument. I’m saying they’re using laws to protect their morals. Laws take money to create and protect these days. So, their morals need money backing them. That changes the dynamics of the game in a way that leads me to do licensing and community work with good economics to support the good morals. There’s precedent in things like coops and foundations that sell stuff.

            I agree they might oppose anything money-related. In that case, I have to call them out for not actually protecting freedom at all: just an arbitrary ideology they like while opponents of freedom continue work on taking ours using methods that work.

        4. 4

          I agree that the naming of the non-open-source licenses is confusing, e.g. “commons clause” is not a great name.

          However, I wonder if there is in fact a fundamental difference between some kinds of reuse and others (thinking aloud here).

          If I want to use Debian to power my corporate desktops, that’s one thing. Or if I want run Debian on cloud machines that provide a Redis service.

          But if I actually expose the Redis API and protocol through a service to customers, and charge them for it, can that be considered another form of reuse that requires licensing?

          This is in contrast to running Redis as a backend for say a for-profit Twitter clone.

          Using Debian, the analogy would be providing a remote-desktop-as-a-service using Debian, as opposed to merely using Debian in a cloud service.

          Although, I may have missed it – why not make Redis AGPL? That would prevent proprietary forks, as I understand it. But they want something even stronger than that? They don’t want just a level playing field, but an advantage?

          I suppose I can understand that when you are faced with big cloud providers with tons of locked-in customers.

          I’m surprised that Cantrill isn’t more sympathetic to the business model problems and the lock-in effects of big cloud providers. He seems to take a pretty hard line that the “community” comes first. But what if there’s no real community? Is there a community around CockroachDB? It seems to be mainly for for-profit companies to run cloud services.

          In other words I think there could be another name for software where you have rights to view, modify, and distribute the source, but not to directly sell it as a service.

          He is saying that nobody is ever going to license this software – they will just reimplement it or use something else. But I think that is besides the point, which is that there are customers who WOULD pay for a hosted version of Redis or CockroachDB.

          I guess where this falls down is that it only works for projects in which there have been essentially no external contributors. Although a few people may have contributed the lion’s share of the code, it’s not clear that you should reserve rights for author A’s company but not author B’s company, even author B only contributed 10 lines of code. It is hard to draw that line.

          (copy of my meandering HN comment)

          1. 8

            Although, I may have missed it – why not make Redis AGPL? That would prevent proprietary forks, as I understand it. But they want something even stronger than that? They don’t want just a level playing field, but an advantage?

            The AGPL prevents forks from differentiating themselves with “value add” features. If company X takes an AGPL’d webmail system and adds a cool filtering feature, X’s users can obtain the source to that feature and provide it to X’s competitor Y, so they can have the same feature.

            If an enterprise wants to build a system on top of Redis, the AGPL is often enough to scare the enterprise into paying for a licence. Building things on top might be considered an extra feature, and the enterprise doesn’t want to have to provide their core business software source to all their users.

            The problem that Redis et. al. are having is that Amazon is not building a system on top of Redis, and they’re not trying to add value by extending Redis with custom features, they’re adding value by providing deployment and management services. Lots of people pay Amazon to run Redis for them, but Amazon isn’t paying Redis anything, and there’s nothing Redis can do about it (well, except changing the licence).

            1. 9

              The problem

              Most would contend that it is not in fact a problem at all, but in fact the entire point.

              If Redis don’t want to use a free software license that’s entire up to them, and nobody is saying they shouldn’t. The issue people have is that they’re telling others that it’s because free software is broken or wrong (which it isn’t) and because they’re pretending that their license is open source or similar to open source (which it isn’t).

              1. 4

                The original problem that Redis et. al. are having is specifically that their business model isn’t working out: the carrot is not enticing enough, and the stick is not scary enough.

                Their reaction to that problem is to create new licenses, and now they have two problems, as you describe.

                1. 2

                  What does that even mean, though? Does not working out mean we will go out of business? Or does it mean we steered our investors wrong on our revenue targets?

          2. 4

            The moral argument for open source is dubious. If I write code with a license that forbids its use in land mines, am I immorally limiting the freedom of large defense corporations that want to build land mines disguised as children’s toys?

            1. 2

              That’s a really, clever example. I might use something like that. I think land mines are a good example by themselves since (a) even militaries mostly or entirely banned them and (b) they did kill lots of kids. A family member got to see a kid explode in Kosovo while playing on a hill with their friends. Still more mines they haven’t found. More kids will die or be dismembered later on. Due to indiscriminate nature, their manufacture and/or deployment should probably never happen again.

              So, it’s a good example of an exception that could be made in a license attempting to maximize good things that come with freedom. If one exception can be made, so could others.

              1. 5

                Folks who are using land mines are doing so even against massive international pressure. All kinds of international law, treaties, and even trade embargoes won’t stop these people, so the idea that software licensing would is pretty naive.

                1. 1

                  They aren’t in most countries that banned the use of land mines. Turns out making something illegal can reduce the number of people doing it. It also sometimes provides financial renumeration when the crime is proven in court. Despite lots of piracy, Microsoft was still making piles of money off Windows licensing from companies too chicken-shit to steal it. They also sucked billions out of Android market alone in patent royalties. Many examples where people paid for software instead of pirating it.

                  That same principle can support nonprofit or public-benefit companies supplying paid, shared-source software with user freedoms and protections built into legal agreements. They can also attempt copyright and patent suits against copycats or non-paying use in proprietary sector.

                  1. 2

                    States banning land mines is very different from an individual writing a software license saying “you may not use this software in landmines”.

                    Individuals who wish to write such licenses should probably also make sure to ban the use of their software in cluster bombs and in drones as well, although not in the good kind of civilian drones that are used to monitor landmine use and defuse them after a conflict. Oh and to make it clear that when they say “mines” they don’t mean mining operations, whatever the environmentalist lobby may be saying to them. And that sea mines are probably bad as well.

                    Actually let’s say “no military use”, and then hope that we still feel good about ourselves the next time a disaster relief or peacekeeping operation rolls around.

                    Software licenses are a good strategic location to apply pressure for for software freedom over the software that they cover. For other, vitally important, moral issues they are less good because they are not about the matter at hand.

                    1. 2

                      This all seems like a bad faith answer. I didn’t ask if you thought such a restriction would be effective or well thought out, I asked you to justify the claim that freedom to use software in making landmines was a moral imperative that outweighed the moral qualms of the software author.

                      1. 1

                        No offensive, military use sounds like a nice restriction. I prefer to keep with License Zero’s approach to focus on root issues. In that case, it’s probably that militaries will be murdering people and destroying property using the code. So, it cant be used to support activities that murder people or destroy property without owners’ consent. If that’s too much, they can always buy proprietary solutions from companies like Oracle with no concern for morals. Hell, they were even funded initially with CIA money. :)

                        “For other, vitally important, moral issues they are less good because they are not about the matter at hand.”

                        I disagree given the hybrid models would have or could have addressed some of those issues. The paid models sure as hell did for companies like Microsoft, IBM, and Oracle. We should always try to adapt proven practices to new situations or gain additional benefits. In this case, Im trying to use the paid model to generate revenue to do similar things while protecting freedoms most users or developers care about most. And with extra government and courtroom leverage, too.

                    2. 0

                      If you assume that licensing doesn’t make a difference, there is nothing to discuss because all licenses are equal to public domain. The starting point was to assume licensing can restrict or limit use.

                      1. 5

                        Please take the context into account when reading what I wrote. I was replying to a post that was talking about organizations that engage in gross human rights violations, not making a generally-applicable statement about civilized society.

                    3. 1

                      Once one exception is made, they all are (or at least the clamour for them will drown out everything else).

                      And, as I explain above, the law of unintended consequences only needs one exception to come crashing in.

                      1. 1

                        The law of unintended consequences already came crashing in with the stuff I described in main comment. The companies that profited off OSS are worth trillions. Some are using their wealth to fight software freedom. Others are reducing user freedom for hundreds of millions of people. Bravo to OSS/FOSS prior strategy.

                        Now, Im trying to address the root cause of that. Sure it can have unintended consequences. Will they be worse than what I just described? Probably not.

                    4. 1

                      You are, yes.

                      And free software for landmines would greatly help in removing them things after a war. So you’d also be immorally limiting the freedom of civilians who don’t want to be blown up by landmines.

                      1. 2

                        I wrote:

                        forbids its use in land mines,

                        How you got to preventing its use in landmine detection from that is something I can’t understand.

                    5. 3

                      The links OP provides gets us to https://sfosc.org/business-models/ which is a pretty nice summary.

                      I have wanted to be a solo FOSS dev for a long time, but I’ve never seen a clear path to getting both pay and decent health insurance for my family. The timezone / ntp maintainer story is always in the back of my head.