Writing complicated software takes time and energy if you go about it in the wrong way. Companies usually do.
Free software can build upon an ever increasing codebase and do incremental development in a highly decoupled modularized way.
Closed company produced software often goes the opposite way with monolithic masses of code. That requires a lot more time and energy, and for each time it has to be written from scratch, which is a waste of that time and energy.
Of course there are a lot of programmers drawn into the industry because of the money. They often are not that good at their job, compared to the altruists who often hold a deep interest in both learning and working on code.
And, of course, there is no conflict between free software and making money. Nobody is going to develop a financial system for a large corporation for free. They might make it Free, but they'll charge a lot from the corporation. Mass consumer software like word processors, operating systems, etc will probably fall by the wayside because so many have an interest in them working, but vertical market applications will remain a profitable buisness wether Free or not.
With the current untimely binary compatibility breakage between EGCS compiled libs and some other combinations I'm getting rather leery of contributed RPM's anyway. I'll prefer the compile from source thing until these problems are worked out rather than spend another couple of hours trying to figure out where that unresolved __register_frame_info symbol came from.
It Must Be Magic.:) Seriously, no, that simply doesnt happen. Genes from plant _SUB_species A may combine with genes from plant subspecies B and form plant subspecies C tho. While that may be a slight problem with closely related weeds and some useful plants, it's not that big a deal. Genes dont just jump around.
And I agree with the penicillin reference being bad. It just proves that nature will evolve another way to penetrate the resistance eventually.
The penicillin resistance in bacteria is a large part our own fault tho. Extreme overuse of antibiotics is pretty much what has accelerated the evolution of resistance so fast. If we hadnt had farmers pumping animals full of antibiotics all the time it might have been another couple of centuries before the resistant strains would start appearing.
You should realize as soon as possible that You Have No Chance To Be The Next Bill Gates.
Dont get into the mass consumer software buisness. It will be gone soon enough. As it is today, if you become successful, you'll be bought out/killed off by Microsoft, or you'll be outevolved by free software.
If you do want to get into mass marketing, you should probably aim at games. They will be a profitable, altho difficult, market for the forseeable future. That market wont be targetted by free software either for a long time, if ever, and it's not a one-product-only market.
Otherwise, leverage off free software and create vertical market corporate systems. Good profits and not an endangered market either. Incidentally, copyrights dont matter much there anyway, since they have a tendency to be one-off to a few solutions.
Or just go into consulting and you'll have a safer life.
The difference between a copyright and a deed is simple; physical property cannot be utilized by many without decreasing the use the 'owner' had of it. With intellectual property you do not cease to have full use of your property just because someone else also has it.
Go look at www.ipnot.org if you wish to have a more detailed discourse on both the history of and the substance of intellectual property.
Well, as far as being a conspiracy, it's a pretty benevolent one for the big corporations. Well, except Microsoft. But most big corporations are not in the software monopoly buisness, and they stand to gain a lot through lower licensing costs and higher reliability.
Well, if you use any Qt code in your application. On the other hand, if you didnt use any Qt code and QPL'ed your application, then you would probably hold the right to relicense the code someone else created as a derived work of your code.
The major problem is that as far as I know, the phrase Initial Developer has not been tried in court. It is used to denote the original copyright holder to the oldest included code, but that can rapidly become fuzzy if you include code from other sources.
You also have the difficulty that you cannot revoke an Initial Developership, so you may be in the clear as long as you include code from one other source (altho they retain rights to the code that you will not have), but if you have two different sources where you get code with two different Initial Developers, then you're in a very precarious legal situation. You'll probably end up with an illegal work (since the QPL includes a disclosure clause it would be illegal to even create such a work for private use).
Ah, yes, there's that one too. Theoretically it could be mixed, I think, but you might have to do it by generating patches. The initial developer would probably be the copyright holder to the oldest code included in the project, so if you include code, someone else would probably get the rights to license in any fashion.
There is no fundamental difference between the QPL and the GPL, except the QPL retains a tighter control over the software evolution through the patches clause and the disallowing of private use. The QPL is just as viral as the GPL (include QPL licensed code (through patches) and you're subject to the QPL for the rest of the code too, if distributed together) and it does not allow authors to charge for the software any more or less than the GPL (you can buy a separate license from copyright holders in both case).
The QPL is just slightly incompatible with the GPL and it lacks the extensive history and knowledge on its legal effects.
The only non-viral licenses there are are the BSD type licenses. The 'chameleon' licenses are just as viral as the GPL. The Java license is viral. If you include Suns code your whole work is subject to Suns license, just as if you include GPL code it would be subject to GPL license.
And of course, the 'chameleon' licenses are all mutually exclusive so you'll never be able to combine code in a safe and sane way.
Well, in that case you should have no problem with the GPL. It allows you to have control, fix bugs and add features. You may even refrain from sharing those additions and keep it for yourself. However, you may not in any way distribute those additions without complying with the GPL. For an end-user that is no problem. For someone who would profit from making free source proprietary it is, hence the 'free ride'.
As far as telling you it's wrong to have proprietary software, I wont do that (one of the points where I disagree with RMS). It will (in my opinion) suck by it's very nature, much due to the proprietary development process, but there is no moral wrong about it.
There are secondary unethical points that seem to go along with proprietary software tho. I'd consider willfully making it more difficult to switch products immoral. I'd consider forcing people to pay for products they do not want by way of exclustionary contracts immoral. Yes, you can argue these points, but in the end, a lot of people are forced to pay a premium if they want to use an alternative product.
Making free software proprietary is also another matter. That's why I use the GPL on my free source, to avoid it being subjected to what I'd consider unethical practices.
It is a derivative if you cut'n'paste into your own code.
It is a derivative if you read the GPL code while implementing similar features to an extent. This is a fine line to walk. Reading, for example, header files would probably be ok, but looking at an algorithm and duplicating it would not be ok.
Linking a GPL library is a derivative (there are various rationales for this, rather complicated in some cases). That's why you should use LGPL libraries if you wish to make a proprietary product. (IIRC, Lesstif is under LGPL so you wouldnt have a problem. However, your problem could appear. In that case, I think that if you could make a reasonable claim that the original was aimed at using Motif and not the GPL library, it would just be a user error that caused the license problems:) (further, the GPL just requires you to fulfill the terms if you *distribute*, ie, distributing a proprietary product with GPL libraries would be a violation, but if it used Motif then you wouldnt distribute either library with your app).
Using a socket falls under 'use' of the program rather than inclusion of the code. Much like compiling a program with GCC or writing in Emacs. The licenses do not affect what you do with the program.
The *really* hairy and as yet unsolved problems appear when you mix CORBA and loadable modules into it. This far, it appears that CORBA is ok, and proprietary loadable modules are ok if, and only if, they use the exact specified public hooks available in the GPL software. If you must modify the hooks, then you're not allowed to be proprietary. In each of these instances I would certainly ask the copyright holder first tho, because it's a seriously gray area.
The LGPL gives you the *option* to convert that copy to GPL, should you so wish. It does not automatically convert, you have to change the license to the GPL.
As you say, "...distribution of the whole must be on the terms of this License...". Notice the word 'whole' amd the word 'terms' there. When you distribute the parts together, the work must be distributable under the 'terms' of the GPL. As long as the other licenses included in the 'whole' allow distribution under those terms, it is distributable under the GPL. Neither the LGPL or the BSD-without-advertizing have clauses that conflict with the GPL. But once you split the 'whole' up into it's parts, the original licenses apply again. Once you remove the GPL code from such a distribution it does not enforce any terms on the other parts.
You misunderstand the GPL. The *combined* work has to be *distributable* under the terms of the GPL. The LGPL library does not change into GPL, any more than a BSD or otherwise licensed library would. The otherwisely licensed components retain their license. The combined licenses of any and all components must merely be no more restrictive than the GPL. You are free to split up the distribution once you have recieved it and the old licenses of the components will remain in place.
In case you had not noticed... the proprietary software developers do anything and everything in their power to make sure you cannot switch to a competing product.
Sure you can switch to Word Perfect after having used Word. If you feel like spending a lot of time converting all your existent documents...
You essentially misunderstand the GPL. It is *not* about *your* freedom to do whatever you want.
The GPL ensures the continued freedom of the code. I want any software I contribute to continue being free. You are free to use it as long as you do not compromize that freedom. The GPL ensures that proprietary software developers cannot take my code and 'embrace and extend' it to their proprietary advantage for free.
If you want something you can make proprietary applications with, please get in touch and I'm sure we can work something out. For a significant amount of money. This isnt a free ride. Either you share and respect everyones equal freedom and right to the contributed source and it's evolution and pull your weight or you pay. It's as simple as that.
RMS is probably right in the longer perspective about using free software too. Buying Oracle now may mean that you avoid having to buy more hardware, or save 1000 hours of programming time. But, will you feel the same way when you've paid for Oracle again? And again? And again? And again? And again? Eventually the money you save now would have been better spent improving the free software available. Proprietary software companies dont survive just by selling you their software once. Think in terms of decades rather than the next three months. Because those timescales are what is important to Free Software.
Ah, you're not interested in Free Software, you're interested in a free ride.
Tell me, why should I care? Why should I do anything for you? You obviously dont want to contribute back, despite the hard work done by others.
If you havent figured it out yet, the GPL is not about *your* freedom. It is about the freedom of the *code*. Code placed under GPL is guaranteed to be free. It is *not* for you to proprietarize.
a) If you write software under a freer license (ie; BSD or MIT X) anyone can take advantage of your contribution and deny it to others. If you write under a freer license, that is what you want. So why would you complain that someone does place it under GPL (or other license)? If you dont want people to deny others the ability to take advantage of your contribution, GPL it.
b) Again, you're 'including' GPL code voluntarily. But you dont *have* to GPL that code. You just have to make sure you fulfill the terms of the GPL. You can BSD the code, but the combination of the licenses have to be compatible, so the BSD code cannot be proprietarized, which pretty much makes the BSD license on your code of limited importance.
I must wonder how you came to that conclusion... Had Mozilla been GPL it would likely have garnered more serious outside support from various groups like the desktop projects who could have integrated it as a primary browser, the GPL browser projects who could have done joint development, etc. As is, code migration is difficult.
First, where is the evidence supporting any such conclusion? With the abounding 'community' licensing shemes, I have yet to see a single such licensed software product recieve any significant amount of outside corporate or volunteer contributions. On the other hand, there are many examples, like gcc, (X)Emacs, Linux, FreeBSD, etc that have recieved significant corporate contributions.
Second, most licenses are in their nature viral. There are only a few that arent, like the BSD without advertizing clause and the MIT X license. Sun's Java license is in no way different in virulence from the GPL. You can obtain commercial licensing of GPL software, just as you can with Sun's. Just the same, if Sun went out of buisness, you would be left standing with a virtually unusable license, since there would be nobody left to license it from.
The GPL is a long term viable license. If the copyright holder(s) cannot be contracted for commercial license it just renders the code entirely free on a level playing field and can be picked up by someone else. With the commercial licenses it is usually very uncertain that the code would survive copyright holder ceasing development.
In the end, there are no fundamental differences. And the differences that exist are just in favour of the GPL.
JWZ brings up several interesting points in his excuses for Mozilla.
Primarily, he brings up what I think will be the most disappointing issue for companies releasing open source software. You probably wont *get* that many contributors. There are a number of reasons for this:
Licenses; most OSS licenses that have emerged from corporate lawyer departments are biased in favour of the originating company in several ways. That is fine. That will get you bugfixers when you ship your product and people start getting the bugs. But it wont get you any major contributors. Most Open Source hackers are either of the BSD or the GPL crowd, and something they both have in common is the level playingfield. For Mozilla, had it been GPL, it would probably have garnered a much higher level of support from the Linux desktop projects, and likely from commercial Linux distributors too. They might have gotten some code forks, but most work would be sharable.
Corporate code stinks; Anyone involved in major corporate programming projects is aware of the problem. Since corporate code is made of much tighter groups compared to most free software projects they can communicate in a closer fashion. Free software has to embrace modularity and sane abstraction simply to survive and be able to go forward. This makes it possible to work in a much more detatched fashion, where people can work on code without being able to talk to the other members about the changes they do.
Tools and portability; Corporate software is often built using commercial tools. Those tools are similarily not geared towards the issues that surround worldwide collaborative portable projects. Compare, for example, the usual project tools used for Windows applications with gcc, autoconf, CVS and company. The Windows tools are entirely geared towards being a monolithic application development environment, and you work around the bugs in the environment in your code. The free software development tools are geared towards modularity and portability. And there is an interchange between the tools development and the application development.
All these factors and more will result in bitter disappointment for corporate source code releases if they want a free ride.
Mozilla has several advantages by now tho. While JWZ may be tired of it, it *has* come a long way. The NPL and MPL are, as far as the commercial licenses go, among the better ones. They've worked through a lot of the codebase, and I think they'll get more active outside participation as it gets closer to a working product. They've made some hard decisions that will eventually pay off.
First, I'd like to say I'm grateful to ESR for the publicity work he does on the behalf of the Open Source community. I have a deep respect for his work and his accomplishments.
But I think ESR misses several points.
1) The article focuses in part on OSI's negotiations with Apple. If ESR is representing OSI as being some sort of spokesorganization for the community he's rather mistaken. The trust credits for OSI are not that large. The organization simply has not been around for long enough. If anyone could hold any claim to being a spokesorganization it would be the FSF because while not everyone agrees with the FSF politics and RMS, at least we know where they stand, and they're sticking to their mission. With OSI, who knows? We have the stated goals but no history and no real track record. We have some history on the members, but little record of the actual policies and political position.
The FSF is also aware that they represent a subset of the free software community. That awareness isnt entirely apparent from OSI. Not everyone will be happy with the commercial orientation of the OSI. Those who are not have every right to express their opinion.
Of course negotiation with Apple will be easier. There are only two parties involved, Apple who wants to keep as much control as they can and still call it Open Source and OSI who wants to make certain it falls within the OSD. But if you wish to be an ambassador for the community you cannot just represent OSI, because OSI does not represent the community. And being an ambassador for the rather opinionated political minds of the community is a lot harder. Unfortunately, the ambassador who negotiates outside of his authority will not be met with undivided feelings of gratitude at his homecoming.
2) The Open Source trademark suffers from similar problems. It has a media value, but it's uncertain what it really means. The dispute around it and the use of it to legitimize debatable licenses dont increase the trust either. If a company wishes to place code under the GPL, again, we know what that means. If it's 'Open Source Compliant', who knows? One thing is sure, if it's not BSD or GPL it will get torn to shreds unless it's totally watertight and of some real worth to the free software community, not just a free bugfix ride. Any such license certified compliant just reduces the value of the Open Source trademark, and the less value it has the less benefit there will be for commercial companies to comply to the terms. Trust isnt just there. It has to be earned.
3) Apple and OSI published the APSL. If you go out in public with something you get a public response. If you wish to avoid public responses you keep negotiation under wraps until such a point that all parties who are likely to voice an opinion are satisfied, or you are at least aware what the public response will be. That is a lesson anyone involved in publicity will have to learn.
Linus not an egotist? Hmmm. I think you could find several people who would not agree with that. He does have rather strong opinions on some things. However, it seems the opinions he cares to strongly voice are mostly technical things, and things that are possible to discuss in a rational manner for a lot of people.
You're right about the road Linus is taking. It is the only one that is possible to take and keep out of the way of the flames. Anyone can hold strong opinions about politics, but only a few can, or even cares enough to, argue about more arcane subjects like kernel policy.
Writing complicated software takes time and energy if you go about it in the wrong way. Companies usually do.
Free software can build upon an ever increasing codebase and do incremental development in a highly decoupled modularized way.
Closed company produced software often goes the opposite way with monolithic masses of code. That requires a lot more time and energy, and for each time it has to be written from scratch, which is a waste of that time and energy.
Of course there are a lot of programmers drawn into the industry because of the money. They often are not that good at their job, compared to the altruists who often hold a deep interest in both learning and working on code.
And, of course, there is no conflict between free software and making money. Nobody is going to develop a financial system for a large corporation for free. They might make it Free, but they'll charge a lot from the corporation. Mass consumer software like word processors, operating systems, etc will probably fall by the wayside because so many have an interest in them working, but vertical market applications will remain a profitable buisness wether Free or not.
With the current untimely binary compatibility breakage between EGCS compiled libs and some other combinations I'm getting rather leery of contributed RPM's anyway. I'll prefer the compile from source thing until these problems are worked out rather than spend another couple of hours trying to figure out where that unresolved __register_frame_info symbol came from.
It Must Be Magic. :) Seriously, no, that simply doesnt happen. Genes from plant _SUB_species A may combine with genes from plant subspecies B and form plant subspecies C tho. While that may be a slight problem with closely related weeds and some useful plants, it's not that big a deal. Genes dont just jump around.
And I agree with the penicillin reference being bad. It just proves that nature will evolve another way to penetrate the resistance eventually.
The penicillin resistance in bacteria is a large part our own fault tho. Extreme overuse of antibiotics is pretty much what has accelerated the evolution of resistance so fast. If we hadnt had farmers pumping animals full of antibiotics all the time it might have been another couple of centuries before the resistant strains would start appearing.
You should realize as soon as possible that You Have No Chance To Be The Next Bill Gates.
Dont get into the mass consumer software buisness. It will be gone soon enough. As it is today, if you become successful, you'll be bought out/killed off by Microsoft, or you'll be outevolved by free software.
If you do want to get into mass marketing, you should probably aim at games. They will be a profitable, altho difficult, market for the forseeable future. That market wont be targetted by free software either for a long time, if ever, and it's not a one-product-only market.
Otherwise, leverage off free software and create vertical market corporate systems. Good profits and not an endangered market either. Incidentally, copyrights dont matter much there anyway, since they have a tendency to be one-off to a few solutions.
Or just go into consulting and you'll have a safer life.
The difference between a copyright and a deed is simple; physical property cannot be utilized by many without decreasing the use the 'owner' had of it. With intellectual property you do not cease to have full use of your property just because someone else also has it.
Go look at www.ipnot.org if you wish to have a more detailed discourse on both the history of and the substance of intellectual property.
Well, as far as being a conspiracy, it's a pretty benevolent one for the big corporations. Well, except Microsoft. But most big corporations are not in the software monopoly buisness, and they stand to gain a lot through lower licensing costs and higher reliability.
Well, if you use any Qt code in your application. On the other hand, if you didnt use any Qt code and QPL'ed your application, then you would probably hold the right to relicense the code someone else created as a derived work of your code.
The major problem is that as far as I know, the phrase Initial Developer has not been tried in court. It is used to denote the original copyright holder to the oldest included code, but that can rapidly become fuzzy if you include code from other sources.
You also have the difficulty that you cannot revoke an Initial Developership, so you may be in the clear as long as you include code from one other source (altho they retain rights to the code that you will not have), but if you have two different sources where you get code with two different Initial Developers, then you're in a very precarious legal situation. You'll probably end up with an illegal work (since the QPL includes a disclosure clause it would be illegal to even create such a work for private use).
Ah, yes, there's that one too. Theoretically it could be mixed, I think, but you might have to do it by generating patches. The initial developer would probably be the copyright holder to the oldest code included in the project, so if you include code, someone else would probably get the rights to license in any fashion.
There is no fundamental difference between the QPL and the GPL, except the QPL retains a tighter control over the software evolution through the patches clause and the disallowing of private use. The QPL is just as viral as the GPL (include QPL licensed code (through patches) and you're subject to the QPL for the rest of the code too, if distributed together) and it does not allow authors to charge for the software any more or less than the GPL (you can buy a separate license from copyright holders in both case).
The QPL is just slightly incompatible with the GPL and it lacks the extensive history and knowledge on its legal effects.
The only non-viral licenses there are are the BSD type licenses. The 'chameleon' licenses are just as viral as the GPL. The Java license is viral. If you include Suns code your whole work is subject to Suns license, just as if you include GPL code it would be subject to GPL license.
And of course, the 'chameleon' licenses are all mutually exclusive so you'll never be able to combine code in a safe and sane way.
Well, in that case you should have no problem with the GPL. It allows you to have control, fix bugs and add features. You may even refrain from sharing those additions and keep it for yourself. However, you may not in any way distribute those additions without complying with the GPL. For an end-user that is no problem. For someone who would profit from making free source proprietary it is, hence the 'free ride'.
As far as telling you it's wrong to have proprietary software, I wont do that (one of the points where I disagree with RMS). It will (in my opinion) suck by it's very nature, much due to the proprietary development process, but there is no moral wrong about it.
There are secondary unethical points that seem to go along with proprietary software tho. I'd consider willfully making it more difficult to switch products immoral. I'd consider forcing people to pay for products they do not want by way of exclustionary contracts immoral. Yes, you can argue these points, but in the end, a lot of people are forced to pay a premium if they want to use an alternative product.
Making free software proprietary is also another matter. That's why I use the GPL on my free source, to avoid it being subjected to what I'd consider unethical practices.
Some of your concerns are adressed.
:) (further, the GPL just requires you to fulfill the terms if you *distribute*, ie, distributing a proprietary product with GPL libraries would be a violation, but if it used Motif then you wouldnt distribute either library with your app).
It is a derivative if you cut'n'paste into your own code.
It is a derivative if you read the GPL code while implementing similar features to an extent. This is a fine line to walk. Reading, for example, header files would probably be ok, but looking at an algorithm and duplicating it would not be ok.
Linking a GPL library is a derivative (there are various rationales for this, rather complicated in some cases). That's why you should use LGPL libraries if you wish to make a proprietary product. (IIRC, Lesstif is under LGPL so you wouldnt have a problem. However, your problem could appear. In that case, I think that if you could make a reasonable claim that the original was aimed at using Motif and not the GPL library, it would just be a user error that caused the license problems
Using a socket falls under 'use' of the program rather than inclusion of the code. Much like compiling a program with GCC or writing in Emacs. The licenses do not affect what you do with the program.
The *really* hairy and as yet unsolved problems appear when you mix CORBA and loadable modules into it. This far, it appears that CORBA is ok, and proprietary loadable modules are ok if, and only if, they use the exact specified public hooks available in the GPL software. If you must modify the hooks, then you're not allowed to be proprietary. In each of these instances I would certainly ask the copyright holder first tho, because it's a seriously gray area.
The LGPL gives you the *option* to convert that copy to GPL, should you so wish. It does not automatically convert, you have to change the license to the GPL.
As you say, "...distribution of the whole must be on the terms of this License...". Notice the word 'whole' amd the word 'terms' there. When you distribute the parts together, the work must be distributable under the 'terms' of the GPL. As long as the other licenses included in the 'whole' allow distribution under those terms, it is distributable under the GPL. Neither the LGPL or the BSD-without-advertizing have clauses that conflict with the GPL. But once you split the 'whole' up into it's parts, the original licenses apply again. Once you remove the GPL code from such a distribution it does not enforce any terms on the other parts.
You misunderstand the GPL. The *combined* work has to be *distributable* under the terms of the GPL. The LGPL library does not change into GPL, any more than a BSD or otherwise licensed library would. The otherwisely licensed components retain their license. The combined licenses of any and all components must merely be no more restrictive than the GPL. You are free to split up the distribution once you have recieved it and the old licenses of the components will remain in place.
In case you had not noticed... the proprietary software developers do anything and everything in their power to make sure you cannot switch to a competing product.
Sure you can switch to Word Perfect after having used Word. If you feel like spending a lot of time converting all your existent documents...
You essentially misunderstand the GPL. It is *not* about *your* freedom to do whatever you want.
The GPL ensures the continued freedom of the code. I want any software I contribute to continue being free. You are free to use it as long as you do not compromize that freedom. The GPL ensures that proprietary software developers cannot take my code and 'embrace and extend' it to their proprietary advantage for free.
If you want something you can make proprietary applications with, please get in touch and I'm sure we can work something out. For a significant amount of money. This isnt a free ride. Either you share and respect everyones equal freedom and right to the contributed source and it's evolution and pull your weight or you pay. It's as simple as that.
RMS is probably right in the longer perspective about using free software too. Buying Oracle now may mean that you avoid having to buy more hardware, or save 1000 hours of programming time. But, will you feel the same way when you've paid for Oracle again? And again? And again? And again? And again? Eventually the money you save now would have been better spent improving the free software available. Proprietary software companies dont survive just by selling you their software once. Think in terms of decades rather than the next three months. Because those timescales are what is important to Free Software.
Heh. Wouldnt those charges hold water against... um... Microsoft?
Ah, you're not interested in Free Software, you're interested in a free ride.
Tell me, why should I care? Why should I do anything for you? You obviously dont want to contribute back, despite the hard work done by others.
If you havent figured it out yet, the GPL is not about *your* freedom. It is about the freedom of the *code*. Code placed under GPL is guaranteed to be free. It is *not* for you to proprietarize.
a) If you write software under a freer license (ie; BSD or MIT X) anyone can take advantage of your contribution and deny it to others. If you write under a freer license, that is what you want. So why would you complain that someone does place it under GPL (or other license)? If you dont want people to deny others the ability to take advantage of your contribution, GPL it.
b) Again, you're 'including' GPL code voluntarily. But you dont *have* to GPL that code. You just have to make sure you fulfill the terms of the GPL. You can BSD the code, but the combination of the licenses have to be compatible, so the BSD code cannot be proprietarized, which pretty much makes the BSD license on your code of limited importance.
I must wonder how you came to that conclusion... Had Mozilla been GPL it would likely have garnered more serious outside support from various groups like the desktop projects who could have integrated it as a primary browser, the GPL browser projects who could have done joint development, etc. As is, code migration is difficult.
First, where is the evidence supporting any such conclusion? With the abounding 'community' licensing shemes, I have yet to see a single such licensed software product recieve any significant amount of outside corporate or volunteer contributions. On the other hand, there are many examples, like gcc, (X)Emacs, Linux, FreeBSD, etc that have recieved significant corporate contributions.
Second, most licenses are in their nature viral. There are only a few that arent, like the BSD without advertizing clause and the MIT X license. Sun's Java license is in no way different in virulence from the GPL. You can obtain commercial licensing of GPL software, just as you can with Sun's. Just the same, if Sun went out of buisness, you would be left standing with a virtually unusable license, since there would be nobody left to license it from.
The GPL is a long term viable license. If the copyright holder(s) cannot be contracted for commercial license it just renders the code entirely free on a level playing field and can be picked up by someone else. With the commercial licenses it is usually very uncertain that the code would survive copyright holder ceasing development.
In the end, there are no fundamental differences. And the differences that exist are just in favour of the GPL.
JWZ brings up several interesting points in his excuses for Mozilla.
Primarily, he brings up what I think will be the most disappointing issue for companies releasing open source software. You probably wont *get* that many contributors. There are a number of reasons for this:
Licenses; most OSS licenses that have emerged from corporate lawyer departments are biased in favour of the originating company in several ways. That is fine. That will get you bugfixers when you ship your product and people start getting the bugs. But it wont get you any major contributors. Most Open Source hackers are either of the BSD or the GPL crowd, and something they both have in common is the level playingfield. For Mozilla, had it been GPL, it would probably have garnered a much higher level of support from the Linux desktop projects, and likely from commercial Linux distributors too. They might have gotten some code forks, but most work would be sharable.
Corporate code stinks; Anyone involved in major corporate programming projects is aware of the problem. Since corporate code is made of much tighter groups compared to most free software projects they can communicate in a closer fashion. Free software has to embrace modularity and sane abstraction simply to survive and be able to go forward. This makes it possible to work in a much more detatched fashion, where people can work on code without being able to talk to the other members about the changes they do.
Tools and portability; Corporate software is often built using commercial tools. Those tools are similarily not geared towards the issues that surround worldwide collaborative portable projects. Compare, for example, the usual project tools used for Windows applications with gcc, autoconf, CVS and company. The Windows tools are entirely geared towards being a monolithic application development environment, and you work around the bugs in the environment in your code. The free software development tools are geared towards modularity and portability. And there is an interchange between the tools development and the application development.
All these factors and more will result in bitter disappointment for corporate source code releases if they want a free ride.
Mozilla has several advantages by now tho. While JWZ may be tired of it, it *has* come a long way. The NPL and MPL are, as far as the commercial licenses go, among the better ones. They've worked through a lot of the codebase, and I think they'll get more active outside participation as it gets closer to a working product. They've made some hard decisions that will eventually pay off.
First, I'd like to say I'm grateful to ESR for the publicity work he does on the behalf of the Open Source community. I have a deep respect for his work and his accomplishments.
But I think ESR misses several points.
1) The article focuses in part on OSI's negotiations with Apple. If ESR is representing OSI as being some sort of spokesorganization for the community he's rather mistaken. The trust credits for OSI are not that large. The organization simply has not been around for long enough. If anyone could hold any claim to being a spokesorganization it would be the FSF because while not everyone agrees with the FSF politics and RMS, at least we know where they stand, and they're sticking to their mission. With OSI, who knows? We have the stated goals but no history and no real track record. We have some history on the members, but little record of the actual policies and political position.
The FSF is also aware that they represent a subset of the free software community. That awareness isnt entirely apparent from OSI. Not everyone will be happy with the commercial orientation of the OSI. Those who are not have every right to express their opinion.
Of course negotiation with Apple will be easier. There are only two parties involved, Apple who wants to keep as much control as they can and still call it Open Source and OSI who wants to make certain it falls within the OSD. But if you wish to be an ambassador for the community you cannot just represent OSI, because OSI does not represent the community. And being an ambassador for the rather opinionated political minds of the community is a lot harder. Unfortunately, the ambassador who negotiates outside of his authority will not be met with undivided feelings of gratitude at his homecoming.
2) The Open Source trademark suffers from similar problems. It has a media value, but it's uncertain what it really means. The dispute around it and the use of it to legitimize debatable licenses dont increase the trust either. If a company wishes to place code under the GPL, again, we know what that means. If it's 'Open Source Compliant', who knows? One thing is sure, if it's not BSD or GPL it will get torn to shreds unless it's totally watertight and of some real worth to the free software community, not just a free bugfix ride. Any such license certified compliant just reduces the value of the Open Source trademark, and the less value it has the less benefit there will be for commercial companies to comply to the terms. Trust isnt just there. It has to be earned.
3) Apple and OSI published the APSL. If you go out in public with something you get a public response. If you wish to avoid public responses you keep negotiation under wraps until such a point that all parties who are likely to voice an opinion are satisfied, or you are at least aware what the public response will be. That is a lesson anyone involved in publicity will have to learn.
Linus not an egotist? Hmmm. I think you could find several people who would not agree with that. He does have rather strong opinions on some things. However, it seems the opinions he cares to strongly voice are mostly technical things, and things that are possible to discuss in a rational manner for a lot of people.
You're right about the road Linus is taking. It is the only one that is possible to take and keep out of the way of the flames. Anyone can hold strong opinions about politics, but only a few can, or even cares enough to, argue about more arcane subjects like kernel policy.
SAP runs on most commercial unix platforms, mainframes, and some obscure OS from Redmond for demo purposes.
It's a bitch to setup, but wouldnt it be a cool replacement for Quicken under Linux? (heeh)