berneout / big-time-license

a public LICENSE that makes software free for noncommercial and small-business use, with a guarantee that fair commercial terms will be available for everyone else
https://bigtimelicense.com
Other
49 stars 2 forks source link

First sale problem #20

Closed namandixit closed 2 years ago

namandixit commented 2 years ago

In the "Fair, Reasonable, and Nondiscriminatory Terms" section:

If the licensor advertises license terms and a pricing structure for generally available commercial licenses, the licensor proposes license terms and a price as advertised, and a customer not affiliated with the licensor has bought a commercial commercial license for the software on substantially equivalent terms in the past year, the proposal is fair, reasonable, and nondiscriminatory.

Should this and be and/or? Otherwise, it creates a situation where documented price proposal (stated well in advance) may be considered unfair by a malicious licensee, if this is the first sale being made by the licensor.

kemitchell commented 2 years ago

@namandixit thanks very much for this issue!

The and is indeed intentional. The idea is to prevent a licensor from posting unreasonable pricing or terms that nobody would agree to, except perhaps a company that adopted the software as a qualifying small business, became dependent on its use, and then grew.

I am very interested in licenses with commitments to stick to advertised pricing. The Fair Source License was one of those, for example.

But the crux of Big Time is FRAND---fair, reasonable, and nondiscriminatory. Advertised pricing and terms are only useful where they can help tell us what is FRAND.

namandixit commented 2 years ago

No, I understand that. My question is: what if the potential pricing/terms were available when the licensee first started using the software, similar to how a lot of proprietary software (1, 2, and even open source) do it. I feel that if the fixed price is made available transparently a priory when the licensee first becomes aware of the software, then that price must be considered fair, since it did not balk the licensee.

However, due to the and, the licensee may see this future price, accept it, start using the software for free, and – when the time finally comes to pay up – declare the price unfair (even if it was available for all to see in plain sight from the beginning). And since this is the first sale, and thus no precedent has been set, the license will allow this sort of U-turn.

Is this concern unjustified?

kemitchell commented 2 years ago

I think we understand each other. You would prefer an "as-advertised" commercial licensing commitment. But Big Time was designed and drafted with a FRAND commercial licensing commitment.

I'm interested in as-advertised commitments, too. But that is not what Big Time aims to be.

namandixit commented 2 years ago

In that case, would it be possible to add some clarification/references as to what attributes should be used under FRAND to determine the price of first sale, so as to not trigger the perpetual license due to seemingly unfairness of the deal?

Currently, from what I can see, it is impossible for non-lawyers to judge what price could we set that would not run afoul of our own license, leading to the license working against us. If one fears that this license would allow any party to use the software for free in perpetuity anyway by claiming unfairness in some obtuse legal fashion, then this license is no different than MIT for all practical purposes.

kemitchell commented 2 years ago

FRAND doesn't prescribe specific terms or pricing. And it doesn't have to.

https://en.wikipedia.org/wiki/Reasonable_and_non-discriminatory_licensing

Big companies already rely on FRAND language to make sure they can get deals for patents covering technical standards. In practice, the language acts like a slightly stronger refinement of "negotiate in good faith".

Fundamentally, it's about making sure that licensors don't exploit the dependence they've created by volunteering their work in negotiating commercial license terms. In the standard-setting context, that happens when patents get written in such a way that implementers depend on being able to get patent licenses. With Big Time, that happens when adoption for small business, taking contributions, and so on puts people in a position of needing licenses for software they've come to depend on being available.

We do occasionally see lawsuits about what FRAND means. Some of the language of Big Time helps to head off interpretation questions that could make that necessary:

Fair, reasonable, and nondiscriminatory terms may license the software perpetually or for a term, and may or may not cover new versions of the software.

namandixit commented 2 years ago

This still seems hopelessly vague to me, certainly due to a lack of legal eduction on my side. Nevertheless, I probably will not be using this license. However, I appreciate you trying to solve these thorny issues, and I wish you best of luck.

kemitchell commented 2 years ago

@namandixit there's nothing here that's beyond you! It's just not familiar. And the confusion you're felling is very common for coders reading license terms. If you read legal terms like pseudocode, it's going to seem very imprecise.

