On 02/01/2010 11:19 PM, Markus Weisner wrote:
I am looking for some advice on licenses.  Here is my situation:

Over the last couple years, I have developed a rather large number of fire
department analysis functions.  I am in the process of trying to publish
some packages to make these functions available to the public.  I am trying
to release two packages that essentially define S4 classes for common types
of fire department data.  Then, I would like to publish a package that
essentially reads in these fire department data types and returns analysis
results.  My concern is that I may eventually want to build and sell some
proprietary functions and I am trying not to box myself out of this future
option.  It is my understanding that if I use the GPL license, all work
based on my packages would have to take on the GPL license (effectively
making it impossible to sell software).

That only applies to other people unless you choose to incorporate other people's GPL'd code into your package. The GPL imposes no conditions on the copyright holder, it's a license given by the copyright holder to other people to allow them to do things (basically copying, modifying, and redistributing) that otherwise would be copyright violations.

The obligation the other people need to follow is that *they* must offer the GPL license if they include your code. So they'll have some trouble commercializing it (but it's not impossible to commercialize GPL'd code, it's just supposed to be impossible to do it in a closed source way).

The "trap" with GPL is that other people may make improvements to your code that you'd like to use. If you do, they become copyright holders as well, and then the combined work has to be licensed using GPL unless all of you can agree otherwise. But at that point you've accepted a free contribution from someone else, it's only fair to share the ownership of the product with them.

 It looks like the Lesser General
Public License (LGPL) may suit my needs by allowing me to make public my
current work without eliminating the possibility of future proprietary
work.  I have a couple questions I am hoping somebody can answer.


   - It says that "libraries" licensed under a LGPL can be used by
   proprietary software.  What is meant by libraries?  Are class definitions
   and functions considered libraries?
   - If I use the LGPL for all my packages, do I maintain the right to build
   and sell software that is based on these LGPL packages?  For instance, could
   I use the class definitions from a LGPL package as inputs for analysis in a
   piece of proprietary software?
   - Other than potentially allowing competitors to also use my LGPL
   packages in their proprietary software, are there any big disadvantages to
   using a LGPL?
   - If somebody improves on my LGPL S4 class definitions, can I still then
   use them in a proprietary package despite their being modified?

The LGPL puts weaker constraints on users of your code. You still maintain all the rights you ever did, but it doesn't stop them from commercializing closed-source products using your code as a library, whatever that means.

Duncan Murdoch


I am a big supporter of the open source community and have personally
benefitted greately from open source software.  My intentions are to release
my work as open source, but just don't want to be boxed out of future
proprietary developments.  These licenses can be pretty confusing, so I
appreciate any information that can help me figure this out.

Thanks,
Markus

        [[alternative HTML version deleted]]

______________________________________________
R-help@r-project.org mailing list
https://stat.ethz.ch/mailman/listinfo/r-help
PLEASE do read the posting guide http://www.R-project.org/posting-guide.html
and provide commented, minimal, self-contained, reproducible code.

______________________________________________
R-help@r-project.org mailing list
https://stat.ethz.ch/mailman/listinfo/r-help
PLEASE do read the posting guide http://www.R-project.org/posting-guide.html
and provide commented, minimal, self-contained, reproducible code.

Reply via email to