In a recent interview, ESR shocked a lot of people when he said,
“We don’t need the GPL anymore.” Federico Biancuzzi recently contacted RMS, founder of the Free Software Movement and initial developer of the GNU system (the G in “GLAMP”), to talk about the past, the present, and the future of the GNU GPL. Among other things, they discussed the new clauses of the upcoming GPL version 3.
This must be the first time I heard about this deviation… Anyway, I’ll stick to FAPP, thank you very much.
Booth the non distributed software service case and Treacherous Computing could be solved with one clause.
If the licens states that you are not allowed to use the software in a derivative work that removes or introduce further restrictions on the basic freedoms. How to express this in a sufficiently defined way in legalease I don’t know however.
Thus it would not be legal to remove a function to access the code, as was mentioned, or create software that introduces Treacherous Computing based on GPL software.
This just keeps getting dumber and dumber. can’t wait for their reimplementation of Monad…
I think this is one of the better interviews that I have read in a while. Mostly, I have only heard rumors here and there about proposed additions for GPLv3, but I much prefer to hear it from RMS than some Anonymous Coward on Slashdot.
While I disagree with RMS’s view that free access to source code is a fundamental human right (Actually, I think all “human rights” seem arbitrary to me. I think they should be called “rights I really really like” and so I don’t think free software is any more or less a fundamental right than chewing gum, slavery, religion, or owning a gun.), I certainly admire his objectives and tactics.
When one argues for access to free source code as a moral issue, you really cannot argue against it. You really cannot argue whether something is moral or not because it comes down to arbitrarily deciding what is right and wrong. However, since most people seem willing to accept that there is a fundamental right or wrong, his tactic is brilliant. Not that I think he is using it as a gimmick (I think he believes what he says, just like many religious leaders believe thier teachings are true.)
As a software developer, the GPL is both interesting and amusing to me. I especially like how it contrasts with the BSD license. The GPL tries to ensure future freedom by restricting its users. The BSD license gives slightly more freedom at a very likely loss of future freedom. Both of the licenses (but especially the GPL) attempt to patch up the holes where they believe the current copyright law is broken.
In a way, all the various open source licenses seem to mirror the very ideas behind the patent system. I always like the example of pharmeceuticals:
On one hand, we can completely remove the patent system, rely on public funding to universities or other think tanks to solve the problem of disease. On the other hand, there is a potential for using private money to supplement or replace some of that public funding. In exchange, the providers of the private money want profit in the form of limited-time monopolies. Increased funding is beneficial to the public good. Monopolies are detrimental. Society decides on some arbitrary number of years as the point at which it is willing to make the trade-off.
So with the various open source licenses, we emulate the public-private tradeoff. On one hand, free access to source code and programs has numerous benefits to society. On the other hand, if we allow private money to help software development, we increase the speed at eventually getting to wherever it is software development in general is headed. Society has decided some very large number of years is a pretty good number for the trade-off (I disagree for obvious and practical reasons), so the licenses step in to allow various amounts of slack between enforced freedom, complete freedom, some freedom, and freedom for some.
I release everything I write under the GPL because I see absolutely no potential for a private entity to make any of my programs better in exchange for that crazy amount of years for which they will have exclusive access (or access to exclusive modifications).
Another reason I like the GPL is because it uses the very copyright laws that make it necessary to attempt to subvert parts of it. Yet, since the GPL requires copyright law for its enforcement, a stub copyright law is needed for its continued propogation (as opposed to a system in which there were no copyright laws at all). Have you ever noticed that if copyright were to last forever, the GPL would actually be even more powerful than it is? Very interesting and very amusing.
RMS seems like a guy who absolutely knows what he wants to accomplish, the best method by which to achieve this goal, the competence to get it done correctly, and, most importantly, the willingness to actually expend the effort to do so. Since I directly benefit from this work everyday, I congratulate and thank him.
Also, unlike many open source and free software advocates, he seems to have an amazing ability to lead and maintain composure. It is very rare to have all these traits in someone who is leading a movement. His views of free access to source code, however, make me think that there are very amusing stories about his anger in situations in which people willfully violate what he believes to be morally right.
As an aside, I think it is pretty amusing how many developers stand behind the GPL and support it. If the GPL were truly pervasive and successful, most developers would be out of a job. Personally, I don’t really care if I am out of a job as a software developer in 20 years. Perhaps when I have a big family and a house payments to make I might have a differing opinion, but without thinking about it on the personal level, I don’t think it would be so bad. I might have to get a job as a teacher or an electrician or start my own computer repair business. I wonder how life would be different in such a case. I bet most of the software jobs would move to hardware companies.
To return to the topic at hand, I am glad that RMS is carefully considering the current and future states of the software industry and trying his best to get the GPL to evolve to match the changing world. Of particular interest was the idea of allowing downloads of GPLed programs used in web services, but which are not distributed, to enforce the download feature on modified versions. Brilliant!
It seems like the future versions of the GPL will be better than the older ones.
Also as an aside, does anyone know what safeguards the GPL from getting subverted from some private company which then decides to release “GPLvX: We own all the source code”? In such a case, I guess it would be a situation essentially identical to that of the MPL. I assume that the FSF protects this from happening, but what is protecting the FSF?
If the GPL were truly pervasive and successful, most developers would be out of a job.
You are basicly saying that if all software was free there would be no value in producing new code.
I think you assume that “most developers” are beeing payed to implement code that is allready implemented by someone else. And that thers is less demand for code that hasn’t been implemented by anyone than there is demand for reimplementation of code you cant use becasuse of copyright.
Close … I am saying that if all software were free, there would be LITTLE value in producing new code COMMERCIALLY.
Essentially, I think that if free software were to take deeper root, most commercial software vendors would have trouble competing. If most of the software in such a hypothetical world were GPL (as opposed to LGPL or some other license), then the developers would have to start from the beginning before they could even begin to add newer features. If the company could monetarily sustain the project for that long and actually release the product, it would still have to deal with the GPLed version of that program copying those new features (which could probably be done pretty quickly) and face competition from that direction. Eventually, the costs of dealing with that kind of competition would drive a lot of companies into the ground and force many more to consolidate.
I think a lot of commercial software development would be left to areas in which there would be little chance of a competing product, such as some custom-built programs to glue various systems together, software designed for a specific and limited type of hardware, and video games (mostly because they are generally tied to exclusive and proprietary artowrk and data sets.)
Most code is not sold.
The major question to determine the remaining value is: Is there a deminishing value to new problems solved? –Or– Is there a point where software solves all the valuable problems? I’m quite convinced the set of problems is infinite.
I think the developers who have something to lose are the internal ones. The ones who write internal code. They’d end up not rewriting the same thing 85 times. But who knows, maybe those companies would instead see the value of having that much improved software? Or maybe due to the lowered cost of purchasing software there would be more demand for new software?
As an aside, I think it is pretty amusing how many developers stand behind the GPL and support it. If the GPL were truly pervasive and successful, most developers would be out of a job.
Very insightful comment, other than this little tidbit. Most developers do not produce software for software companies, but instead produce software in-house for non-software companies. Just like the fact that normal software from companies doesn’t meet these companies needs, open source software probably doesn’t either.
While I have never seen the actual numbers, I think you may be right that most developers produce software in-house for non-software companies.
I still think most software developers really spend more time replicating work that others have already done than they do writing new code. The GPL really does not address that, since (in my imaginary world where most everything is GPLed) the GPL really only covers software that gets distributed. Therefore, most non-software company developers would only lose their jobs if ALL companies released source under the GPL even when there were no apparent need to do so (and open themselves up for possible patent/copyright infringement suits if someone thinks the source too closely matches another projects code). From there, it would probably be possible to create generic interfaces for such code so that it could be applied to a broader set of problems or at least some way of easily setting up and maintaining it.
Very specific custom jobs would still be around, but probably not nearly as common as they are today … in my imaginary world where everything is GPLed and companies like to create legal liabilities.
Lets examine a part of your imaginary world, that isn’t imaginary. The Linux kernel world.
According to your world view there wouldn’t bee a market for Linux kernel developers. Beeing a 15 years old project, where everyone invloved shares code freely with each other. By your logic there would be no need for further development, or atleast the market should shrink by each new release. In reality there seems to be more and more commercial interest in kernel development all the time.
So it would seem that you are wrong.
Well, in the replies to the replies to my original post, I mentioned that I thought that developers who deal with getting software to run on very specific hardware would still have a job. A good amount of commercial Linux kernel development is getting the kernel to play nice with specific hardware.
I think the Linux kernel is a special case because it deals so much with hardware. Since hardware is always changing, there will always be a need for kernel programmers to get that hardware working efficiently.
I also think that the current incarnation of the Linux kernel is only just beginning to mature. There has been a lot of throw-away and rewrite before things got really stable in terms of architecture.
I do wonder what would happen if you were to look at Linux kernel development, seperate the commercially supported parts for closer inspection, and then ignore all parts that were designed to get some piece of hardware or other to work (since I have already admitted that this aspect of Linux kernel will be ongoing. Or we could just ignore commercially supported work on the kernel that is designed to make hardware that that company sells to function.) How much would you still have left? I really have no idea (though it’d be neat if someone who does could chime in), but I would not be terribly surprised if the percentage that is commercially supported versus the percentage that is done on a volunteer basis is decreasing. In a few years, I would think that percentage would continue to diminish.
Wow! That has to be the osnews comment of the year. Brilliantly executed, friend.
GLAMP : GNU/Linux Apache Mysql PHP
Its the #1 server solution availaible and in use today. In its many shape and Form.
http://survey.netcraft.com/Reports/0509/
http://survey.netcraft.com/Reports/200509/platform.html
Its replacing everyday more and more the few remaining Unix , SUN , BSD , Apple , Microsoft solution still in Use.
I doubt LAMP is being used on Supercomputers, Mainframes, Database Servers, Directory Servers, etc. LAMP is kicking ass on webservers…but not everywhere else.
Google….
I don’t think google uses LAMP…it just uses a modified linux kernel to power the cluster.
Huh… you think that LAMP (linux APACHE mysql php/python/perl) is only doing well on Web servers? Well, I suppose that makes sense seeing as Apache is a Web server. Funny how that works.
I think he meant “small time webservers.” As in, not amazon.com and ebay and other large servers.
Actually … Beowulfs are virtually -all- GNU/Linux based. Obviously, most of them have no use for Apache, MySQL or PHP. Apple is only recently starting to make headway into the beowulf market.
There are thousands of beowulfs running GNU/Linux that would qualify as supercomputers.
“Stronger virality punishes defectors more effectively, but also has more tendency to scare people away from joining the open source community in the first place.”
– ESR
This seems to be ESRs main gripe about the GPL. However it has not scared either users or developers. Just take a look at some of the bigger companies supporting OSDL:
* AMD
* Cisco
* Computer Associates
* Ericsson
* Fujitsu
* Google
* Hitachi
* HP
* IBM
* Intel
* Mitsubishi Electric
* NEC
* Nokia
* Novell
* NTT Corporation
* Red Hat
* Sun Microsystems
* Toshiba Solutions
* Transmeta
* Trolltech
“I’ve actually been making the argument that the GPL is rationally justified only if open source is an inferior system of production since 1998.”
– ESR
He is on to something here. He believes open source to be a superior system of production. That is all fine, but when it comes to the market it has to compete with companies that does not belive in fair practises. Hence the GPL is rationally justified since it provides protection.
ESR is right when stating that in a free market there is no need for the GPL.
Only problem is, there is no free market.
/Magnus
I read the article and it seems that the GPL3 is going to be a nasty license. That said, we will have to wait and see what they come up with.
“If you release a program that implements such a command, GPL 3 will require others to keep the command working in their modified versions of the program.”
That worries me but he did say they were still looking at that.
“Running a program in a public server is not distribution; it is public use. We’re looking at an approach where programs used in this way will have to include a command for the user to download the source for the version that is running.”
I also don’t think they should muck around with that either but I wouldn’t adopt GPL3 in that case. I would stick with GPL2.
I seems they are going from freedom to controlling with this. Time will tell.
That does sound crappy. There’s a lot of GPL software without any network code; and I think it’s best it stay that way.
Although, I have the feeling that the gnu website would immediately host a library to very easily run the command.
The idea of the GPL, as far as I can tell, is to make sure that when an author writes a program, anybody can modify it, and, that if those modifications become useful enough that they are deployed outside of the sphere in which the modifications were made, that those modifications would also be freely available. RMS and his FSF movement want (at least, in as much as a movement can want anything) want all useful modifications of GPL code to be reinserted into the collective whole that is free software.
However, a deficiency in that plan is that web programs can be modified and deployed (even on an enormous scale) without there actually being any sort of distribution of the program.
Remember, it is not the FSF or RMS that ultimately makes this decision, but the developer who writes the code. Currently, there is license that really allows the flexibility of the GPL with the forced redistribution that such a developer might want (since such a clause would automatically make it incompatible with the GPL). So RMS is thinking about creating a license where this new restriction is possible. Not only that, but he believes that this should be the default behavior. Not only is this option a good thing, but its goals aren’t really any different than those of the previous GPL.
The current GPL already has a lot of requirements. This is not even one of the major potential differences between the current GPL and the upcoming version. Ultimately, it is up to the developer to decide, and if he sided with the GPL before, he is likely to do so again, since the goals are the same, but also protects the code from a sort of exploitation.
“So RMS is thinking about creating a license where this new restriction is possible. Not only that, but he believes that this should be the default behavior. Not only is this option a good thing, but its goals aren’t really any different than those of the previous GPL.”
I do not think this is a good thing actually and it would steer me (and probably a lot of companies) clear of the GPL3.
YMMV
I seems they are going from freedom to controlling with this. Time will tell.
Are you familiar with the FSF’ “Free Document License”? It also prohibits changes to certain parts of FDL licensed documents. The FSF has never been about “freedom” in general, but about adherence to RMS’s personal whims.
On an unrelated note, it would be a lot easier to listen to/read RMS’s words if he didn’t constantly refer to Trusted Computing as “Treacherous Computing” and so forth. As is, I wouldn’t be surprised if he were substituting dollar signs for ‘S’s in company names.
“Are you familiar with the FSF’ “Free Document License”? It also prohibits changes to certain parts of FDL licensed documents. The FSF has never been about “freedom” in general, but about adherence to RMS’s personal whims.”
Please read their stance on WHY you can’t change documents. Basically, you can change the purpose of a document by changing the words. The phrases “I am a crook,” and “I am NOT a crook” differs with only 1 word, but changes the meaning completely. Programs are different. Change 1 word, and it crashes, because the purpose of the program is not a MEANING, but rather a TASK. That’s why documents and programs are miles apart despite some people’s attempts to equate the two. RMS seems to understand that. Hopefully, you do too now.
On an unrelated note, it would be a lot easier to listen to/read RMS’s words if he didn’t constantly refer to Trusted Computing as “Treacherous Computing” and so forth. As is, I wouldn’t be surprised if he were substituting dollar signs for ‘S’s in company names.
While Trusted Computing in it self is a play on words used as a marketing term. I think it’s fair to turn it around and call it Treacherous Computing.
Tusted Coputing actually means that your computer can be trusted not by you but rather by some third party. For example, it can be trusted to play media because it won’t let you copy it. By not letting you do what you want it’s fair to call it treacherous.
It’s true that TCPA can be used for other purposes some of which is beneficial to the user, and completely within his/her controll. The term “Trusted Computing”, however, was invented by the DRM crowd.
Thus Treacherous Computing is a fair defence against the misleading term Trusted Computing.
Spelling MS as M$ is just childish.
Just what we need, a license that is more confusing than the code it covers.
A developer should not need a consensus opinion from multiple lawyers to figure out what they can and cannot do with code. Licenses should be clear, consice, and easy to understand. It seems to me RMS is going off the deep end trying to cover all of his agenda, and not giving the community a license that is easy to use and understand.
Hmmm, overly complex language, confusing licenses, personal agenda’s over community goals, are we sure RMS doesn’t work for a mega corp, because that sure sounds like management material there.
I dibs MLAMP and MLAPP and MFAPP and MUAMP and MUAPP.
So there!
We don’t need ESR anymore.
Where the hell is Lumbergh?
Yeah, I agree. It’s not a real GPL flame-fest without Lumbergh going around making his usual ad hominem attacks and straw man arguments…
If they ensare ISP’s into the viral blessing of the GPL, you all realize Google is hosed, right?
It’s going to be difficult to avoid the “disgorge” hooks…
______________
Some companies, such as Google, use code covered by GPL to offer their services through the Web. Do you plan to extend GPL 3 copyleft to request code publication in this case too, considering this behavior like a product distribution?
Running a program in a public server is not distribution; it is public use. We’re looking at an approach where programs used in this way will have to include a command for the user to download the source for the version that is running.
But this will not apply to all GPL-covered programs, only to programs that already contain such a command. Thus, this change would have no effect on existing software, but developers could activate it in the future.
This is only a tentative plan, because we have not finished studying the matter to be sure it will work.
Google won’t get hosed because they’ll just fork anything goes GPL v3 that could extend the viralness. Anyway, most of google’s stuff that is in anyway connected to web services is most likely not even GPL.
“We don’t need ESR anymore.”
I think we “””really””” don’t need RMS anymore
“Running a program in a public server is not distribution; it is public use. We’re looking at an approach where programs used in this way will have to include a command for the user to download the source for the version that is running. ”
And THAT will be the last nail in the GPL coffin!
Once that happens, companies will immediately trash the GPL sources they used, and rewrite those parts in order to protect their intellectual property.
The way I see it, the GPL just keeps burying itself deeper and deeper.
I think you totally misunderstood what you read.
If MySQL added a command to disgorge the code linked against its libraries, Google could not disable it – requiring them to produce their code, or rewrite MySQL.
<P>
Would they rewrite MySQL – they might. But a ton of other companies couldn’t afford it, and that would be one big honkin’ bonanza to Red Hat and MySQL…
<P>
If the world’s not paying attention to this, they ought to be…
The talked about some kind of “command” to download GPL’d software that are used in web services.
Oh, and what’s up with GLAMP? Was this made up on the spot for Stallman?
As I understood it the licens would have a clause stating that if the software contains a function to access the sourcecode for the running instance any derivative work must not disable (or otherwise cripple) this function.
A bit off-topic, but something I caught in the article …
In fact, some non-GPL-covered free programs have widely used nonfree versions. For instance, consider Apache, whose license is free software but not the GNU GPL. We often hear that some 70 percent of web servers use Apache; what we don’t hear is that a large fraction of those servers are using a nonfree modified version of Apache, as permitted by the Apache license.
By non-free, does he mean non-OSS, proprietary modifications? Reason why I asked this is because when people bring up that more popular software means more security holes, OSS advocates often bring up the example of Apache vs IIS. I just find it interesting that, according to RMS, 70% of those apache installations are non-free.
By non-free he means software that has been modified from its original free version, but whose derived are not free. Since the APL says it is GPL compatible, but is not itself under the GPL, I would guess that its license is more related to the BSD license (I’ve never actually sat down and read the APL before and I don’t really feel like doing it right now.)
Remember that, under the BSD license, any free program can be converted to a GPL or closed-source program. There is no restriction that derived versions be free. However, since the Apache web server is generally not redistributed by the sites that use it, the GPL is about as weak in preventing closed-source implementations from existing.
Therefore, it would seem to me that the only objection that RMS would have with this situation is not that the closed-source versions exist (since his license currently does nothing to prevent public use of closed-source GPL-derived programs from existing), but that the closed-source versions are being sold by commercial vendors and that these closed-source implementations are gaining wide-spread acceptance. This seems probably, since he specifically cites the 70% number. However, I really have no idea. I extrapolated this whole paragraph from the fact that he thought enough of this being a problem that he mentioned it in passing in his interview.
If Apache were under the GPL, then closed-source versious could exist, but the second that they were sold and distributed, it would be covered by the GPL. That would prevent any commercial company from wide deployment or profit without a serious bit of work-around (it would still be possible if the closed-source Apache vendors never gave you the software, but instead provided hardware that you were given permission to use that employed the hardware. Then they could say they never actually distributed the software and the GPL’s power would be ineffective. However, as the Apache web server seems firmly rooted in the APL, this is a moot side-discussion.)
Also, with regards to your first question, RMS does not consider a license to be free just because it is sanctioned by the OSI or is promoted by most members of the OSS community. Remember that strict GPL adherants (and I suppose LGPL adhereants, too) are only a subset of the OSS community. Just because code is open does not mean that it is “free” according to RMS.
So in summary, OSS have good reason to bring up the example of Apache vs. IIS, since Apache is OSS software. However, all those derived versions are not necessarily OSS or free, depending on whose definition you use. According to RMS’s definition, about 70% are not free.
I really do not see why anybody would have a problem with GPLv3 having a source download clause.
Suppose, I write some web-based program for handling a webforums. Say, something like Slashcode, but with all the bad parts fixed and huge improvements. Now, I’ve written all this code and I want the world to benefit from my hard work, but I do not want anybody to have exclusive access to the code or its modifications. I believe all modifications should be shared. For all other types of programs, the GPL was a pretty good way of making sure that if my code was used in a public fashion (such a redistribution of binaries of the modified code), I could license it under the GPL.
However, with web-based programs, somebody can come along, modify my code, and deploy it publically (and maybe even make a profit off of public use of my code.) The way the GPL is written now, this is fine. No problems. However, as a developer, I might have a problem with my code being used in a public fashion for profit without the modifications being returned to the public.
The new source download clause would give me the CHOICE as a developer to force any users of my code to allow others the same freedom to modify and use my code that they were originally given. To do this, I merely include a function in my source code that allows the download of the current source of that program. Then subsequent users will be forced to offer their versions of my code to the public. Remember, this is only a problem for the commercial company if they deploy it publically. If they deploy my source privately and make modifications, then the source download function would still be required, but would be irrelevant since the code is deployed in a private network.
As a developer, I make the choice of requiring people who use my code to offer modifications to the public. Instead of creating a function to offer the source for download, I could just as easily have included a link to the source code. This would not be covered by the GPLv3 and people who use my code would be under no obligation to even make my original source code available.
Since the clause for the source download cannot be invoked accidentally (that is, developers generally don’t accidentally write functions to download the source code when a link is a much simpler option), anybody who were to download my code would immediatly see distribution of modified source is required.
Would companies shy away from the GPLv3 because of this? Most wouldn’t, since most would not have a problem with allowing people to download modified versions of the source code. Would there be some companies that would fear this clause and opt to use something else or write their own product? Yes, those would be the same kind of leech companies that already exist today, who like to use mplayer/ffmpeg libraries without giving credit to the original authors and who do not follow the terms of their licenses. In short, it would affect nobody who really mattered.
As I read that, we can finally start making the service companies leveraging Linux to be real members of the community, and not trolls.
I think the people who have a problem with the “source code download clause” come in two different varieties.
1) The people who “believe” in the GPL but never figured they would have to “pay”. Meaning, they loved it as long as everyone ELSE had to release their changes and they didn’t.
2) The people who don’t want the extra traffic that would be created by people downloading source code from their website.
in the united states. my freedoms come with things that are supposed to help guarentee freedom. like the right to bear arms. freedom of speech. those are helping guarentee freedom. laws in general help guarentee freedom even though they limit freedom just a little..
i don’t get why people call the gpl viral. it merely guarentees that the software will stay free, at the cost of making it require any changes be free too. Personally i think the GPL should stay.
I fail to understand how your first paragraph is relevant to the discussion at hand. I think you are trying to create an analogy to show that the GPL acts in much the same way as the US Consitution in trying to ensure whatever is commonly accepted as freedom in their respective domains of influence. If that’s so, I’m not really sure why you bring it up at all, since the GPL’s use in that manner is its sole reason for existance and the use of the analogy is weakened by talks of guns and incomplete sentences. Anyways, it took me a while of reading that first paragraph to get that far, but now I want to address your second paragraph.
The GPL is viral because any GPLed source code that is used by a non-GPLed program, even if the GPLed source remains the same, requires that the entire project be released under the GPL. This was especially a problem for using GPLed libraries and so the LGPL was created. Still, there are still some issues for non-library code, but there are workarounds for them also.
I agree that the GPL should stay. In all probability, the GPL will stay. It is unlikely that GPLv2 will be abandoned for anything other than GPLv3. I also think GPLv3 will see wide adoption once it is finalized, since the proposed changes are mild and keep with the spirit of GPLv2.