• User

    Copiare codice postato su forum e blog

    Ho notato che è pratica diffusa tra i programmatori e sviluppatori web copiare il codice postato su tutorial o come risposta nei vari forum.

    Scommetto che molti ignorano che senza l'autorizzazione dell'autore (tramite licenza o altro) si tratta di un'azione illegale a rischio di sanzioni e anche reclusione.

    Detto ciò, **voi cosa ne pensate a livello morale, è accettabile tale pratica? **

    Io ad esempio quando posto del codice su un forum come risposta, sinceramente non sono interessato a chi lo usa, lo posto pubblicamente proprio perché spero sia d'aiuto a quante più persone possibile...


  • Si potrebbe sostenere che postando il codice lo si rende di pubblico dominio salvo indicazione contraria ...


  • User

    Da quanto ne so io, legalmente parlando una proprietà intellettuale ha tutti i diritti riservati, salva diversa indicazione dell'autore.

    Qui si può anche considerare che chi posta il codice su Forum/Blog, non necessariamente è l'autore...che detiene i diritti della proprietà...


  • User Attivo

    @Paride15 said:

    ** a livello morale, è accettabile tale pratica? **

    Ciao, parlare di morale è davvero azzardato. Per capire "tale pratica" dovresti essere un programmatore così da poter distinguere un codice che rientra nel diritto di proprietà intellettuale da uno che invece è per sua natura di pubblico dominio.
    Se su Stack Overflow qualcuno chiede come si strutturano 3 div affiancati di uguale altezza, le risposte che ottiene sono codici utili a comprendere la logica di strutturazione.
    Stesso discorso per un blogger che scrive un tutorial ricco di codici di esempio.

    Se lo stesso blogger programmatore crea un nuovo metodo, mai usato prima da nessuno, prima ancora di postarlo in un articolo lo caricherà ad esempio su GitHub e assegnerà una licenza d'uso: MIT, GPL2, etc.
    Chi leggerà l'articolo saprà esattamente quale licenza d'uso ha impostato il blogger e si comporterà di conseguenza in base alla licenza.

    Ma se il blogger crea un sistema, unico, su cui decide di monetizzare, molto semplicemente non lo rende pubblico e gli assegna una licenza più restrittiva.


  • User

    Capisco il tuo punto di vista, io ponevo lo sguardo da questo punto:

    1. Quando si copia del codice postato, siamo sicuri che chi lo ha postato è l'autore?
    2. Non deve per forza essere originale come idea, basta che sia personale, frutto dell'ingegno dell'autore per essere coperto dal diritto d'autore (non esageratamente semplice ovviamente)

    Sicuramente si tratta di una pratica illegale, che espone a rischi legali, ma dal punto di vista morale non ho una visione chiara e i vostri punti di vista mi interessano molto...


  • User Attivo

    @Paride15 said:

    Capisco il tuo punto di vista

    Ma il mio non è un punto di vista, forse tu non sai di cosa stai parlando 🙂 e confondi il furto intellettuale con qualcosa che appunto non conosci.
    Per capire se un codice postato rientra nella proprietà intellettuale di qualcuno è necessario sapere di cosa stiamo parlando, di quale linguaggio codice.

    Ad esempio la libreria jQuery a questo link: ajax.googleapis.com/ajax/libs/jquery/3.3.1/jquery.min.js
    Se stai progettando un sito web con funzioni che necessitano di questa libreria "copi e incolli".
    Non è "immorale" ma è che la tua funzione per girare ha bisogno di quelle librerie, e sono lì apposta per essere utilizzate.

    Per farti capire meglio, vai su questo sito, uno dei più bravi e noti sviluppatori: sridharkatakam.com
    L'autore scrive tutorial per il framework Genesis, l'accesso alla maggior parte di questi tutorial è a pagamento, mensile o annuale.
    Paghi e hai accesso ai codici.
    Ora, una volta che hai effettuato l'accesso e "copi e incolli" i codici di un tutorial hai di fatto implementato nel tuo sito una funzione più o meno complessa.
    Poi non rinnovi l'abbonamento, tuttavia i codici sono nel tuo sito, volendo potresti rivenderli oppure potresti farne dei tutorial nel tuo blog e senza nemmeno citare l'autore Sridhar Katakam, in fin dei conti quei codici e script sono in GPL2.
    In questo caso si può parlare di "immoralità", oltre che si crea un danno economico all'autore originale.

    Senza entrare troppo in concetti astratti e filosofici, la realtà è che un programmatore non si aproprierà mai di quei codici senza citarne la fonte, Internet è grande ma anche molto piccolo.
    Chi lo fa è uno smanettone che si crede furbetto ma che di solito ha vita molto breve, il mondo dei programmatori sa essere molto bastardo e punisce sempre questi furbetti in un modo o nell'altro 😄

    Discorso uguale identico se usi codici da questo sito: crunchify.com
    sono lì apposta e sono rigorosamente di pubblico dominio, e che generano guadagni economici, attraverso la pubblicità.

    Fermo restando che il furto intellettuale è una gran brutta cosa, ora dovresti capire che parlare di "moralità", etica, è troppo complesso se non si citano esempi pratici.


  • User

    Ok, chiaro, ma parliamo di cose diverse, sto parlando di copiare soluzione trovate in rete,** ma senza l'autorizzazione dell'autore**.
    Il fatto che siano pubbliche non vuol dire che sia ovvio che possano essere copiate.

    Se acquisti il codice, oppure è segnalata la licenza e usi il codice sotto quella licenza, ovvio è tutto ok.

    Come esempio pratico:

    Un utente cerca una soluzione sul web,
    trova la pagina di un forum dove un utente posta la soluzione per una domanda uguale.
    Lui copia quel codice e lo usa per il suo problema, solo che nel forum non è specificata la licenza d'uso o peggio nel footer è segnato il copyright, e lui ovviamente non ha pagato il codice.

    Se il codice presenta i caratteri di personalizzazione sufficienti da rientrare nell'opera d'ingegno, legalmente si tratta di una violazione dei diritti d'autore,
    ma moralmente? Il fatto che quel codice sia stato reso pubblico autorizza chiunque a prelevarlo?

    Ripeto che io quando posto pubblicamente del codice sono ben felice che sia usato da quanti più possibile, ma non è per tutti così, leggevo lamentele soprattutto su forum esteri...


  • User Attivo

    @Paride15 said:

    Un utente cerca una soluzione sul web,
    trova la pagina di un forum dove un utente posta la soluzione per una domanda uguale.
    Lui copia quel codice e lo usa per il suo problema, solo che nel forum non è specificata la licenza d'uso o peggio nel footer è segnato il copyright, e lui ovviamente non ha pagato il codice.

    Un forum per sua natura è un luogo pubblico in cui si condividono le proprie esperienze, punti di vista, soluzioni a problemi.
    Queste condivisioni si fanno liberamente, gratuitamente e con spirito di condivisione.
    Nessuno è obbligato a dare una soluzione, postare uno script, un codice anche complesso, lo schema elettrico per controllare un motore elettrico come in questo caso: plcforum.it/f/topic/78964-scheda-di-controllo-velocità-motore-motore-3a-24v

    Mi sembra di capire che forse non riesci ad accettare, o comprendere, che un conto è fornire una soluzione esplicitamente di pubblico dominio e per spirito di condivisione, un conto è appropriarsi della proprietà intellettuale altrui.
    Ciò che pubblichi in un forum è e resta di pubblico dominio.
    Ciò che non vuoi sia di pubblico dominio non lo rendi di pubblico dominio, gli attribuisci una specifica licenza e lo vendi e se qualcuno se ne appropria illecitamente usi gli opportuni strumenti legali.

    @Paride15 said:

    Se il codice presenta i caratteri di personalizzazione sufficienti da rientrare nell'opera d'ingegno, legalmente si tratta di una violazione dei diritti d'autore,
    ma moralmente? Il fatto che quel codice sia stato reso pubblico autorizza chiunque a prelevarlo?

    E beh direi proprio di sì.
    Chi pubblica la soluzione a una domanda sa benissimo che sarà letta anche da migliaia, milioni in certi forum, di persone e che potrà aiutare chiunque ha lo stesso problema.
    Se uno non vuole regalare a chiunque la soluzione al massimo pubblica "Ciao, io ho progettato la soluzione X, scrivimi in privato e ti vendo il progetto."

    @Paride15 said:

    Ripeto che io quando posto pubblicamente del codice sono ben felice che sia usato da quanti più possibile, ma non è per tutti così, leggevo lamentele soprattutto su forum esteri...
    Ecco appunto, pubblica qui qualche link specifico, altrimenti stiamo parlando solo di esempi ma nulla di concreto.

    .


  • User

    Io la vedo esattamente come te, se pubblichi una soluzione (tutorial sul blog, forum ecc...) normalmente lo fai come spirito di condivisione, anche io pubblico volentieri le mie soluzioni e le lascio con libertà d'uso.

    Per questo mi sono stupito nel leggere che tale pratica sia illegale e in molti forum esteri addirittura considerato immorale. Dal mio punto di visto il concetto "siamo nani sulle spalle di giganti" è sempre vero, e se non vuoi che una soluzione non venga usata, non divulgarla.

    Se poi qualcuno pubblica una soluzione non sua e gli altri la usano, la colpa dovrebbe essere di chi la pubblica...almeno secondo me...

    Nessun caso specifico, mi interessa la vostra opinione in generale.


  • User Attivo

    @Paride15 said:

    Nessun caso specifico, mi interessa la vostra opinione in generale.

    Senza un caso specifico è praticamente impossibile dare opinioni se non estremamente vaghe, mancano i riferimenti su cui sviluppare la discussione.
    C'è codice e codice, c'è caso e caso, quelli che tu chiami "caratteri di personalizzazione" che potrebbero rendere un codice unico in realtà potrebbero solo essere delle "manomissioni" personalizzazioni irrilevanti in un codice originale, codice che non è di proprietà di nessuno come potrebbe essere una semplice pagina web:

    <!DOCTYPE html>
    <html>
    <head>
    <title>Titolo Pagina</title>
    </head>
    <body>
    Contenuto...
    </body>
    </html>

    qualcuno non sa questa cosa e chiede aiuto in un forum, riceve la risposta ma non può usare il codice se non dietro autorizzazione di chi l'ha postato?
    Su Stack Overflow ci sono milioni di codici condivisi pubblicamente, alcuni estremamente complessi, come si può risolvere da un punto di vista etico e legale?
    Alla fine di ogni thread dovrebbe apparire un avviso che dice: "caro utente, io e altri utenti ti abbiamo aiutato fornendoti ognuno un codice, scegli tu quello che preferisci, tuttavia non potrai usarlo perché il codice è di chi lo ha pubblicato."
    Entriamo in un grottesco paradosso 😄

    Poi qui stiamo parlando di condivisione di codici in un forum, ma pensa se al posto di un codice un utente postasse una sua foto. In questo caso cade il diritto di prelevare la foto e magari usarla senza esplicito consenso dell'utente.
    Siamo troppo sul vago 🙂


  • User

    Anche secondo me il markup non è tutelabile dai diritti d'autore.

    esempio pratico:

    • prova a cercare su Google "aggiungere campi di registrazione WordPress"
    • prendi un articolo a caso
    • noterai che il codice è esposto, ma al fondo del sito sarà verosimilmente presente il copyright dei contenuti

    Chi dice che l'autore abbia postato il codice con la possibilità di uso, oppure al solo scopo di studio?


  • User Attivo

    @Paride15 said:

    noterai che il codice è esposto, ma al fondo del sito sarà verosimilmente presente il copyright dei contenuti

    Mi sembra giusto che l'autore protegga i contenuti, in questo caso i testi dei suoi articoli, non certo i codici visto che nessuno inventa nulla:
    codex.wordpress.org/Function_Reference/add_settings_field
    codex.wordpress.org/Customizing_the_Registration_Form

    all'origine c'è la struttura di base che è WordPress e molta documentazione ufficiale.

    @Paride15 said:

    Chi dice che l'autore abbia postato il codice con la possibilità di uso, oppure al solo scopo di studio?

    Ma anche per guadagnare qualche soldo giustificato dal fatto che lo stesso autore ha effettuato un po' di prove, test e ottimizzando il codice, oltre che divulgando il tutto con una guida.
    Ma in ogni caso qui non c'è nulla, ma proprio nulla, che possa rientrare nel diritto di proprietà intellettuale, tutta la base su cui sviluppare è qui:
    codex.wordpress.org

    Sicuramente un programmatore potrebbe creare una funzione in modo molto originale ed elegante, poi decide:

    1. è un blogger, ci scrive un articolo e rende pubblico il codice, per forza di cose.
    2. trasforma la sua funzione in un plugin e lo rende disponibile gratuitamente nel repository di WordPress.
    3. lo stesso plugin ma con funzioni più avanzate lo vende attraverso il suo sito.

    E' questo terzo punto su cui si può parlare di diritto della proprietà intellettuale, etica o morale.

    Comprare il plugin, poi creare un tutorial rendendo pubblico il codice, nello specifico le funzioni sviluppate dall'autore originale, è certamente eticamente scorretto ma non del tutto illegale, se il plugin è venduto con licenza GPL, all'atto pratico l'autore originale del plugin non ha inventato nulla.

    Anche se un po' borderline, fare la stessa cosa con il plugin gratuito potrebbe essere tollerato dallo stesso autore originale, a patto che venga riconosciuto il suo lavoro iniziale.

    Ma su una versione commerciale non lo fa mai nessuno, quei pochi hanno vita molto breve perché in breve tempo verrebbero sputtanati pubblicamente.


  • User

    Confermi quello che penso anche io, chi pubblica uno script è responsabile di ciò che fa.

    Sul fatto che la legge la pensi diversamente non metto voce, non ho le competenze giuridiche per dire "non è giusto", ma quello che mi riempe la testa di punti interrogativi sono le discussioni in molti forum esteri, dove oltre che illegale viene considerato immorale...

    Se sei curioso di perchè mi sono fatto questa domanda...tutto nasce da questo articolo che ho letto:

    theverge.com/tldr/2016/5/4/11593084/dont-get-busted-copying-code-from-stack-overflow

    L'articolo punta il dito sulla disattenzione o sul copiare senza capire (giusto, ma comunque mi sembra esagerato), ma tra le righe dell'articolo e dei commenti puoi chiaramente leggere un altro dito puntato sul fatto che abbia copiato un codice da un forum.

    Questo mia ha portato a fare una breve ricerca in rete, e ho trovato la stessa idea molto diffusa...


  • User Attivo

    Credo che l'articolo faccia un po' di confusione, voglio anche essere maligno ma quel titolo mi suona molto clickbait :rollo:
    ma a parte le mie congetture, c'è una sostanziale differenza tra copiare un codice e ricevere un aiuto.
    Uno sviluppatore di siti vuole replicare una particolare animazione su un sito web, sfoglia il sorgente, scarica js e css e con pazienza riesce a replicare quel tipo di animazione.
    Questo è copiare, poco etico, poco morale e tutto il male che si può pensare.
    Ma se lo stesso sviluppatore inizia a sviluppare un codice e ad un certo punto non riesce a risolvere un passaggio, che male c'è se chiede aiuto? Si collega su Stack Overflow, spiega il problema e riceve o la parte mancante di codice o il codice corretto.
    Dove sta l'immoralità o l'illegalità nell'aver chiesto aiuto su un passaggio che non si riesce a risolvere?

    Anche io un paio di anni fa ho chiesto aiuto su Stack Overflow, pagina con tabelle, data table e responsive, dovevo ordinare in un certo ordine la terza colonna e più ci sbattevo la testa più non funzionava.
    Spiegato il problema ho ricevuto diversi aiuti compreso link di riferimento alla guida ufficiale su datatables.net:

    
    <script>
    $(document).ready(function() {
    $('#id-tabella').DataTable( {
    	"order": [[ 3, "desc" ]]
    	} );
    } );
    </script>
    
    

    Così ho capito i miei errori di sintassi e ho avuto modo di capire meglio la logica di funzionamento.
    Ho copiato e incollato il codice, con le ovvie modifiche di ID e ordinamento, scusa la battuta ma spero non mi denuncerai alla Polizia Postale per furto di proprietà intellettuale e alterazione di codice informatico, con l'aggravante d averlo copiato e incollato su un sito non Italiano, quindi pure contrabbando di codice internazionale illegale :fumato:

    A parte gli scherzi, io non ho fatto nulla di immorale, ho chiesto aiuto su un un lavoro, una piccolissima parte del lavoro, che non riuscivo a far funzionare, non ho chiesto come si scrive codice PHP e JS per creare una tabella, anche perché la discussione me l'avrebbero chiusa.

    A mio parere l'unica cosa sensata che scrive Theverge è in sintesi "mai copiare codice da uno sconosciuto" e ha pienamente ragione ma non certo per un problema etico o legale ma perché quel codice potrebbe causare dei danni, anche peggio a lungo termine, però può e deve essere uno spunto per capire una certa logica di funzionamento.

    In quel molto riduttivo "copiare e incollare codice" non immagini quanto si possa invece imparare, colmare le proprie lacune, quanto siano importanti queste condivisioni e che immenso valore da una persona quando offre il suo tempo e le sue competenze per aiutare chi è in difficoltà, non ci arriva, non ha la giusta preparazione.
    Per capire questo devi provare a cambiare prospettiva 🙂


  • User

    Nulla di immorale infatti, è la logica su cui si fonda la società intera.
    Pensavo di essere l'unico pazzo al mondo a pensarla diversamente ma considerando te e mi pare di capire anche Criceto siamo almeno in tre 😉 .
    Dal mio umile punto di vista in questa frase è racchiuso l'intera "cosmogonia" della società:
    *"Nani sulle spalle di giganti, e finiamo per essere più alti dei giganti stessi."
    Francesco Bacone
    *Tutto quello che deduciamo lo dobbiamo a qualcuno che ci ha fornito le basi prima di noi...