Bagaimana penggunaan wajar berlaku untuk cuplikan kode? [Tutup]

26

Apakah ada ukuran di mana Anda dapat menyalin di bawah penggunaan wajar untuk kode Anda tidak memiliki lisensi untuk tujuan itu? Misalnya, bagaimana jika saya menyalin cuplikan yang (biasanya) 3 baris kode? Apakah itu penggunaan yang adil? Jika penggunaannya adil, berapa lama yang dibutuhkan sebelum saya membutuhkan lisensi?

Casebash
sumber
11
Hukum bervariasi tergantung di mana Anda berada, dan ada orang di sini dari seluruh dunia. Saat mengajukan pertanyaan hukum, beri tahu kami di mana Anda tinggal dan bekerja. Selain itu, jangan percaya apa pun yang kami katakan. Jika penting bagi Anda dalam beberapa cara (seperti finansial), berkonsultasilah dengan pengacara lokal dengan pengalaman yang sesuai.
David Thornley
1
Catatan: Saya telah menambahkan jawaban untuk pertanyaan ini karena saya tidak merasa jawaban yang ada cukup benar, meskipun subjeknya offtopic sesuai dengan pedoman saat ini - saya pikir memiliki jawaban yang salah atau menyesatkan adalah situasi yang lebih buruk daripada mengirim offtopic baru jawaban.
Jules

Jawaban:

12

Di AS, doktrin hukum Penggunaan Berkeadilan tidak berlaku untuk menyisipkan kutipan karya berhak cipta ke dalam kode sumber. Bagaimana doktrin tersebut diterapkan oleh hukum yurisdiksi Anda mungkin berbeda.

Saya akan mengutip dari artikel Kantor Hak Cipta AS tentang Penggunaan yang Adil , dan tentang hak cipta secara umum:

Bagian 107 berisi daftar berbagai tujuan di mana reproduksi karya tertentu dapat dianggap adil, seperti kritik, komentar, pelaporan berita, pengajaran, beasiswa, dan penelitian [penekanan tambang] . Bagian 107 juga menetapkan empat faktor yang harus dipertimbangkan dalam menentukan apakah penggunaan tertentu itu adil atau tidak:

  1. Tujuan dan karakter penggunaan, termasuk apakah penggunaan tersebut bersifat komersial atau untuk tujuan pendidikan nirlaba
  2. Sifat dari karya berhak cipta
  3. Jumlah dan substansi dari porsi yang digunakan terkait dengan karya berhak cipta secara keseluruhan
  4. Efek penggunaan pada pasar potensial untuk, atau nilai, karya berhak cipta.

Perbedaan antara penggunaan yang adil dan pelanggaran mungkin tidak jelas dan tidak mudah didefinisikan. Tidak ada jumlah kata, kalimat, atau catatan [penekanan khusus] tertentu yang dapat diambil dengan aman tanpa izin. Mengakui sumber materi berhak cipta tidak menggantikan untuk mendapatkan izin.

Ini merangkum batas-batas hukum hak cipta, yang mana batas Penggunaan yang Adil digunakan lebih lanjut, seperti:

Hak cipta melindungi cara tertentu yang diungkapkan oleh penulis. Ini tidak mencakup ide, sistem, atau informasi faktual yang disampaikan dalam karya.

Kursus teraman adalah selalu mendapatkan izin dari pemilik hak cipta sebelum menggunakan materi berhak cipta. Kantor Hak Cipta tidak dapat memberikan izin ini.

Apa yang batas-batas dari apa yang dilindungi oleh hak cipta kepada kami adalah meskipun Anda tidak dapat menyalin "cuplikan" kode melalui Penggunaan Wajar, Anda dapat menulis ulang cara ide, sistem (termasuk algoritma), atau informasi faktual diungkapkan dalam cuplikan tersebut.

Singkatnya, 3 baris kode harus cukup kecil untuk Anda tulis ulang agar tidak melanggar hak cipta karya asli. Mungkin perlu waktu lebih lama untuk menulis pertanyaan Anda daripada menulis ulang.

