WheatonCS / Lexos

Python/Flask-based website for text analysis workflow. Previous (stable) release is live at:
http://lexos.wheatoncollege.edu
MIT License
118 stars 20 forks source link

Discussion About GPLv3 license #524

Closed czhang03 closed 7 years ago

czhang03 commented 7 years ago

Objective

There is a great lib https://github.com/cligs/pyzeta we are investigating, but this lib uses GPLv3, which means we need to change our license to GPLv3 (or later) to use that library.

Attitudes Towards GPL

GPL Is an Virus And It Is Evil

There are many article discussing this topic.

https://www.google.co.uk/#q=is+gpl+evil&*

Here is some point that raises in those article:

GPL Will Bring Us More Open Source Software.

GNU's ideology is based on the following axiom:

Knowing the software is a fundamental right for the software user.

There is famous quote by Richard Stallman:

Keep control of your computing, so it doesn't control you!

You can find all the article related to philosophy: https://www.gnu.org/philosophy/philosophy.html

There is one that I think is best to summarize the accomplishment of GPL and why to use GPL: https://www.gnu.org/philosophy/pragmatic.html

So How Is GPL Doing?

Hum, it is not that good, because basically they cannot be used in industrial software. There is practically no software released by any corporation that GPL.

But, GPL and LGPL is quite popular for academic software (LGPL allows you to use other license when you use LGPL code as a lib):

What Happens When We Adopts GPL

Practically speaking... Nothing.

TIME TO VOTE.

czhang03 commented 7 years ago

I vote for GPL, if we really need to use pyzeta.

My personal repo are typically licensed under GPLv3, and all the people I know (typically my friends don't really care about industrial software) uses GPL too:

Although I am kind of reluctant to turn such a big project like lexos into GPL, because there have been so many people working on this; I would vote to change our license to GPL if we really need pyzeta. for the following reason:

scottkleinman commented 7 years ago

I'm not really a fan of GPL; it's incredibly complicated compared to MIT. @chantisnake's logic (for and against) is good.

But I'm not convinced that we really need pyzeta integrated into Lexos. pyzeta is more of an app than a library, and it comes with its own dependencies (treetagger and pygal). Burrows'/Craig's Zeta is underlying measure of distinctiveness or keyness—similar in use to what we do in Topwords. Zeta may be a better measure of distinctiveness, but I'm not sure that's a reason to integrate the entire pyzeta script with its scrubbing and visualisation functions. These functions actually do have some merits that would be worth looking at separately. By allowing part of speech tagging (and thus filtering), pyzeta does provide a scrubbing function that we don't. Also, it outputs both the entire matrix of Zeta scores and visualisations, which may provide a more useful and easier to interpret tool than the tables based output of Topwords. It would certainly be worth developing these functions for the whole of Lexos and not limiting them to an integrated pyzeta feature.

I think a better approach would be to host an installation of pyzeta on the Lexomics server with a light wrapper to walk Lexos data into pyzeta. For users with local installations, we could provide instructions for (optionally) setting up the two tools to work together. This would avoid both extra dependencies and the issue of changing the licence.

czhang03 commented 7 years ago

I have to go with Scott on this one. Although I haven't read the source code of pyzeta, I am really not sure integrating pyzeta is that urgent a task.

czhang03 commented 7 years ago

I think there is no objection that we do not need to switch to GPLv3 for now.

I will close this issue. Feel free to reopen when we need to rediscuss this issue.