On Monday 07 September 2009 08:57:42 am Peter Bienstman wrote:

> Interesting! However, wouldn't that mean that any new front-end people
> write (and which only interacts with libmnemosyne through the API) would
> not be subject to the AGPL? So even with the AGPL, people could write a new
> client (Javascript, Android, whatever, ...) and keep it secret?
>
> Would that also apply for the GPL? I guess not, because otherwise what's
> the point?

I've been reading up/thinking about this a bit more. I guess there is an 
important difference between an API at the Python level and an API at the 
network level.

This is how I now understand it, and which I currently think is also a good, 
fair licensing model. There are basically three levels:

1) libmnemosyne:

Any application that uses this at the Python level (from libmnemosyne import 
...) or equivalent and gets distributed must make its source code available. 
This includes front-ends on new clients, but also...

2) the Mnemosyne server code:

Takes HTML post and get commands and communicates with libmnemosyne to add new 
cards, gets the next card for review, grade the result, ...

3) added value from a different website:

E.g. converting PowerPoints to Mnemosyne cards, injecting vocabulary from 
Chinese lessons into Mnemosyne, ... They communicate with a Mnemosyne server 
somewhere, but only through its well defined HTML API, and therefore for these 
added values people are free to choose whatever license they prefer, even if 
the underlying level 1 and 2 code is (A)GPL. (See the last comment in 
http://blogs.codehaus.org/people/geir/archives/001771_misunderstanding_the_agpl.html
 
)

The difference between GPL and AGPL mainly plays at protecting level 2). With 
the AGPL, any level 3) app must make a download link to the (possibly) modified 
and improved code of level 2 and 1 available. A good option would be a footer 
in the webpage saying 'Flash cards based on Mnemosyne' with a click through 
link to the modified source.

Note that this would probably mean that web based Mnemosyne *clients* fall 
under 3) and could be closed. I have to admit that this is not what I 
originally had in mind, but OTOH it seems like this is intended with the AGLP 
and it would e.g. allow rbuc to compete with other Mnemosyne based sites on 
features and ease of use, and Chinesepod to give their review client the same 
look and feel as the rest of their site. And still, if they improve levels 1 
and 2, this benefits the community. Also, somebody could decide later to 
implement a web client and license that as AGPL too.

So, if my understanding of this is correct, such a model would open the way 
for rbuc to use Mnemosyne technology in his site. He would still have to 
implement 2) first and "give it away", but I guess layer 2) will be extremely 
thin, so no worries there.

Obviously, a licensing explanation like this one should come on our website, 
just like the folks from CiviCRM did, as apparently the desires of the authors 
are important in interpreting copyright law.

What do people think?

Peter

PS: Launchpad uses AGPL too

--~--~---------~--~----~------------~-------~--~----~
You received this message because you are subscribed to the Google Groups 
"mnemosyne-proj-users" group.
To post to this group, send email to [email protected]
To unsubscribe from this group, send email to 
[email protected]
For more options, visit this group at 
http://groups.google.com/group/mnemosyne-proj-users?hl=en
-~----------~----~----~----~------~----~------~--~---

Reply via email to