Huperniket
sumber
14
Saya tidak melihat apa pun di sini yang mengatakan bahwa menyalin cuplikan kode tidak dapat digunakan dengan adil. Ini menjelaskan kriteria yang akan digunakan untuk menilai apakah penggunaan Anda adalah penggunaan wajar, jika Anda dituntut.
KeithB
7
Daftar ini dimaksudkan untuk menjadi contoh, tidak lengkap. Itu sebabnya mengandung kata "seperti". Jika kode ini sebagian besar fungsional, hanya sebagian kecil dari karya asli diambil, dan kedua karya tidak bersaing di pasar, sangat mungkin pengadilan akan menemukan penggunaan yang adil.
David Schwartz
4
Dan kualifikasi apa yang Anda miliki untuk "menjelaskan hukum", @Huperniketes? Anda telah menulis ini seolah-olah Anda mengutip sebuah otoritas yang secara definitif menunjukkan kode penyalinan agar tidak digunakan secara adil, tetapi pada kenyataannya Anda hanya melakukan interpretasi undang-undang Anda sendiri tanpa mengutip hukum kasus apa pun.
Mark Amery
6
Itu sebenarnya tidak relevan dengan poin saya. Masalahnya adalah bahwa daftar yang dimulai dengan "seperti" tidak lengkap dalam versi bahasa Inggris apa pun , bahkan bahasa Inggris-dari-Mars yang aneh yang berbicara pengacara setiap hari. Daftar yang Anda cetak miring adalah daftar contoh, tidak lebih. Ini tidak memberikan kontribusi apa pun terhadap makna hukum yang sebenarnya, selain bertindak sebagai petunjuk kepada hakim dan pengacara tentang maksud umum para pembuat undang-undang. Penggunaan wajar adalah bidang hukum yang sangat abu-abu, dan menghadirkan bagian mana pun dalam istilah hitam-putih sedemikian rupa membuat pembaca Anda sangat merugikan.
Kevin
6
@Huperniketes, Anda mengklaim saya membuat pernyataan bodoh tanpa mengetahui materi ketika saya tidak menegaskan apa pun tentang hukum. Anda yang mengajukan klaim hukum - bahwa, berbeda dengan pembacaan bahasa Inggris yang sederhana, bagian cetak miring Anda menunjukkan bahwa menyalin cuplikan kode ke perangkat lunak tidak akan pernah dapat digunakan secara adil. Saya skeptis dengan klaim itu, tetapi tentu saja, saya tidak tahu hukum kasus apa pun yang mendukung atau membantahnya. Itulah sebabnya saya tidak membuat klaim faktual. Beban bukti ada pada Anda jika Anda ingin dipercaya, tetapi Anda telah memilih untuk mencibir dan menghina orang-orang yang secara netral meminta Anda untuk menunjukkan bukti.
Mark Amery
21

Saya bukan pengacara .

Namun, Anda benar - benar bebas menggunakan 3 baris kode berikut dalam apa pun yang Anda tulis:

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

.... Itu murni kode fungsional (tidak fungsional dalam arti yang mungkin Anda pikirkan, tetapi fungsional berdasarkan fungsinya). Sebenarnya tidak mencapai apa pun; itu hanya melatih konstruksi bahasa. Ini mendukung hal-hal yang berfungsi, Anda mengetiknya cukup sering sehingga Anda memiliki makro untuk memproduksinya. Tapi apa yang Anda bicarakan bukanlah 'penggunaan yang adil', apakah ini hak cipta atau lisensi di tempat pertama?

Satu-satunya jawaban yang benar di sini adalah bertanya kepada pengacara. Sepuluh baris kode dari apa ? Algoritma pemilahan yang sangat khusus? Semacam firmware? Salah satu dari jutaan file parser konfigurasi yang telah beredar sejak awal usenet? Kode yang dihasilkan oleh program lain yang menghasilkan kelas basis data berdasarkan skema DB Anda?

