Hell must be a jolly bone-chilling place today, as Matt Asay himself causes quite a stir on Twitter and the blogosphere by arguing that Apache [is] better than GPL for open-source business.
It’s good to see Matt, a long time GPL die-hard, considering switching sides. I can’t resist, however, noting how I happen to disagree. Or, actually, to just partially and conditionally agree.
I contend (and teach, and consult) that a license is only a tool and, as a former colleague of mine (and now Matt’s) likes to say, “a fool with a tool is still a fool”. As a tool, a license serves an ultimate purpose which might or might not be what the original creator designed it for. In the past few years, the so-called Commercial Open Source has butchered the GPL spirit, forgetting about how it was originally meant to set the software free forever and using it to ensure the biggest possible grasp and control over IP that Open Source could provide. As such, the GPL has become the ultimate stronghold against appropriation from third parties – something to make VCs happy, or a way to guarantee that the “vendor” was to remain in the driving seat.
Guess what? The GPL works fine, but with notable side effects that are ultimately business-unfriendly. Back to the tool metaphor, you can definitely turn a screw with a pocket knife, yet that would be suboptimal at best and dangerous at worst: using the GPL as a protection mechanism kinda works at the beginning, yet falls short in the long run. My few faithful readers already know where I’m getting to: there is little to no point in open source without a Community (note the capital C, which means a community of committed people who feel ownership and pride in a project), and you don’t build a community with a license that is actually used to disallow collaboration, as people know they are playing with a ball which isn’t theirs and could be taken away any minute (yes, there is the right to fork: point noted, yet mostly as irrelevant as vTiger and Unbreakable Linux).
The Apache License is definitely better yet it’s still just a tool: there is little point in giving your software away in the most liberal possible way if you are not ready to reap the rewards by building a successful ecosystem around it, which requires much more than a change of license. Moving to the Apache License (or anything in between – I happen to think that the EPL works almost just as fine) is a great first step towards greater adoption and an extended and sustainable ecosystem based on Open Development, but it requires some serious follow up in terms of community building. Take the license alone, and all you have is a different piece of legal gibberish.
Whenever customers confront me with the issue of choosing a license, I feel obligated to enter lawyer mode and start my answer with “it depends”. Neither the GPL, the EPL or the AL are jacks of all trades: what kind of screw do you want to turn?