Re: [guppi-list] Re: use of GSL in guppi



> Now it looks like most of the good free numerical/statistical code out
> there (GSL, R) is GPLed.  Since I don't want to reinvent the wheel, my
> options seem to be:
> 
>   (1) Switch Goose to GPL.
> 
>   (2) Convince everybody else to go LGPL, or convince everybody else to
>       distribute their code to me under the LGPL.
 
> On the other hand, I'm not violently opposed to commercial software,
> as long as nobody forces me to use it.  And my goal is really to get
> the broadest use possible for Goose (and the rest of this stuff), and
> maybe LGPL gives me a slighly larger population of users.
> 
> So I guess that I'll switch Goose to GPL and start grabbing code from
> R and relying on GSL, unless anyone can think of a good reason not to.

As you would think, I opt for 2).  

Allow me to explain my situation for you so you get a chance to have a look at
it from my point of view, and see what I have to offer for you.  Personally,
I'm all in favour of free software and support the open source movement. 
Therefor I have been working on LyX, a free word processing package, for many
years, and continue to do so in my free time.  See http://www.lyx.org for more
info about this project.  However, I have to make a living, and since I can't
do that by writing free software, I'm employed to develop commercial software.
In the current project (a statistical application designed for professionals
and scientists in the medical area), I had the option to use a commercial
statistical package shrink-wrapped more or less with the features we need, but
I convinced my employer of the advantages of the open source development model.
 It's not realistic to put the entire application under an open source license
at this point in time (we're a small company that can't afford to take this
risk, since we work in a small area with lots of competition).  So, as a start,
I got his permission to use LGPL code for the statiscial component of the
program, and have since been looking around for open source statistical
packages.  I obviously found Goose, which had the obvious advantage of being
LGPL, allowing it's use in a commercial package.

So, if you change Goose to be GPL rather than LGPL, I can't use it in my
project, and I would have to settle with the commercial application.  This also
implies that my boss would be right in some of his objections to open source: 
It's hard to rely oin.  But, of course, you can do what you want to do.  Your
perspective is to get a nice open source program done and offer it to the free
software community, with all the features that you would like to have, and I
understand this.

So I understand that it's too much to ask for you to let my commercial
interests dictate what you do.  So I have to offer something in return.  What I
can offer is this:  Since we have to get this commerical program done, I get
paid for working on the statistical back-end.  Therefor, any improvements I
implement for the statistical part will go right back to the free software end,
primarily because of the requirements of the LGPL, but also because I am all in
favour of this movement.
In a way, this amounts to having a part time employee attached to your project.
Furthermore, since our application is developed under the Microsoft operating
system, I would ensure that Goose would be ported to and usable on this
platform.  (And since Guppi is GTK, our program would not be any direct
competition to Guppi).

Specifically, I and my coworkers would implement a full suite of non parametric
statistical routines for Goose.  We need to have such a full suite of non
parametric tests implemented including, but not limited to, Chi^2
goodness-of-fit test, Kolmogorow-Smirnow one/two-sample test, one-sample runs
test, change points test, McNemar change test, Wilcoxon signed ranks test,
permutation test for paired replicates, Fisher exact test for 2x2 tables,
Median test, Wilcoxon-Mann-Whitney test, robust rank-order test, Siegel-Tukey
test for scale differences, mosses rank-like test for scale differences,
Mantel-Haenszel Chi^2 test, Cochran Q test, Friedman two-way analysis of
variance by ranks, Kruskal-Wallis one-way analysis of variance, Cramer
coefficient, Phi coefficient, Kappa coefficient, Asymmetrical association (the
lambda statistic), Spearman rank-order correlation coefficient, Kendall
rank-order correlation coefficient, Kendall partial rank-order correlation
coefficient, Kendall coefficient of concordance, Kendall coefficient of
agreement, Somer's index of asymmetric association, etc.

Also, a set of parametric statistics including some Monte-carlo simulations,
Cox's proportional-hazards model and others.  Finally, some epidemiological
calculations including birth rate, fertility rate, and different mortality
rates.  We have a professor in statistics attached to the project, and he will
review that all implementations are done in a statistically correct and safe
manner.

So, I ask that you at least try to keep Goose LGPL.  I am willing to help to
try to convince the relevant parties of changing the license as much as I can. 
I see that mr. Mark Galassi has a Cygnus e-mail, so it would seem that he is
informed about the problems of using open source software together with
commercial software.
If this fails, I would ask you that you release the improvements you have been
doing on Goose in a new LGPL version before it is contaminated with GPL
software, and I might be able to use that as the building block, and thus spawn
an LGPL branch of Goose.  But in that case, it seems more likely that we would
go for the commercial library, because the advantages of the open source
development model disappears (these advantages only make impact in projects
that are alive and worked on by more than one party.)

Also, allow me to mention that putting Goose under the GPL would prevent it
from being used in any open source applications that are linked with any
commercial library, including Motif, Qt, XForms and practically any library for
Microsoft Windows.  In my opinion, this severely restricts the intent of
letting Goose be a general-purpose statistical library (this applies for GSL
too).

As a minor, but never the less important, point, I would also serve as a
licensee review to ensure that there are no licensing problems (as there are
now with Goose regarding the ACM code.  Btw. those will not be solved by making
it GPL.)

Finally, let me once again reiterate that I'm all pro open source, and I agree
that GSL is too good to ignore.  The ideal solution as I see it would be to
merge Goose with GSL, provided that the license would be LGPL.  This would
bring the benefits of a part time commercial employee to the project for at
least two years to come, and thus give it a some more momentum and thus
increase the chance of it to become the standard library in this area.

Thanks for listening,

Asger Alstrup



[Date Prev][Date Next]   [Thread Prev][Thread Next]   [Thread Index] [Date Index] [Author Index]