June 26, 2018
Refining better licenses, better tools
As promised, I’ve just pushed a major update to licensezero.com. There are new Licenses, a new CLI, and an updated guide.
Overall, I feel more confident in License Zero after these changes that at any time before. The system is beginning to refine, rather than rework, with outside input. That’s a direct result of the amount and quality of outside feedback and enthusiasm. It’s been incredible.
The License Zero Reciprocal, Noncommercial , and Permissive Public Licenses have been replaced with:
The Parity Public License, an evolution of L0-R that’s stronger, cleaner, and easier to read. Big thanks to those who’ve sent feedback, publicly and privately!
The Prosperity Public License, an evolution of L0-NC. The major difference is that, like Parity, Prosperity includes automatic forgiveness for unknowing violations of the commercial trial period.
The Charity Public License, an evolution of L0-P, benefiting from all the great feedback on Parity.
The main catalyst for this work was yet another flare-up on the Open Source Initiative’s license-review mailing list, where I proposed L0-R for review. Fundamentally, the new work signifies a break with the OSI process. I gave myself permission to refine the licenses as best I know how, without the constraints of the OSI process, substantively and in terms of revision control. If there was one thing license-review participants agreed on, it was that tracking an evolving license text via the list proved very hard to do.
The new licenses required a few conforming changes in other terms, like form private license and waiver. I also made small changes to the agency terms, to make clear that licensezero.com may stop supporting old public licenses for future projects.
I’ve completed a port of the command line interface for buying and selling licenses, previously written in Node.js, to Go. There are a few very good implications:
The Go client compiles to self-contained binary executables for many platforms and architectures, making installation far easier for developers without Node.js and npm installed.
I took the opportunity to clean up the interface, making it much more consistent.
Support for Apache Maven, which serves Java and numerous other languages on the JVM, is next on the roadmap. If you’re familiar with Maven, I’d greatly appreciate some help with specific questions on how to work within the community’s conventions..
I’ve updated The License Zero Developer’s Guide to reflect what’s new.
The Guide remains the documentation on License Zero and how to use it, both to sell and to buy licenses.