Minggu, 18 Desember 2011

Masalah Linux dan Windows Tentang Kontribusi

Catatan ini harus saya masukan. Jika perlu jadi pelajaran untuk kita. Mari kita pikirkan sejenak tentang semua. ini artikel ini saya ambil dari forum hacker jasakom.

Anda mungkin sudah mendengar, tapi ini memang kejadian sulit dinalar. Bahwa Microsoft, pihak yang memproklamirkan diri sebagai musuh Linux dan free open source software, telah mengumumkan menyumbangkan 20.000 baris kode ke Linux kernel. Microsoft ingin agar kode-kodenya dimasukkan ke kernel Linux.


Perlu diketahui bahwa kode-kode tersebut masih belum dimasukkan ke official Linux kernel. Kode ini juga belum seluruhnya dipelajari komunitas luas untuk mengetahui isi kode sebenarnya. Apakah kode tadi benar-benar kode, atau hanya petaka binary? Akankah kode ini memenuhi standar, atau akankah komunitas berniat membersihkan dan me-maintain-nya?

Saat diwawancarai sebuah majalah Linux tentang apakah ia sudah mempelajari kode tadi, Linus Torvalds (the father of Linux) menjawab: “Saya belum mempelajarinya. Utamanya karena saya tida tertarik kode driver (kode ini tidak berdampak sama sekali) lebih-lebih karena saya tidak menggunakan kode ini.

Untuk hal-hal seperti ini, saya mempercayakan pada maintainer. Saya cenderung mempelajari kode ketika terjadi bug, atau ketika kode digunakan di banyak subsystem, atau sewaktu kode ini merupakan salah satu core subsystem yang saya terlibat di dalamnya (misalnya Virtual Machine, core device resource handling, basic kernel code dll).

Saya mungkin akan mempelajarinya ketika kode dikirimkan langsung oleh maintainer (dalam hal ini Greg [Kroah-Hartman]).”

Sejak Microsoft menyerahkan kode tadi, beredar beragam opini dan komentar. Untuk mengetahui apa di balik kode tadi, mari kita memulainya dari paragraf pembuka press release Microsoft yang berbunyi demikian.

“Today, in a break from the ordinary, Microsoft released 20.000 lines of device driver code to Linux community. The code, which includes three Linux device drivers, has been submitted to the Linux kernel community for inclusion in the Linux tree. The drivers will be available to the Linux community and customers alike, and will enhance the performance of the Linus operating system when virtualized on Windows Server 2008 Hyper-V or Windows Server 2008 R2 Hyper-V.”

Anda mungkin tidak sabar. Mari kita perhatikan baris pertama, “in a break from the ordinary.” Benar. Biasanya Microsoft mencoba menghancurkan Linux dan free software. Microsoft membenci lisensi GPL dan menyebutnya virus, kanker, perusak hak cipta, dan bahkan anti-Amerika. Ya, ini hanyalah a break. Tidak ada yang berubah di Redmond, perusahaan ini masih membenci Linux dan masih ingin menghancurkannya.

Pertanyaan berikutnya, mengapa Microsoft menyerahkan patch? Patch ini berisi 3 driver yang akan meningkatkan performa Linux ketika divirtualisasikan sebagai guest di produk virtualisasi Microsoft bernama Hyper-V. Ahaa…, sekarang udangnya terihat dari balik batu.

Kode tadi bukanlah sebuah bentuk kemurahan hati semata, tetapi untuk memastikan Linux berjalan mulus di teknologi virtualisasi Microsoft. Microsoft menyadari dunia tengah bergerak menuju free software dan user tengah mengimplementasikan Linux di infrastruktur mereka.

Sekalipun motivasinya murni demi kepentingan pribadi, adakah hal yang salah dengan kode tersebut? Microsoft berencana “membuat open source lebih baik” dan langkah nyata ini terlihat, tapi ujung-ujungnya Microsoft melakukan sesuatu yang tidak dapat diprediksi, memberi kontribusi ke free software, dan ini adalah sebuah kemenangan.

Di dalam portofolionya, Microsoft sudah lama menyatakan Linux melanggar hak cipta software. Microsoft CEO Steve Ballmer mengatakan, semua orang yang menggunakan Linux berarti tidak mempunyai tanggung jawab legalitas berimbang dan Microsoft akan memberikan kompensasinya berupa hak cipta (intellectual property).

