Free Software Licensing Quiz 95
mpawlo writes: "How much do you know about free software licensing? Time to find out! In a
quiz presented by the Free Software Foundation you can test your abilities. How should Joan license her web browser?"
Ugh. (Score:2)
Re:Ugh. (Score:2)
Yeah, I even thought the LGPL wasn't that bad. Question 8 proved me wrong. In fact, I thought I knew the GPL well, but I still got 3 questions wrong! What about question 2, why can't he do number I? So once you modify a GPLed program, you're required to only distribute the modified version and never the original?????? #3 seems hypocritical--RMS can create all the restrictions he wants, but any code that links with his license cannot have any?
Now I'm not even sure I even want to donate code to any already existing GPLed projects anymore.
Are there any licenses out there that say "you are required to distribute source code with binaries for this component, but you can do anything you want with other components you create"??? It would be nice with projects that I don't want to use the BSD license. Maybe I'll have to come up with my own, however I hear that it comes with legal tanglings and etc. Although I was thinking of coming up with one that disallows a bunch of people and companies that've pissed me off from using my program. Maybe I should include RMS on the list!
Re:Ugh. (Score:1)
And the question asked which of the options fulfilled Fred's GPL obligations.
Re:Ugh. (Score:2, Informative)
Nobody said Fred couldn't do (I), the question is what fulfills his obligation to distribute source to the modified browser.
To whittle down the answers on that particular question, keep in mind what constitutes distributing complete source code to Fred's binary. Obviously Joan's source code doesn't have Fred's modifications, so I is out. II, III, and IV might look good until you notice that III only distributes patches to Joan's original source. That's not good enough in the event that you want complete source code to Fred's derivative and the source code Fred generated his patches against is inaccessible, so III is out. That leaves II and IV, which are equivalent and good (putting aside the difference betwen "alongside" and "along with"). [I know the real standard here is what the GPL says, not what parallel scenario I can dream up to justify the GPL's clauses, but I'm trying to write something accessible to those who aren't so familiar with the GPL.]
No, that's not what it says at all. Whether you distribute the original source code is up to you. The GPL only requires you distribute the source code to the binaries you're distributing (if you're distributing binaries). Recipients of the binary should be able to modify it, and that requires the source code that corresponds to their binary (not some other version, no matter how improved it may be).
Question #3 is aimed at making sure people don't try and sneak around the GPL by linking in code that is not available under the same permissions as the GPL. It's important to make sure people can share and modify the whole GPL'd program, not just part of it. The GPL allows Fred to charge for distributing Joan's browser or any derivative of Joan's browser. So linking in code that can't be distributed for a fee is linking in GPL-incompatible code.
Therefore the acceptable answers are quickly narrowed to the "Yes" answers (1 and 2): the sample license violates the GPL. Of those two, answer 2 is correct because the section 6 of the GNU GPL states that Fred cannot apply additional restrictions to any part of the code. Answer 1 is incorrect because the GPL only requires distributing binaries linked against GPL-compatible code and the GPL is not the only GPL-compatible license [gnu.org].
You heard correctly, writing your own license is very difficult. It is not to be taken lightly. The GNU GPL has seen real court time and been confirmed as an enforceable and binding license [gnu.org]. I think most people would be hard pressed to create a license that can survive court examination for the entire license.
Before you rush off in a huff to write a license you'll most likely regret, consider that your aggravation stems from your misunderstanding of what the GNU GPL and GNU LGPL say. Since you got 3 questions wrong, you shouldn't be so quick to judge RMS, the GNU GPL & LGPL licenses, or the FSF harshly. I suggest jotting down your objections, learning what the Free Software movement is after, how the movement RMS started goes about achieving their wishes, learning what obstacles stand in the way, and then see if your objections have merit.
Re:Ugh. (Score:2)
I'd challenge the given answer to question 8 on 2 (maybe 3) grounds: 1. The LGPL (linked in the answer) says that you must allow reverse engineering for debugging purposes. It doesn't extend that requirement to reverse engineering for any private purpose, as asked in the question. 2. You don't have to explictly allow reverse engineering in any case. All you have to do is refrain from forbidding it. If you do nothing, you comply. Maybe 3. Many enlightened countries have written the right to reverse-engineer for "compatibility" into law, trumping anything to the contrary in so-called licensing agreements.
Re:Ugh. (Score:2)
Frankly, this scares the shit out of me. It gives carte blanch for any intended user to modify the work, which implies (without saying so explicitly) the availability of source code.
Now put this in the context of using C++ compiled with GCC. The binary must be linked against libstdc++, which is LGPL.
Unless I'm going completely off the wall, this says that any C++ program compiled with GCC must have its source available to customers. Viral indeed!
Does someone want to tell me if I've lost the plot, and why?
Copyright power is great and long-lasting. (Score:1)
You have misunderstood what copyright law allows for. This issue has little to do with the GNU GPL and LGPL per se, more to do with how copyright law deals with output of processes and copyright power regarding derivative works. Like any other software license, the GNU GPL and LGPL inherit many things from copyright law, one of them being that they cannot control the licensing of the output of a process (there are exceptions but I'm trying to keep this concise and simple). So, even though gcc is GPL'd, you can compile non-GPL'd software with gcc.
Linking, however, is a different issue. Linking constitutes a derivative work which does fall under the aegis of copyright law. Therefore the license for your derivative work is not completely under your control. Different licenses offer differing levels of permissiveness for creating and distributing derivative works. For example, if you were to distribute your work linked against the LGPL'd GNU C library you would have to follow what the LGPL says for licensing your derivative work. The LGPL does not make you use the LGPL as the license for your derivative work, but it has some say in what the license for your derivative work must allow.
I suggest you read a lot of licenses very carefully and weigh your options. Keep in mind that nobody owes you the ability to make or distribute derivative works. If you are unwilling to agree to the terms of someone's license, write your own code.
Re:Copyright power is great and long-lasting. (Score:2)
My point was very simply that the LGPL is itself a viral license: section 6 requires that a work linked to LGPL covered code be modifiable. It implies that object code (so that the work can be relinked against a modified version of the library) is sufficient, but this is unclear, as the section refers to two different things as constituting "a work".
At the very least, this means that if you use g++ to compile your C++ programs (which will then in all liklihood uses the facilities of libstdc++, which is covered by the LGPL) you must distribute the object files to allow relinked against a different version of libstdc++. At worst, it requires you to make your source code available to customers.
Re:Ugh. (Score:2)
Question 8 got me too, although I did a lot better than I expected since I'm not really involved in releasing or distributing code and tend to prefer BSD style licensing anyway. I had thought that this issue was precisely what the Lesser GPL was supposed to solve though, all this seemed to do for me was raise the point that maybe Microsoft has a valid arguement.
I mean, suppose that I have a proprietary program running on Windows and commercial *NIXs that I want to be able to offer on Linux, but need to ensure that the code is not freely available for business reasons - it would give competitors an advantage for example. According to Question 8, if I so much as link against an LGPL library then my code is open to reverse engineering and my competitors will effectively have full access to my algorithms. Under those circumstances there is no way I am going to be able to offer my application under Linux without an awful lot of reinventing the wheel.
I may be mis-interpreting this, but it seems to me that the LGPL as stands would actually prevent commercial back-room applications, such as SAP for example, from being ported to Linux. Can anyone who understands the LGPL better than I shed some light on this, because this does not seem like a "good thing" to me.
Misunderstanding the intention of the LGPL. (Score:1)
No, the LGPL was never meant to be a gift to business. That concept is the motivation of another movement, not the Free Software movement. Read the FSF's essay on the LGPL [gnu.org] to learn what the LGPL is meant to do.
Also, Microsoft has no valid point regarding the GNU GPL and Microsoft doesn't act in accordance with their lies [microsoft.com]. Nobody owes them the ability to make derivative works. It is not the Free Software developer's responsibility to make sure software proprietors have code to extend. This is one of the points that separate the Open Source movement (who strongly advocates the X11 and new BSD licenses, both of which allow for proprietary derivatives) and the Free Software movement (which chiefly advocates the GNU GPL, a license that does not allow proprietary derivatives).
You could release your software under the GNU GPL and write derivative code from any GPL-compatible licensed [gnu.org] work you wish. You could sell the software and support for the software, even sell warranties for your work. Your competitors will not be able to distribute derivatives of your software without using the GPL for their releases, thus allowing you to share their distributed improvements.
Re:Ugh. (Score:2, Insightful)
You sound like you're talking about Microsoft, the chief objector to the GNU GPL, and their FUD speeches attacking the GNU GPL (in a similar name-calling, no-specifics-required, mud-slinging way). But for all their flaming, they're not doing the one thing you'd think they would do given their position: avoid distributing GNU GPL-covered works [microsoft.com].
Re:Rationale? (Score:1)
Re:Rationale? (Score:2, Insightful)
Educational purposes (Score:2)
Regards
Mikael
Re:Educational purposes (Score:1)
Especially question 1.
Q: Which of the following does not satisfy Fred's obligation to make source code available:
A: He can put the source code on his web site, and put the URL on the CD.
Huh?
If I share software with you I can't simply tell you where the source is, I have to give it to you or make a written offer? Why can't I just share and get on with my life?
Re:Educational purposes (Score:1)
I dare say that this example may highlight a situation where the GPL needs to be updated. Binary-only distribution to personal aquaintances of unmodified versions should be perfectly fine.
Re:Educational purposes (Score:1)
Darn it, that's what happens when I skip around while editing.
Being a "cheapskate" and software freedom. (Score:1)
The example is not silly at all. People do distribute CDs of binaries without source code. The FSF won't sue someone who uses the GNU GPL to license their software in cases where the FSF is not the copyright holder (which is the vast majority of GNU GPL-covered software). Even in cases where the FSF holds the copyright, usually these cases are not settled by lawsuit. Usually infringements are settled by someone pointing out the GPL's terms and asking for compliance (sometimes with the assistance of Eben Moglen, general counsel for the FSF, who said, "[a] quiet initial contact is usually sufficient to resolve the problem." [columbia.edu]).
Also, the problem doesn't come up merely by not distributing source code with binaries, but by not making it available at all. One can comply with the GPL in ways other than distributing source code with binaries. Distributing both source code and binaries simultaneously from the same location is probably the most convenient way to comply.
It makes sense when you consider that not everyone gives gifts to demonstrate how rich they are. Some people give gifts to show that they care about their friend's wishes. Sometimes this involves buying something, sometimes it involves spending time making something that has no price attached to it. Giving someone a copy of Debian GNU/Linux [debian.org] who can not get it on their own [debian.org] is one way to help them have software freedom.
No, the GPL does not need amending here. People need to be able to excercise all of their software freedoms including the ones that require source code: studying how the program works, adapting it to their needs, improving the program, and releasing their improvements to the community (known as freedoms #1 and #3 in the definition of Free Software [gnu.org]). In order to come as close as one can to guaranteeing source code availability and offer reasonable practical alternatives, the GNU GPL includes the terms discussed in the first quiz question.
Re:Being a "cheapskate" and software freedom. (Score:2)
No. The FAQ explicitly states that you must offer the source through mail for a small fee if you do not ship source with the binaries. It doesn't matter how you distribute the thing.
Now, a lot of people would think that if you distribute the binary via FTP, having a source package right next to it would be 'distributing source with the binary', just with the option for the user of actually taking it or refraining as they see fit. I strongly suspect that FSF:s interpretation rather is that the source must accompany the binary in the same, single, package. The argument for mail is that people may not have access to a network (which they evidently had thirty seconds earlier, when downloading the binary). At the same time, there seems to be no specification as to what physical medium to use; I could mail a QIC40 tape with the source and not having to worry if you can dredge up a tape unit able to read it. Yes, this is stupid.
Oh, BTW, if question #8 is about static linking, please make this clear; as it stands, you can answer either way, depending on how you interpret the question.
/Janne
Re:Being a "cheapskate" and software freedom. (Score:2, Informative)
Actually, when it comes to distributing binaries without source code and you want to go with the written offer option, section 3b of the GNU GPL says the applicable cost is "no more than your cost of physically performing source distribution". So you don't have to charge anything if you don't want to.
But on a larger issue, your rejection is simultaneously unclear and doesn't invalidate anything you quoted from me. I'm fully aware of the requirement of offering source code through the mail when someone orders it (I never contested this requirement). You read something into my words that was not there. I was not trying to present a complete list of alternatives (the GNU GPL itself is fine for that).
Consider your suspicions allayed. One question [gnu.org] speaks to your suspicions. Distributing two archives as you describe is fine. Distributing source code in the same archive as the binaries is also fine. Network distribution makes it possible for the binary archive to be accessible where the source archive is not (this can happen via FTP, not just via web sites). This presents a problem and is easily solved by distributing source code and binaries together in the same archive.
When the GNU GPL was written not everyone had network access that allowed them to download all the source code they want to GPL'd programs. People still don't have that level of access. Networks do go down, some people pay per byte and have to ration their usage, and a variety of other limitations. The GPL has to account for people passing copies of GPL-covered software via other means too. I don't know about you but I have manually passed out copies of GPL-covered software to people (I always put the complete machine-readable source code on the same medium as the binaries if I'm distributing binaries). These people deserve source code too.
If you're only distributing source code, you would want to distribute it in a medium people could use otherwise people would not want your source code. If you're distributing binaries, section 3a specifies "a medium customarily used for software interchange", section 3b specifies a written offer (valid for at least 3 years) that offers source distribution on "a medium customarily used for software interchange", and section 3c talks about passing on a copy of the information you received in accordance with section 3b.
It appears you are trying to send a message to the editors of the quiz. You should know that I did not write the quiz.
Question 4 sets the scene here, "FooCorp distributes a modified version LibIdo library linked to their proprietary program Frobber.". The GNU LGPL notes in the preamble, "When a program is linked with a library, whether statically or using a shared library, the combination of the two is legally speaking a combined work, a derivative of the original library." and thus subject to the terms of the license of the work being linked in (in that quiz scenario, the LGPL).
Section 6 of the GNU LGPL requires the license under which you distribute a "work that uses the Library" to allow for "modification of the work for the customer's own use and reverse engineering for debugging such modifications". So it would not matter whether Frobber links in the modified LibIdo statically or dynamically, either way Frobber is a derivative of the modified LibIdo and that LibIdo is a derivative of Peter's library. Therefore, in the end, the proper answer to the question #8 is "yes".
Re:Being a "cheapskate" and software freedom. (Score:2)
But then doesn't this make you their distributor?
If I get a CD from GPLCorp Inc. that contains only binaries, make copies of the CD, and give away the copies to a group of people, is GPLCorp Inc. still responsible for sending source to all of these people? Or have GPLCorp Inc.'s resposibilities ended with providing a source CD only to me, and am I now the point of contact for all of these people? I should hope it's the latter.
Re:Being a "cheapskate" and software freedom. (Score:1)
Yes, I am distributing the GPL-covered program to these people. They can request source code from me. If I am unprepared to satisfy that request it is my responsibility to not distribute the program to them in the first place.
Re:Being a "cheapskate" and software freedom. (Score:2)
As I read it, I don't think the mail requierement is in force when distributing over the net. In any case, the 'customary medium' for source distribution today is the net, not a physical medium - I don't even own a CD-ROM, and I haven't used an actual floppy for at least a year.
The thing about #8 is still very confusing. I wasn't trying to send a message; I apparently thought LGPL allowed different things than it actually does. What, exactly _is_ the point of LGPL if you can't link an LGPL lib with proprietary code without opening that code? Seems there is room to define a license like "This is GPL, with the exception that you may freely dynamically (ie. at runtime) link this software with software bearing any license without any obligations of the GPL having any effect on that software".
/Janne
Re:Being a "cheapskate" and software freedom. (Score:1)
The FSF has an essay directly answering your question: Why you should not use the Library GPL for your next library? [gnu.org]. The GNU LGPL was renamed after this essay was written to stand for the Lesser General Public License to reflect that it does less to ensure software freedom.
Such a license would go against the whole point in using the GNU GPL. Free Software developers have to make advantages for one another and produce software that is Free Software. Linking with non-free software is antithetical to the Free Software movement because this movement maintains everyone should have the four fundamental freedoms of Free Software for all of their software. Distributing software linked with non-free software prevents people from having complete software freedom (more specifically, studying, modifying, and distributing source code).
Re:Being a "cheapskate" and software freedom. (Score:2)
Granted. However, given that I need to develop closed software, I need to know whether I can use LGPL licenced components or if I have to look at other options. What really worries me is that gcc (and glibc) may be too restrictive, licence wise, to develop closed software at all - in which case I kind of wonder why FSF have not gone after those who do so.
In any case, if we release any libraries or other code, the alternative is probably a non-FSF license, seeing how the LGPL does not do what we need.
/Janne
Re:Being a "cheapskate" and software freedom. (Score:1)
Copyright law doesn't allow the FSF to stop you from using gcc to compile non-free software. For years, NeXT (now Apple) used gcc to compile NeXTSTEP and OPENSTEP (which, contrary to whatever you may read into the name, is a proprietary operating system). It was a completely seperate issue that NeXT tried to extend gcc without abiding by the GNU GPL [gnu.org] by proposing to distribute their Objective C front end as .o files.
Re:Being a "cheapskate" and software freedom. (Score:1)
Shipping source code and binaries (Score:1)
Why can't you ship source code and the binaries from the same location and get on with your life? One way to comply with the GNU GPL is to make source code available from the same location as the binaries. Websites become unavailable for various reasons and if people have only the binary and a pointer to the source code on a website, it's possible they would not be able to obtain the source code that compiles to the binary they have. This is not unheard of when people distribute binaries via CD. But my experience is most people don't find it difficult to ship source code and binaries from the same location.
Re:Shipping source code and binaries (Score:1)
The hypothetical situation given deals with a single individual giving another individual a single CD[-R] of binaries for personal use on a non-commercial basis. It's unlikely there's "shipping" going on, and location is hardly the issue. There are no stores, companies, or businesses explicitly mentioned in this example.
Re:Shipping source code and binaries (Score:1)
So long as Fred and Joan aren't a part of the same organization, distribution has occurred. The GNU GPL calls such an event "distribution" and that is the term I should have used.
Distributing source code and binaries from the same place is apropos because the GNU GPL says it is. See section 3 of the GNU GPL which includes:
In the quiz scenario, Fred distributes a CD with binaries of Joan's web browser to his unnamed friend. Giving out source code on the same CD as the binaries would have counted as distribution of the source code. Hence choice 2 ("He [Fred] can give out source on the same CD as the binaries.") is not the correct answer to the quiz question.
For people with no Internet access (Score:2)
If I share software with you I can't simply tell you where the source is, I have to give it to you or make a written offer?
Say my sister doesn't have access to the Internet. Given only a URL, how is she supposed to fetch the source code? (Read More... [gnu.org])
Re:For people with no Internet access (Score:1)
Actually, I think you missed the full extent of the original question.
If I give your sister a built version of a GPL program, I'm suddenly obligated to provide her with a copy of the source code.
Indeed, I'm potentially obligated to provide her with the exact source for the version I gave her, even if she asks for the source several years later. Presuming that the source is non-trivial, perhaps I'd even have to buy a CD-burner to provide her with the source...
Of course your sister isn't likely to take me to court over this, but under the strict terms of the GPL, I'm undertaking a new obligation every time I share a program that I like (whether I am the original author or not).
Re:For people with no Internet access (Score:1)
Making a copy of a copyrighted program for your sister is a violation of copyright laws, like
giving a copy Microsoft Word to someone.
With GPL'd programs you are allowed to make the copy if you fulfill certain obligations, including making the source available.
Re:Educational purposes (Score:2)
Re:Educational purposes (Score:1)
Put briefly, no. That makes no difference. Nowhere in the GNU GPL does it say Fred can distribute a URL pointing to the source code to satisfy his obligation to make source code available. Therefore choice 1 is the correct answer to that question.
Joan should quit developing (Score:3, Funny)
What in the hell is Joan thinking of linking a web browser to a mail server? I think Joan is automatically disqualified from ever developing software, much less having the ability to determine which license to use.
Re:Joan should quit developing (Score:1)
Re:Joan should quit developing (Score:1)
Re:Joan should quit developing (Score:4, Funny)
Seven of Nine ... (Score:1)
Re:Seven of Nine ... (Score:1)
Ugh... (Score:2)
Atleast with that I'm guarenteed that contributions back to software I wrote a majority of won't prevent me from using the damn stuff myself.
Ignorance does not always lead to bliss. (Score:1)
Someone could patent the code they contribute to your project and not license that patent to you. The BSD licenses do nothing to help you with software patents. The GNU GPL covers this situation.
I understand your desire for a simple permissive software license, but ensuring software freedom requires more complex licensing terms than what the BSD licenses provide.
Re:Ignorance does not always lead to bliss. (Score:1)
1) you still have the original code, and
2) it is unclear how the patented code was 'contributed' to the project in the first place.
Rather, it seems that the people who developed the patented code did exactly what they are allowed, which is they used the BSD code freely.
In the end, no one is deprived anything by using the BSD code. The source to the public code is still available, and the binaries that the new code is based on is available from the company that developed the new code.
Re:Ignorance does not always lead to bliss. (Score:1)
This doesn't respond to the point made earlier and it doesn't acknowledge the power of patents. The point made earlier [slashdot.org] was that with the BSD licenses, you can always benefit from someone else's contribution. So still being able to use the code without the patented contribution in no way addresses that point because you are talking about the program without discussing the patented contribution. Also, what you gain with copyright (i.e., "still hav[ing] the original code") you can lose with a patent. Copyright law and patent law are completely separate areas of law that can conflict. A patent holder (whether it is the one that "contributed" to your BSD-covered program or someone else) can write their patent so broadly it encompasses your extant work, thus preventing you from distributing your work, forcing you into a costly licensing fee, compelling a court appearance, or cross-licensing your patents with them (the real value of software patents is in cross-licensing [cam.ac.uk]).
The code could have been sent to you to make it known to you, informing you of its existance in a way where they can win a copyright infringement suit (see Lawrence Rosen's column in the December 2001 "Linux Journal" magazine for details on this) as well as a patent infringement suit. Whatever the reason, they have a patent on that improvement and you probably don't. Patents are written broadly enough to encompass an idea (not just a particular expression of that idea), so it's entirely possible (even likely) you won't be able to reimplement the improvement without infringing on the patent.
There's no doubt they acted within the limits of the BSD licenses, that was never the question. The question was whether you want that to happen to your program: Do you want to maintain the ability to share improvements to your program even in the face of software patents? Do you want the other users of your software to be able to share and modify the patented improvements? If so, the BSD licenses are not an appropriate license choice for your program.
Re:Ignorance does not always lead to bliss. (Score:2)
Ensuring freedom for who, exactly? When I develop software "for free", I want people to use it. The more people use common libraries, the less we are faced with a diversity of protocols and formats. That means commercial organisations too - FSF/OSS developers spend most of their time playing "compatibility catchup".
But most importantly, the GPL fails in its efforts to encourage code sharing, because it locks out the largest potential resource of high-quality, useful code: business.
Business can't use GPL code in its products, and is skeptical about LGPL (with good reason: see section 6 of the LGPL!). So it doesn't use (L)GPL code, doesn't contribute back (via testing, maintenance or extension), and neither side benefits. The only time businesses LIKE the GPL is when they release their own code, because it restricts competitors from using it.
BSD licenses OTOH allow everyone to share. Sure, some people abuse the situation. But the community loses nothing in real terms.
Re:Ignorance does not always lead to bliss. (Score:1)
Looking at the overall gist of your post, it's clear you don't understand a good deal about Free Software or why the GNU GPL says what it says. You should read the essays at the GNU project's philosophy page [gnu.org] and learn about the Free Software movement.
All computer users. The Free Software movement's message of software freedom is aimed at all computer users.
The Free Software movement is not just interested in popularity. The primary motivation of the GNU project is to give users freedom. Also, talking about developing software "for free" suggests you are talking about software in terms of price. The Free Software movement focuses on freedom, not price.
The GNU GPL is a very (if not the most) widely used Free Software license. Lots of people find it works for code sharing very well. However, it is not the job of the Free Software movement to look out for business interests in the way you want them to (treating businesses as charities is the work of another movement). If businesses want software developed, they can work hard and develop it themselves or hire someone to write it for them. If they want to share and share alike, they are welcome to get a head start and develop a derivative of a GNU GPL-covered work. Many businesses have chosen the latter route; the GNU GPL does not "lock out" business users, unless you define "business" to exclude IBM, Microsoft, Apple, and a host of commercial GNU/Linux distributors (just to name a few) all of whom make and/or distribute GNU GPL-covered software.
The second sentence of that quote denies the validity of what you said in the first and third sentences of that same quote. Anytime someone distributes new BSD-covered code they are distributing Free Software, and that's great. Unfortunately they've chosen a license that allows for proprietary derivatives (even incompatible proprietary derivatives—a practice commonly referred to as "embrace and extend"). The community cannot freely use the changes made to these derivatives and the developers of the new BSD-licensed work have essentially treated some organization as a charity, not insisted on developing software as equals.
Re:Ignorance does not always lead to bliss. (Score:2)
I am fully versed in the FSF's philosophies. I just disagree with them. I do not find the GPL in the interests of "all computer users" because it has serious (negative) implications for creativity, standardization, and the sharing process.
RMS's rampant anti-Copyright arguments are fatally flawed in their assumption that software can exist in a form beneficial for all, without an economic model. RMS has also brainwashed people into accepting his explanation of "free speech" versus "free beer". The GPL enforces (not merely permits) "free speech", but also "free beer".
What this means for the man in the street is Bad News. Seeing a need, an industry can produce software to fulfil that need. In doing so it engages in economic activity, providing jobs to people like (surprise surprise) us. But if it must use the GPL, it can only be guaranteed a single sale. The first purchaser is permitted the rights to modify and redistribute the software, and resell [gnu.org] it. No, not just it - but infinite copies, at any price (s)he choses. So it comes down to the fact that business cannot survive under an "only GPL" model.
On the flip side of the coin, let's assume that business is NOT involved. Free Software developers have got together and made a product. The end user STILL loses. Why? Because free software is notoriously shit compared to commercial alternatives when it comes to usability. It is typically made by geeks, for geeks. More specifically, the free software movement today is characterised by following. All of the features present in "productivity apps" (those which are of interest to normal home users) have debuted in commercial software, and the ideas simply copied.
All of this goes to say that the GPL stifles creativity. When there is no economic incentive, creativity declines.
Very few people benefit from the "freedom" offered by GPL software, unless we're talking "free beer". The vast majority of end users do not have the means to use the source code, and are confused and intimidated by the GPL. This reduces the sharing process. I am bound by severe legal constraints if I choose to give a copy of a GPL application to someone. I must include the source code (inconvenient, since I may not have chosen to obtain it), or provide an offer to provide the person with the source code. The GPL says it is NOT sufficient that I merely direct the recipient to the web site of the original source code (even if I haven't made any modifications), because as the distributor the onus is on ME to provide the source.
So much for easy sharing.
Which brings me to standardization, the central topic of my original post. Contrary to your belief, I don't want businesses to be treated as charities. I want meaningful contribution in both directions. And given the history of the situation, I don't believe this can be achieved using the GPL.
The FSF can treat itself as a sole light in the darkness of Copyright, fighting to bring a new age of Enlightenment to desktops near and far. And it can fail, because its efforts are continually divided by the (perceived) requirement to provide compatibility.
Or it can make reasonable efforts to reconcile its philosophy with that of the rest of the world, and work together nicely for a better future. And that means a give-and-take relationship with industry. "You can't have this unless you give us the commercial product its going to be a tiny part of" is not a give-and-take relationship.
The BSD license allows a business to benefit from free software. And it allows the business to contribute back in a manner it sees fit. A business almost certainly doesn't want to spend millions developing a commercial product, and then give it away for free (speech and/or beer), but it is likely to be willing to contribute extensions, fixes, and code that doesn't threaten its commercial model back into the free software space.
Or, to put it another way: if you don't give them anything, why the hell should they give something to you?
There are very few companies that can, or do, practice "embrace and extend". It only works effectively if you are a monopoly.
Lawyers (Score:2)
Since when did legal studies become the main concern for computer afficianados?
That quiz has to be a goof. I think Microsoft hacked into FSF's servers to scare people away from open-source.
There is something very, very wrong here.
These legalisms are paralyzing to a fertile, inquisitive mind.
Re:Lawyers (Score:1)
I was thinking just the opposite: When was it reasonable to be ignorant of the laws that control what you can do with a computer? When was it a good idea to not know about the terms of widely-used Free Software licenses? Maybe the computer afficionados you know would be better off knowing what copyright law says and what penalties lie in wait for them if they violate someone's copyright. Being ignorant of the DMCA is particularly unwise in the USA, just ask Dmitry Sklyarov [freesklyarov.org] about the pleasures of being held in jail away from home.
Funny. I think the FSF put that up with the mindset of helping people to better understand the GNU GPL and GNU LGPL, and to increase the number of volunteers helping them with license issues (as they ask for if you answer all the questions correctly). Also, the FSF doesn't do "open-source" they do Free Software. There's a big difference [gnu.org].
These legalisms are just another part of life to learn about, organize protests around, and work within. A mind will not stay "fertile" if it is ignorant of the rules of society. It is shameful, not helpful, to remain ignorant of the law.
Re:Lawyers (Score:2)
In every other objection you have, you are dead wrong.
A basic knowledge of the law is necessary to live in a civilized society.
My point, which you failed to understand, is that when legal considerations become so pervasive and convoluted, so that one must be a specialist
The law is not an end in itself, but is supposed to be a tool to allow us to live our lives peacefully.
You and I obviously have different points of views. You see computing as a symbol to be used in political action. I just see computing as something intellectually interesting in and of itself, of which the social, legal, economic and political aspects play a smallish part.
Your bringing up the Skylarov case only strngthens my point. Skylarov's problem was not an ignorance of the law, as he deliberately tried to present his ideas in what he thought was a legal manner. Skylarov got caught up in a confusing and malicious legal fight, when all he wanted to do was investigate some interesting encryptation problems.
I like what the FSF and GNU stand for. I just wonder if they are taking the wrong approach, by piling legalisms on legalisms.
The point is not to get hackers to become lawyers. The point should be to get the lawyers off of the hackers' backs.
It is not shameful to be ignorant of the law when the laws in question are deliberately obscure.
Re:Lawyers (Score:2, Informative)
Some might say the same thing about computer programming or using a computer recreationally. Fortunately we don't need to be experts to understand a great deal about copyright, we need to study it, ask questions, have discussions, and learn. There are so many interesting intersections between computing, economics, law, and politics, I sincerely doubt a reasonable person could find only "smallish" interests after reading some good books.
Understanding a system is the first step to changing it. Try to understand what's going on with copyright law by reading non-technical books written for a general audience like Lawrence Lessig's "The Future of Ideas" or Siva Vaidhyanathan's "Copywrongs and Copyrights". Both of them contain plenty of commonly accessible examples on where the law and computing intersect. Then try reading the references they point to, such as US Supreme Court cases and important appellate court decisions. I've found that the more I persist by reading and learning, the more I come to understand the ins and outs of copyright law and the more I appreciate the effort.
Re:Lawyers (Score:2)
That is one reason I find open-source model so compelling. From an economic point-of-view, it is a new paradigm of software development. It is also a fairly simple and elegant solution that does not get bogged down in itself. The system itself is of tangential interest. It is interesting to specialists such as myself. But at its heart it is interesting because non-specialists can easily apply it to get stuff done. When Linus Torvalds was developing Linux as open-source, he wasn't really doing it for idealistic reasons. He was just a computer hacker trying to get a cool massive hack hacked.
The problem with the GPL is that it is starting to take itself too seriously. You, personally, might have a special interest in its arcane intricacies, but for the end-user, it has become cumbersome.
The fact that people have to take obscure and confusing tests and still be confused by the GPL does not suggest that those people are idiots. The end user is not made to serve the GPL. The GPL is meant to serve the end user. Confusion means that it is broken. Even from a legal point of view, the GPL is untested.
It's fine for you to enjoy the ins and outs of copyright law. It is a shame if it is necessary for every creator of intellectual property to become an expert in it. I don't mean to say people should not have a basic understanding of these issues. But the legal framework involved has become so confusing as to be counterproductive.
Getting back to the original subject, the GPL quiz, it is poorly written and indicative of sloppy legal thinking. Bad contracts and laws can be just as frustrating as bad code. It is especially frustrating when you don't want to parse legalisms as a requirement to parse computer code.
End Rant.
Re:Quite Disappointing (Score:2)
Ultimatly, if you dont like the GPL, fine, dont use it in your code. I could hardly see microsoft letting you off any easier.
The "Right" Answer Is Wrong (Score:2)
Re:The "Right" Answer Is Wrong (Score:1)
FooCorp owns this patent. Because the GPL is meant to protect Free Software from licensing issues, FooCorp must make this patent free for use; so that derivatives of their work can make use of this patented technology. So the third response is the correct one.
Source several OOMs bigger than the binary? (Score:3)
I'm developing a video game to be released under the GNU General Public License. The binary (executable + video and sound assets) will be about 256 KB, and the source code for the executable portion of the file plus the custom build tools is about 256 KB. The problem is that the "source code" for the whole project, as defined by the GPL, may exceed 50 MB (primarily large lossless video and sound files), and because this is my first project, I can't afford very much web space. I can't re-license the software because it uses the LZO compression library, which is licensed under the GNU GPL, not the Lesser GPL. (I can switch to any other packer library with similar speed, but I don't want to have to go all the way back to RLE compression.)
If the source code is several orders of magnitude bigger than the binary and requires manual processing in the build process, how should I distribute my software electronically in order to comply with the letter and spirit of the GNU GPL?
Re:Source several OOMs bigger than the binary? (Score:3, Insightful)
You can put just what you need online and provide the complete "source" via CD in the mail if requested. Remember that you can charge for the materials necessary to mail them a copy so that it's not an undue financial burden. If your game turns out to be quite popular, check around for hosting; there are folks out there who have the bandwidth and need a reason for people to come check out their services.
If it doesn't turn out to be that popular a game or folks just don't care about the source (it happens a lot), then it's a moot point anyway. But in the event that it is popular, there are options open to you. If anything, I would think the FSF would rather shell out the server space than let a popular piece of GPL goodness get mired down in programmer exhaustion.
Re:Source several OOMs bigger than the binary? (Score:2)
You can put just what you need online and provide the complete "source" via CD in the mail if requested.
I've considered that, but the GPL FAQ [gnu.org] states: "The GPL insists that redistributors of binaries without sources provide an offer in writing to send the sources, because that's the only way we can make sure that users can get the sources. So if you want to distribute binaries by anonymous FTP, you have to distribute sources along with them."
In other words, if I distribute binaries electronically, I have to either distribute source code electronically or restrict binary distribution to those who own a printer.
From the GPL FAQ: "This should not be hard. If you can find a site to distribute your program, you can surely find one that has room for the sources." I'm not sure that the authors of the GPL had situations in mind where the source code is several orders of magnitude larger than the binary.
If it doesn't turn out to be that popular a game or folks just don't care about the source (it happens a lot), then it's a moot point anyway.
If I do not comply with the letter of the GPL from the outset, I am infringing the copyright on the LZO library, and Markus F.X.J. Oberhumer can sue me for up to $150,000 in statutory damages under U.S. copyright law [cornell.edu].
The only way I can truly make this a moot point is if I can make a case that the way I store asset files (essentially a file system within the ROM) counts as "mere aggregation" under the GPL.
Re:Source several OOMs bigger than the binary? (Score:2)
You assume that an offer in writing cannot be in electronic form. Is a README file or LICENSE file not "in writing?" There is no provision of which I am aware that mandates a piece of paper dictating your intentions.
IANAL, but if LICENSE files did not constitute a legally binding contract, how would the BSDL or the GPL ever have an effect? As I said before, I would suggest contacting a lawyer and/or the FSF, but I don't think this is as big a problem as you are making it.
Re:Source several OOMs bigger than the binary? (Score:2)
What if each disc can hold only one file? (Score:2)
Stick the video and sound assets into a seperate file
The target system uses interchangeable ROM cartridges and has only one ROM connector. I don't want the user to have to swap cartridges several times during game play, and I don't want to have to provide two expensive ROM cartridges in each package.
(like iD did with their .pak files with quake)
I'm already storing asset files in .gbfs archives. (The .gbfs format [pineight.com] is an archive format I designed, somewhat similar to .tar, .pak, .zip, .jar, .dat used by other programs.) However, because a program on the target system can access only one file (the ROM), I have to concatenate the asset files to the end of the executable. Does concatenating several files count as "linking" if I also provide a tool to extract the individual .exe and .gbfs files?
If you want to (and I presume you do), provide compressed versions of the assets (eg make the asset library a simple zip file).
I already do that, but the assets are already 20 MB zipped before counting the lossy compression used to pack the assets into the pak file. Lossy compression of source code is not permitted by the GPL, as a lossy compressed audio or image file is no longer "the preferred form for making modifications to the work."
If you are concerned about that, just write an exception into your copy of the GPL.
I am not authorized to do that. The program includes a library (M.F.X.J. Oberhumer's LZO [oberhumer.com]) under the GNU GPL, and I am not permitted to link it against anything not under the GPL. I cannot contact Mr. Oberhumer because he does not accept mail not encrypted with PGP [oberhumer.com], and I cannot use PGP because I don't know anybody who would sign my keys.
If concatenating several files in a reversible manner does not count as "linking," then I don't have a problem.
Is this a non-problem we're talking about? (Score:1)
Exactly what part of the GNU GPL are you referring to? I'm not aware of the part of the GNU GPL that requires "electronic" distribution. Also, if the work is not a derivative of anything GPL'd, the GNU GPL would not apply to you (assuming you are the copyright holder on this work). It would only apply to those you distribute your work to.
FSF: Binary FTP requires source FTP (Score:2)
I'm not aware of the part of the GNU GPL that requires "electronic" distribution.
But the GPL FAQ states [gnu.org] that if the binaries are distributed electronically, the source code must also be distributed electronically. The sheer size of the source code may prohibit me from distributing the software electronically at all.
Also, if the work is not a derivative of anything GPL'd, the GNU GPL would not apply to you (assuming you are the copyright holder on this work)
I am not. Read what I had written: "I can't re-license the software because it uses the LZO compression library, which is licensed under the GNU GPL." The LZO library [oberhumer.com] was written by Markus F.X.J. Oberhumer, who does not have a plain e-mail address [oberhumer.com].
This is a non-problem if and only if reversibly concatenating an executable with asset files counts as either "mere aggregation" and/or "just data" [gnu.org] under the GPL.
FTP need not enter into it at all. (Score:1)
So don't distribute your work electronically. Distribute source and binaries together simultaneously by burning both onto CD-Rs. Someone else might volunteer to redistribute the work electronically for you. So much of this issue centers on your erroneous belief that the GNU GPL requires you to distribute electronically.
I did read it, quite carefully. I figured at least one of the following things might have occured to you:
I very much doubt that distributing a single file would count the way you want it to be counted. That's a question for the FSF, albeit a rather academic one considering that this whole issue is a non-problem if you drop the phony electronic distribution requirement (that never really existed) and distribute your program via inexpensive CD-Rs (which have approximately 600MB more capacity than you said you need to distribute your program).
So how do I get my GPG key signed? (Score:2)
So don't distribute your work electronically.
Would you get one of, say, the media player apps if you couldn't get it for free online?
So much of this issue centers on your erroneous belief that the GNU GPL requires you to distribute electronically.
I understand that the GNU GPL does not require this, but the behavior of the typical Internet surfer does. The typical Internet surfer would rather just click the little X button in the upper right corner of her browser than order a CD on an impulse. And if I start selling CDs online, I have to pay upwards of $200 per year for an SSL certificate to protect my e-commerce from the man in the middle, don't I?
You could accede to Oberhumer's wishes and try GPG
I have considered this path. However, when I looked into GPG, I found no way of getting my key signed by a prominent GPG user, or even by any GPG user. Isn't that a prerequisite for entering the "web of trust" or whatever they call it?
phony electronic distribution requirement
You try selling a game that doesn't have a downloadable playable demo. Players like to know what they're getting into before they buy something.
Again with the issues that aren't GPL problems. (Score:1)
Yes, if it were Free Software and priced reasonably, but that's completely beside the point. This is a market issue, not a problem for the GNU GPL. Ultimately network distribution is something you don't have the budget to do in the way you want to do it. So instead of wallowing in what you can't afford to do, try distributing your program in a way you can afford.
Then this thread was always completely outside the context of the GNU GPL. This thread is becoming less and less apropos for this discussion topic.
Well, if you can't afford that, you'll have to reconsider doing e-commerce that way (maybe you won't do e-commerce at all). This isn't brain surgery and you're not running a huge store. It's also not my responsibility to come up with a viable business plan for you.
Your posts convey no sense of this at all. In fact you tried to take me to task by pointing me to a webpage you thought would corroborate your assumption you could only contact this person via PGP encrypted e-mail. It turns out that wasn't the case; apparently you didn't read that page too closely.
Briefly: No it is not, and if you read documentation on GPG you'll see you what you need to use encrypted and signed e-mail.
But again, there's a more important issue here. You need to ask yourself whether you need to contact Oberhumer at all. I don't think you do. You don't need to obtain another license for Oberhumer's work because you have no genuine problem complying with the GPL. This was the only reason for contact and since this turned out to be another non-problem, the need to contact Oberhumer vanishes.
Welcome to the free market. Nobody owes you bandwidth or storage.
Re:Source several OOMs bigger than the binary? (Score:2)
I think in fact you are trying to make a bogus example to show that the GPL won't work. It works fine.
Not bogus. Here's the name of the project: (Score:2)
The compressed video and sound are fine, as they are playable using the open-source code and can easily be considered the "usual form of the source".
From the GPL: "The source code for a work means the preferred form of the work for making modifications to it." Would you rather make modifications to a sound recording using a single stereo Ogg file, using a single stereo PCM WAV file, or using WAV files of the individual tracks (one per instrument) plus the script for the mixer [ucsd.edu]?
I think in fact you are trying to make a bogus example to show that the GPL won't work. It works fine.
Re:Source several OOMs bigger than the binary? (Score:1)
If your software is GPL'ed I believe that sourceforge will be more than happy to host your project for you, including multimedia files. As far as I remember they allow you to have up to 250MB stored at any time.
As an additional bonus you get to use all the nice features of sourceforge.
Again, VA comes to the rescue. (Score:1)
If your software is GPL'ed I believe that sourceforge will be more than happy to host your project for you, including multimedia files.
I had thought they would reject my project because I abandoned the first project I tried to host with them. But if not, thanks for the tip. It's much more helpful than jbn-o's defeatist "then don't distribute your software electronically, and if you can't afford SSL, don't sell it online either" stance.
Re:Again, VA comes to the rescue. (Score:1)
I had thought they would reject my project because I abandoned the first project I tried to host with them.
Hardly, they're here for us to use for sharing free software. That is their primary intent with the sourceforge site. Should you abandon this project and the next two or three projects, then you have still contributed ideas and source to the free software community.
Re:Source several OOMs bigger than the binary? (Score:1)
Check out http://www.webgroupmedia.com/. They aren't perfect, but for $5 a month, it works well for some things.