On Friday 31 Dec 2010, Kenneth Gonsalves wrote:
On Thu, 2010-12-30 at 20:42 +0530, Raj Mathur (राज माथुर) wrote:
That's because your business model is based on a flawed premise: that by giving a GPL software to one person you are obliged to share it with everyone in the world.
my dear chap, I am talking about open source software - where the code is up in a public repository - as the key part of my business model is to get outside developers involved. It is not only the best model to develop good software at lower costs and sustain the app - it is also an affirmation of the stand that it is immoral to keep source code closed.
That's totally at variance with what you said earlier. I was responding to your original statement, which, to quote you, is:
The second scenario is that I write the software on my own time. I own the copyright. I can sell it to the client for a fee. But here is the catch: If I have licensed it under the GPL, the moment I sell it to the client, I have distributed it - and hence am obliged to give a copy of the source code to anyone who asks. So only the client pays for it, the rest of the world gets it free. This is impossible - the client will demand his money back - why should he pay while his competitors are all getting it free? - this business model will not work.
No mention of public repositories of open source there. I have no issue if you wish to make another point, but your original point has nothing to do with your follow-up.
I am no expert on the GPL and it is quite possible that what you say is true - I have seen any number people/companies using the GPL to develop software in a closet - and keep it there. Which is why I avoid the GPL as restrictive of freedom.
It appears that you're badly confused between development methodology and licence. To clarify, let me give you a couple of scenarios:
1. You develop your software on a public repository, asking for contributions from the public. As long as you have it under a FOSS licence (GPL, BSD, or any other), you cannot stop people from downloading the source and using it.
Again regardless of the licence, each person who downloads the source code from the repository can choose to keep it herself or redistribute it. She can also choose to keep modified versions of the code for herself or redistribute it.
2. You develop your software in private manner for a single client. Depending on which FOSS licence you choose -- copyleft (GPL) or open (BSD, etc.) -- your obligations to provide source code to your client will be different. If you have developed under the GPL, you are obliged to provide the source code of the package to the client once you give her the binaries. If under a non-copyleft licence, you don't have that obligation.
The GPL is obviously better in the second scenario, since your client will have the source and can make improvements or changes herself if she so desires. If the software is under a non-copyleft licence, the client may or may not get the source, depending on your contract and/or your whim.
In both scenarios, if the person who gets the source modifies it and redistributes modified binaries to other people, she is obliged to provide the modified source code too if the original software is under the GPL. If the original software is under a non-copyleft licence, she is NOT obliged to provide the source, and your software can be made or embedded into proprietary products.
I agree that software licensing is a complex issue, but there are enough resources available on the Internet to help anyone understand the difference between GPL vs non-GPL obligations, pros and cons of each type of licence, development methodologies, trademarks and copyrights and patents. I'd be glad to point you in the direction of a few introductory texts if you're still confused. As for the GPL being restrictive of freedom -- well, I have no comment since the belief obviously springs from a lack of understanding of licensing.
Regards,
-- Raj