[GRASSLIST:1370] Re: creating a desktop GIS application using GRASS

My 1 cent (after the exchange rate) on the subject of licensing and some
random unstructured ideas:

[ Note to the reader:
   I won't feel bad if you hit delete and move on at this point]

My general thoughts are that relicensing 5.0/5.3 is impossible, 5.7
vector libraries maybe possible but not easy, and new 5.7+ LGPL raster
libraries should be possible, but it would need a new LGPL libgis2 for
things it talked to. And things libgis2 talked to would need to be
rewritten as well. It quickly becomes start the entire GIS from scratch.
[Do I have that right? Can a LGPL library not link to historical GPL?]

I am not too opposed to the LGPL/dual license for new stuff (it's the
authors' choice), but existing stuff is very messy.

Personally I prefer the GPL, but as I'm not the author of any of the
libraries it legally isn't my decision, I can just post to the mailing
list with my opinion like anyone else. If the authors of the libraries
want LGPL, that's their choice. I'm personally somewhat reluctant to
claim authorship over much more than large parts of d.legend (which will
be GPL). I'd also mention that I come from an academic background and a
lot of my support for the GPL comes from being sickened by the
corporatization of Universities all over the world. It's killing the
free exchange of scientific knowledge and Human growth. But that's
another rant. I also worked for a private engineering company for a
few years and am all too aware of other for-profits actively and
underhandedly trying to profit off of our hard work, so I'm a bit
sensitive to that angle as well.

Many projects (and their developers) run for a few years, then they
disappear. That's the nature of things and that's ok, when my current
project is done I expect to pick up and do something completely
different too. What the GPL gives us is the opportunity for new people
to pick up the pieces a year later and get it going again. If it wasn't
GPL, it would all disappear & be a constant stream of people beginning
over from 0 and only getting to working-beta before moving on. We're
standing on the shoulders of giants and all that. The GPL is a path to
lasting cumulative growth which will stick around, it's a one way system
which only gets better with time. Sorry if that's a bit trite, but I
think it is accurate.

A LGPL file I/O library might be a place to start, if there was a
_GRASS file format specification_ from which a new LGPL library/program
could be written from scratch. For the ascii site/old vector/raster
formats this could be done in a few minutes, maybe the "published" 5.0
Programmer's manual is enough already. Slow, I know. But it would be
something. Call it the "Worldwide Enviro-terrestrial Engineering
Database System" or WEEDS ;). It could use another common mapping
format, just make sure that GRASS totally supports it and the PROJ_INFO
specifications. GDAL & PROJ are MIT licensed, so they could act as the
go-between.. Maybe "gdal --with-grass=libgrass" is that already.

It would have to exist totally outside grass5, and not use any of the C
API; but I don't see why it couldn't be run from the bash prompt while
GRASS is still running, even if that's a bit cheeky. As an analogy, I'm
thinking of proprietary Linux software that uses the standard GNU tools
in their install scripts.

If the map format is open, any program can be written to do stuff to
that data and write back to that format. Nothing is stopping people from
writing software that will work along side GRASS and have output that is
readable by GRASS.

What I would not like to see is all the "value" & power of the new
vector libraries given away and GRASS see nothing in return. I think it
will be a very valuable tool for some amazing new models once people
start using it more (by the number of compile-help questions for 5.7
lately I think this is already happening). It would really help
accelerate the acceptance of 5.7 if we had such a killer-app model. *We*
won't get that model anytime soon by not being GPL, IMO. The GPL is the
price that is paid in exchange for the use of the vector/gis engine. I
don't think we'd (I'd) have any of the cool r.sun or r.terraflow models
to play with without the GPL. Being able to present my work in the
context of the rest of the ecological system with these 'freebee' extra
models has been really great. It's my "payment" for working on GRASS,
and there's little point in doing anything other than bug fixes for
myself if it isn't GPL, as I have no desire to be an unpaid employee of
someone elses for-profit venture.

I do think we have a responsibility to the previous developers be
careful not to do anything that might legally jeopardize the GRASS
copyright, if that's even possible.

Short answer: GPL, but I'm not opposed to people writing programs that
do really cool things with maps which were created with GRASS and that
GRASS can read the results of. That's their right and the way forward I
think.

Hamish

Please forgive my "intrusion" in this thread: I'm not at the moment a
GRASS developer so I have no rights to tell past and present developers
what they ought to do with the code --- I mean with _their_ code,
whether or not the license is a free one, they hold the intellectual
property of what they have done.

All I want to emphasize is that for me if a sole soul or a corporation
is writting from scratch some stuff they can absolutely legitimally sell
their work and refuse to give away the sources (but they must _not_ put
any software patent). But these models work well for a centralized
corporated development or a small project handled by an individual.

What allows the GPL is a distributed development, that is it allows
individuals to build together something that, isolated, they would never
have reached. And this creates too a kind of new economic model:
individuals can sell the services to customize a big software, allowing
people to do exactly what they need to do (when the present tendancy is
to have people running software that does exactly the same thing which
has this pecularity to fail to match any pecular requirement). This
allows developers to be free in the sense of making a living alone
without depending on a corporation.

I know by experience that a lot of people like free software because
they understand only: gratis."Give me your watch and in exchange I will
tell you the time it is". When I try to contribute, I do it as an
acknowledgement to developers, not to end users.

I'm not a GPL fanatic, and I do understand the BSD license with the
advertising obligation enforced (and I cease to understand without it).
But I have not found a really better alternative and, altogether, I
think it's a sensible one for that kind of development.

Please note too that a developer always keeps the intellectual property
on his work, and that it's absolutely legal that _he_ may derive some
"proprietary" work from his original work: he can relicense his stuff.

Cheers,
--
Thierry Laronde (Alceste) <tlaronde@polynum.org>
Key fingerprint = 0FF7 E906 FBAF FE95 FD89 250D 52B1 AE95 6006 F40C