Systemic Improvements to License Preambles
May 20, 2022•221 words
Open source is deeply reliant on blurbs in files or directories.
For example, the GPL how-to:
This involves adding two elements to each source file of your program: a copyright notice (such as “Copyright 1999 Terry Jones”), and a statement of copying permission, saying that the program is distributed under the terms of the GNU General Public License (or the Lesser GPL, or the Affero GPL).
There are obvious systemic problems:
Free text is hostile to machine processing. Programs to analyze this text are notoriously inaccurate. Human vetting is built in to the process.
Lack of clarity in how to handle edge cases. If you fork a library, is the statement "Copyright 1999 Them" or "Copyright 1999 You"?
Ambiguity over whether to use "C", "c.", "copyright", (c), ©
English only
These items are only the trivial ones that jumped out right away. Improvements are needed and possible.
Some ideas:
Program-friendly markup. JSON, for example.
Unambiguous syntax amenable to schema validation.
Detailed semantics with thorough documentation
Move most of this information to an external document on the web. The blurb would be something like\
# {'license-on-this-file':'http://example.com/'}
A question to you, the reader: do you know of innovations in this space? Are there ongoing efforts to work on these issues?
Followup post: https://writing.gonze.com/p/RXO8yEjLzr