Hai ragione che dovresti:
- Richiedi copyright
- Concedi alle persone diritti espliciti per utilizzare, modificare e distribuire il tuo codice.
In molti luoghi, l'idea di dominio pubblico non è riconosciuta. Affinché qualcuno sia in grado di utilizzare (legalmente) il tuo codice, deve esserci qualcosa che dice che è possibile, ea quali condizioni. Per gli snippet, consiglio vivamente la licenza di stile BSD a 3 clausole. Asserisce il tuo copyright, dice alle persone che sono liberi di fare tutto ciò che vogliono con il codice, purché mantengano il copyright quando lo distribuiscono via fonte e dice loro che non possono usare il tuo nome per avallare le opere derivate del codice senza il tuo permesso.
La GPL ha definizioni molto specifiche di cosa dovrebbe accadere quando si combina il lavoro coperto con GPL con qualcos'altro. La GPL deve prevalere come la licenza dominante nella base di codice, il che significa che qualcuno che usa i frammenti eredita la GPL. La LGPL (conosciuta come libreria GPL, o GPL minore) è più adatta a questo, perché consente il collegamento senza ereditare la licenza. Tuttavia, se hai intenzione di eliminare i denti dalla GPL, potresti anche usare una licenza molto più semplice.
Un'altra scelta eccellente sarebbe la licenza MIT, che è molto simile alla licenza in stile BSD a tre clausole.
Infine, se è necessario utilizzare la GPL, si prega di indicare "Versione 2 o successiva" se possibile. Ciò garantisce che il tuo codice possa funzionare in luoghi in cui un albero potrebbe utilizzare "Solo versione 2", che è abbastanza comune. Una parte sostanziale del kernel Linux specifica solo la versione 2, GPL3 (sebbene ampiamente accettata) è stata accolta con una buona dose di critica e rifiuto.
Non sto scontando l'importanza, il significato o l'utilità della GPL. Sto solo suggerendo che potrebbe non essere la scelta migliore per frammenti e librerie.