From: Rick DeNatale Date: 2007-03-14T18:49:07+09:00 Subject: Re: GUI With Ruby On 3/13/07, Chad Perrin wrote: > On Wed, Mar 14, 2007 at 06:48:27AM +0900, Rick DeNatale wrote: > > On 3/13/07, Chad Perrin wrote: > > >On Tue, Mar 13, 2007 at 11:03:19PM +0900, Rick DeNatale wrote: > > >> On 3/12/07, Chad Perrin wrote: > > >> >On Tue, Mar 13, 2007 at 07:31:23AM +0900, Rick DeNatale wrote: > > >> >> On 3/11/07, Chad Perrin wrote: > > Ethically (as opposed to legally) speaking, I have a very difficult time > understanding how anyone can consider what amounts to an ex post facto > "contract" to be a good faith agreement. Any EULA or equivalent > "contract" is in fact based on an assumption of agreement, imposed after > it's too late rather than clearly agreed in advance as any enforceable > contract should be -- at least, the way EULAs and the like are currently > handled. > > To see the GPL ethically enforceable as a contract, one would not be > able to download the software and GPL text as a single download, then > read or ignore the GPL. Rather, the user would need to download the > license or otherwise read it and agree to it *before* having access to > the download. Otherwise, the user already has the licensed content in > his or her possession before the so-called "contract" is ever brought > into play. That's a bit like telling someone that eating any of the > burrito he has already half-finished means he's bound by law to perform > some kind of service for you. > > If the GPL were properly presented as an agreement before access to the > software is granted, I wouldn't have any problem with it as a contract. > As a general-purpose "license for all things open source", however, I > have pretty distinct issues with it (as I'm sure you're aware by now). Have you actually read the GPL in its entirety? You seem to think that I can't download and run a GPL program without being forced to distribute source code. The GPL distinguishes between using a GPL licensed program and re-distributing it in original or modified form. Here's what it says: "Activities other than copying, distribution and modification are not covered by this License; they are outside its scope. The act of running the Program is not restricted, and the output from the Program is covered only if its contents constitute a work based on the Program (independent of having been made by running the Program). Whether that is true depends on what the Program does." And FSF has been careful to license tools like GCC and Bison to allow their use to develop non-free software. The provisions of the GPL which you seem to have issue with only come into play when you re-distribute the code, or a derivative work. In the case of redistributing code you got elsewhere, it just means that you can't strip out the GPL license or references to it in the code. The analogy is that you can't ethically distribute a copy of a book which omits the copyright statement and expect to be free from copyright infringement claims by the copyright holder. In fact, in the case of a book, the lack of a license to redistribute means that distributing copies of the book WITH or without the copyright statement is infringement of the copyright holders rights. I don't see how this is ex post facto. You had the agreement when you decided to create the derivative work. And it's not a contract, it's a license granted by the copyright holder(s). It's what allows you to use the software to create derivative works. This is explained clearly in section 5 of the GPL. > > Let me point out a case where the GPL did some good. When Linksys put > > out the WRT-54G router, they 'neglected' to tell anyone that the > > firmware was based on linux and other open source GPL licensed > > software. That fact came to light when a hacker discovered a security > > hole in one of the diagnostic pages which allowed execution of shell > > commands by clever manipulation of an input field for a ping address. > > > > When this was discovered, pressure on LinkSys to honor their license > > under the GPL led to the release of the source code which led in turn > > to community based software, like OpenWRT, for that and other similar > > wireless routers. > > You may have to point out in exacting detail how the GPL was a critical > factor in ensuring that a specific good result came about, and how that > result was in fact better than all likely alternative results if it > wasn't GPLed software in the first place. As for the first part of that, the FSF forced a large company Cisco in this case, to make the software avaiable under the terms of the GPL. The result is that I and many others are running much improved code on our wireless router. I feel no obligation to explore all likely alternative results. > > >Your objection is a bit like saying that if you get an > > >infected cut, you don't have to use Bactine or iodine on it -- you can > > >always just saw off your arm. Thank you, Doctor, I think I'd rather use > > >Bactine, or *not get cut*. > > > > I don't follow the analogy, > > > > cut = distribute GPL binaries? > > infection = have to distribute source? > > bactine = distribute source? > > saw off your arm = ???? > > No. Close, though. > > cut = software licensed GPL > > infection = have to distribute source to distribute binaries > > bactine = don't distribute binaries, or only distribute if the > recipient will take the source at the same time > > saw off your arm = spend hundreds or thousands of dollars maintaining > source archives with redundant backups over a period of no less than > three years after last distribution of a binary Or burn a CD or two, save them in a safe place, and offer to provide copies at your cost of copying the CD and sending them a copy at their request. > > I wasn't actually objecting to anything, I was trying to answer your > > question about LiveCDs by pointing out that the GPL doesn't require > > bundling source code, which seemed to be your implication. > > My point was that the GPL requires *either* of: > > 1. bundling source code > 2. maintaining source archives for long periods > > . . . in most cases. Which is why I prefer to use software licensed under the GPL. > > >> > > >> >There's a difference between downloading software with the source > > >> >available, then later finding that the source for that exact version of > > >> >the binary went away, and downloading software when no source is > > >> >available. I don't believe that conflating the two situations helps > > >> >clear up the legal ramifications of the situation at all. > > >> > > >> So stop conflating them, the GPL doesn't. > > > > > >. . . > > > > > >In light of the history of this discussion, that's pure sophistry. > > >Thank you for divesting my statement of any context, then reversing my > > >meaning. Congratulations. > > > > I THOUGHT that your statement starting with "There's a difference > > between downloading software.." was restating your opinion that the > > GPL required distribution of source whenever binaries were > > distributed, and that this was the conflation. Re-reading it I now > > realize that I don't even understand what that statement means. > > The conflation to which I referred was *yours*, not the GPL's. Well, here's the complete thread Chad said: > >How do you feel about people having a (legally protected) right to > >distribute Linux LiveCDs without having to push several CDs full of > >source code on the recipients at the same time? Rick replied: > That's not requred by the GPL, the requirement is that if you > distribute such a live CD, you need to make the source used to create > it available. You don't need to deliver it concurrently. Chad continues: > >There's a difference between downloading software with the source > >available, then later finding that the source for that exact version of > >the binary went away, and downloading software when no source is > >available. I don't believe that conflating the two situations helps > >clear up the legal ramifications of the situation at all. Rick replies: > So stop conflating them, the GPL doesn't. The only things I see being conflated here are the requirements to distribute binary and source *together*, and that wasn't done by me, my friend. > > And the GPL is not about making software free as in beer, it's about > > making software free as in freedom. > > . . . and my objection is that it grants greater "freedom" to software > than to people in possession of software, all else being equal. I never > objected to a failure to make software "free as in beer" to acquire. No, it give freedom to people to use the software without restriction, the freedom to redistribute it unaltered (without removing the copyrights and license so the rights are extended to the recipients), the freedom to make and use derivative works which include the software in whole or in part, and the freedom to distribute those derivative works. Now as they say, with freedom comes responsibility, and when you exercise that last freedom you have some responsibilities spelled out in the license. This doesn't have to entail large resources, keeping a few CDs and duplicating them on demand, charging for the expense of duplication and mailing is enough to satisfy that responsibility. For a larger project, it's quite likely though that the infrastructure to provide source from a version control system already exists for the projects purposes. The real responsibility is not to be sloppy with your source code control. > > > > You are free to use GPL software as you wish. If you create a > > derivative work, you must not distribute that derivative work without > > also making all of the GPL source code needed to compile that > > derivative work available. > > > > The argument against following the GPL license terms seems to me to be > > something like arguing that one should be able to live in a > > jurisdiction and be selective in which of the laws of that community > > one obeys. It might be more convenient NOT to pay taxes, but... > > My argument is not that I'd rather not follow all the laws in a given > jurisdiction just because I'm contrary, but that some of those laws are > unethical and/or lead to (hopefully unintended) negative consequences. > > > > > > Now I've gotten your point that YOU prefer the BSD license. That's > > your right. My only goal has been to clear up some misconceptions > > about what the GPL requires, and has always required, and what it > > doesn't require. > > My goal has been to clear up your misconceptions that I don't know what > I'm talking about, to demonstrate that I *do* in fact know something > about what the GPL does and does not require, to eliminate some of the > spin on the GPL that obscures some of its shortcomings, and to ensure > that it's clear I don't prefer the BSD just because I'm some kind of > froot loop with a chip on his shoulder, but rather because of very real, > very pertinent effects that forced source distribution as a condition of > binary distribution (whether immediate or delayed) impose as costs on > those of us who would rather just be able to do whatever we want with > software *in our possession* as long as we respect others' rights to do > the same, barring explicit contractual agreements. I think that you are greatly exaggerating the cost of source distribution, particularly as a delta to the source code control which any responsible project would and should exercise. I also think you ignore the rights of the authors of software to ensure that their contributions are used in a way consistent with *their* wishes. And in the case of the GPL there is an explicit agreement, spelled out in the GPL and triggered when one re-distributes the software, or distributes a derivative work. And the requirement to supply source code only comes in for derivative work. Re-distributing unchanged GPL software, in it's entirety simply extends the originator's responsibility to provide source to whoever you gave the copy to. In other words the third party can't come to you for the source, he/she has to go to the originator. > No, the GPL doesn't qualify as an explicit contractual agreement, > because the agreement part of that is only *implicit*. Chad, I think we've run this into the ground. I'll leave it to others to decide for themselves who understands what. I'm getting tired of repeating myself, which, as an advocate of DRY bothers me. -- Rick DeNatale My blog on Ruby http://talklikeaduck.denhaven2.com/