Domanda:
Posso adattare il codice che ho scritto per lavoro e rilasciarlo come open source
KGS
2019-02-14 16:44:06 UTC
view on stackexchange narkive permalink

Recentemente ho lavorato per effettuare alcune chiamate API a una terza parte. Non riuscivo a trovare nulla di disponibile da usare, quindi ho dovuto farlo da zero. Ora mi chiedo se sarebbe giusto per me riscrivere tutte le parti specifiche della piattaforma e rilasciarle come open source (direi che cambierebbe circa il 50% del codice)?

Ora il Il documento API che l'altra azienda mi ha fornito dice "proprietario e riservato", ma presumo che si applicherebbe solo al documento stesso. Inoltre, quando ho chiesto loro aiuto a un certo punto, mi hanno detto che non supportano la lingua che sto usando. Non ho firmato un NDA specifico per questo, ne ho uno generale per quanto riguarda i dati e le informazioni del cliente (e questi non sono clienti). Sono un po 'riluttante a chiedere informazioni a qualcuno della mia azienda poiché ho 0 esperienza quando si tratta di questo genere di cose, e non so se lo vedrebbero negativamente ..

modifica

Grazie a tutti per il consiglio. So che il codice che scrivo appartiene al mio datore di lavoro, ma ho pensato che, poiché la maggior parte di ciò che facciamo dipende dalla piattaforma, avrei dovuto ristrutturarlo in modo sostanziale in modo che possa funzionare in modo indipendente, e il resto potrebbe essere considerato un modo comune di farlo cose. Per quanto riguarda l'API proprietaria di cui sarebbe diventato un wrapper, ha schemi wsdl e xsd a cui è possibile accedere pubblicamente (anche se dovresti sapere dove trovarli), in base ai quali una persona può capire come usarlo . Immagino che la cosa migliore sarebbe davvero parlare con qualcuno .. Ti farò sapere come va

