Come si applica il fair use agli snippet di codice? [chiuso]


26

Esiste una dimensione in cui è possibile copiare in uso corretto per codice che non si dispone di una licenza per lo scopo? Ad esempio, cosa succede se copio uno snippet che è (normalmente) 3 righe di codice? È un uso corretto? Se si tratta di un uso corretto, quale lunghezza è necessaria prima che sia necessaria una licenza?


11
Le leggi variano a seconda di dove ti trovi e qui ci sono persone da tutto il mondo. Quando fai una domanda legale, ti preghiamo di comunicarci dove vivi e lavori. Inoltre, non fidarti di ciò che diciamo. Se per te è importante in qualche modo (come finanziariamente), consulta un avvocato locale con esperienza adeguata.
David Thornley,

1
Nota: ho aggiunto una risposta a questa domanda perché non ritengo che le risposte esistenti siano sufficientemente corrette, nonostante l'argomento sia offtopico secondo le linee guida attuali - penso che avere risposte errate o fuorvianti sia una situazione peggiore rispetto alla pubblicazione di nuovi offtopic risposte.
Jules,

Risposte:


12

Negli Stati Uniti, la dottrina legale del Fair Use non si applica all'inserimento di estratti di opere protette da copyright nel codice sorgente. In che modo tale dottrina viene applicata dalle leggi della propria giurisdizione può variare.

Estrarrò da un articolo dell'Ufficio del copyright degli Stati Uniti sul Fair Use e sui diritti d'autore in genere:

La sezione 107 contiene un elenco dei vari scopi per i quali la riproduzione di un'opera particolare può essere considerata giusta, come critiche, commenti, notizie, insegnamento, borse di studio e ricerca [enfasi mia] . La sezione 107 stabilisce inoltre quattro fattori da considerare nel determinare se un uso particolare sia o meno equo:

  1. Lo scopo e il carattere dell'uso, compreso se tale uso è di natura commerciale o è a fini educativi senza scopo di lucro
  2. La natura del lavoro protetto da copyright
  3. La quantità e la sostanzialità della porzione utilizzata in relazione all'opera protetta da copyright nel suo insieme
  4. L'effetto dell'uso sul mercato potenziale o sul valore dell'opera protetta da copyright.

La distinzione tra fair use e violazione potrebbe non essere chiara e non essere facilmente definita. Non esiste un numero specifico di parole, righe o note [enfatizzare il mio] che possono essere tranquillamente prese senza permesso. Il riconoscimento della fonte del materiale protetto da copyright non sostituisce l'ottenimento dell'autorizzazione.

Riassume i limiti legali del copyright, che il Fair Use applica ulteriori limiti, in questo modo:

Il copyright protegge il modo particolare in cui un autore si è espresso. Non si estende a idee, sistemi o informazioni fattuali trasmesse nel lavoro.

Il corso più sicuro è sempre ottenere l'autorizzazione dal proprietario del copyright prima di utilizzare materiale protetto da copyright. L'Ufficio Copyright non può concedere questa autorizzazione.

Ciò che i limiti di ciò che il copyright protegge ci dice è che, sebbene non sia possibile copiare "frammenti" di codice tramite Fair Use, è possibile riscrivere il modo in cui idee, sistemi (compresi gli algoritmi) o informazioni fattuali sono espressi in tali frammenti.

In breve, 3 righe di codice dovrebbero essere abbastanza piccole da poterle riscrivere in modo da non violare il copyright dell'opera originale. Probabilmente ci è voluto più tempo per scrivere la tua domanda che per fare la riscrittura.


14
Non vedo nulla qui che dica che copiare uno snippet di codice non può essere un uso corretto. Spiega i criteri che verranno utilizzati per giudicare se il tuo uso è un uso corretto, se vieni citato in giudizio.
KeithB,

7
L'elenco è destinato ad essere esemplare, non completo. Ecco perché contiene le parole "come". Se il codice è ampiamente funzionale, viene presa solo una piccola parte dell'opera originale e le due opere non sono in concorrenza sul mercato, è possibile che i tribunali trovino un uso corretto.
David Schwartz,

4
E quali qualifiche devi "esporre sulla legge", @Huperniketes? Hai scritto questo come se stessi citando un'autorità che mostra definitivamente che il codice di copia non è un uso corretto, ma in realtà stai solo eseguendo la tua interpretazione dello statuto senza nemmeno citare alcuna giurisprudenza.
Mark Amery,

