Saya pernah mewawancarai di sebuah perusahaan konsultan di mana muncul dalam percakapan bahwa mereka menggunakan produk-produk open source (yang hebat, saya telah menggunakan Hibernate, JBoss, dll.). Satu hal yang mengejutkan saya adalah ketika saya bertanya apakah mereka menggunakan OS berlisensi GPL saat menulis aplikasi untuk klien, mereka berkata, "Tentu, sepanjang waktu! Selama klien mendapatkan apa yang mereka inginkan dan bahagia." Sekarang, saya bukan pengacara atau penggemar lisensi besar, tetapi saya mendapat kesan bahwa menggunakan kode GPL (katakanlah beberapa perpustakaan yang Anda masukkan), maka Anda diharuskan untuk merilis seluruh aplikasi di bawah lisensi yang sama. Ketika saya menunjukkan hal ini, saya diberi tanggapan cepat, "Ya, kami memberi klien semua kode sumber ketika kami selesai, jadi itu benar-benar bukan masalah."
Tidak ingin membahas masalah ini lebih lanjut (wawancara bukan tempat untuk argumen seperti itu), saya membiarkannya. Namun, itu masih mengkhawatirkan saya tentang praktik bisnis itu. Apa kata resmi pada kode berlisensi GPL dan seberapa "terbuka" itu perlu? Apakah Anda harus menerbitkannya dan mengatakan "Perusahaan saya menggunakan perpustakaan ini jadi di sini adalah situs di mana Anda dapat mengunduh aplikasi sistem pemenuhan belanja dan pemesanan yang kami keluarkan untuk membangun jutaan dolar."? Dalam situasi ini, apakah perusahaan berhak menggunakan kode GPL tanpa sepengetahuan klien? Apakah cukup dengan hanya "memberi mereka sumbernya"?
sumber
Sebagai seorang konsultan, saya membuat poin untuk mengangkat masalah lisensi lebih awal dengan pelanggan saya sehingga mereka dapat membuat pilihan berdasarkan informasi. Jika teknologi terbaik untuk diterapkan pada masalah mereka adalah di bawah GPL tetapi mereka tidak dapat mematuhi lisensi, maka saya tidak dapat menggunakannya. Dalam praktiknya, ini memiliki dua efek.
Pertama, banyak yang senang membayar untuk produk komersial khusus untuk menghindari masalah ini. Ini sangat umum di dunia sistem embedded di mana kepatuhan terhadap GPL akan secara efektif memerlukan penerbitan desain perangkat keras yang lengkap dan mendokumentasikan bagaimana semuanya bekerja untuk memenuhi semangat GPL yang merupakan upaya untuk memungkinkan pengguna akhir untuk mengubah produk. . Meskipun dimungkinkan untuk membuat produk yang seterbuka itu, dibutuhkan banyak komitmen di semua tingkatan perusahaan. Masalah yang lebih besar adalah bahwa banyak komponen desain didokumentasikan kepada kami oleh pembuatnya di bawah NDA dan secara efektif tidak mungkin untuk membuat kode yang sesuai dengan GPL yang menggunakan dokumentasi yang dirilis di bawah NDA.
Kedua, kami sekarang memiliki preferensi untuk lisensi MIT dan banyak kerabatnya (yang menjelaskan bahwa penggunaan komersial dapat diterima) daripada GPL di setiap revisi. Saya belum memiliki objek pelanggan untuk merilis perbaikan bug dan peningkatan yang dilakukan kembali ke komunitas produk yang relevan. Karena lisensi ini permisif, saya dapat mematuhi kewajiban NDA saya, membuat pelanggan saya senang, dan berkontribusi pada komunitas yang relevan.
sumber
Open source tidak harus berarti gratis.
IANAL juga, tetapi secara umum persyaratan untuk GPL adalah menyediakan kode sumber untuk proyek Anda. Anda tentu bisa menjual produk ke orang lain. Namun, saya percaya bahwa Anda tidak dapat mencegah mereka memberikannya. Mungkin itulah yang membuat sebagian besar perangkat lunak GPL gratis, seperti bir. Saya cukup yakin bahwa Anda tidak harus mempublikasikan kode Anda ke world + dog hanya karena GPL.
Dari pembukaan ke v3 GPL (tekankan sendiri):
( sumber )
Dalam situasi ini, apakah perusahaan berhak menggunakan kode GPL tanpa sepengetahuan klien? Apakah cukup dengan hanya "memberi mereka sumbernya"?
Ini pertanyaan yang sedikit berbeda. Jika klien memiliki beberapa harapan dan harapan itu ditentukan dalam kontrak, perusahaan mungkin memiliki masalah. Kalau tidak, terserah mereka untuk menentukan cara terbaik untuk melakukan pekerjaan itu. Namun, mereka seharusnya memasukkan pemberitahuan dalam kode sumber mengenai lisensi. Saya tidak yakin apakah mereka harus mengungkapkan hal ini kepada klien mereka dengan cara lain.
sumber
Tidak, kamu benar. Inilah sebabnya:
Pertimbangkan apakah kami memiliki aplikasi di bawah GPL. Sekarang, itu tidak dapat digunakan oleh kode berpemilik.
Jika cukup hanya dengan membuka kode sumber yang menggunakan GPL, saya bisa membuka sumber proyek berdasarkan itu sebagai BSD.
Kemudian perangkat lunak berpemilik dapat menggunakan produk GPL.
sumber