If we think about the terms of the license as specifying the terms and pricing for commercial licenses, it's obviously too vague. But that's not actually what we want, in part because it's probably impossible. We don't have a Universal Theory of Fair Enterprise Software Pricing to offer that covers all the kinds of software Big Time might license and all the big companies who might want to license it. We need to speak more generally. If you read that general language expecting specificity, it will seem vague.

What we actually want Big Time to do is threefold:

  1. encourage negotiation of paid license terms for big companies
  2. set expectations for how sellers will handle that process
  3. introduce accountability for sellers who flaunt those expectations

Part of that is a commitment that the seller will negotiate paid terms. Under Big Time, if a big company reaches out and the seller simply doesn't respond, the company can use the software.

The other part is setting a kind of code of conduct for paid license negotiations. If a big company reaches out and the seller responds, but the seller tries to gouge the company, and the company can't just stop using the software immediately, the company has a legal argument, based on the Big Time License's text, that their use is licensed. The seller won't have an open-and-shut legal case against the company for violating the terms of their license.

The state of the art, legally speaking, for licensing negotiation "codes of conduct" is FRAND. The FRAND concept developed---and is still developing---in the context of standards setting. In the standards context, the risk is that a standard will require a patent. Companies implementing the standard rely on their being able to get patent licenses without being gouged. For Big Time, the risk is that a small company will start using and then become a big company. Those adopters rely on their being able to get software licenses without being gouged.

namandixit commented 2 years ago

Let's say I am writing a commercial programming language. Most compilers are open-source and free, so is the fair price for my compiler $0? Vendors such as Embarcadero and Lispworks sell their compilers for thousands of dollars per year per seat; is that humongous price point fair? Something in between? How do I prove to the first buyer that this is a fair price (because if I can't, they'll get to use it for free in perpetuity)? I know how to prove to the second buyer (by referencing the sale made to the first buyer), but how do I prove to the first one?

The only way I could think out of this conundrum was to explicitly state the offered price-point up-front, to set the correct expectation of what is considered a fair price, and that would – as far as I can tell – require changing the and to and/or. However, as you have explained, that is not what this licence is supposed to do. Thus, the fundamental problem is unresolved. Again, there is a good chance that I am just missing something blatantly obvious; however, I can't seem to find it.

EDIT: When I say "state the offered price-point up-front", I mean make it clear the first time a user even interacts with the software (by putting it in the README, showing it prominently on the website, making the user accept the offered prices that they might have to pay in the future, etc.). The idea is to prove that the price was known well in advance, that the buyer knew what the price was gong to be, and thus, they can not claim the price to be unfair. Because otherwise, I just do not see how to prove the price of first sale fair.

kemitchell commented 2 years ago

Providing a price is a very strange thing to talk about doing. When it comes to first customers, I'd expect you'd negotiate a price. Either you offer a price and someone agrees to pay it, or you have a two-way conversation about they would be willing to pay.

namandixit commented 2 years ago

In my experience, not providing prices up front ("Call to get a quote") is far more of a red-flag, for any number of reasons (e.g., language barriers, added friction around sales and updates, revealing confidential projects, etc.). As I said, I lack any legal education or experience; I can believe that lawyers and salespeople might prefer sitting down and negotiating in person, but I suspect a lot of developers would rather put up a static price for big businesses and a payment method, and not have to worry about it any further.

EDIT: And this is not a unusual practice either, I already posted a few examples of this above.

kemitchell commented 2 years ago

"Call us" is the norm for large sales, especially to large companies. And for good reason. Those deals can take months to close. The procurement departments of the customers often bring along a lot of additional requirements, and may even insist on starting from their own legal terms. Whether in negotiation or during the relationship, once it's sold, those customers take more resources, and therefore get charged more.

namandixit commented 2 years ago

In that case, perhaps the README should mention that this license is focused for large-scale enterprise deals, and not for small B2B or Developer-to-Developer kinds of sales. Not everyone will have the bandwidth to dedicate effort and time to multi-month negotiations, especially small developers who will be most in need of an off-the-shelf license due to lack of funds to hire a personal lawyer.

In any case, since it doesn't seem that this license is designed for my use case, there not much point in beating this dead horse. I have subscribed to your blog's RSS, in case you release a license more to my liking in the future. Have a good day, and thanks for engaging in this conversation.

kemitchell commented 2 years ago

Big Time isn't meant just for enterprise-targeted products. It's perfectly possible to specify pricing for smaller deals, with a "call us" catch-all for deals above some threshold. Which is exactly what many, many companies do.