Open Source, Copyright e Bugfixes banali

10

Supponiamo che uno sviluppatore abbia sviluppato una libreria per la sua applicazione commerciale di origine chiusa. Dal momento che vogliono restituire alla comunità open source, pubblicano questa libreria sotto, ad esempio, la GPL, ma continuano a utilizzarla nella propria applicazione. Dal momento che detengono il copyright, va bene.

Ora, un utente della versione GPL trova un bug, lo risolve e invia una patch allo sviluppatore originale. A quanto ho capito, per usare questo bugfix nella loro applicazione closed-source, lo sviluppatore deve avere il permesso dal submitter. Se il submitter si rifiuta, lo sviluppatore deve trovare un altro modo per correggere il bug nella versione closed-source.

Ma cosa succede se lo stesso bugfix è davvero banale? Come inizializzare correttamente una variabile o controllare un puntatore nullo? Qualcosa che un programmatore semi-competente può trovare e risolvere in pochi minuti, data una descrizione di errore? La patch per questo è ancora protetta da copyright? Oppure lo sviluppatore originale può implementare la stessa soluzione nella sua applicazione closed-source senza il consenso del mittente?

Nota: questo è davvero uno scenario ipotetico, non uno di quei "miei" amici ha questo problema "domande

    
posta Benjamin Kloster 23.04.2013 - 08:45
fonte

3 risposte

6

Caveat: non sono un avvocato!

Aggiornato: è probabile che le correzioni di bug banali non siano soggette a copyright. Vedi la risposta di Michael Shaw, che ritengo sia più accurata di quella che ho inizialmente detto, per ulteriori informazioni.

Tuttavia, anche in questo caso, questa situazione non è l'ideale:

  • Questo può essere abbastanza chiaro per il tuo esempio forzato, che postula un cambiamento che è banale, al contrario di aggiungere funzionalità significative. Tuttavia, nella vita reale sta per essere una chiamata di giudizio quando questo è il caso. Rimarrai in un'area grigia protetta da copyright.
  • Idealmente, vuoi semplicemente incorporare il file aggiornato nel tuo programma; non vuoi aggiungere il tuo codice, anche se è banale. Semplicemente duplica il lavoro inutilmente.
  • Ora ci saranno due versioni del file: il tuo e quello open-source. Questo fa solo un casino se vuoi rilasciare versioni aggiornate del tuo codice alla community.

Conclusione: la licenza pubblica Gnu limita in modo specifico l'uso del codice nei programmi closed-source. Quindi, rilasciare il tuo codice sotto GPL equivale a creare deliberatamente un fork del tuo codice che non può essere reinserito nel programma originale. Questo non ha molto senso.

Sarebbe meglio servire rilasciando il tuo codice con una licenza più permissiva, come una delle licenze BSD o la licenza artistica . Queste licenze consentono di includere il codice nel software closed-source senza ulteriore autorizzazione. Di solito qualsiasi ulteriore sviluppo da parte della community avverrà con la stessa licenza che hai usato, quindi sarai in grado di incorporare eventuali modifiche apportate (minori o significative) nel tuo software.

Tecnicamente, qualcuno potrebbe decidere di aggiornare il tuo codice e poi rilasciarlo sotto GPL, ma dovrebbero fare attivamente quella scelta. Non sarebbe la posizione di default. E così facendo, interromperanno il loro rilascio da qualsiasi aggiornamento tu faccia, quindi probabilmente non sarebbe vantaggioso per loro (dato che è il tuo software, probabilmente farai più sviluppo su di esso di chiunque altro).

    
risposta data 23.04.2013 - 09:29
fonte
6

Se la correzione del bug è davvero banale, allora probabilmente non è affatto protetto da copyright, specialmente se non c'è davvero un altro modo per scrivere il codice. Esistono centinaia di milioni di modi di scrivere un poema d'amore o un videogioco, in realtà non ci sono più di uno o due modi per scrivere if (*p == NULL) . Il copyright è sull'espressione di un'idea, quindi se non c'è davvero alcuna scelta sul modo in cui un'idea viene espressa, non ci può essere un copyright.

Tuttavia, se il bugfix è ancora abbastanza banale, potrebbero esserci alcune dozzine di modi per esprimerlo, quindi potrebbe essere protetto da copyright. E potrebbe non essere facile capire se qualcosa che è abbastanza banale è a malapena protetto dal diritto d'autore o appena inconcepibile.

È anche possibile che possa essere protetto da copyright, ma che utilizzarlo sarebbe equo. Il fair use è un po 'complicato, dal momento che dipende dal peso di diversi fattori, e potrebbe non essere utile, dal momento che il fair use dovrebbe essere deciso da un tribunale - idealmente, non vuoi che ci sia un caso giudiziario , per quanto strong possa essere il tuo caso. Uno dei fattori di fair use è la frazione del lavoro che è stato utilizzato (questo è contro di te, dal momento che hai preso tutto il lavoro), e un altro è il potenziale commerciale del lavoro (questo è per te, dal valore commerciale di un bugfix banale di per sé è zero), quindi indovinare in che modo un tribunale potrebbe decidere è soggetto ad errori.

Probabilmente il modo migliore per affrontarlo è consegnare una descrizione esatta del bug e la sua esatta posizione a uno sviluppatore che non ha visto la patch. Possono quindi riparare il bug in modo indipendente (il che richiederà pochissimo tempo, dato che questo bug è banale) e tutti i potenziali problemi di copyright scompaiono, poiché se è protetto da copyright, possiedi il copyright. Il tuo sviluppatore potrebbe finire con lo stesso codice della patch quasi esattamente perché c'è essenzialmente un solo modo per scriverlo, ma in questo caso non è protetto da copyright.

    
risposta data 24.04.2013 - 17:40
fonte
-2

La mia opinione inesperta, dopo aver letto link , è questa:

L'opera originale ha una sola paternità e quella persona possiede il copyright e può scegliere di concedere in licenza il lavoro come desidera e in effetti ha.

Ora uno sviluppatore trova un bug e contribuisce a una correzione. Questo potrebbe essere considerato non protetto da copyright (un contributo troppo piccolo), ma dire che è stato un contributo sostanziale. L'autore originale accetta il contributo rendendo così il lavoro un lavoro collettivo, dal momento che entrambi gli individui hanno accettato la fusione.

In un lavoro collettivo ogni autore possiede le rispettive parti, ma ognuna di esse possiede anche un interesse indiviso per l'intera opera e in quanto tale ciascuna può rilasciare l'intera opera in tutti i termini che desidera.

Se questa è un'interpretazione ragionevole, la controversia non è se l'autore originale possa o meno usare la correzione del bug nella loro versione commerciale, quale IMO può fare. Il potenziale conflitto è se il bug fixer crede di avere la propria proprietà indivisa nel lavoro nel suo insieme. In tal caso potrebbe essere consigliabile all'autore originale ottenere una versione dal bug fixer che indichi chiaramente che non accettano la proprietà del lavoro.

    
risposta data 27.12.2016 - 04:11
fonte

Leggi altre domande sui tag