6
Questo è in realtà irrilevante per il mio punto. Il problema è che un elenco con "come" non è esaustivo in nessuna versione dell'inglese, nemmeno nel bizzarro inglese da Marte che gli avvocati parlano quotidianamente. L'elenco in corsivo è un elenco di esempi, niente di più. Non contribuisce in alcun modo al significato reale della legge, oltre a fungere da suggerimento per giudici e avvocati sulle intenzioni generali dei legislatori. Il fair use è un'area di legge incredibilmente grigia, e presentarne una parte in termini in bianco e nero rende i tuoi lettori un enorme disservizio.
Kevin

6
@Huperniketes, affermi che sto facendo affermazioni idiote senza conoscere il materiale quando non ho affermato nulla sulla legge. Sei tu a fare il reclamo legale - che, contrariamente a una semplice lettura in inglese, il tuo passaggio in corsivo mostra che copiare frammenti di codice in software non può mai essere un uso corretto. Sono scettico su tale affermazione, ma certo, non conosco alcuna giurisprudenza per sostenerlo o smentirlo. Ecco perché non sto facendo affermazioni concrete. L'onere della prova è su di te se vuoi essere creduto, ma hai scelto di ghignare e insultare coloro che ti chiedono neutralmente di mostrare prove.
Mark Amery,

21

Non sono un avvocato .

Tuttavia, sei assolutamente libero di utilizzare le seguenti 3 righe di codice in qualsiasi cosa tu scriva:

for (i = 0; i < 5; i++) {
    printf("I am not a lawyer!\n");
}

.... Questo è un codice puramente funzionale (non funzionale nel senso che potresti pensare, ma funzionale a ciò che fa). In realtà non realizza nulla; esercita semplicemente i costrutti della lingua. Supporta roba che funziona davvero, la digiti abbastanza spesso da avere una macro per produrla. Ma quello di cui stai parlando non è 'fair use', è prima di tutto anche copyright o licenza?

L'unica risposta corretta qui è chiedere a un avvocato. Dieci righe di codice da cosa ? Un algoritmo di ordinamento altamente specializzato? Qualche tipo di firmware? Uno dei milioni di parser di file di configurazione che stanno fluttuando in giro fin dagli albori di Usenet? Codice generato da un altro programma che genera classi di database basate sullo schema DB?

Ma dimostrami che l' hai scritto per loop o switch statement e non hai semplicemente copiato il mio. Nel punto in cui le asserzioni smettono di sembrare assurde, probabilmente sei nel punto in cui dovresti parlare con un avvocato, o almeno il tuo responsabile tecnico / PM / ecc.

Partecipo a diversi progetti gratuiti / open source, alcuni di essi richiedono un incarico di copyright per qualsiasi cosa non "banale". Tutti coloro che hanno questo requisito definiscono "banale" essere dieci righe di codice aggiunte o modificate. Ma questo è solo una cartina di tornasole arbitraria per stabilire una sorta di standard; una linea di confronto di byte strabilianti è molto più probabile che sia soggetta al diritto d'autore rispetto a un interruttore a 10 linee.

La mia galleria di frammenti è composta da centinaia di funzioni, tutte con le informazioni dell'autore originale nei commenti in stile doxygen, così come le informazioni sulla licenza (se presenti, la maggior parte sono solo di dominio pubblico).

A meno che non sia chiaramente banale (come nel mio esempio umoristico), non riutilizzerei il codice se non so di avere il permesso di farlo. Inoltre, seguo sempre le regole di qualunque licenza si applichi. E per aiutare il mio futuro io (o futuri manutentori), mi piace lasciare un link a dove ho trovato cose in un commento, anche se questo è il nome di una pallina di catrame che accendo su una chiavetta USB se lascio la compagnia.


2
Dubito fortemente che molti frammenti siano di dominio pubblico.
Martijn,

2
Sono in ritardo alla festa, ma è anche importante notare che anche se Tim Post ha mantenuto tutti i diritti sul codice sopra, non può proteggere l' idea da copyright . Se impari da quel frammento che puoi stampare una stringa cinque volte usando un ciclo for, e poi scrivi il tuo (straordinariamente simile) ciclo usando quelle idee, allora stai bene a prescindere; non importa cosa vuole Tim. A seconda di quanto tempo è e quanto è simile la tua versione, potresti avere l'onere di provare che l'hai effettivamente implementata di nuovo, ma se puoi farlo, sei garantito in chiaro.
GrandOpener,