Tapi, buktikan kepada saya bahwa Anda menulis itu untuk loop, atau beralih pernyataan, dan tidak hanya menyalin milik saya. Pada titik di mana pernyataan berhenti terdengar tidak masuk akal, Anda mungkin pada titik di mana Anda harus berbicara dengan pengacara, atau setidaknya manajer teknik Anda / PM / dll.

Saya berpartisipasi dalam beberapa proyek sumber terbuka / gratis, beberapa di antaranya memerlukan penugasan hak cipta untuk apa pun yang tidak 'sepele'. Semua dari mereka yang memiliki persyaratan ini mendefinisikan 'sepele' menjadi sepuluh baris kode yang ditambahkan atau dimodifikasi. Tapi itu hanya tes lakmus yang sewenang-wenang untuk menetapkan semacam standar; satu baris perbandingan byte yang membengkokkan pikiran jauh lebih mungkin untuk dikenakan hak cipta daripada saklar 10 baris.

Galeri snippet saya terdiri dari ratusan fungsi, semuanya memiliki informasi penulis asli dalam komentar gaya doxygen, serta info lisensi (jika ada, sebagian besar hanya domain publik).

Kecuali jika jelas sepele (seperti dalam contoh lucu saya), saya tidak akan menggunakan kembali kode kecuali saya tahu bahwa saya memiliki izin untuk melakukannya. Saya juga selalu mengikuti aturan lisensi apa pun yang berlaku. Dan untuk membantu masa depan saya (atau pengelola masa depan), saya suka meninggalkan tautan ke tempat saya menemukan barang dalam komentar, bahkan jika itu adalah nama bola tar yang saya nyalakan di stik USB jika saya meninggalkan perusahaan.

Pos Tim
sumber
2
Saya sangat meragukan banyak cuplikan dalam domain publik.
Martijn
2
Saya terlambat ke pesta, tetapi juga penting untuk dicatat bahwa meskipun Tim Post mempertahankan semua hak atas kode di atas, ia tidak dapat hak cipta ide tersebut . Jika Anda belajar dari cuplikan itu bahwa Anda dapat mencetak string lima kali dengan menggunakan for for, dan kemudian Anda menulis sendiri (sangat mirip) untuk loop menggunakan ide-ide itu, maka Anda baik-baik saja; tidak masalah apa yang diinginkan Tim. Bergantung pada berapa lama, dan seberapa mirip versi Anda, Anda mungkin memiliki beban untuk membuktikan bahwa Anda benar-benar mengimplementasikannya kembali, tetapi jika Anda bisa melakukannya, Anda dijamin aman.
GrandOpener
Meskipun hak cipta tidak melindungi ide, paten tetap melakukannya. Hak cipta adalah istilah hukum, yang memiliki definisi hukum tertentu. Gagasan tidak dapat dilindungi hak cipta , tetapi cara mereka diungkapkan dapat dan sedang; dan berdasarkan undang-undang IP saat ini, karya pencipta secara otomatis dilindungi hak cipta dan dilindungi. Suatu gagasan dapat dipatenkan jika memenuhi standar yang sesuai.
Huperniketes
@Huperniketes - "cara [ide] diungkapkan dapat [menjadi hak cipta] dan; dan di bawah undang-undang IP saat ini, karya pencipta secara otomatis dilindungi hak cipta dan dilindungi" - selama ekspresi dari ide-ide tersebut mencapai tingkat orisinalitas dan inventifitas yang dianggap sebagai ambang batas minimum kreativitas untuk menjamin perlindungan dan jumlah penyalinan tidak dianggap sepele. Jika ungkapan tidak cukup berbeda atau jumlah penyalinan dianggap sepele, ini disebut penyalinan de minimis dan tidak dicakup oleh hak cipta. Ini telah ditemukan ke pengadilan untuk memperpanjang ke ...
Jules
... program komputer dalam situasi di mana mereka jelas program minimal yang melakukan operasi tertentu (dan di mana operasi itu sendiri tidak inovatif). Misalnya beberapa kasus dibahas di sini . Dalam konteks pertanyaan, ketiga baris yang direferensikan hampir pasti dalam kategori itu: sepenuhnya fungsional daripada kreatif, dan hampir pasti melakukan operasi umum yang ditemukan dalam banyak perangkat lunak. Dalam hal ini, mereka mungkin tidak dilindungi.
Jules
1

