Hi all,

I am interested in hearing some genuine feedback on a new license that I
was in a position to need and have therefore drafted.

It is specifically for a "functional specification", which individual
implementers might implement separately in their own environments or
software stacks, but which (unlike, say, a network protocol) are not going
to directly interface with other implementations. And to be usable for free
software, naturally (although not requiring every implementer to swear to
any particular software licensing ethos).

By way of background, I did a thorough search of other licensing options
before heading down the path of making a bespoke one and, although I see a
lot of commonality in the licenses used on specifications and standards
like IS/IETF or W3C publications, the actual licenses employed there are
specific to those works and to e.g. the W3C itself and, as a result, not
reusable.

Conversely, I think it is evident on even a cursory evaluation that a
boilerplate "document license" like the GFDL or the crop of CC licenses do
not fit several of the specific requirements for a specification license
that software will have to implement. Nor, of course, do software licenses.
I don't want to head into an endless tangent on those points, but if you're
interested in the reasons I enumerated during that survey, please do feel
free to email me privately (or perhaps fork the thread?). I also did a
session in the legal & policy devroom at FOSDEM 2023 about this project; I
can dig up a link to the video I'm sure.

The point is, though, that when exploring it there were a few needs that
stuck out as being peculiar to an "independent functional spec" use case.
The big ones were:

- Implementations need to be able to quote from the spec, even sometimes in
big chunks, in comments and such, but still not be roped in as derivative
works
- Code snippets like algorithms, regular expression sets, and even variable
or structure names need to be freely reusable, but not rope the
implementation in as a derivative work
- Translations should be permitted but must be designated as unofficial
(due to the fact that translating human language is always ambiguous)

And those factors would need to interact predictably with a specification
document that is free to read, implement, and share ... but the
specification should not be forked or modified (since that would defeat the
purpose: interoperability).

All that preamble now out of the way, the actual draft license in question
is accessible here:
https://github.com/n8willis/opentype-shaping-documents/blob/license/LICENSE.md

You'll note that it is in a WIP draft and not yet committed. I believe it
is readable at that URL even if you don't use JavaScript etc, but let me
know.

I don't mind going into further details about the preceding project that
has spawned this license scenario, but that could get pretty tangential. It
was work that I was hired to do back in 2018 (and have updated periodically
since then), to do with how font shaping works. Basically, the gap between
the Unicode and Opentype specs, and which HarfBuzz implements. So most of
the writing work was tracing & understanding HarfBuzz's logic and
translating that into documentary form. The company that hired me to do
that then used the doc to develop their own free-software shaping engine.

I would be most interested in anyone's analysis about the license and how
it would interact with other free-software elements in the ecosystem at
large, as well as whether they think it reads clearly, says what it intends
to, and is reasonable.

It might be a bridge too far to ask whether it sounds like something that
another standards/specification effort could use, but I did try to be
general when writing it, in the hopes of it being useful in the future (and
applying it to another effort as a thought experiment might prove
informative....).

But any reaction or feedback at all would be welcome (although "you
shouldn't write a license / you must have done your research wrong" is not
likely to make it high on the list of comments that warrant a reply.... I
also found it surprising that there were not good off-the-shelf options,
but here we are).

Thanks,
Nate

PS - I also know that the functional-spec case is not universal; other
standards might care a LOT about interoperability, but it wasn't in scope
here and adds, potentially, a lot of machinery, from compliance to testing
to certification, and that was neither required nor doable, so not
desirable.
-- 
nathan.p.willis
nwil...@glyphography.com <http://identi.ca/n8>

Reply via email to