Saat ditanya bagian mana yang dilanggar hak ciptanya, Microsoft tidak pernah mengatakannya, ini merupakan bagian strategi Microsoft untuk menyebarluaskan ketakutan (fear), ketidakpastian (uncertainty) dan keraguan (doubt) di pasar. Microsoft akan menempuh langkah selanjutnya, dengan menyeret produsen GPS TomTom ke meja hijau dengan alasan implementasi VFAT di Linux kernel melanggar hak paten.

Sebagian orang mencemaskan patch ini akan memasukkan hak paten Microsoft langsung ke Linux kernel, lagi pula kode-kode tersebut adalah driver yang didesain khusus di teknologi virtualisasi Microsoft.

Komunitas tidak pelu mengkhawatirkan, karena kode dirilis di bawah GNU GPLv2 yang di Section 7 mengharuskan author menyatakan lisensi bebas royalti, atau menghentikan distribusi program. Pendek kata, Microsoft tidak dapat menuntut atas kode ini karena dibawah lisensi GPL (walau tidak menutup kemungkinan Microsoft tidak akan berhenti mencobanya).

Ada peluang kode tadi adalah Trojan horse, tapi mustahil. Kode harus masuk ke mainstream kernel lebih dulu, harus mendapat restu dari Linus dan pengikutnya guna memastikan “kebersihannya”.

Ini tindakan yang harus ditempuh Microsoft agar segalanya berjalan sesuai harapan. Karena itulah, Microsoft harus memainkan bola atau beresiko kehilangan sama sekali segalanya.

Kalau demikian, ada apa sebenarnya dengan kode tadi? Ini adalah langkah cerdik (dan penting) Microsoft guna memuluskan migrasi kliennya ke Linux.

Microsoft menyadari klien mereka hendak memvirtualisasikan Linux server dan saat ini pengguna tidak dapat melakukannya dengan baik di Microsoft menggunakan Hyper-V. Jadi, jika Microsoft tidak mengambil langkah apapun, klien mereka akan beralih dari Microsoft Windows sebagai host operating system.

Di sisi lain, ini bukan perubahan berdasar hati nurani. Microsoft bukan hendak merangkul Linux, atau GPL, atau free software. Langkah ini adalah strategi murni agar Microsoft dapat bertahan di persingan teknologi virtualisasi.

Microsoft hanya menggarap sesuatu yang paling memikat minatnya (seperti halnya banyak perusahaan) dan ini tidak terkecuali. Microsoft “Open Source Technology Center” tidak lain adalah upaya berada di atas fenomena free source, memposisikan dirinya untuk bertarung dan menghancurkannya.

Banyak atensi baru Microsoft terhadap open source merupakan hasil langsung kasus Anti-trust Komisi Eropa yang memaksa Microsoft membuka source produk-produk tertentu dan merilis dokumenasi teknis.

Banyak tulisan mengatakan ini merupakan dukungan terhadap GPL, dan Microsoft tengah melegitkan kodenya sebagai valid lisence untuk merilis teknologinya di bawah payung GPL. Tapi benarkah demikian? Kernel developer dan karyawan Novell Greg Kroah-Hartman, yang begitu aktif mengharuskan Microsoft merilis kode, memposting beberapa pandangan menarik di blog-nya.

Mengutip pernyataan Microsoft, ia mengatakan bahwa alasan Microsoft merilis kode di bawah GPL karena Microsoft “telah menggunakan kode Linux, (dan akibatnya) Microsoft punya kewajiban meng-open source-kan device driver.

Ini adalah proses yang digariskan komunitas Linux.“ Menarik di catat bahwa Microsoft hanya marilis kode karena Microsoft harus melakukannya. Ini bukan sebuah bentuk dukungan terhadap GPL, hanya persyaratan agar kode Microsoft dapat dimasukkan kernel.

Apa yang harus kita lakukan? Mungkin Linux harus menolak kode itu dan membiarkan Mocrosoft tetap di luar sana. Atau haruskah kita membantu Microsoft? Sayangnya, siapapun bebas mengkontribusikan kode bila ternyata kode tadi berguna dan mempunya kualitas memadai.

Kami kembali ke Linus dengan menanyakan apakah ia senang memasukkan patch ini, walau patch berasal dari Microsoft. Ia menjawab:

“Oh, saya sangat yakin akan “teknologi dibanding politik”. Saya tidak peduli kode berasal dari siapa, selama kode tadi mempunyai alasan kuat dan kita tidak perlu mencemaskan masalah lisensi dan lainnya.

Sebenarnya pada level tertentu, saya sangat setuju memasukkan kode atau patch tadi karena berasal dari anggta baru sebuah komunitas daripada tidak ada kontribusi sama sekali (sekali lagi saya menandaskan driver ini spesial. Driver atau kode atau patch tidak berdampak pada hal-hal lain, sehingga lebih mudah dimasukkan atau digabungkan daripada kode-kode yang mengarah pada core).

