Harrison Ainsworth, who is always interesting on software matters, has a recent note arguing permissive software licenses are unethical. I disagree. Such software is a non-toxic gift, like free cake.
All open source licenses allow access to source code and some kind of copying and modification. Permissive licenses, such as the MIT license, have no restrictions. You may copy, alter and share the source code and anything built with it as you please, including making other things that are not shared back to the community. This is in contrast to “copyleft” licenses like the GNU Public License (GPL). If GPL code is changed, is built into other things, that code must also be released.
There might be times when a gift is unethical. Giving someone an animal they can’t look after is unfair to the animal. Giving something leaking toxic chemicals could hurt people. Some gifts create an obligation of work.
Open source software doesn’t seem to be in any of these categories. People may adapt and contribute back if they wish – or choose not to use it at all. With a permissive license, people not in a position to contribute back today can still use the tool, and perhaps be able to contribute back tomorrow. Many developers working for conservative corporations or governments were and are in that position.
The exception would be open source code embedding adware and trojans, like Clipgrab (which claims to be GPL but took down its open repository years ago), or malicious NPM packages, or cryptominer embeds. These are all the equivalent of gifting your sister a nice bucket of plutonium slurry for her birthday. But this is not most open source software, and it’s not what Ainsworth has in mind.
Ainsworth says the permissive license boils down to “I should share, but others should not.” But it’s really “I should share, but those who cannot need not”. I’m sure this basic argument is already known to Ainsworth, and so his primary point is about consequences: permissive licenses create an ecosystem of freeloading corporations. But the alternative, if everyone were a GPL purist, is likely not a world of free GPL software; it’s a world of worse software, with less good tools available, and corporations and other rich bad actors continuing to skive anyway. The corporations that contribute back to open source are mostly more technically sophisticated ones; the ones who understand software development dynamics, though a Google or Facebook may mix the two together and often skirt the freeloading line.
Python is an interesting test case for permissive licenses. Would Python be as dominant in data science today if it hadn’t been given away, with no license headaches? I doubt it would, or that data science would really exist in its current productive form at all. This continued to foster openness in the rest of the Python ecosystem. Likewise for maven, the Apache webserver, and so on. It is good that the GPL and open licenses exist. The famous GPL ratchet, that forces openness on software using GPL libraries, is a good thing. The two work together to some degree, permissive licenses softening a reuse culture up, copyleft forcing it open. There was, and still is, a problem of basic literacy for open source values in many companies. This way we did not all need to hold our breath waiting for them to learn.
Is it unethical to take free gifts, over and again, make money off the use of it, and never give back? Sure, and that freeloading should socially embarrassing and bad for business. For software and content developers: it’s your gift to the world. Leave the strings unattached if you want.