On the final day of LinuxCon Europe 2015, HP's Chief Technology
Officer Martin Fink delivered a bold keynote about software
licensing. Fink recapped the negative effects of license
proliferation and addressed projects that use their choice of license
as hostile act against the competition. He then ended the session
with an extended appeal to move the open-source software industry away
from permissive licenses like Apache 2.0 and toward copyleft licenses
like the GPL. Not doing so, he said, puts the FOSS community at just
as much risk of collapse as license proliferation threatened to in
years past.
Fink started out by addressing HP's just-announced launch of the
OpenSwitch project, a new
"network operating system." HP is doing the project because it
believes open source has "won"—at least in general—but
that there are a few isolated hold-outs, including high-end network
operations. OpenSwitch code is released under the Apache 2.0 license,
he said, because the other partner companies viewed that as a
requirement. That was a decision that he promised to return to in a few minutes.
Looking back to 20 years ago, though, Linus Torvalds chose to release the
kernel under the GPL, rather than under a "permissive" license. That
was a really big deal, he said, in light of the many alternatives.
Fink asked the audience to guess, by a show of hands, how many "open source licenses"
they believed there are. The correct answer is about 70, he
said—depending on how one counts. One curse of the term "open
source" is that it can gloss over all of the critical complexities
involved, such as license details. But, he added, it was almost much worse.
The proliferation problem averted—mostly
License proliferation was so rampant ten years ago that Fink made a
public plea at Linux World 2005 for the Open Source Initiative (OSI) to stop
adding new licenses to its approved list.
The problem, of course, is that each additional license increases the
complexity of the ecosystem and, thus, creates a legal maze that makes it
hard to participate. "If I had been Steve Ballmer, trying to kill
Linux, I would have just encouraged people to make more licenses."
To its credit, Fink said, IBM responded to his call by stopping its
practice of crafting new licenses. But not everyone did, he added.
Oracle, in fact, is still creating new licenses: in 2014 it unveiled
the Universal Permissive License (UPL). But the UPL does nothing new,
Fink said. "If Oracle asks you to use it, tell them you will as soon
as they license their own stuff under it. You'll find that
conversation coming to a stop."
Another license used by Oracle, the Common Development and Distribution
License (CDDL) originally written by Sun, is intentionally incompatible with the GPL, Fink
said. So there are CDDL-licensed projects like ZFS
and DTrace that "are great, but they can't be used" by the community.
The GPL incompatibility of the license demonstrates that some people have a
residual fear of copyleft, he said, which is left over from the Steve
Ballmer days. "So now I'm trying to get people over that. Copyleft is a
simple, good thing: share and share alike." People who gravitate
toward "permissive" licenses do so because "it feels safe." But what
"safe" means in this case is that it allows them to go produce
proprietary software. "So, in a way, we're enabling the very
thing that we are trying to undo."
Permissiveness and community building
The Apache 2.0 license is currently the most widely used
"permissive" license. But the thing that developers overlook when
adopting it, he said, is that by using Apache they are also making a
choice about how much work they will have to put into building any
sort of community around the project. If you look at Apache-licensed
projects, he noted, "you'll find that they are very top-heavy with
'governance' structures." Technical committees, working groups,
and various boards, he said, are needed to make such projects
function. But if you look at copyleft projects, he added, you find
that those structures simply are not needed.
The difference stems from the fact that in Apache-licensed
projects, "you've always got people who are trying to go off and do
their own proprietary thing." That makes their contributions to the
open-source project difficult to integrate and often at odds with
other participants. In a copyleft project, such as the kernel, "there is no incentive to
try and carve out your own little area." As a result, contributors
just do their work and the project advances.
In the past few years, Fink said, the industry's default option has
swung toward permissive licenses. "I'm calling out that you should
change your default to a copyleft license like the GPL." Copyleft is
good, he added; copyleft is what enables community. Fink did not
distinguish between the different versions of the GPL in his comments;
presumably because they are both strong copyleft licenses. The audience
responded to the call for a copyleft default with a lengthy round of applause.
That brought his talk back to the OpenSwitch release. HP
wanted to get networking companies and hardware suppliers on board.
In order to get all of the legal departments at all of the partners to
sign on to the project, he said, HP was forced to go with a
permissive license. "But I hope that with some more education, people
will see the self-governing, overhead-avoiding nature of copyleft, and
we can get the pendulum to swing back to copyleft as the industry default."
Fink ended by making a charge directly to the audience. "Do
everything you can to avoid license proliferation. When someone
proposes a new license, resist it. If you need help, there are people
like Eben Moglen who will engage them directly to change their minds."
As for existing licenses, he had another charge to deliver. "All of
you are enabled to change things. You can take an Apache-licensed
project and go make a GPL version of it. Some of you will start new
projects. When you do that, start them with the GPL."
Fink's comments, no doubt, will draw some ire from people who reside on
the "permissive" side of the fence—either on the particulars of
Fink's assessment of the Apache license or on the directness with
which he encouraged attendees to take action in promoting copyleft
licenses.
Regardless of where one falls on the spectrum, though, it
was certainly refreshing to hear sharp critique of licensing issues,
and to hear it from the main stage of a large open-source conference.
Keynotes at industry conferences can easily lapse into cautious or
bland territory that focuses on promoting one's new product line.
Whatever else it did, Fink's keynote raised hard questions and
challenged the listeners to take action; surely keeping licensing
questions at the forefront of the FOSS community's conversation can only be good.
[The author would like the thank the Linux Foundation for
travel assistance to attend LinuxCon Europe.]
(
Log in to post comments)