Hak cipta berlaku untuk karya-karya kreatif , termasuk ekspresi gagasan (yang merupakan cara kode sumber diperlakukan secara hukum), selama ekspresi gagasan tersebut mencapai tingkat orisinalitas dan daya cipta yang melebihi level yang dianggap sebagai ambang batas minimum kreativitas untuk menjamin perlindungan dan jumlah penyalinan tidak dianggap sepele.

Jika ungkapan tersebut tidak cukup berbeda, ini disebut sebagai tidak mencapai ambang batas hak cipta ; jika jumlah penyalinan dianggap sepele, ini disebut penyalinan de minimis dan tidak dicakup oleh hak cipta. Ini telah ditemukan oleh pengadilan untuk memperluas ke program komputer dalam situasi di mana mereka jelas program minimal yang melakukan operasi tertentu (dan di mana operasi itu sendiri tidak inovatif). Misalnya beberapa kasus dibahas di sini dan di sini .

Dalam konteks pertanyaan, ketiga baris yang direferensikan hampir pasti dalam kategori itu: sepenuhnya fungsional daripada kreatif, dan hampir pasti melakukan operasi umum yang ditemukan dalam banyak perangkat lunak. Dalam hal ini, mereka mungkin tidak dilindungi.

Secara teknis ini sebenarnya bukan "penggunaan wajar", yang merupakan pembebasan undang-undang khusus dari pembatasan yang berhak ditegakkan oleh pemegang hak cipta, tetapi didasarkan pada preseden kasus hukum umum yang telah terakumulasi dari waktu ke waktu, tetapi istilah "penggunaan wajar" sering digunakan secara longgar dengan cara yang mencakup kedua arti, dan pada kenyataannya ada tumpang tindih yang substansial di antara keduanya.

Jules
sumber
1

"Doktrin penggunaan wajar" AS adalah suatu pertahanan afirmatif yang mungkin terhadap klaim pelanggaran hak cipta. "Pertahanan afirmatif" berarti Anda mengakui penyalinan tanpa lisensi dan karena itu melanggar hak cipta seseorang, tetapi kemudian Anda mengklaim bahwa karena alasan tertentu Anda berhak melakukan ini tanpa konsekuensi negatif. Jujur saja, itu sepertinya strategi yang berbahaya. Anda mengusulkan untuk menulis kode yang melanggar hak cipta seseorang atau lebih dari satu orang dan mengandalkan pertahanan penggunaan yang adil. Saya bisa dengan mudah membayangkan bahwa 3 baris kode mungkin "penggunaan yang adil" tetapi 3 baris di sini, 3 baris di sana, dan 3 baris di tempat lain tidak.

Ada pertahanan yang jauh lebih baik terhadap pelanggaran hak cipta: Jangan langgar sejak awal. Alih-alih menyalin cuplikan kode, Anda membacanya, Anda memeriksanya dengan cermat, Anda belajar cara kerjanya, Anda memahaminya, dan begitu Anda benar-benar memahaminya, Anda tidak menyalinnya tetapi menulis tiga baris kode Anda sendiri. Ini memiliki beberapa keunggulan:

  1. Anda tidak melakukan pelanggaran hak cipta.
  2. Anda belajar sesuatu dan menjadi pengembang yang lebih baik.
  3. Menulisnya sendiri berarti ditulis dengan gaya yang sama dengan kode Anda yang lain, membuat perawatan menjadi lebih mudah.
  4. Saat menghabiskan waktu untuk memahami cuplikan kode, Anda belajar tentang kekurangannya, keterbatasannya, bugnya, dan menghindarinya dalam kode Anda sendiri, yang berarti kode Anda lebih baik daripada jika Anda menyalin cuplikannya.
gnasher729
sumber