From: Chalmers Date: 2003-07-10T07:02:00+09:00 Subject: Re: OT: GPL - was Re: My brief and torrid affair with Ruby. Sorry for this long post and rambling. Just skip if you're not in the mode. License discussions intrigues me but I never think I've really understood why people are so bothered with the GPL... Hal E. Fulton skrev den Thu, 10 Jul 2003 05:28:56 +0900: > Suppose I want to write killer app X, and there is a library > Y (one and only one) that suits my purposes well. The others > are incomplete, buggy, inferior, written in COBOL, whatever. > > What I *want* to do is use library Y and put my own app X > under my own FooBar license. Oops! Library Y is GPL. > > My choices become: > 1. Don't write app X > 2. Spend hundreds of man-hours rewriting library Y > 3. GPL my app > > No, no one is "forced" to pick (3). But often the perception > is that (1) and (2) are even more unthinkable. That is why > people say that they are "forced" to GPL their code. > I probably shouldn't be getting into this but I have a problem to understand why people do not like GPL. Maybe if we can clarify the different persons that are in the process of developing app X and their motives I can understand. I hope we can agree that the GPL'ed lib Y hinders app-X-developers that want to sell X without releasing the source code (lets call it the "cathedral-X" strategy). From my understanding this is the essence of the GPL: preventing cathedral-X. However, people that want to do cathedral-X might still be able to go ahead. The GPL only forces them to contact the author of Y and ask for permisson to do cathedral-X. So Y-author still has the power to decide what to allow. How can this be a bad thing? If nothing else it enables Y to make a list of the different (commercial) apps in which Y is used. So a fourth possible action on Hal's list would be: 4. Talk to author of Y and ask permission to use lib Y in app X even if X is not open-sourced. If Y is not willing to allow this then so be it; its his decision since he wrote Y. Now, if you're not going for cathedral-X your goal is to release X as open-source. Then the only way I see GPL'ing can irritate you is if you want to allow users of app-X to take it and apply it in a cathedral- X++ app. You don't want to force anyone using your code into doing anything. "Who is this RMS/FSF telling me what to do to my code?", you cry to the SE gods. You're going for the almost-any-use-of-X strategy (almost is for some common sense things like don't use the same name and at least acknowledge who you got it from). I think I can understand the almost-any-use-of-X types and why they don't want to GPL their code. Would they be ok if Y is still under GPL but they were allowed to have (app-X - Y) under some other license? Maybe their needs could be addressed with a GPL-variant that do not push GPL on X but still does not allow cathedral-X++ since the author of Y should have a say in that. Is LGPL the solution for this? If you go for the bazaar-X strategy and still want any derivative of X to be open then why do you have a problem with GPL'ing? Please nelighten me on this; I'm sure my thinking is much to simple. In my view GPL is a nice way to take part in and allowing a large software ecosystem that promotes learning and building on others. You can add your own little value while preventing commercial entities to "steal" your work and make it part of something outside of the ecosystem. Or you can allow the latter as long as they give a little something back to you. Is that really un-reasonable? The idea of using BSD-style license for most of the stuff and GPL for your innovative was a good one; I'll try to adopt that. Regards, Robert Feldt