Mentre i diritti d'autore non proteggono le idee, i brevetti lo fanno. Il copyright è un termine legale con una specifica definizione legale. Le idee non possono essere protette da copyright , ma il modo in cui sono espresse può e sono; e secondo l'attuale legge sulla proprietà intellettuale, il lavoro di un creatore viene automaticamente protetto da copyright e protetto. Un'idea può essere brevettata se soddisfa gli standard corrispondenti.
Huperniketes,

@Huperniketes - "il modo in cui [le idee] sono espresse può [essere protetto da copyright] e lo sono; e secondo l'attuale legge sulla proprietà intellettuale, il lavoro di un creatore è automaticamente protetto da copyright e protetto" - purché l'espressione di tali idee raggiunga un livello di originalità e l'inventiva considerata come una soglia minima di creatività per giustificare la protezione e la quantità di copie non è considerata banale. Se l'espressione non è sufficientemente distintiva o la quantità di copia è considerata banale, questa si chiama copia de minimis e non è coperta da copyright. Questo è stato trovato ai tribunali per estendersi a ...
Jules il

... programmi per computer nella situazione in cui sono ovvi programmi minimi che eseguono una particolare operazione (e in cui l'operazione stessa non è innovativa). Ad esempio, diversi casi di questo sono discussi qui . Nel contesto della domanda, quelle 3 linee a cui si fa riferimento sono quasi certamente in quella categoria: interamente funzionali piuttosto che di natura creativa, e quasi certamente eseguono un'operazione comune che si trova in molti software. In questo caso, probabilmente non sono protetti.
Jules,

1

Il copyright si applica alle opere creative , comprese le espressioni di idee (che è il modo in cui il codice sorgente viene trattato legalmente parlando), a condizione che l'espressione di tali idee raggiunga un livello di originalità e inventiva che superi un livello considerato come una soglia minima di creatività da garantire la protezione e la quantità di copie non sono considerate banali.

Se l'espressione non è sufficientemente distintiva, si parla di non raggiungere la soglia di copyrightability ; se la quantità di copie è considerata insignificante, questa si chiama copia de minimis e non è coperta da copyright. Ciò è stato riscontrato dai tribunali estendendosi ai programmi per computer nella situazione in cui si tratta di programmi minimi ovvi che eseguono una determinata operazione (e in cui l'operazione stessa non è innovativa). Ad esempio, diversi casi di questo sono discussi qui e qui .

Nel contesto della domanda, quelle 3 linee a cui si fa riferimento sono quasi certamente in quella categoria: interamente funzionali piuttosto che di natura creativa, e quasi certamente eseguono un'operazione comune che si trova in molti software. In questo caso, probabilmente non sono protetti.

Tecnicamente questo non è in realtà un "fair use", che è una specifica esenzione legale dalle restrizioni che un detentore del copyright ha il diritto di far rispettare, ma si basa invece su precedenti di casi di common law accumulati nel tempo, ma il termine "fair use" è spesso usato vagamente in un modo che include entrambi i significati, e in realtà c'è una sostanziale sovrapposizione tra di loro.


1

La "dottrina del fair use" statunitense è una possibile difesa affermativa contro una pretesa di violazione del copyright. "Difesa affermativa" significa che ammetti di copiare senza licenza e quindi di violare il copyright di qualcuno, ma poi dichiari che per qualche motivo hai il diritto di farlo senza conseguenze negative. Ad essere onesti, questa sembra essere una strategia pericolosa. Proponi di scrivere un codice che violi il copyright di qualcuno o più di una persona e fai affidamento su una difesa del fair use. Potrei facilmente immaginare che 3 righe di codice possano essere "fair use" ma 3 righe qui, 3 righe lì e 3 righe altrove non lo sono.

Esiste una difesa molto migliore contro la violazione del copyright: non violare in primo luogo. Invece di copiare uno snippet di codice, lo leggi, lo esamini da vicino, impari come funziona, lo capisci e una volta che lo capisci completamente, non lo copi ma scrivi le tue tre righe di codice. Questo ha molteplici vantaggi:

  1. Non stai commettendo una violazione del copyright.
  2. Hai imparato qualcosa e diventare uno sviluppatore migliore.
  3. Scriverlo da solo significa che è scritto nello stesso stile dell'altro codice, facilitando la manutenzione.
  4. Passando il tempo a comprendere lo snippet di codice, apprendi le sue inadeguatezze, i suoi limiti, i suoi bug ed evitali nel tuo stesso codice, il che significa che il tuo codice è migliore rispetto a se avessi copiato lo snippet.
Utilizzando il nostro sito, riconosci di aver letto e compreso le nostre Informativa sui cookie e Informativa sulla privacy.
Licensed under cc by-sa 3.0 with attribution required.