Announce: Hspell 1.2
Shlomi Fish
shlomif at shlomifish.org
Wed Feb 29 01:50:01 IST 2012
Hi Nadav,
On Tue, 28 Feb 2012 23:36:02 +0200
Nadav Har'El <nyh at math.technion.ac.il> wrote:
> Dan Kenigsberg and I are proud to present version 1.2 of Hspell, the free
> Hebrew spell-checker and morphological analyzer.
>
> You can find the new release in the project's homepage:
>
> http://hspell.ivrix.org.il/
>
> Over two years have passed since our previous release. In that time, we
> continued to improve Hspell's accuracy and further enlarged its vocabulary,
> reaching over 24,000 base words. We continued to document Hspell's spelling
> standard, which strictly follows the decisions of the Academy of the Hebrew
> Language; The document, http://hspell.ivrix.org.il/niqqudless.pdf, now spans
> over 80 pages.
Thanks for maintaining Hspell, but see below for my comments.
>
> We also fixed a number of bugs. The most serious bugs were discovered in the
> hunspell-format dictionary (which is used by OpenOffice, Firefox, and other
> projects), so upgrading to Hspell 1.2 is strongly recommended for users and
> distributors of the hunspell-format dictionary. For more details about the
> improvements in this release, see http://hspell.ivrix.org.il/WHATSNEW.
>
> In this release we've also made an important, perhaps even dramatic, change
> to Hspell's license. Until now, Hspell was licensed under the terms of the
> GNU GPL version 2. From now on, it is licensed under the GNU AGPL version 3.
>
> This license change probably means very little to most users; The AGPL is
> still an Open Source license (of course, we wouldn't have it any other way),
> and it is compatible with the GPL (version 3). But nevertheless we consider
> this an important change, so I'd like to further explain its rationale.
>
> The GPL was designed to promote free software, and protect its ecology.
> The GPL allows users to freely share and improve the software, while ensuring
> that the improved versions remain free forever, for all of society's benefit.
> Nobody is allowed to market their improved version as a proprietary,
> closed-source, product.
>
> However, in recent years the proprietary software industry started undergoing
> a transformation: Whereas most software used to be distributed as a product,
> software is now often distributed as a service. Users do not install the
> software on their machine, but rather use it through the service provider's
> Web site. Such service providers discovered that they were exempt from the
> GPL's terms: As they were not distributing binaries of the software, they
> also did not have to distribute source code. Nowadays users frequently find
> themselves using software through a Web site which is based on free software -
> but the user cannot install this software on a different server, or modify it.
> Very often, the user cannot even know which free software is providing the
> service he or she is using.
>
> We've unfortunately seen this happening with Hspell too. E.g., traditional
> word games had to be free software if they were to be based on Hspell,
> but now online games, non-free and closed source, are appearing based on
> Hspell. Whereas a closed-source word processor could not include Hspell,
> an equally closed-source online word processor did. Even worse, most
> software-as-a-service containing Hspell did not even acknowledge this fact.
> This not only denies us this simple courtesy, but also denies the users
> the knowledge of which spell-checker they are using, what is its spelling
> standard, and where they can report problems they discover with the spell-
> checker.
>
> The AGPLv3 (see http://www.gnu.org/licenses/agpl.html), which Hspell will now
> be using, attempts to close this loophole. Online software-as-a-service
> providers which derive their service from AGPL software (like Hspell), now
> need to make the source code of their service (or parts of it) available to
> their users. This will allow users that wish to do so to install the service
> on a different server, to better understand the service they are using,
> and even to modify it.
>
OK, so you have made Hspell under the Affero General Public Licence version 3.
Will it help in promoting the open-source nature (or "freedom") of
web-services? Let's see. Natural caveats apply: I am not a lawyer - this is not
legal advice.
First let's start with a few commonly accepted (but possibly not fully
accepted)
practices regarding GPL (including GPLv3) software:
1. It is possible to call a GPL program from a proprietary program and to use
its results. So, for example, a proprietary bash script or makefile (or
whatever) can call the GPLed gcc/g++ or GNU Awk and use their results.
2. It is possible for a GPLed program to input, process and output
proprietary data. So, for example, I can use gcc to compile non-open-source and
non-GPL-compatible code, producing libraries or executables which are also
proprietary.
3. I can also have a proprietary program process some GPLed code (or otherwise
data under the GPL) without this program needing to be GPLed. So, for example,
one can edit the source code of a GPLed program in Microsoft Visual Studio
without forcing Microsoft to make their Visual Studio FOSS.
4. Finally, I can freely link code under different GPLv3, AGPLv3 and compatible
licences with each other, without requiring a change of licence. So the GPLv3
GIMP links against the X11 libraries which are under the MIT/X11 licence, and
they happily remain so, and I recall seeing an MIT/X11 licensed KDE utility in
the core KDE distribution (I believe it was Klipper but don't recall exactly),
which naturally linked against the then-GPLed (and now also LGPLed) Qt library.
-----
If many of these practises will be made illegal, then you can expect all hell
to break loose, so I assume you want them to be good.
Now from my understanding the only thing that AGPLv3 requires in addition to
the GPLv3, is that if it is the licence for a web application and it has
a view or download source feature, then this feature will remain functional and
untampered with in all public deployments of the web application.
So assuming Hspell is now AGPLv3, can I:
1. Define a web-service whose source code I will publish under the
GPL-compatible but permissive MIT/X11 (and called the "Hspell-de-Affero-iser" or
"HdA" for short), which will:
2. Invoke Hspell from the command line, and:
3. Return its results in a well-defined protocol (whose specification I've
placed under a triple CC-by/Public-domain(CC-Zero)/MIT-X11 licence), say one
based on REST and JSON (but could be anything else that I find suitable and is
not encumbered by any special legal problems), and:
4. Set up such a web service on my servers, while publishing its source code,
and the source code to the (unmodified or possibly lightly patched) Hspell.
5. Query this service for information from a different service, which is not
open-source, and which can be a simple "Rich Internet Application" JavaScript
page with non-free JavaScript licence, or a game implemented on the server
which queries the HdA web-service.
6. ??????
----------
The only issue I see with all that is that you might claim that the results
returned by Hspell are protected under the AGPLv3, but I believe a
proprietary program can still use and process them as data (barring such
draconian atrocities as the Nmap interpretation of the GPL, see:
http://mailman.cs.huji.ac.il/pipermail/linux-il/2009-November/003168.html ).
There is also an issue of claiming copyright on the protocol (which MySQL AB
have done for the GPLed MySQL), but in that case the web protocol in question
(between HdA and its clients) is permissive, and one can write a client for
it from scratch using any HTTP/JSON library.
My point is that if Hspell were a web application, then putting it under the
Affero General Public Licence would make sense. But since it's a command line
application (and possibly a library by now - not sure), then it doesn't gain
you a lot, unless you want to see various "Hspell-de-Affero-isers" (possibly
more than one) coming along.
Again, I am not a lawyer, nor do I play one on T.V., so don't expect me to be
an authority for what you can or cannot do with GPLed/AGPLed/LGPLed/etc.
programs.
Regards,
Shlomi Fish
--
-----------------------------------------------------------------
Shlomi Fish http://www.shlomifish.org/
Stop Using MSIE - http://www.shlomifish.org/no-ie/
A golfed Java program will be longer than non‐golf Perl or Python code.
Please reply to list if it's a mailing list post - http://shlom.in/reply .
More information about the Linux-il
mailing list