Polyform Licenses
polyformproject.org
polyformproject.org
They are making enough license sales for both of them to be fully self-employed working on EPPlus.
> Use of the software for the internal business operations of you and your company is use for a permitted purpose.
But that's all it says about what it means. Is that really enough? IANAL, but surely that leaves plenty of room for someone who is to argue that their use was 'internal'.
I was expecting paragraphs drawing a line between (external) 'users' and internal business operations, can I use it to crunch user data? Only if not done in a client? Only if a 'one-off' analytical operation not built into my product?
Simple familiarity explains a lot of why "noncommercial" full stop irks more than "internal business" full stop. But I'm not sure fleshing out "internal business" in the PolyForm Internal Use license would work any practical improvement, either.
Historically, the perceived vagueness of "noncommercial" prevented adoption by a lot of institutions, even academic institutions, who are mostly noncommercial but occasionally do commercial or arguably commercial things. To avoid that holdup, PolyForm's Noncommercial form fleshes "noncommercial" out, not by defining "noncommercial", but by green-lighting a list of specific kinds of institutions. I don't think the Internal Use license has the same institutional-acceptance problem.
I'm affiliated with PolyForm, but don't speak for it here.
All of the 1.0.0 PolyForm licenses are built from a common template. A lot of the language is completely common across forms. Diffs are fairly clean.
At the same time, we're starting to hear that some of the mechanisms for that modularity, like the concept of "permitted purpose", make reading individual licenses harder than could be. If/when we get around to 2.0.0s, I expect we'll probably individualize the terms more.
If you're interested in modularity for building licenses that haven't been implemented yet, I'll plug a project of mine: https://github.com/berneout/normally-open-closed These are essentially templates with blank spots for what you are or are not allowing.
The standardization-customization trade-off applies as usual. The point is to help people who actually need new license terms to focus on the terms that are actually new, rather than the legal rigging. Think "license framework" or "license starter".
By the by, I'm affiliated with PolyForm, but don't speak for the org as a whole here. Diversity of views and opinions is one of our strengths, though it has slowed us down from time to time.
Instead of 6 or so fully-fleshed-out licenses for 6 unique purposes, you'd instead have a selection of "terms" or whatever that each add a limitation or a grant to the license.
I'd be able to check something like "limited liability", "free to use", "free to modify" but perhaps leave "used commercially" and "must re-contribute modifications" unchecked.
The generated result would be a license in a similar format to what PolyForm does now (which I really like, by the way) but with the customized terms.
You could then retrofit the existing v1 contracts into the new system as presets.
[1] https://github.com/UniversalDataTool/universal-data-tool
As for dual licensing, I've collected some resources here: https://indieopensource.com/public-private/indies
But I'm not sure if that means like usual 'dual licensing' (pick your licence) or a conjunction of their terms, so that any pair is more restrictive than its parts.
I think it would be good to have a list of checkboxes to make your own custom license (e.g. your own definition of small business).
Folks involved in drafting certainly thought about multi-licensing. That said, neither I nor PolyForm Project have fully vetted all combinations. The easy "out" is "talk to a lawyer", to make sure you avoid any footguns. But I not so secretly hope the licenses are easy enough to read, without legal help, for diligent folks to work through implications themselves.