Beralih ke Linux

Oleh : Abdul Pasaribu, 14 April 2021

Linux

Kamu ingin menjadi programmer ?
Atau mungkin kamu sudah menjadi seorang programmer ?
Sudah pakai Linux belum ?

Kita kesampingkan sejenak kontroversi tentang nama Linux dan distro Linux (Linux distribution) soalnya kalau mau membahas itu butuh artikel yang spesifik terkait hal tersebut. Linux yang akan kita bahas adalah hal umum yang berkaitan dengan Linux, meliputi kernel, sistem operasi, distribusi, dan lingkungan software disekitarnya. Okay ? Kalau okay mari kita lanjut.

Apa perbedaan dari supir mobil dengan mekanik mobil ? Well, supir mobil adalah orang yang bisa menggunakan mobil sedangkan mekanik adalah orang yang bisa menggunakan mobil dan mengerti seluk-beluk bagian dalam dari mobil. Kalau dikaitkan dengan pembahasan kita, supir mobil ibarat pengguna komputer biasa dan mekanik ibarat programmer. Programmer adalah orang yang mengerti sedikit banyaknya tentang "bagian dalam" komputer, seperti cara kerja software. Untuk mengerti cara kerja dari sebuah software, metode terbaik adalah dengan membaca kode sumber (source code) dari software tersebut. Sehingga, untuk software yang bersifat proprietary (kode sumber tertutup) akan sulit dimengerti cara kerjanya karena kita tidak bisa membaca kode sumbernya.

Saya yakin kamu sudah pasti familiar dengan sistem operasi Windows buatan Microsoft. Windows itu sifatnya proprietary, sehingga akan sulit untuk dimengerti cara kerjanya secara mendalam apabila kamu ingin mempelajarinya. Linux di sisi lain adalah sistem operasi yang sifatnya open source. Kamu bisa mendapatkan kode sumbernya dan membacanya sesuka hatimu. Bahkan kamu bisa melakukan modifikasi terhadap kode sumber tersebut dan menjadikannya Linux versimu sendiri. Kalau misalkan di Windows muncul sebuah bug, kamu tidak bisa melakukan apa-apa dan hanya bisa berharap semoga pihak Microsoft memperbaiki bug tersebut. Sedangkan untuk Linux, kamu bisa memperbaiki bug tersebut karena kamu bisa mendapatkan kode sumbernya dan mengirim baris kode yang berisi patch dari bug tersebut.

Tidak ada yang memaksa seorang programmer harus bisa dan mahir menggunakan Linux. Kamu bisa saja menggunakan Windows sepanjang karir programming-mu. Namun alangkah baiknya jika kamu mengerti Linux dan lebih baik lagi menggunakan Linux sebagai sistem operasi utama di mesinmu. Seperti analogi supir mobil dengan mekanik mobil tadi, mereka berdua sama-sama bisa menggunakan mobil, namun jika terdapat masalah pada mobil, mekanik bisa memperbaiki sendiri mobilnya. Demikian juga jika kamu seorang programmer yang menggunakan Linux dibandingkan dengan Windows.

Jika terdapat masalah pada Windows yang kamu pakai, kamu tidak bisa memperbaikinya. Kamu hanya bisa menyerahkannya kepada pihak Microsoft, beraharap semoga mereka bisa memperbaikinya secepat mungkin. Sekalipun kamu programmer yang bisa saja memberikan kontribusi untuk memperbaiki masalah tersebut. Hal ini dikarenakan sifat Windows yang proprietary tadi. Lain halnya dengan Linux, kamu selalu bisa memberikan kontribusi apapun terhadap Linux. Kamu bisa menjadi pengguna komputer yang "mandiri" yang bisa bebas melakukan apapun terhadap komputermu. Tidakkah itu lebih baik ?

Memang, beralih ke Linux itu akan sulit pada awalnya. Apalagi kalau seumur hidupmu sejauh ini, sistem operasi yang kamu pakai untuk mesinmu hanya Windows. Ingatkah kamu saat pertama kali menggunakan Windows ? Kamu juga pasti kagok di awal-awal menggunakan Windows. Kamu mahir menggunakan Windows sampai sejauh ini pastinya karena sudah banyak pengalaman. Begitu juga Linux, kamu pasti kagok di awal-awal menggunakannya. Tetapi yakinlah, dengan terus belajar dan mencoba, kamu akan bisa mahir menggunakan Linux. Kamu akan bisa mandiri dari pengaruh proprietary software Windows dan sejenisnya. Kamu akan lebih "punya kendali" terhadap mesin yang kamu miliki.