http://www.thejemreport.com/mambo/content/view/317/
------- GPLv3 license marks GNU's decline Written by Jem Matzan Jun 29, 2007 at 08:20 AM The GNU General Public License version 3 is unleashed to the world today, ready and willing to conquer perceived problems with the legal system in the U.S. and other countries. It's been carefully considered, debated, and examined by very smart people with a lot of experience with software license law and advocacy. Programmers, lawyers, and businesspeople have looked it over and petitioned changes until most parties were reasonably satisfied with the result. So today is, ostensibly, GPLv3 release day, but I think in the future that it will be remembered in a sad sort of way. We will look back on this and say that June 29, 2007 was the day when the Free Software Foundation jumped the shark, creating an impassable chasm where there was already an uncomfortable rift between the Free Software Foundation and GNU Project, and the larger free software and open source worlds. The GPLv3 adds restrictions galore for developers and users alike, none of which are designed to be understood by the people who matter most -- programmers and users. The FSF tells us that the new restrictions in the GPLv3, on patents, patent licensing, and hardware capabilities, are there to make us more free. That's right -- more restrictions are being forced on us so that we can be "more free." If that sounds like a big steaming pile of nonsense to you, then I'm with you, brother. Free as in "do as I say" The GNU General Public License version 3 introduces a level of restriction that is unprecedented in Free Software Foundation-approved software licenses. Though the language is exceedingly difficult to understand (more on that later), the license seems to require all people who modify GPLv3 software to grant all users of that software a "non-exclusive, worldwide, royalty-free patent license" for all of the patents you might have. So if you create some GPLv3-licensed software to use in, say, a game console, you may have to give all users of that game console a copy of the source code (no surprise there -- the GPLv2 requires that, too) and a license to all patents on game console components and technologies that you invented -- and maybe all of your other patents on other devices as well. So if a competitor goes to the store and buys your game console, then finds a cheaper way to make the same thing using the same software you created, they could make a case that you have no patent claims against them for copying your designs. Furthermore, the GPLv3 stipulates that you must waive the ability to include anti-circumvention technologies, and also include "installation information," which means you have to provide any files or data that unlocks or controls hardware. Well the DVD and DRM people aren't going to allow you to give away their decryption keys, so forget about your game console playing DVD movies or DRM-encumbered audio files. And if you want to put checks into the hardware to make sure that the software it runs will not harm the device? That could be against the GPLv3 as well, if it prevents running modified versions of the software. Forget about the concept of GPLv3-licensed computer games, too -- if you can't prevent people from running unmodified versions of the software, you can't prevent cheating. Legalese Restrictions aside, the aspect of the GPL version 3 that bothers me most is that it is totally impossible for a layman to understand. I read every license for every program I review. None of them are particularly easy to understand (except the BSD license, and a few other minimally restrictive open source licenses), but if you concentrate on what you are reading, you can usually understand what your limitations and enablements are. Microsoft's license agreements are, for example, relatively easy to understand: You can't sell, copy, give away, publish benchmarks based on, or install this software on more than one computer. That may be a disadvantageous agreement for the user, but at least the terms are clear. The GPLv3, by contrast, is ancient Greek. Here's an example: A contributor's "essential patent claims" are all patent claims owned or controlled by the contributor, whether already acquired or hereafter acquired, that would be infringed by some manner, permitted by this License, of making, using, or selling its contributor version, but do not include claims that would be infringed only as a consequence of further modification of the contributor version. For purposes of this definition, "control" includes the right to grant patent sublicenses in a manner consistent with the requirements of this License. This is a license written by and for lawyers, not programmers or users. I'll reiterate the fact that I have read through dozens of complex software licenses. I have seen many unusual clauses (particularly in Sun licenses), but nothing so convoluted as the GPLv3. The above quote is only a single example of an overlong and tedious license that no end user or software developer -- the people who most need to understand what their entitlements and limitations are -- can ever hope to fully understand. This puts all users and programmers in a powerless position in which we must trust the interpreters to accurately convey what we can and cannot do with this program. When you are powerless, you are not free. In a sense, the GPLv3 authors have robbed us of the freedom to understand the terms by which we use, modify, and distribute GPLv3-licensed software. They have made free software into something that cannot be reasonably understood, nor explained to a newcomer. Software patents do not exist The GPLv3 refers repeatedly to "software patents." If you only hear RMS or other free software advocates talk about this subject, then you are likely also against "software patents." I was too, at one point. There is a huge problem with this attitude, however -- software patents do not exist in the context in which the term is generally presented. There are no special rules, laws, or provisions for patenting software. A patent on software is legally and structurally identical to a patent on a skateboard. In fact there can't be any special patent provisions -- the World Trade Organization, through the Trade-Related aspects of Intellectual Property rightS (TRIPS) treaty forbids participating countries from passing laws that favor one kind of technology over another. So if there were special rules for United States patents on software, the US would be in violation of the TRIPS treaty. The patent laws could be uniformly changed to better accommodate the software industry, but that still might violate TRIPS, and could harm other industries more than it would benefit software developers and distributors. So if you can't make special rules for patents on software, then why not make software unpatentable? That seems like a good idea from a PC-centric frame of reference, but it doesn't hold outside of that part of the technology world. We as computer users only see patent abuse in the news, like the the Amazon one-click patent and Steve Ballmer blathering about theoretical patent violations and other silly things that anger and annoy everyone except the people making money from them. But what if you were an engineer working in some other industry? What if you discovered a way to improve efficiency or performance in an invention by moving solid state logic to a software program that runs on the device? For instance, instead of a transistor or integrated circuit with static logic that can never be changed, you design a software program that resides in rewritable memory and can easily be modified and updated or expanded beyond the original design. Many cars on the market today, for instance, can self-tune to adjust for a variety of conditions. This is something that is much more difficult to do with static logic if there is no method of storing the self-tuned parameters. If software were unpatentable, you would have to avoid moving the logic from hardware to software because though it may give you a temporary competitive advantage, all of the time and money you or your company spent developing that solution could be wasted by a copycat competitor. Abstracting firmware has its own problems, especially when companies forbid redistribution of firmware files, so this is not always a good thing. There cannot be a law or provision that favors any one technology over another, though, under the current system. There may be problems with the patent system, but they will not be fixed by a software license. A big, freedom-loving middle finger to BSD Linux distributions are not the only operating systems affected by GPLv3. More threatened than anyone are free software projects that abhor licensing restrictions imposed by the GPL, such as the BSD variants. According to FSF representative Brett Smith, there are about 150 software projects in the GNU Project that have copyrights attributed to the Free Software Foundation. Of those, at least 15 are committed to switching over to the GPL version 3 today. "The complete list probably won't be final until the day is over. :) But highlights should include fundamental GNU/Linux system utilities like sed and tar, a suite of Internet software -- such as FTP and telnet servers and clients -- called inetutils, and the Texinfo documentation system." He didn't mention GCC or the GNU debugger (GDB), which are arguably the two most important GNU Project programs to outside operating system projects. So I wrote to representatives of the three main BSD projects and asked them what they planned to do about the GPLv3. Martin Husemann of the NetBSD Foundation told me that it was already possible to weed out software according to license, both in the base system and in pkgsrc: We don't think that the switch of GNU programs from GPL v2 to GPLv3 will affect NetBSD or its users much, since we are not in violation of the additional provisions that GPL v3 stipulates. It is a long term goal of NetBSD to become GPL free, but the potential change in license will not affect the scheduling of that goal. Furthermore, the GPL programs in NetBSD are clearly separated from the rest of the source so one can easily distribute a GPL-free NetBSD system (with missing functionality specially in the toolchain parts). Since pkgsrc does not redistribute third party packages, it is also not affected. For users of pkgsrc, and creators of binary pkg sets or CDs/DVDs, it has versatile provisions to express licensing restrictions implied by the created packages (like LICENSE=, ACCEPTABLE_LICENSES, NO_BIN_ON_FTP, NO_BIN_ON_CDROM). As of this writing, the OpenBSD Project had not made a decision regarding GPLv3-licensed software in the OpenBSD base system. Like the other BSDs, OpenBSD has very few GPL programs, and has gone to great lengths to replace some existing tools with BSD-licensed alternatives. Most of the GPL programs in OpenBSD are older and heavily patched, so there is little or no dependence on the GNU Project's latest packages. The FreeBSD core team had this to say on the issue: Thank you for your interest in the FreeBSD Project. As you know, the FreeBSD Project has a long history of producing open source under the liberal BSD open source license. This license allows unlimited open and closed-source reuse of our software. We do rely on some GPL components-- most critically the gcc development tool suite--but it is a core goal of our work that FreeBSD be complete operating system with BSD-licensed kernel, system libraries, services, and command line tools. Because GPLv3 has not yet been finalized, it would be premature to draw conclusions about how it will affect our project; obviously, we will follow events closely as they unfold. Civil war? I have always used free software over proprietary alternatives when there was a choice to be made. Sometimes there is no choice, and you have to click through some ridiculous license agreement that you don't agree to and don't care about. The GPLv3 has become another such license that I have to click through and don't care about, so whenever possible, I'm going to be using something that's a little less restrictive. Perhaps this will be the great homecoming to FreeBSD for me -- I've always considered myself a BSD user in exile, anyway. The operating systems I'm using now are still under the GPLv2, but I may have to stop updating parts of them if GPLv3 crap is going to leak into them. I can't be alone in this rejection of the new restrictive GPL, so I expect there to be a reckoning in the free software community. A lot of projects and distributors aren't going to include GPLv3 software, either forking the old GPLv2 editions or using BSD-licensed alternatives instead. It'll be interesting to see where this leads, but I think this will be the end of "GNU/Linux" and the beginning of just plain "Linux" -- not the kernel alone, but the kernel plus a body of free software userland utilities and programs unencumbered by convoluted restrictions. In the BSD world there are already free software replacements for many of the GNU Project programs. It takes little effort to do drop-in replacements for them in existing Linux distributions. The end There is an important moment in the history of psychology (please Tom Cruise, don't jump on my couch) that applies well to this situation. Though Carl Jung had defended Sigmund Freud on many occasions, the latter said something to Jung that forced them to part ways: "My dear Jung, promise me never to abandon the sexual theory. This is the most essential thing of all. You see we must make a dogma of it, an unshakable bulwark against the black tide of mud of occultism." At that point, Jung understood that it was more about Freud's ego (ha!) than it was about figuring out how the human mind works -- it was about being "right" over being "correct." I frequently think of this whenever I find myself defending a principle based on old assumptions. Here we have RMS telling us that restrictions mean freedom, and I can't help but think that this is more about ego and "being right" than it is about being free to use, modify, and distribute software. I've no doubt that this is the beginning of the end for GNU, and it will prove the strength of the larger free software world. The Free Software Foundation has dumped a load of restrictions on us with GPLv3 and told us that restrictions lead to freedom and that it is good for us. That's a little too Bush administration-like for me. In fact I fully expect someone, somewhere, to claim that I "hate freedom" for speaking out about this abysmal license -- that would make the irony complete. That a license as restrictive as the GPLv3 should be mostly written by and wholeheartedly supported by someone who speaks out against the Patriot Act puts it a step beyond irony, and into hypocrisy. Further mimicking Bush political rhetoric, Stallman even claimed recently that restrictive software licenses are evil. So does that make him an "evil doer" for promoting a license that attempts to restrict hardware, software, software licensing, and patent licensing choices that should remain in the hands of software developers, or does that make people who are against it "evil doers" and "freedom haters" for not supporting it? If we aren't with you, Richard, are we against you? One way or the other, count me against. GNU, this is as far as we go. I'm breaking up with you. I think we should see other groups of userland operating system tools (or users, as the case may be). I'd prefer it if you took my number out of your cell phone and pretended we never went out. Discuss this article or get technical support on our forum [http://www.tjrforum.com/]. Copyright 2007 JEM Electronic Media, Inc. No reprints without written permission. ------- regards, alexander. -- "Live cheaply," he said, offering some free advice. "Don't buy a house, a car or have children. The problem is they're expensive and you have to spend all your time making money to pay for them." -- Free Software Foundation's Richard Stallman: 'Live Cheaply' _______________________________________________ gnu-misc-discuss mailing list gnu-misc-discuss@gnu.org http://lists.gnu.org/mailman/listinfo/gnu-misc-discuss