In search of a commercial open source license
I decided to make the source code for InstallPad available with the version 0.3 release. I did this because a lot of technical people are using it and want to add some technical features, features which normally wouldn’t get developed by me without their help.
Ideally I’d like to make InstallPad into a business, so that I’ll have the incentive to make it rock, and improve it at a quick rate. When you open source a product, typically you voluntarily give away many rights, including the right to restrict others from using and distributing it in a commercial setting.
So how can you make money from an open source product? Is it possible to make the source code for your product available, and still retain enough rights to build a profitable business?
I spent a ton of time researching these questions, and hopefully my research can save someone else some time. I’ll describe what I ended up doing for InstallPad.
Some say release the thing under a license like GPL or MIT, which gives away lots of your rights as an author. Instead of selling the software directly, try to make money with addon services, like installation, education or subscription-based support. Others say release it open source, but charge for changing the branding of the program.
I don’t know if these are viable routes for InstallPad, so I didn’t want to commit to them by releasing InstallPad under the MIT license.
Dual licensing
Some companies, like MySQL, use a dual license approach. They partition a market based on usage, and have different licenses for each market segment. Their strategy works like this:
- If you create an open source product on top of MySQL, then you can distribute an open source licensed version of MySQL with your product free of charge.
- If you’re making a commercial product and don’t want to open source your code, then you can still distribute MySQL with it, but you must pay for a commercially licensed MySQL. That way you’re not bound by the terms of the open source licensed copy of MySQL. You also get support and other stuff with commercial versions of MySQL.
Trolltech does something similar with the QT toolkit. These dual licensing models work great for MySQL and Trolltech because they have a hook — their products are designed to be distributed with your product. If you don’t actually distribute MySQL with your product, then you have no reason to ever worry about the commercial version.
InstallPad might one day be distributed with someone else’s product (like on all HP laptops or something), but again I don’t know if dual licensing by distribution is a viable business model.
In addition to differentiating on commercial redistribution, I also wanted to differentiate on commercial use — using InstallPad in a commercial setting.
So this is what I came up with: a dual license which differentiates between commercial use (not just commercial redistribution) and personal use. Personal use is defined like this: “Personal use means use not within your company, and specifically excludes the right to distribute the software inside or outside of your company.”
With this license, if you want to use InstallPad on your own machines, or those of your family, you can do so. If you want to use InstallPad in your company or institution, there’s a commercial license available for purchase that lets you do that.
This way 99% of the people who use InstallPad can do it for free, and it fulfills the original goal of making the source available: if users feel InstallPad is missing something, they can download the source code and add a feature to their copy (and optionally submit it to be integrated into the main InstallPad distribution) without having to wait for me to do it.
Note that licenses like this are more restrictive than the popular open source licenses, and thus are not compatible with them. InstallPad is not “open source” by the terms of the Open Source Definition, and so it’s not an “OSI approved license.”
When writing licenses you generally want to just use something someone else has written (and has had a lawyer review), so you don’t have to do that work yourself. Strangely, I couldn’t find anything out there for this specific personal/commercial open source differentiation.
The closest thing I found was the Microsoft shared source licenses; the InstallPad license is closely based off of the most restrictive of these licenses. The InstallPad license is available here, and like the Microsoft shared source licenses, it’s refreshingly easy to read.
I’ve done a lot of licensing research, and I’m no laywer (don’t take any of this as legal advice!), but I think this is a reasonable mix of the advantages of both proprietary and open source software, and works out well for the users of InstallPad and its authors. I don’t know the best way for InstallPad to make money in the future (or if it will become fully open source), but with this license at least, all options are open.
I passed by your blog googling for Commercial Open Source, since my own blog is about this.
I would suggest you to sort out why you want to release it as open source or sort of, what are you aiming at, and then eventually pick up an OS license.
Would you like others join your project? Wondering to use an OS license to marketing your product? Which is your business model today?
I know, posing questions it’s easy, but it might helpful to choose.
Said by Roberto Galoppini January 6, 2007 at about 6:22 am
Hey Roberto
Good resource (your blog). I’ll have a look through it.
The reason I want the source to be open is the reason most software is open — people want to contribute to it. Many hands means more code and more features, and having a community around your software rocks.
The business model right now is to charge for commercial usage or redistribution. I don’t know if that’s the best model, but as I said in the post, the license I have now allows me to transition to tons of other business models (including one which uses a “true” OS license).
Said by philc January 6, 2007 at about 1:38 pm
[…] EPISODE1 - Phil Crosby, InstallPad We talk with Phil Crosby of InstallPad. What is InstallPad, what’s coming in 0.5, why he used the InstallPad license instead of an OSI-approved one (see his post at http://eightpence.com/in-search-of-a-commercial-open-source-license), about money matters, how you can help, and why it’s better than AppSnap. […]
Pingback by EPISODE1 - Phil Crosby, InstallPad « Techerview January 6, 2007 at about 2:48 pm
Have a look at Simon’s Phipps essay on OS licenses, it might be helpful to you.
Feel free to contact me through skype, bye for now.
Said by Roberto Galoppini January 8, 2007 at about 3:46 am
[…] The source is now open, and there have already been some significant contributions. The license is an interesting one which took me some time to find/make; Read more about it. […]
Pingback by InstallPad 0.4 » eightpence - Phil Crosby January 8, 2007 at about 12:40 pm
You really really should consider a Creative Commons license cf.
http://creativecommons.org/licenses/by-nc-nd/2.5/
Martin
Said by Martin January 13, 2007 at about 6:29 pm
Martin:
I would love to use one of the Creative Commons licenses. However, they specifically advise using their licenses for software, I guess because they don’t make treat distinctions like object vs. source code.
http://wiki.creativecommons.org/FAQ#Can_I_use_a_Creative_Commons_license_for_software.3F
Said by philc January 13, 2007 at about 6:49 pm