I commenti non sono per discussioni estese;questa conversazione è stata [spostata in chat] (https://chat.stackexchange.com/rooms/89744/discussion-on-question-by-kgs-can-i-adapt-code-i-wrote-for-work-e-rilascia-esso-a).
Per quale località nel mondo lo chiedi?
Domanda di LEGGE SE correlata: https://law.stackexchange.com/questions/33987/can-copying-simple-general-code-cause-copyright-infringement-and-is-it-even-pos
Nove risposte:
Mason Wheeler
2019-02-14 19:42:24 UTC
view on stackexchange narkive permalink

L'ho effettivamente fatto. A un certo punto ho scritto del codice al lavoro e ho capito che sarebbe stato generalmente utile, ben oltre lo scopo del progetto specifico su cui stavo lavorando. Quindi ho chiesto al mio capo (che era anche l'amministratore delegato; era un'azienda molto piccola) se era OK pubblicarlo come open source, e lui ha detto che sarebbe andato bene.

Nota: quell'ultima parte è molto, molto importante. In qualità di dipendente, il codice che ho scritto per l'azienda era "lavoro su commissione", il che significa che il mio prodotto creativo non era di mia proprietà , ma quello del mio datore di lavoro. Quindi senza il permesso del proprietario legale, pubblicarlo sarebbe stato almeno un reato di licenziamento, e molto probabilmente anche un crimine.

(IANAL, ma questo è un messaggio abbastanza ben compreso e ampiamente interpretazione accettata della legge statunitense applicabile.)

+1 Sì, questo è l'unico modo per poter rilasciare il codice.Devi avere il permesso dell'azienda, ** PER SCRITTO **, dicendo che sei autorizzato ad adattare il codice per il consumo pubblico.
Questa bella risposta sarebbe ancora migliore se riconoscesse che legalmente non è necessario alcun permesso se si ricrea il lavoro in modo indipendente senza utilizzare nessuna delle risorse fornite dall'impiego.
@Aaron In realtà non è del tutto vero.Alcune aziende (utilizzate per lo meno) costringevano gli ingegneri (software e altro) a firmare contratti che designassero qualsiasi IP / cose che hanno creato, periodo, erano proprietà dell'azienda.Indipendentemente dal fatto che lo facessi o meno con l'aiuto delle risorse aziendali, all'interno o all'esterno del tempo aziendale o all'interno o all'esterno delle attrezzature dell'azienda, era irrilevante.Tutto ciò che hai creato apparteneva a loro.Non ne ho sentito parlare da un po 'di tempo, ma è ancora qualcosa che OP dovrebbe valutare.
Nota: in molte giurisdizioni un accordo verbale è legalmente vincolante.Avere il permesso per iscritto è sempre ottimo per una difesa, ma potrebbe non essere richiesto dalla legge.Anche nelle giurisdizioni in cui gli accordi verbali non sono vincolanti, se la conversazione viene registrata in audio al posto di un contratto firmato, un giudice può scegliere di trattarla in modo simile.
Il commento di @DavidK non può essere affermato con sufficiente forza.** SCRIVILO PER SCRITTO **
@JohnVandivier Hai ragione gli accordi verbali possono essere vincolanti, ma se il capo che ti ha detto che andava bene dopo dice "non gli ho mai detto che poteva farlo!", Allora sei sfortunato.Non si tratta di avere un accordo legalmente vincolante, si tratta di essere in grado di dimostrare che ti è stato dato il permesso.
Inoltre, per convincere i capi, è utile trovare un buon progetto open source esistente a cui aderire con un'organizzazione senza scopo di lucro dietro di esso.In generale, non diranno mai di sì per qualcosa che è una competenza fondamentale, ma se è qualcosa di tangenziale che non è monetizzato e poi viene donato a un'organizzazione non profit, può essere una cancellazione delle tasse (un modo per monetizzare qualcosa normalmente non monetizzabile)
@JohnVandivier "Gli accordi verbali valgono solo la carta su cui sono scritti" non fidarti mai di un accordo verbale.Anche se registrato, la difesa può sottolineare che non è affatto difficile creare registrazioni false di cose che la persona non ha mai detto.Le registrazioni vengono spesso espulse in tribunale proprio per questo motivo.Le registrazioni sono un buon foraggio da tabloid, non una buona difesa legale
@JohnVandivier [questo] (https://www.sciencedaily.com/releases/2003/04/030411071141.htm) è stato scritto nel 2003!Da allora è diventato ** molto ** più facile.È davvero utile (e un po 'divertente, come ingegnere del suono) quando qualcuno incasina una sceneggiatura e non devo necessariamente riportarlo per registrarlo di nuovo.
Questo!Inoltre, potrebbe convincere l'azienda se offri di mettere il loro nome su di esso e presentarlo come marketing gratuito.Ma anche in quel caso, CHIEDI!
@user87779 Per non parlare del fatto che le registrazioni sono in genere illegali se l'interlocutore non è d'accordo e anche ignorate in tribunale esclusivamente per questo motivo in alcune giurisdizioni.
@Aaron Anche se lo riscrivessi, a meno che tu non abbia cambiato completamente quasi tutto, l'azienda potrebbe semplicemente sostenere che tutto ciò che hai fatto è stato * ridigitare * il loro codice.Questo è il motivo per cui quando Compaq stava ricreando il BIOS di IBM nel 1982, aveva un team che decodificava per codificare e scriveva una specifica precisa, e un secondo team * completamente diverso * che prendeva quel codice e lo usava per scrivere un BIOS che avrebbe funzionatoesattamente lo stesso, senza essere soggetto a copyright.(Vedi anche [Clean room design] (https://en.wikipedia.org/wiki/Clean_room_design))
@user87779 Lo stesso vale per le firme e le autorizzazioni scritte, tuttavia, sono facilmente contraffatte.Tuttavia, non sembrano essere buttati fuori così spesso, per qualsiasi motivo legale complesso.
@JanusBahsJacquet Vero, ma leggermente diverso.Penso che il modo più chiaro per dirlo sarebbe questo: ci vuole un po 'di pratica (quasi esperto) e una buona dose di sforzo per falsificare una firma o un'e-mail in modo non dimostrabile.Ci vuole solo un po 'di punk con bandcamp e accesso a Internet (per istruzioni dettagliate) per falsificare una registrazione.Ma sollevi un buon punto.La tecnologia sta accelerando e presto sarà altrettanto facile falsificare firme, timbri notarili, database e origini di posta elettronica per i non esperti.Si spera (molto probabilmente), le contromisure accelereranno parallelamente a questo.
Quanto in alto nella catena di comando bisogna andare?Si dovrebbe ottenere il permesso dal CEO o è sufficiente solo il capo immediato?
In teoria hai ragione.Tuttavia, in termini pratici: se è qualcosa di piccolo e relativamente insignificante e non danneggia in alcun modo l'attività dell'azienda, dubito che la società ti farà mai causa per qualcosa del genere.Probabilmente non lo scopriranno nemmeno.
gnasher729
2019-02-14 16:51:24 UTC
view on stackexchange narkive permalink

Il codice che hai scritto per il lavoro è proprietà della tua azienda. Pubblicarlo, come open source o altro, è una violazione del copyright e ti farà licenziare. Crea anche un incubo legale per chiunque prenda questo codice, assumendo che sia open source, quando in realtà è di proprietà della tua azienda.

E "adattare" il codice non ti aiuta. Stai creando un'opera derivata. Che è una violazione del copyright prima ancora di copiare il tuo lavoro derivato.

I commenti non sono per discussioni estese;questa conversazione è stata [spostata in chat] (https://chat.stackexchange.com/rooms/89775/discussion-on-answer-by-gnasher729-can-i-adapt-code-i-wrote-for-work-e-rilascio).
John Vandivier
2019-02-14 22:39:42 UTC
view on stackexchange narkive permalink

Non sono d'accordo con la maggioranza qui. Chiaramente la maggior parte delle persone dice che non dovresti farlo. Non sono necessariamente in disaccordo con questo, ma il sottotesto e in molti casi il messaggio palese è che legalmente non puoi farlo piuttosto che semplicemente non dovresti farlo . La correttezza giuridica di quel messaggio è tutt'altro che chiara nel tuo caso e in generale.

È bello vedere che, sebbene io sia in minoranza, non è così oscuro che nessun'altra risposta sia d'accordo con la mia opinione o che tutte le risposte che concordano con la mia opinione siano valutate negativamente. Sono d'accordo con lo spirito del messaggio di @ Kittoes0124.

In quanto minoranza, dovremmo certamente imparare qualcosa dalla prudente maggioranza: molti sviluppatori sono stati licenziati o peggio per violazione del copyright o altro violazione della proprietà intellettuale. Il risultato, sfortunatamente, è stato un eccesso di difensiva nella comunità e il risultato è un danno alla comunità Open Source e alla società nel suo insieme, che beneficia di una forte comunità di sistemi operativi.

Uno un commento a proposito ha fatto riferimento a Clean Room Design, che è un metodo legalmente riconosciuto e collaudato di replica delle funzionalità senza violazione del copyright. Notare cosa l'articolo collegato dice sulla progettazione di camere bianche, con supporto legale specifico:

La progettazione di camere bianche è solitamente impiegata come best practice, ma non strettamente richiesta dalla legge . In NEC Corp. v Intel Corp. (1990), NEC ha chiesto un giudizio dichiarativo contro le accuse di Intel secondo cui gli ingegneri di NEC hanno semplicemente copiato il microcodice del processore 8086 nel loro clone NEC V20. Un giudice statunitense ha stabilito che mentre le prime revisioni interne del microcodice di NEC erano effettivamente una violazione del copyright, quella successiva, che in realtà è entrata nel prodotto di NEC, sebbene derivata dal primo, fosse sufficientemente diversa dal microcodice Intel da poter essere considerata esente da violazioni del copyright.

Questo è lo standard corretto negli Stati Uniti. Si basa sulla giurisprudenza, non sull'opinione degli sviluppatori o sugli aneddoti. È consentito fare riferimento a codice proprietario e all'esperienza personale come riferimento e persino utilizzare quel codice letterale come punto di partenza concreto, ma il codice finale deve essere "sufficientemente diverso".

Sembra essere un ambiguo e standard arbitrario perché è esattamente così. I giudici variano in termini di clemenza nell'interpretazione della regola, ma la regola è chiara. La saggezza comune è "meglio prevenire che curare", ed è per questo che molti professionisti purtroppo evitano la visualizzazione pubblica di qualsiasi codice. In genere è più intelligente e meno rischioso cercare l'approvazione aziendale interna, ma non è generalmente richiesto dalla legge. Potrebbe essere richiesto dalla legge se hai firmato alcuni documenti aggiuntivi o se la tua giurisdizione ha una legge speciale.

Una nota importante nel tuo caso specifico è che c'è un'importante differenza tra il codice che proponi di spedire e il codice originale. Dichiari che il codice originale è specifico della piattaforma e proponi di spedire codice indipendente dalla piattaforma. Ciò significa che ci sono casi d'uso che il codice legacy non può supportare. Questo è un metodo per dimostrare una differenza significativa. Potresti rafforzare ulteriormente questa differenza rendendo la tua soluzione intenzionalmente incompatibile con la piattaforma legacy. Ciò significherebbe che non vi è alcuna sovrapposizione di casi d'uso.

Non sono un avvocato e questa non è una consulenza legale. Ti consiglio di consultare un avvocato se decidi di fare qualcosa del genere. Vedo molti precedenti legali statunitensi a sostegno del fatto che quando si codifica si attingerà naturalmente all'esperienza e alla conoscenza precedenti, incluso il riferimento a esempi concreti di codice, e questo non rende l'Open Source illegale.

L'uso della stessa sintassi non deve essere un problema. Molti linguaggi e librerie forniscono solo un modo sintattico per eseguire una determinata operazione ed esistono best practice per funzioni, variabili e così via, in modo tale che l'utilizzo anche degli stessi nomi di variabile potrebbe essere inevitabile per la replica delle funzionalità. In casi come questo, una differenza significativa potrebbe essere impossibile e quindi non ragionevolmente richiesta.

Tieni presente che queste nozioni generali sarebbero completamente indifendibili se firmassi un accordo di non divulgazione specifico o determinati altri documenti.

Altre due note correlate. In primo luogo, le violazioni della proprietà intellettuale sono soggette a uno statuto di limitazioni negli Stati Uniti ( fonte):

La violazione di un copyright può comportare responsabilità civile e / o penale. Il termine di prescrizione per un procedimento penale è di cinque anni, mentre per un'azione civile è di tre anni.

Una seconda nota è che ci sono solo 4 tipi (AFAIK / IANAL) di proprietà intellettuale ( fonte):

  1. Copyright
  2. Marchio commerciale
  3. Brevetto
  4. Segreti commerciali

Se hai a che fare con IP che non rientra nelle categorie 1-3, è meno problematico dal punto di vista legale adattare il codice per uso personale. Mi sembra difficile che qualcuno possa sostenere che X è un segreto commerciale se X è un pattern o una caratteristica comune in altri software, in particolare se esiste già in progetti Open Source.

Ci sono almeno (nell'UE) anche i diritti sui database.Dato che ne ho inventato uno in più, probabilmente ce ne sono anche altri.
Sono d'accordo.È imperativo notare che il mio commento è specifico per gli Stati Uniti.Francamente, vorrei che le altre risposte avessero annotato le loro giurisdizioni applicabili.Una nota correlata, nel caso qualcuno non sia a conoscenza, è che gli esaminatori di brevetti negli Stati Uniti e nell'UE comunicano effettivamente per garantire che i brevetti si applichino in quelle aree, con alcune eccezioni.
Questa è una risposta molto completa e ben ponderata e buone informazioni di base!Raccomando comunque vivamente a OP di verificare prima con il proprio datore di lavoro perché, anche se ciò che volevano fare si è rivelato valido in tribunale, probabilmente non vorranno essere portati in tribunale dal loro datore di lavoro (né essere licenziati, che verrebbe probabilmente portato in tribunale).Il modo migliore per evitare questa possibilità è controllare prima.
@bob Assolutamente d'accordo.Idealmente, OP non dovrebbe mai avere bisogno di andare in tribunale.Sono contento che contenga alcune informazioni utili!
Tieni presente che questo è il caso in cui non disponi delle autorizzazioni del tuo datore di lavoro per pubblicare il codice.Se chiedi e ti dicono di sì, non devi nemmeno preoccuparti dell'IP o del copyright.
Detto molto meglio di me. La cosa che ho notato è che la comunità in generale (qui e nel mio campo di lavoro) sembra credere che * tutto * il codice scritto per un'azienda rientri nella categoria 4.
@Kittoes0124 Questo perché ogni contratto di lavoro che ho visto contiene un contratto che lo rende tale.(Devo ammettere che ne ho visti solo circa 10.)
Se sei lo sviluppatore del codice originale, non puoi davvero progettare una camera bianca.
Questa è l'unica risposta corretta finora
Questa risposta afferma che non è d'accordo con la maggioranza, quindi procede per concordare con loro sul fatto che non dovresti adattare il codice del tuo datore di lavoro.Contiene quindi un utile suggerimento sulla progettazione di camere bianche (che _non_ è adattamento).Rimuoverei tutte le cose sul disaccordo in quanto non sembra aggiungere nulla.
Questa è un'ottima risposta!Potresti essere interessato a controllare https://law.stackexchange.com/?tags=intellectual-property
Dopo la revisione, credo che affermare che non sono d'accordo con l'opinione della maggioranza aggiunge un contesto prezioso a un utente potenzialmente incauto, che potrebbe accettare queste informazioni senza rendersi conto che sono potenzialmente controverse.Inoltre, se qualcuno ha letto il testo su NEC Corp. v Intel Corp. (1990) e non ha capito il modo in cui autorizza alcuni tipi di adattamento, consiglio di rivedere quel testo un'altra volta.
eMBee
2019-02-14 20:07:23 UTC
view on stackexchange narkive permalink

La risposta breve è non senza espressa autorizzazione .

Devi chiedere ai tuoi superiori. È molto probabile che il tuo manager debba passare la domanda in cima alla catena.

Se sei fortunato, l'azienda ha un processo per questo. In caso contrario, potrebbe essere utile scoprire se è stato fatto in precedenza. Chiedi ai tuoi colleghi. Un precedente esempio di rilascio di codice è un precedente molto utile. Un esempio di un'altra azienda può anche aiutare, così come le risorse della comunità del software libero e open source che spiegano il processo e le implicazioni. Tutto ciò che aiuta i tuoi superiori a renderlo più semplice.

Prima di rilasciare qualsiasi codice, l'azienda deve verificarlo per assicurarsi che il codice sia interamente di proprietà dell'azienda.

Per il implicazioni legali più dettagliate e risorse per facilitare il processo, potresti ottenere risposte più utili su https://opensource.stackexchange.com/

Kittoes0124
2019-02-14 21:34:24 UTC
view on stackexchange narkive permalink

Sebbene le risposte fornite finora siano buoni consigli, penso che vadano troppo oltre. Il codice che hai scritto appartiene al tuo datore di lavoro, ma generalmente non possiede le conoscenze e le competenze acquisite durante l'implementazione.

Facciamo finta che ti sia stato assegnato il compito di implementare un generatore di numeri casuali utilizzando un'API proprietaria fornita a tu da una terza parte; per semplicità, questa API è costituita dalla singola firma public byte [] GetRandomBytes (int length) . Devi implementare una nuova classe RandomNumberGenerator , utilizzando l'algoritmo open source (come PCG o Xoroshiro) di tua scelta, che esponga le API public long GetNextInt64 () e public long GetNextInt64 (long lowerBound, long upperBound) .

Il tuo datore di lavoro potrebbe possedere il codice specifico che hai scritto, ma questa è praticamente la fine. Niente ti impedisce di implementare successivamente la tua versione di un RNG che dipende, ad esempio, da / dev / random per l'origine dei byte casuali. Potrebbe essere una mossa difensiva saggia utilizzare un algoritmo e firme di funzione diversi (dove ha senso farlo) ma questo conta sempre meno quanto più uno dipende dal materiale open source.

Ce ne sono sicuramente molti di casi in cui si dovrebbe seguire il consiglio finora di NON FARLO! ma la stragrande maggioranza delle cose che a noi programmatori è richiesto di fare rientra nella categoria della conoscenza generale.

Perché metterti nella possibilità di provare a convincere il tuo attuale datore di lavoro che il codice che hai pubblicato è significativamente diverso dal codice al lavoro?(Il codice di scrittura BTW non è una conoscenza generale)
@EdHeal Voglio rendere il mondo un posto migliore e non mi dispiace correre un rischio minimo per farlo.Certo, con la giusta motivazione, un'azienda * potrebbe * provare a seguirmi in tribunale, ma il risultato molto più probabile è che mi ritroverò con un bel portafoglio di lavoro;se sono davvero fortunato, molte persone lo useranno attivamente!E sì, il codice può assolutamente essere una conoscenza generale.Ad esempio, nessuna azienda può rivendicare "(ax + c)% m".Potrebbero avere un brevetto su una particolare tecnica, ma è per questo che bisogna stare attenti a fare affidamento sull'open source quando si scrive open source.
Sono d'accordo con la tua prima affermazione ma non con il tuo esempio.Se implementi un generatore di wrapper per il tuo datore di lavoro, il valore della proprietà intellettuale è nel wrapper e non nel generatore.Se estendi il wrapper per supportare un altro generatore, è ancora un lavoro derivato dal wrapper che appartiene al tuo datore di lavoro.Se ne riscrivi uno da zero implementando la stessa logica, è ancora un lavoro derivato agli occhi della legge sulla proprietà intellettuale.Se non usi né il codice, né "l'idea alla base del codice", non hai nulla da pubblicare in primo luogo.
@zakinster Sciocchezze, pensa a quello che stai insinuando qui, nessuna azienda può rivendicare l '"idea dietro il codice" nel mio esempio perché non è originale.Se l'idea di "X" ha già un'implementazione open source, non è impedito di scrivere il proprio derivato semplicemente per il fatto che hanno implementato una versione di "X" nel loro lavoro formale.L'interfaccia descritta nel mio esempio ha così tante implementazioni esistenti che sarebbe impossibile per un'azienda rivendicare legittimamente il concetto.Ancora una volta, si dovrebbe essere cauti ma non esageriamo ...
@Kittoes0124 La domanda riguarda la pubblicazione di qualcosa che esiste.Se quella cosa non è né il codice originale né un'idea originale dietro il codice, cosa c'è da pubblicare?Se si tratta di un nuovo lavoro non correlato, prodotto non utilizzando né il codice esistente, né un'idea originale ma solo abilità, allora è un nuovo lavoro ma non ci sarebbero dubbi.La mera esistenza della domanda "posso pubblicare" implica un collegamento tra il nuovo lavoro e il lavoro esistente che è la realizzazione o la concezione, che appartengono entrambi al proprietario originale.
@zakinster C'è un problema estremamente comune nello sviluppo del software in cui l'algoritmo "X" non è immediatamente disponibile in linguaggio "Y".Ad esempio, il settore finanziario fa ampio uso di algoritmi di cifre di controllo di dominio pubblico (come [mod10] (https://en.wikipedia.org/wiki/Luhn_algorithm)) per aggiungere un livello di convalida a cose come accounte numeri di instradamento;questi non fanno parte di alcuna libreria standard.L'implementazione di un tale algoritmo per un'azienda non mi impedirebbe affatto di creare la mia libreria open source.Perché dovrei?In modo che gli altri non siano costretti a imparare quello che ho fatto.
@Kittoes0124 Sì, sono d'accordo, se non riutilizzi nulla, in teoria, puoi.Ma sfido il motivo che c'è dietro.Il punto è che se c'è un motivo per pubblicare qualcosa, significa che c'è un valore da riutilizzare e il valore appartiene al proprietario originale.Non è vero al 100%, come ad esempio nel tuo caso, non c'è valore riutilizzato ma solo abilità in Y e conoscenza di X. Ma penso ancora che sia un caso molto specifico e in generale quando viene posta questa domanda, motivo = valore di riutilizzo.
Cerchiamo di [continuare questa discussione in chat] (https://chat.stackexchange.com/rooms/89740/discussion-between-kittoes0124-and-zakinster).
Robert Andrzejuk
2019-02-15 15:43:16 UTC
view on stackexchange narkive permalink

Nella mia azienda abbiamo una politica open source.

Per utilizzare l'open source, la licenza deve essere autorizzata per l'uso e tutte le restrizioni stipulate.

Per contribuire all'open source, il codice deve essere preparato e sottoposto a revisione e approvato.

Devi scoprire le politiche della tua azienda.

Credo che questa sia la risposta più corretta.Per evitare possibili problemi, ottieni l'approvazione dalla tua azienda prima di rilasciarlo in Open Source.
zakinster
2019-02-15 00:31:15 UTC
view on stackexchange narkive permalink

Posso adattare il codice che ho scritto per lavoro e rilasciarlo come open source

Mai senza un'esplicita autorizzazione del proprietario della proprietà intellettuale, che potrebbe essere il tuo datore di lavoro, il tuo cliente o il cliente del tuo datore di lavoro.

I programmatori non sono scimmie in codice, il valore in un programma non è solo nel codice ma anche nella logica di implementazione, cioè l'idea originale dietro il codice .

Se produci un nuovo codice utilizzando qualsiasi parte del codice esistente, o anche qualsiasi idea originale dietro il codice, stai producendo un'opera derivata che deve essere autorizzata dal proprietario dell'originale lavoro.

Se non riutilizzi né il codice né un'idea originale, non hai nulla da pubblicare in primo luogo finché non usi solo le tue capacità per produrre un nuovo lavoro non correlato.

David Thornley
2019-02-15 03:02:45 UTC
view on stackexchange narkive permalink

Se vuoi che il codice sia utilizzabile open source, devi ottenere la licenza legalmente. Rilasciare codice con una licenza sorgente non valida in modo che sia disponibile significa impostare bombe a orologeria legali per le persone che lo utilizzano in buona fede. Possono essere citati in giudizio per danni e possono ottenere ingiunzioni contro l'utilizzo del materiale protetto da copyright. Non vuoi farlo. È necessario che la distribuzione sia chiaramente legale.

Per evitare ciò, è necessaria una sorta di rilascio da parte del proprietario, che consenta la distribuzione del programma con una licenza Open Source. Questo deve essere fatto da qualcuno con un'autorità adeguata e devi determinare chi è. Questo dovrebbe essere scritto e firmato. Un accordo verbale è tecnicamente sufficiente, ma è difficile dimostrare tali accordi verbali ed è facile per la persona che dice che va bene negare di aver detto una cosa del genere o di averlo inteso, e quindi le azioni legali sono del tutto possibili.

Sono felice di vedere qualcuno che cerca di distribuire software con una licenza Open Source, ma pubblicarlo con una licenza non valida è una cattiva idea.

Basile Starynkevitch
2019-02-17 22:18:14 UTC
view on stackexchange narkive permalink

Non sono un avvocato. Ma uno sviluppatore di software (in Francia) e contribuisco (professionalmente) a progetti open source e talvolta sviluppo anche software open source in modo professionale.

Devi ottenere l'autorizzazione dal tuo datore di lavoro.

Ricorda che il codice sorgente è spesso protetto da copyright o segreti commerciali e il codice sorgente che scrivi sul posto di lavoro appartiene a ( salvo diversamente specificato per iscritto da un contratto) alla tua azienda. In alcuni contratti di lavoro, ogni codice che scrivi (anche a casa) appartiene al tuo datore di lavoro.

Una linea limite potrebbe essere quella di riscrivere quel codice in qualche altro linguaggio di programmazione (ad esempio scrivere in Rust a casa qualcosa hai scritto al lavoro in C nel tuo ufficio). Ma anche in questo caso, farai meglio a chiedere al tuo capo (almeno via e-mail) e ottenere il permesso da lui / lei.

In Europa, gli algoritmi di solito non possono essere protetti (ma la loro implementazione del codice sorgente può e spesso lo è). Negli Stati Uniti, ho sentito che anche gli algoritmi possono essere brevettati.

A proposito, non vuoi problemi con il tuo capo. Quindi dovresti informarlo e chiederlo comunque. Potrebbe decidere di aiutarti a mettere ufficialmente quel codice come open source, oppure potrebbe ricordarti che potresti metterti in grossi guai. Se hai qualche approvazione (scritta, almeno tramite email) dal tuo capo, almeno stai agendo in buona fede.



Questa domanda e risposta è stata tradotta automaticamente dalla lingua inglese. Il contenuto originale è disponibile su stackexchange, che ringraziamo per la licenza cc by-sa 4.0 con cui è distribuito.
Loading...