I was recently contacted with an offer to fund the porting of some of my code. I think the assumption was that I was still releasing under a permissive license (MIT). That got me thinking about sponsored relicensing, the idea of being paid to relicense code under less restrictive terms.
What appeals to me now is the idea of relicensing a version of software when the costs of developing and maintaining that version have been met.
The model would look something like this:
- The initial software is developed, and the developers keep a tally of their development costs (e.g. time spent multiplied by an hourly or daily rate).
- The software is released under a restrictive public license (e.g. non-commercial).
- The developers sell exceptions to the restrictive license via a private license (e.g. commercial license). Those who want to use the software under a permissive license can collectively sponsor relicensing by buying private licenses.
- When the total sales revenue reaches the cumulative development cost of a version of the software, that version is relicensed under a permissive license.
- The developers make improvements to the restrictively licensed software. This can happen regardless of whether a relicensing event has occurred. As with 0., track development costs for the new version.
- GOTO 1.
Time spent on unpaid support, and any other maintenance costs, would need to be factored into the total cost of a version of the software.
It might make sense to have clear branding separation between the commercial/non-commercial and permissive versions. Perhaps different code namespaces too. For example, ProductPro and OpenProduct.
I’m hoping that this would result in a win-win situation. Each version of the software could eventually be released under an OSI-approved “open source” license, but only after the developers have been paid what they consider to be a fair rate.
I can’t remember the details of License Zero’s versioning and relicensing, so I’m not sure whether this model would have been compatible.
Other related models that come to mind are Sponsorware, and the Business Source License.
Does anyone have examples of people using this kind of iterative relicensing model?
One potential downside would be, if it’s the kind of software that doesn’t need much on-going development, then this model could result in lower long-term revenue. That doesn’t bother me, personally.
Are there any other obvious disadvantages?