Apa saja konsekuensi dari perangkat lunak sumber terbuka yang berubah menjadi perangkat lunak sumber tertutup?

16

Jika sebuah perusahaan mengambil aplikasi sumber terbuka berlisensi dan kemudian mengembangkan aplikasi sumber tertutup dari itu dengan mengerjakan ulang bagian luas dari aplikasi, menambahkan fitur baru dan menerapkan perbaikan bug ...

Mengabaikan persyaratan lisensi ...

  • Bagaimana transisi terjadi dan apa yang dapat dilakukan untuk mencegahnya di luar memilih lisensi perbedaan?
  • Apa tanggung jawab (etis atau sosial) bagi perusahaan? (Misalnya: Memberikan kembali ke proyek open source akan menjadi hal yang etis untuk dilakukan)
  • Jika versi sumber terbuka dan versi sumber tertutup keduanya tersedia, bagaimana persaingan memengaruhi kedua produk?

Adakah contoh perusahaan atau produk yang telah melakukan ini (berhasil atau tidak berhasil) di masa lalu? Bagaimana sikap masyarakat terhadap proyek-proyek itu?

Verrier
sumber
2
Saya pikir .NET reflector mungkin contoh yang cukup bagus dari ini.
l46kok
2
@ l46kok Saya membatalkan unduhan pada komentar Anda karena Reflector tidak pernah open source, hanya gratis seperti dalam bir.
Mark Hurd

Jawaban:

14

Penting untuk dicatat bahwa skenario ini dapat terjadi dalam bentuk legal maupun ilegal.

Ini dapat terjadi secara legal jika perusahaan memiliki atau memiliki akses ke hak cipta yang terkait dengan kode. Misalnya, tim pengembangan yang lebih kecil dan independen mungkin ingin menjual atau melisensikan hak cipta mereka ke perusahaan yang lebih besar. Demikian juga, jika sebagian besar hak cipta kode dapat diperoleh, bagian "tidak dapat dicapai" dapat dengan mudah dibuang dan ditulis ulang.

Di sisi lain dari koin, kode dapat diambil secara ilegal. New Corp, Inc. mungkin tidak peduli apa akibat hukumnya. Proyek ini mungkin terlalu tua atau ditinggalkan atau New Corp berpikir mereka akan menang dalam gugatan. Atau New Corp dapat didaftarkan di area di mana "akuisisi" semacam ini tidak didefinisikan sebagai ilegal. Tidak semua lisensi OSS dapat ditegakkan, terutama bukan lisensi yang dirakit oleh non-pakar dalam hukum. Tidak semua pemilik proyek dapat memiliki kemampuan untuk menegakkan klaim hak cipta mereka, dan organisasi yang lebih besar seperti FSF mungkin tidak memiliki kedudukan dalam yurisdiksi tersebut untuk klaim tersebut. TL; DR - area ini bisa menjadi kabur dan jelek dengan sangat cepat.

Transisi & pencegahan

Bagaimana transisi terjadi dan apa yang dapat dilakukan untuk mencegahnya di luar memilih lisensi perbedaan?

Transisi terjadi ketika New Corp, Inc. memperoleh basis kode dan tempat-tempat yang menyalin di bawah kendali mereka. Pengembang New Corp kemudian mulai bekerja pada versi mereka dari basis kode yang membuat perubahan apa pun yang perlu diputuskan oleh penguasa perusahaan. Mekanik sebenarnya dari fork ini akan bervariasi berdasarkan pada repositori. Dan meskipun ini adalah masalah besar secara filosofis, dalam praktiknya benar-benar tidak memuaskan. get alldari OpenRepos dan kemudian checkinke PrivateRepos.

Apa yang bisa dilakukan untuk mencegahnya agar tidak pernah mendistribusikan sumbernya? Tidak ada. Maaf.

