Se hai scritto il codice, sei il proprietario del copyright. Se stai scrivendo il codice in una situazione di "lavoro a noleggio", sono i proprietari del copyright. A partire dal 1989, la proprietà del copyright è automatica e affermando che è facoltativa. Credo che sia anche prudente.
Come proprietario del copyright, puoi (secondo Wikipedia ):
- produrre copie o riproduzioni dell'opera e venderle (incluse, tipicamente, copie elettroniche)
- importa o esporta il lavoro
- crea opere derivate (opere che adattano il lavoro originale)
- eseguire o mostrare pubblicamente il lavoro
- vendere o cedere questi diritti ad altri
- trasmettere o visualizzare tramite radio o video.
Puoi concedere in licenza il tuo lavoro a qualcun altro, e nella licenza, puoi concedere alcuni o tutti i diritti di copyright al licenziatario. Puoi anche concedere queste sovvenzioni per il copyright gratuitamente o condizionale al pagamento delle tasse di licenza. Le licenze possono anche essere limitate nel tempo.
Nel tuo caso, vuoi condividere. Supponendo che non ci siano brevetti coinvolti nel tuo lavoro, vorrei andare con:
- la licenza GPLv2 se vuoi che il tuo codice sia per sempre libero di studiare e migliorare, e tutto i lavori derivati possono anche essere liberi di studiare e migliorare. (I programmatori e gli accademici di solito preferiscono questo).
- la licenza MIT se vuoi che qualcuno sia in grado di usare liberamente il tuo codice, ma permetti loro di mantenere segreti i loro lavori derivati . (I venditori di software commerciali tendono ad apprezzare meglio questo prodotto).
Se vi sono brevetti coinvolti, il licenziatario è responsabile anche dell'acquisizione di licenze di brevetto per i relativi brevetti.
Se ci sono dei brevetti (che possiedi) che vuoi anche rilasciare liberamente con questo software, usa:
- la licenza GPLv3 - Per gli stessi motivi della GPLv2.
- la licenza Apache 2.0 - per gli stessi motivi della licenza MIT.
In tutti questi casi mantieni la proprietà del copyright e il codice può essere condiviso.