I motivi della GNU Affero GPL
La GNU Affero General Public License è una versione modificata della normale licenza GNU GPL versione 3. Tale licenza contiene un requisito aggiuntivo: se in un server viene eseguito un programma modificato e si permette che gli utenti comunichino con esso, il server deve anche consentire agli utenti di scaricare il codice sorgente della versione modificata in questione.
Lo scopo della GNU Affero GPL è di prevenire un tipico problema che affligge gli sviluppatori di programmi liberi utilizzati nei server.
Supponiamo che voi sviluppiate e rilasciate un programma libero sotto normale licenza GNU GPL. Se lo sviluppatore D modifica il programma e lo rilascia, la GPL lo obbliga a distribuire sotto la medesima licenza GPL anche la sua versione modificata. In tal modo, se vi procurate una copia della sua versione, siete liberi di implementare alcune o tutte le sue modifiche nella vostra versione personale.
Supponiamo però per un attimo che il programma in questione sia utile principalmente nei server. Quando D modifica il programma, egli potrebbe con tutta probabilità eseguirlo nel suo server personale senza mai rilasciarne una copia. In tal caso voi non otterreste mai il codice sorgente della sua versione, motivo per cui non avreste mai la possibilità di includere le sue modifiche nella vostra versione. L'esito derivante da tale circostanza potrebbe non piacervi affatto.
L'utilizzo della GNU Affero GPL previene tale situazione spiacevole. Se D esegue la sua versione del programma in un server che tutti possono utilizzare, anche voi avete il permesso di usarlo. Ammettendo per ipotesi che D abbia seguito i requisiti della licenza che permettono agli utenti del server di scaricare il codice sorgente della sua versione, voi potete benissimo ottenerne una copia ed implementare quindi le sue modifiche nella vostra versione personale (Se invece D non avesse seguito i detti requisiti potrete avvalervi della rappresentanza di un avvocato.)
Sia la GNU GPL, versione 3, che la GNU Affero GPL contengono clausole che garantiscono la legalità dell'unione di due moduli sotto entrambe le licenze all'interno di un unico programma.
La GNU Affero GPL non affronta il problema del servizio come surrogato del software (SaaSS).
SaaSS significa che gli utenti utilizzano il web server di qualcun altro per svolgere la propria attività informatica. Ciò richiede che gli utenti inviino i propri dati al server, il quale li elabora in loro vece, e infine ne restituisce i risultati. SaaSS è un'ingiustizia poiché gli utenti non hanno il controllo della propria attività informatica quando questa viene svolta in tale maniera.
Se un programma di questo server viene rilasciato sotto la GNU Affero GPL, il server è costretto a fornire agli utenti la sorgente corrispondente di tale programma. Questo è un bene, ma il libero accesso al codice sorgente non garantisce agli utenti il controllo sull'elaborazione dei dati eseguita dal relativo server. Allo stesso modo gli utenti non possono sapere quale altro software è in esecuzione sul server e non possono esaminare o modificare i loro dati in altro modo.
Noi non crediamo vi sia alcuna maniera ragionevole di affrontare il problema del SaaSS con clausole contenute in particolari programmi. Persino la stesura di una clausola legale che faccia distinzione tra l'utilizzo o meno del SaaSS sarebbe una sfida notevole e, anche se avessimo una tale clausola, crediamo che nessun requisito aggiunto alla licenza di un programma possa correggere il torto del servizio come surrogato del software (SaaSS). Perciò la soluzione al SaaSS che noi proponiamo è semplice: rifiutatevi di utilizzare i servizi che si qualificano come SaaSS.
Se un programma è specificatamente ed esclusivamente inteso come SaaSS, voi non dovreste svilupparlo. Molti programmi però sono utili per svariate tipologie di servizi, inclusi alcuni che sono SaaSS e altri che non lo sono. Scrivere e rilasciare questi programmi affinché la gente possa stabilire servizi non-SaaSS grazie ad essi è cosa utile, è quindi una buona pratica rilasciarli sotto licenza AGPL.