Since it is in github and is publicly available, can I use the code in my module...
NO.
...or should I get the author's written permission?
Sì.
In tutte le 166 nazioni che sono firmatarie della Convenzione di Berna , il copyright è concesso ad un autore quando il lavoro viene creato . L'autore detiene il monopolio su tutti i diritti di copyright (creazione di modifiche, creazione e distribuzione di copie, ecc.). Tu - come qualcuno che non è l'autore - non ti è stato concesso nessuno di quei diritti.
Una licenza è un meccanismo mediante il quale il detentore dei diritti (qui, l'autore) concede alcuni diritti a un destinatario (qui, tu). Lei dice che l'autore non ha offerto alcuna licenza, il che significa che l'autore ha riservato tutti i suoi diritti. Il fatto che l'autore abbia reso il suo codice pubblicamente visibile non significa che gli sia stato concesso alcun diritto oltre al diritto di visualizzare il codice. Il diritto di creare opere derivate e il diritto di ridistribuire il codice non sono diritti che hai attualmente.
Poiché hai menzionato che il codice è su Github, vale la pena ricordare che i Github TOS hanno questo per dire del materiale ospitato sul loro sito:
By setting your repositories to be viewed publicly, you agree to allow others to view and fork your repositories.
L'hosting su Github significa che l'autore concede agli altri il diritto di "visualizzare" e "forgiare" il repository. Qui, "fork" probabilmente significa semplicemente "usa la funzione di fork di Github", che crea un clone di repository, ospitato su Github. Ammetto che l'uso da parte di Github del termine "fork" qui è ambiguo, ma se la mia lettura è corretta, in questo modo non sembra che tu abbia alcun diritto a:
- copia il codice al di fuori del contesto di una forcella di Github
- apporta qualsiasi modifica al codice biforcato
- incorporare il codice dell'autore nel proprio
La linea di fondo è: non hai il diritto di distribuire questo codice. È possibile che l'autore voglia che le persone usino il suo codice liberamente, ma ha dimenticato di includere una licenza. Informa l'autore che la mancanza di una licenza ha bloccato l'uso del codice e incoraggia l'autore ad aggiungere una licenza mainstream approvata da OSI o FSF al repository.