Perché dovremmo essere a conoscenza delle licenze?

6

So che questa è una domanda comune, ma perché un programmatore dovrebbe essere a conoscenza delle licenze software e delle estensioni e delle licenze dei plugin?

Lavoro in un'azienda che si concentra sul processo aziendale (Ruby on Rails) e sono curioso di sapere perché sono severi su tali licenze nello sviluppo del progetto.

Quali licenze dovrei essere a conoscenza e perché?

    
posta seed 09.01.2014 - 03:54
fonte

6 risposte

10

Le licenze sono condizioni d'uso condizionali.

Se si violano i termini di una licenza, è possibile essere citati in giudizio. A seconda delle licenze e delle giurisdizioni coinvolte, ci possono essere pene severe per non rispettare i termini della licenza. Tali sanzioni potrebbero mandare in bancarotta un'impresa o far perdere la rivendicazione al software da parte dell'azienda.

Alcune licenze limitano pesantemente ciò che puoi fare con il codice, come la disposizione del copyleft nei requisiti di rilascio del codice sorgente di GPL. Altre licenze limitano l'utilizzo solo all'uso accademico o non commerciale. E altre licenze hanno versioni personali gratuite ma richiedono versioni commerciali a pagamento.

Se sei nel business della scrittura di software, allora devi scegliere con attenzione quale software esterno ti integri poiché le loro licenze possono influire sulla tua capacità di vendere il tuo software o influenzare il modo in cui strutturi il tuo modello di business.

I tuoi product manager sono severi perché stanno cercando di ridurre al minimo i rischi ed evitare complicazioni create utilizzando licenze o licenze in conflitto che potrebbero danneggiare i loro obiettivi di business.

    
risposta data 09.01.2014 - 04:26
fonte
4

Mi viene in mente la cortesia professionale. Se vuoi che altri seguano le tue licenze (+ commissioni), allora dovresti rispettare e sostenere le licenze all'interno del settore.

La mitigazione del rischio è importante anche per gli avvocati, che spesso cercano e proteggono le aziende dai rischi. L'EULA e la licenza del codice di terze parti riguardano esclusivamente la gestione dei rischi per entrambe le parti, fornitore e consumatore.

    
risposta data 09.01.2014 - 13:11
fonte
1

Poiché le licenze non sono identiche ai contratti, poiché le licenze sono stabilite dagli autori di un prodotto non originariamente da detentori del copyright, ma uno sviluppatore / autore può consentire o trasferire i diritti per impostare una licenza richiesta a terzi, al cosiddetto copyright titolare. Questa regola, naturalmente, può o potrebbe essere specificata da un contratto tra uno sviluppatore e una società di noleggio / un altro sviluppatore. Per impostazione predefinita, il diritto di impostare la licenza è conservato all'autore del prodotto o a un gruppo di autori.

Nel caso in cui un autore, nel tuo caso autore di una domanda, trasferisca da un contratto i diritti per impostare una licenza su un prodotto, ha perso tale diritto, mantenendo il diritto da specificare come autore nella descrizione del prodotto. È così chiamato diritto inalienabile . A differenza del diritto di specificare una licenza per il tuo prodotto che è un diritto alienabile .

Quindi, shell non è solo una licenza, come un tipo vario di EULA (che sono veramente contratti) e aprire licenze come Creative Commons o MIT licenze, che vengono utilizzate principalmente nelle applicazioni Rails / Gem, ma quando si sta lavorando a un contratto, del cotract e del suo contenimento che accode i diritti alienabili.

    
risposta data 09.01.2014 - 11:33
fonte
1

Ci sono già grandi risposte qui, ma voglio buttarmi nel mio 2 ¢.

  1. Usando il software, hai accettato la licenza. Sapere che cosa stai accettando è un consiglio generale che si applica a tutta la vita.

  2. Usando il software, l'entità legale per cui lavori è vincolata ai termini della licenza. Se questo è il tuo datore di lavoro, potresti esporli a milioni di dollari in spese legali e / o commettere personalmente un spostamento limitatore di carriera .

  3. Usando il software, stai dimostrando che apprezzi quel software. Mostra rispetto per le cose che apprezzi. Nel software, tale rispetto è conforme ai termini della licenza. Come corollario, se non apprezzi un software, non usarlo.

