Posso usare algoritmi citati pubblicamente per scrivere programmi?

6

Voglio scrivere un programma che risolva il sudoku.

Quindi, ho trovato alcuni algoritmi di sudoku su Wikipedia. Posso usarli o devo sviluppare il mio algoritmo? Inoltre, devo chiedere il permesso specifico del titolare della licenza? .. In tal caso, come potrei ottenere il permesso?

    
posta suryak 23.07.2011 - 16:37
fonte

6 risposte

2

Disclaimer: non sono assolutamente un avvocato, brevetti o altro. Sentiti libero di ignorarmi nell'interesse della tua [w | h] salute

Tuttavia, la mia comprensione è che se si sta guardando il codice pseduo di un algoritmo tramite un dominio pubblico come Wikipedia, allora si possono prendere in considerazione le decisioni prese nel codice pseduo come input per quando si arriva a codifica la tua implementazione.

Su questa ipotesi ho imparato la programmazione, usando un libro di routine di ordinamento. Non ha senso reinventare la ruota.

Tuttavia, in wikipedia, se si tratta di un esempio di codice, piuttosto che di uno pseudo-codice e ha una specifica nota di copyright contro di esso - è probabilmente normale che il titolare del copyright lasci un'email per chiederglielo - anche se solo per fare ti senti meglio. Inoltre, se si tratta di codice specifico del programma, trasformalo in uno pseudo-codice e rimuovi tutto ciò che è estraneo al problema. In questo modo avrai il codice pseduo e avrai imparato molto sull'algoritmo

    
risposta data 23.07.2011 - 17:54
fonte
0

Se si utilizza l'algoritmo, ma si scrive il proprio codice, questa non è una violazione del copyright. (a proposito, se proviene da Wikipedia, tutto il contenuto è CC-BY-SA. Ritagliato dal loro sito web:

Permission is granted to copy, distribute and/or modify Wikipedia's text under the terms of the Creative Commons Attribution-ShareAlike 3.0 Unported License and, unless otherwise noted, the GNU Free Documentation License. unversioned, with no invariant sections, front-cover texts, or back-cover texts. A copy of the Creative Commons Attribution-ShareAlike 3.0 Unported License is included in the section entitled "Wikipedia:Text of Creative Commons Attribution-ShareAlike 3.0 Unported License" A copy of the GNU Free Documentation License is included in the section entitled "GNU Free Documentation License". Content on Wikipedia is covered by disclaimers.

link

Questo significa che puoi persino copiarlo incollandolo direttamente finché rilasci il tuo codice sotto una licenza compatibile

    
risposta data 23.07.2011 - 18:05
fonte
0

Direi che non c'è alcun problema etico nell'usare il codice mostrato pubblicamente. Perché l'autore (i) del codice l'ha pubblicato in pubblico, se non per qualcuno da vedere e copiare? Lo stesso sarebbe vero per gli algoritmi descritti pubblicamente. Perché metterli là fuori se non vuoi che altri li usino?

Negli Stati Uniti (e ovunque possano raggiungere le forze dell'ordine federali USA) l'uso di codice mostrato pubblicamente potrebbe metterti nei guai del copyright. L'uso di algoritmi pubblicamente descritti può costituire una violazione di brevetto. Ma il problema sarebbe legale, non etico. La legge americana sembra essersi staccata dalla realtà, dall'etica e dall'economia. È certamente possibile che qualche troll distorto e disprezzato metta un algoritmo brevettato là fuori, e poi citi in giudizio chi ha usato quell'algoritmo. Tutta la morale non è contenuta nella legge, specialmente nella legge USA.

    
risposta data 23.07.2011 - 18:32
fonte
0

Devi sempre onorare la licenza. Non è probabile che qualcuno lo scoprirà, ma è il modo etico di fare le cose. Se non viene visualizzata alcuna licenza, dovresti almeno provare a contattare l'autore usando il guestbook o l'email. Grandi siti come wiki ecc. Hanno questi problemi risolti in alcune licenze di contenuto del portale globale.

Nel caso in cui qualcuno sia ancora interessato al codice disponibile sotto una licenza permissiva, offro il mio (attualmente sotto licenza MIT):

Sudoku - Algoritmy.net

    
risposta data 03.07.2012 - 22:10
fonte
0

L'idea generale su software, algoritmi e dettagli di implementazione è:

  • più produci qualcosa che è astratto e senza dettagli significativi, come un algoritmo matematico, meno è probabile che tu abbia il diritto di brevettarlo
  • più è possibile produrre un'implementazione dettagliata, maggiori sono le possibilità che tu possa proteggere la tua proprietà intellettuale con un brevetto.

Ad esempio, se si conosce JPEG, si tratta di un contenitore di file generale per immagini bitmap, il suo standard non dice nulla su eventuali dettagli di implementazione, se si segue lo standard JPEG non è possibile scrivere codice utile perché è troppo generico e non fornisce i dettagli di implementazione che è necessario leggere o scrivere da un file JPEG reale.

Tuttavia questo tipo di cose è possibile link perché è un modo specifico di implementare questo algoritmo.

Puoi trovare alcuni esempi in più qui link

Ricorda che brevettare significa che una persona registra la proprietà intellettuale, non si tratta di vendere e pagare qualcosa, infatti puoi semplicemente scegliere di brevettare qualcosa e non chiedere diritti, anche se la gente lo usa, puoi brevettare qualcosa e proibire l'uso di tale tecnologia senza dare licenze, puoi brevettare qualcosa e scegliere di vendere licenze per usare quella tecnologia.

Se trovi il codice con una "fonte sconosciuta", la tua migliore possibilità è cambiare almeno un pezzetto di codice, ridisporre il testo o qualcosa del genere.

    
risposta data 03.07.2012 - 22:41
fonte
0

Sì, più un riempitivo sufficiente per rendere questa risposta abbastanza a lungo purché si rispetti la licenza dichiarata.

    
risposta data 03.07.2012 - 23:14
fonte

Leggi altre domande sui tag