Mari kita gunakan GPL (lisensi publik GNU) sebagai contoh. GPL mengharuskan sumber tersedia untuk siapa saja yang menerima salinan proyek yang sah. Tidak ada ketentuan yang memungkinkan pemegang sumber untuk menolak pengiriman sumber ke pemegang yang sah dari salinan aplikasi GPL. Itu bertentangan dengan butir perangkat lunak Gratis, dan itulah mengapa copyleft GPL ada di tempatnya.

Secara potensial, Anda harus mengejar tindakan hukum setelah fakta. Tapi itu semua setelah sumbernya lolos dan bercabang, bukan sebelumnya. Dan di beberapa yurisdiksi Anda tidak akan memiliki jalan hukum. Dan semua ini mengasumsikan Anda bahkan menyadari bahwa garpu terjadi. Anda mungkin tidak akan pernah tahu.

Etika

Apa tanggung jawab (etis atau sosial) bagi perusahaan? (Misalnya: Memberikan kembali ke proyek open source akan menjadi hal yang etis untuk dilakukan)

Etika bersifat lokal bagi budaya. Jadi marahi bagian ini dengan sebutir garam. Diskusi penuh pertimbangan budaya etika berada di luar cakupan jawaban ini dan di luar topik untuk Programer.

Saya perhatikan bahwa komunitas pemrograman cenderung bereaksi negatif terhadap garpu yang bermusuhan. Heck, dalam beberapa kasus komunitas yang sama masih bereaksi negatif terhadap pertigaan yang ramah dan legal. Ini komunitas yang cukup kompleks.

Dari sudut pandang FOSS, ada harapan bahwa New Corp akan "membayar" komunitas untuk kontribusi yang dibayarnya. Syarat, ketentuan, dan durasi pembayaran itu beragam seperti jumlah proyek OSS yang ada. Beberapa di komunitas (pikir Richard Stallman) tidak akan pernah puas dengan proyek terbuka akan ditutup. Orang lain akan mencari manfaat yang diberikan kepada masyarakat luas dan akan menilai berdasarkan itu. Dan yang lain tidak akan peduli karena mereka tidak pernah tahu atau peduli tentang proyek asal.

Ketersediaan sumber

Jika versi sumber terbuka dan versi sumber tertutup keduanya tersedia, bagaimana persaingan memengaruhi kedua produk?

Itu benar-benar tergantung pada seberapa sebanding kedua basis kode sehubungan dengan fungsionalitas, kinerja, dan stabilitas.

Jika basis kode tetap sama dan New Corp ramah kepada komunitas OSS, mereka dapat berkontribusi pembaruan mereka kembali ke proyek basis. Dalam hal ini, semua orang mendapat manfaat. Ini bukan "kompetisi" dalam hal ini, tetapi lebih merupakan kolaborasi yang saling menguntungkan.

Jika basis kode sangat menyimpang dan New Corp tidak ramah kepada komunitas OSS, maka masih belum ada kompetisi. Semakin banyak produk kaya fitur bertahan dan produk yang kurang kaya cenderung mati. Perhatikan bahwa ini bisa berjalan baik - versi tertutup dapat mati jika versi open source terus berinovasi atau lebih baik memenuhi kebutuhan masyarakat.

Realitasnya akan berada di antara kedua ujung spektrum.

Contoh

Red Hat memiliki dua distribusi utama - Enterprise Linux dan Fedora. EL adalah versi berlisensi "tertutup" mereka dan Fedora adalah edisi komunitas mereka. Karena GPL, banyak, jika tidak semua, edisi EL dirilis dalam bentuk sumber. Proyek lain yang tidak berafiliasi dengan Red Hat yang disebut CentOS mengambil perubahan EL dan mendistribusikan proyek itu setelah beberapa rebranding kecil.

Ada beberapa keluhan ketika Red Hat bercabang menjadi dua edisi yang terpisah, tetapi pada umumnya, itu merupakan perjanjian yang cukup bisa diterapkan. Komunitas Fedora menginginkan fitur yang dimasukkan ke dalam distribusi lebih cepat daripada apa yang nyaman bagi pelanggan Red Hat. Peningkatan pada basis kode mengalir di kedua arah.


sumber
1
@GlenH7 Jawaban yang baik meliputi apsects teknis dan hukum :)
hagubear
1
jangan lupa bahwa seseorang mungkin mengambil alih basis kode dan tidak menyadari tautan ke beberapa pustaka sumber terbuka yang tersembunyi jauh di dalam jutaan baris kode, ratusan pom, file semut, makefile, dll. terutama jika ini adalah tautan tidak langsung. Kami telah mengalami hal itu, dan memiliki waktu yang sangat lama untuk memotong kode yang terpengaruh dan menggantinya dengan sesuatu yang dapat kami distribusikan.
jwenting
4

Dengan asumsi bahwa semuanya legal dan di atas papan, dan bahwa kita berbicara tentang produk yang memiliki lisensi open source halal sebelum proses dimulai:

Bagaimana transisi terjadi ...

Pada dasarnya, perusahaan membuat rilis baru perangkat lunak dengan lisensi non-open source.

dan apa yang dapat dilakukan untuk mencegahnya selain memilih lisensi perbedaan?

Secara umum tidak ada. Satu-satunya kasus di mana hal itu dapat dicegah (atau ditunda) adalah jika ada beberapa pemilik hak cipta, dan beberapa dari mereka keberatan dengan perizinan ulang. Tetapi jika perusahaan itu serius, mereka dapat memutuskan untuk memecahkan masalah itu dengan menulis ulang bagian-bagian yang relevan dari basis kode, dan sebagainya.

Mencoba menerapkan "tekanan moral" sebelum fakta mungkin tidak akan berhasil. Perusahaan kemungkinan akan melakukan hal semacam ini tanpa pemberitahuan sebelumnya.

Karena itu, ada contoh di mana upaya untuk "mengembalikan" open source telah menjadi bumerang bagi perusahaan yang melakukannya. Pertimbangkan kasus-kasus OpenOffice, Hudson dan MySQL, di mana tindakan Oracle telah mengarah ke percabangan, eksodus massal komunitas pengembang dan (untuk OO dan MySQL) distro semakin banyak membuang produk asli demi garpu (LibreOffice dan MariaDB ).

Apa tanggung jawab (etis atau sosial) bagi perusahaan?

Terus terang (dan agak sinis), tidak relevan apa yang Anda dan saya pikir tanggung jawab etika dan sosial perusahaan seharusnya.

Dari perspektif perspektif hukum, tanggung jawab direktur dan eksekutif perusahaan adalah 1) untuk memaksimalkan nilai bagi pemegang saham / pemilik, dan 2) memastikan bahwa hukum dipatuhi. Anda dapat berargumen bahwa sebagai individu, orang-orang ini memiliki tanggung jawab sosial dan etika, tetapi ... sayangnya ... banyak dari mereka akan tidak setuju.

Tetapi bagaimanapun juga, tanggung jawab etis dan sosial hanya relevan dalam arti praktis jika perusahaan dan para pejabatnya mengambilnya dan menanganinya dengan serius.

Jika versi sumber terbuka dan versi sumber tertutup keduanya tersedia, bagaimana persaingan memengaruhi kedua produk?

Saya kira tidak ada jawaban untuk ini. Itu tergantung keadaan.


Adakah contoh perusahaan atau produk yang telah melakukan ini (berhasil atau tidak berhasil) di masa lalu? Bagaimana sikap masyarakat terhadap proyek-proyek itu?

Ya, ada beberapa contoh. Hanya Google untuk frasa "sumber tertutup" dan terapkan filter bogositas. Membaca melalui hit (non-palsu) akan memberi Anda perasaan untuk sikap masyarakat, dan jika Anda meneliti lebih lanjut tentang produk / perusahaan Anda dapat memutuskan apakah mereka berhasil atau tidak. (Saya tidak akan melakukan ini untuk Anda karena "sukses" adalah penilaian nilai.)

Stephen C
sumber