risposta data 09.01.2014 - 14:59
fonte
1

Come risposta per mezzo di un esempio, considera un tipo di problema semplice (piuttosto comune):

Hai un problema che richiede la ricerca della distanza in miglia tra due codici postali statunitensi dati per una funzione di ricerca. Si scopre che c'è una libreria disponibile che fa questo facilmente, quindi basta afferrarlo e - problema risolto! Hai appena tagliato giorni o settimane, fuori dal programma del progetto.

Uh ... ma è legale? Bene, è qui che entrano in gioco le licenze e il copyright. A volte il codice / software è fornito "gratuito per uso non commerciale", ad esempio, ma con l'obbligo per tutti gli altri di contattare l'autore per negoziare un contratto o pagare un canone. Alcune licenze, in particolare nel regno GPL, consentono qualsiasi uso del codice, purché non sia compilato insieme ad altro codice e venduto senza attribuzione o con una licenza diversa.

Questo si trasforma rapidamente in qualcosa che ti fa venir voglia di piangere, o almeno ti rende disposto a girare il monitor sottosopra e da quel momento in poi fai tutta la tua codifica mentre sei sospeso dal soffitto con le dita dei piedi. È solo un disastro.

Se il software è il tuo business e tu sei il responsabile di questo, dovrai imparare molto su quali licenze sono in conflitto con altri, pro e contro, ecc. Ma se stai lavorando per qualcun altro che è gentile abbastanza da aver pagato migliaia di onorari dell'avvocato per sviluppare una politica di quali licenze di codice / software possono e non possono essere utilizzate nel progetto - interrompere quello che stai facendo e andare ad abbracciare quelle persone. Probabilmente ne hanno bisogno. Potrebbero farti causa per questo però ... quindi forse basta dire "grazie" invece.

Per rispondere alla tua domanda su licenze specifiche, non devi necessariamente essere a conoscenza di una particolare licenza, ma qualsiasi cosa l'azienda dice e non è OK. Ci sono così tante licenze, con così tante incarnazioni e dettagli individuali, e in un contesto aziendale ci sono esigenze molto diverse rispetto a un progetto personale.

Il "perché" finale è triplice: essere un buon cittadino della "comunità di software" non strappando il lavoro della gente e accidentalmente (o intenzionalmente) passandolo come se fosse il proprio o altrimenti calpestando le dita dei piedi di qualcuno che ti sta letteralmente dando ore di lavoro per "gratis", non esponendo la società a milioni di dollari in costi legali, e assicurandosi che le persone vengano pagate per l'uso del loro lavoro se questo è appropriato.

Spero che non sia stato necessario, ai vecchi tempi del sogno degli hacker sulla "libera informazione" ... ma in parte quel sogno è il motivo per cui sono diventate necessarie tante licenze software. È una storia interessante, ben oltre lo scopo di questo Q & A. Ma esistono, quindi puoi fare un sacco di ricerche ... o portare le tue aziende a parlarne. Le loro politiche esistono per davvero, davvero buone ragioni (o almeno in questo caso particolare).

    
risposta data 09.01.2014 - 18:27
fonte
0

Per rispondere alla seconda parte della domanda (molto approssimativamente), per progetti commerciali di cui dovresti probabilmente essere a conoscenza:

  • Licenze di stile BSD o Apache - in pratica: fai ciò che vuoi
  • GPL - fondamentalmente: evitare a meno che tu non stia bene con il tuo codice sotto GPL
  • LGPL - può essere usato liberamente come libreria finché non viene modificato, altri usi ti riporta a GPL
  • Altri: guardali singolarmente

Ora, questo è molto approssimativo e IANAL e tutto il resto. Ti consiglio di consultare opensource.org per ulteriori dettagli.

(Inoltre: perché è importante? Immagina che la licenza di Ruby on Rails dice "devi pagarci il 50% delle entrate per usarla" o "possediamo tutto il codice che hai scritto sulla base di quella piattaforma")

    
risposta data 09.01.2014 - 20:37
fonte

Leggi altre domande sui tag