Saya menertawakan Microsoft, tetapi pada saat yang bersamaan, saya pikir kebencian Microsoft adalah sebuah penyakit. Saya percaya akan open development, dan sangat setuju untuk tidak hanya membuka source senantiasa open, tetapi juga tidak menutup bagi orang atau perusahaan lain.

Jadi sangatlah mungkin kode ini dimasukkan mainline kernel dan ini bagus. Siapa tahu Microsoft sudah tercerahkan!” Linus benar. Kita jangan menolak kontribusi dari siapapun berdasar siapa kontributor itu. Kualitas kontribusilah yang penting.

Still, one can’t help but notice a pattern in Microsoft’s history, which jades their offer. Should that matter? IBM dan perusahaan lain melakukan hal serupa di masa lalu. Perbedaannya hanyalah mereka kini merangkul Linux, ketimbang mencoba menyingkirkannya. Apakah ini membuat mereka kontributor yang lebih berharga?

Linus mengatakan inilah bagaimana semua kode open source dibuat, para developer menggaruk gatal. Fakta bahwa kode tadi berasal dari Microsoft seharusnya tidak membedakan. Linus mengatakan:

“Saya setuju bahwa patch didorong kepentingan pribadi, tapi itulah bagaimana semua kode open source dibuat! Kita semua “menggaruk gatal kita”. Inilah alasan saya mengawali Linux, dan mengapa saya masih terlibat di dalamnya. Inilah alasan bagi semua orang untuk menyudahinya menjadi open source, sampai tingkat tertentu.

Jadi, memprotes fakta bahwa Microsoft memilih wilayah berdasar kepentingannya adalah bodoh. Tentu Microsoft memilih area yang menguntungkannya. Itulah poin dari open source, kemampuan membuat kode lebih baik untuk kebutuhan Anda, siapapun ‘Anda’ dalam hal ini.

Apakah orang memprotes ketika perusahaan hardware membuat driver untuk hardware yang diproduksinya? Tidak. Gila bila Anda memprotesnya. Apakah orang memprotes saat IBM mendanai semua pengembangan POWER, dan menggarap fitur-fitur enterprise (perusahaah) lantaran IBM menjualnya ke enterprise? Tidak. Edan jika Anda memprotesnya.

Karenanya, orang yang memprotes soal Microsoft yang membuat driver untuk model virtualisasi mereka sendiri semestinya mengaca lama-lama dan bertanya pada diri sendiri mengapa mereka begitu hypokritis.”

Tentu kode Microsoft didesain menguntungkan mereka, demikian pula kode lain yang dikontribusi perusahaan dan seringkali individu. Ambil contuh Intel dengan proyek Moblin. Ia didesain agar produk Intel menjadi teknologi lini depan dan bagian serangan awal terhadap arsitektur ARM yang menyerbu sektor notebook dan kuat di Linux.

Begitulah kode Microsoft merupakan langkah terkalkulasi dan murni didorong ego pribadi, tapi ini bukan hal baru di dunia free siftware. Tentu kita harus mengingat siapa Microsoft dan apa tujuannya, namun sebagaimana dikatakan Linus, begitulah cara setiap orang masuk ke open source pertama kali.

Pada akhirnya, sekalipun driver ini dimasukkan kernel, itu tergantung distro menyertakannya atau tidak. Artinya sekalipun strategi Microsoft saat ini unggul, driver tidak akan seperti harapan Microsoft bila perusahaan seperti RedHat, Novell, dan Ubuntu tidak memasukkan driver tersebut. Masih terlalu dini dan masih banyak yang harus dipelajari.

Microsoft memahami free software tidak akan enyah dan ia ingin kode ini berada di kernel agar ia tetap bisa dalam lingkaran permainan. Microsoft harus memastikan Linux akan berjalan di produknya, jika tidak, Microsoft akan kehilangan banyak hal.

Apa yang harus dipahami Microsoft adalah dirinya bertarung dalam dalam sebuah pertempuran yang akan membuatnya meratapi kekalahan. Ini adalah contoh sebuah fakta dan seharusnya menjadi bel penggugah sang raksasa.

Jadi, jangan melupakan siapa Microsoft itu, namun pada waktu bersamaan bila ia mengkontribusi kode bermanfaat maka tidak ada salahnya kita adopsi dan menyempurnakannya.

Sumber Surya Andrial Dinur






Sumber

Tidak ada komentar: