Penjelasan Perangkat Lunak Sumber Terbuka: Mengapa Kode Sumber Lebih Penting dari yang Anda Pikirkan

12

Kebanyakan perangkat lunak yang Anda unduh adalah kotak hitam. Itu sudah dikompilasi sebelumnya, dihilangkan logika dasarnya, dan disegel di balik paywall. Anda tidak dapat mengubahnya. Anda tidak dapat melihat cara kerjanya. Itu hanya berjalan.

Perangkat lunak sumber terbuka membalikkan model ini sepenuhnya. Ini memberi Anda kunci mesin.

Perbedaan Antara Kode Kompilasi dan Kode Sumber

Saat pengembang menulis aplikasi, mereka menggunakan bahasa yang dapat dibaca manusia yang disebut kode sumber. Kompiler kemudian menerjemahkan kode ini ke dalam bahasa mesin—angka nol biner dan angka yang sebenarnya dijalankan oleh komputer Anda. Produk akhir ini adalah versi terkompilasi.

Untuk perangkat lunak komersial, kompilasi ini adalah sebuah fitur, bukan bug. Itu menyembunyikan kekayaan intelektual pengembang. Pesaing tidak dapat dengan mudah meniru logika tersebut. Pengguna tidak dapat dengan mudah memperbaiki bug yang ada di dalam kernel.

Perangkat lunak sumber terbuka mencakup versi kompilasi dan kode sumber. Tujuannya bukan hanya transparansi. Itu modifikasi.

“Dengan mengizinkan siapa pun yang tertarik untuk mengubah kode sumber, aplikasi akan lebih berguna dan bebas kesalahan dalam jangka panjang.”

Apa Sebenarnya Definisi Perangkat Lunak Sumber Terbuka?

Tidak semua program gratis bersifat open source. Industri ini memiliki kriteria yang ketat. Untuk mendapatkan label tersebut, perangkat lunak harus memenuhi tolok ukur hukum dan teknis tertentu.

  • Distribusi Gratis: Perangkat lunak dapat dibagikan secara bebas. Bahkan bisa menjadi bagian dari paket yang dijual.
  • Penyertaan Kode Sumber: Kode mentah harus dapat diakses.
  • Hak Modifikasi: Siapa pun dapat mengubah kode.
  • Redistribusi Versi Modifikasi: Anda dapat membagikan penyesuaian Anda dengan orang lain.
  • Lisensi Non-Diskriminatif: Lisensi tidak dapat membatasi penggunaan perangkat lunak lain atau mengganggu program lain.

Aturan-aturan ini memastikan bahwa keterbukaan bukan sekadar kata kunci pemasaran. Ini adalah standar yang dapat ditegakkan.

Linux: Kisah Sukses Sumber Terbuka

Contoh paling jelas dari penerapan model ini adalah Linux.

Pada tahun 1991, Linus Torvalds, seorang mahasiswa di Universitas Helsinki, mulai mengerjakan sistem operasi baru. Dia mendasarkannya pada Minix, turunan Unix. Dia merilis versi 0.02 di bawah Lisensi Publik Umum GNU. Lisensi ini memberikan kerangka hukum untuk perangkat lunak sumber terbuka.

Orang-orang mengunduh kodenya. Pemrogram memodifikasinya. Torvalds menerima tambalan ini selama tiga tahun berikutnya. Dia memasukkannya ke dalam baseline. Linux 1.0 hadir pada tahun 1994.

Ini bukanlah upaya yang dilakukan sendirian. Itu adalah model pengembangan terdistribusi. Kodenya ditingkatkan karena ribuan mata tertuju padanya.

Kesenjangan Dukungan dan Model Bisnis

Di sinilah segalanya menjadi rumit bagi pengguna rata-rata.

Perangkat lunak sumber terbuka biasanya tidak memiliki jaminan. Tidak ada dukungan teknis. Jika rusak, Anda sendirian. Lisensi ini mendorong penyesuaian, yang membuat dukungan standarisasi hampir tidak mungkin dilakukan.

Jadi siapa yang memperbaikinya?

Perangkat Lunak Red Hat memecahkan masalah ini. Didirikan pada tahun 1994, Red Hat mengemas Linux sebagai “Linux Resmi Red Hat”. Mereka bukan pemilik kodenya. Mereka memiliki layanan tersebut.

Mereka menambahkan garansi. Mereka memberikan dukungan teknis.

Bagi bisnis, jaminan ini adalah faktor penentu. Banyak perusahaan lebih memilih membeli Linux yang didukung daripada mengunduh salinan gratis. Mereka membayar untuk stabilitas, bukan kode itu sendiri. Perusahaan lain mengikuti, mengemas Linux dengan alat tambahan untuk dijual kembali.

Selain Linux: Bahan Pokok Sumber Terbuka Lainnya

Linux bukan satu-satunya permainan di kota ini. Beberapa teknologi dasar yang mendukung internet bergantung pada prinsip sumber terbuka.

  • Mozilla: Mesin inti di balik browser Netscape.
  • Apache: Server web yang menggerakkan sebagian besar internet.
  • PERL: Bahasa skrip untuk pengembangan web.
  • PNG: Format file grafik yang dirancang untuk kompresi lossless.

Alat-alat ini gratis untuk digunakan. Mereka bebas untuk memodifikasi. Mereka membentuk cara kita berinteraksi dengan web setiap hari.

Mengapa Ini Penting Bagi Anda?

Anda mungkin mengira open source hanya memengaruhi pengembang. Tidak.

Saat Anda menggunakan perangkat berbasis Linux. Saat Anda mengunjungi situs yang dihosting di Apache. Saat Anda menggunakan browser yang dibangun di Gecko. Anda menggunakan perangkat lunak yang secara teori dapat Anda audit. Anda menggunakan perangkat lunak yang tidak dapat dikunci oleh satu perusahaan.

Hambatan untuk masuk lebih tinggi. Anda perlu tahu cara menginstalnya. Anda perlu tahu di mana untuk mendapatkan dukungan. Namun trade-offnya adalah kontrol.

Internet berjalan pada protokol ini. Masa depan perangkat lunak bergantung pada apakah kita tetap membuka pintunya.