With GPLv3, Everything Old Can Be New Again

Created
Mon, 20/06/2011 - 18:44
Updated
Mon, 20/06/2011 - 18:44

I was invited last week to keynote at the Sixth OpenFOAM Conference held at Penn State University in State College, PA. OpenFOAM is a computational fluid dynamics software package released under GPLv3. I was grateful for this opportunity, because rarely do I get the opportunity to meet what I think of as insulated Free Software communities.

By “insulated”, I don't mean that these communities are naïve in any way. They are, however, insulated from the usual politics of the general software freedom community. While the users of OpenFOAM are all familiar with GNU/Linux and other interesting software freedom packages, OpenFOAM users and developers aren't generally reading blogs like mine or following the weekly discussions about copyleft and non-copyleft licensing, or debating with Simon Phipps what “Open By Rule” means.

These users and developers interact with one software freedom license, GPLv3, about one specific codebase. All of there focus comes about that codebase and how the licensing impacts their businesses, their work and their research. This is as it should be: some of the best work in society comes out of communities focusing together very intently on an important area of study.

For me, it's quite interesting to see how these communities sometimes, quite organically, end up having some serious similarities to other ones we find. As I began to research the history of the OpenFOAM, I started as I usually do with the Wikipedia entry, which is (at the time of writing) marked with the Advert template. This was an immediate sign that something odd was going on, so I dug deeper.

Between my research before the workshop and from discussions with users and developers at it, I've pretty much gotten a straight, non-advertising story of what happened. The OpenFOAM codebase was developed at Imperial College as an academic codebase. As often (unfortunately) happens, the university allowed the codebase to be spun off as a proprietary software product into a for-profit company. Eventually, in 2004, the codebase was released under GPL. After usual corporate politics and disputes that our community has seen before, a single corporation, OpenCFD, Ltd., now maintains itself as sole copyright holdership and trademark holdership of the OpenFOAM name.

As such, events have progressed as we have all seen before with MySQL, and other would-be community projects that have ended up under single corporate control. OpenCFD maintains a proprietary relicensing business model, a practice that I've previously denounced. Also, there is aggressive trademark enforcement and licensing control going on, which we have also seen more than once in the software freedom world.

However, despite this, I'm actually quite hopeful about this community I met last week, despite how grim the last paragraph sounds. I theorize this has something do with the heavy academic connections of the project, but for whatever reason, there is a burgeoning but reasonably healthy fork, currently called OpenFOAM-Extend, with a community of academics, volunteer developers, and small businesses interested in it. They are in the classic catbird seat when facing a proprietary relicensed codebase: they can take all they want from the official OpenFOAM releases under GPLv3, and can add their own code without assigning it back to OpenCFD and keeping their own copyrights. I encouraged everyone I met at the conference to do this.

The community faces really only one difficult obstacle: they will eventually have to give up the name, OpenFOAM. The name is trademarked by OpenCFD, and therefore there will always be difficult trying to build a healthy software freedom community around a project whose name is trademarked and aggressively enforced by a for-profit company. I spent my time at the workshop pointing out that a name is just a moniker and that developers and users will gravitate to wherever the healthiest codebase lives, regardless of a name. I pointed out how forks of MySQL like Drizzle have easily built communities, and encouraged OpenFOAM users to watch with interest what happens with other fork+name-change projects like LibreOffice and Jenkins. I hope the OpenFOAM-Extend community will take these examples to heart.

Finally, I'd like to thank the OpenFOAM Workshop organizers for inviting me to keynote at their sixth annual event. I enjoyed meeting everyone at the workshop. I've put the slides from talk there on my website. I also hope to release the recording of my talk as Free as in Freedom oggcast, but I have discuss that with my co-host Karen Sandler before I do.