Kamis, 19 Desember 2013

Apa Hacker itu?


Jargon File memuat beberapa definisi untuk kata ‘hacker’, hampir semuanya berkaitan dengan kemahiran teknis serta kegemaran menyelesaikan masalah dan mengatasi keterbatasan. Namun jika ingin menjadi seorang hacker, hanya ada dua definisi yang relevan. Ada sebuah komunitas, budaya, terdiri dari para programer mahir dan ahli jaringan, yang sejarahnya bermula dari dekade minikomputer pertama yang memiliki time-sharing dan zaman eksperimen awal ARPAnet. Dari anggota budaya inilah muncul istilah ‘hacker’. Hackerlah yang membangun internet. Hackerlah yang membuat sistem operasi Unix menjadi seperti sekarang. Hackerlah yang mengoperasikan Usenet. Hacker yang membuat World Wide Web berjalan. Jika Anda bagian dari budaya ini, jika Anda telah menyumbangkan sesuatu untuk budaya ini, dan rekan lain di dalamnya mengenali Anda sebagai seorang hacker, maka seorang hackerlah Anda.

Cara pikir hacker tidak terbatas pada budaya hacker software. Ada orang yang menerapkan sikap hacker pada banyak bidang lain, elektronik atau musik — bahkan, cara pikir hacker ada di tingkat tertinggi setiap bidang ilmu dan seni. Hacker software mengakui semangat serupa ini dan kadang menyebut orang-orang tersebut “hacker” pula — sebagian juga berpendapat bahwa sifat seorang hacker tidak bergantung pada wadah tempatnya bekerja. Tapi, untuk selanjutnya, kita akan memusatkan perhatian pada software hacker, keahlian dan sikap mereka, serta tradisi budaya bersama yang melahirkan istilah ‘hacker’.

Terdapat pula sekelompok lain yang menyebut-nyebut diri hacker, padahal bukan. Mereka-mereka ini (terutama terdiri dari remaja pria) mendapat kepuasan lewat membobol komputer dan mengakali telepon (phreaking). Hacker sejati menyebut orang-orang ini cracker dan tidak suka bergaul dengan mereka. Hacker sejati memandang cracker sebagai orang malas, tidak bertanggung jawab, dan tidak terlalu cerdas. Hacker sejati tidak setuju jika dikatakan bahwa dengan menerobos keamanan seseorang telah menjadi hacker, sama seperti jika dikatakan bahwa mengontakkan mobil membuat seseorang langsung menjadi ahli mesin. Sayangnya, wartawan dan penulis telah salah kaprah dan menggunakan kata ‘hacker’ untuk melukiskan cracker; sesuatu yang selalu membuat kesal para hacker sejati.

 Perbedaan mendasar antara hacker dan cracker : hacker membangun, cracker membongkar (dan biasanya cenderung merusak). Jika Anda ingin menjadi hacker, lanjutkan membaca. Jika ingin menjadi cracker, kunjungi newsgroup alt.2600 dan bersiaplah menghabiskan lima sampai sepuluh tahun di balik jeruji setelah mengetahui bahwa Anda ternyata tidak sepandai yang Anda kira. Hanya itu yang perlu dikatakan tentang cracker.

@>Sikap Hacker
 Pekerjaan hacker menyelesaikan masalah dan membangun sesuatu, dan hacker percaya pada kebebasan dan kerjasama sukarela. Agar dapat diterima sebagai seorang hacker, Anda harus berbuat seolah-olah Anda memiliki sikap ini. Dan agar dapat berbuat demikian, sikap ini harus benar-benar diyakini.

 Tapi kalau Anda berniat menumbuhkan sikap ini hanya agar dapat diterima di lingkungan hacker, maka Anda belum menangkap maknanya. Menjadi orang yang meyakini sikap hacker penting bagi Anda sendiri — agar bisa terus belajar dan termotivasi. Sama seperti semua seni kreatif lain, cara paling efektif untuk menjadi seorang ahli adalah dengan meniru cara berpikir ahli-ahli lainnya — bukan hanya secara intelektual tapi juga emosional.
Seperti diungkapkan oleh sebuah sajak Zen modern di bawah:

Untuk mengikuti jalan:
pandanglah sang ahli,
ikuti sang ahli,
berjalan bersama sang ahli,

kenali sang ahli,
jadilah sang ahli.

Jadi, jika ingin menjadi hacker, ulangi pernyataan di bawah ini sampai benar-benar Anda yakini:
1. Dunia penuh dengan persoalan-persoalan menarik yang menanti untuk dipecahkan.
    Menjadi seorang hacker sebetulnya menyenangkan, tapi ‘menyenangkan’ yang menuntut usaha. Usaha ini membutuhkan motivasi. Atlet yang sukses memperoleh motivasi dari kepuasan fisik saat tubuh mereka beraksi, saat mendorong diri melampaui batasan fisik. Demikian juga, untuk menjadi seorang hacker Anda harus merasa tertarik memecahkan persoalan, mengasah keahlian, dan melatih kecerdasan.

 Jika Anda merasa bukan seperti ini secara 'naluri', Anda harus berusaha menjadi demikian jika ingin berhasil menjadi hacker. Jika tidak, energi hacking Anda akan melemah karena perhatian teralihkan oleh seks, uang, dan kedudukan. (Anda pun harus mengembangkan keyakinan pada kapasitas belajar diri — keyakinan bahwa meskipun yang Anda ketahui belum cukup untuk memecahkan suatu persoalan, jika satu potongan saja dari persoalan Anda usaha pecahkan, maka itu sudah cukup memberi pelajaran kepada Anda untuk menyelesaikan potongan berikutnya — dan berikutnya, hingga semua potongan terselesaikan.)

2. Tidak seharusnya masalah yang sama dipecahkan dua kali.
    Otak yang kreatif merupakan sumber daya yang berharga dan terbatas. Tidak seharusnya sumber daya ini diboroskan hanya untuk memikirkan kembali suatu persoalan dari dasar, padahal ada begitu banyak masalah menarik baru lain di dunia ini yang menanti.

 Agar dapat bertingkah laku seperti hacker, Anda harus percaya bahwa waktu berpikir hacker lain itu berharga — sebegitu berharganya hingga merupakan suatu kewajiban moral bagi Anda untuk membagikan informasi, menyelesaikan masalah lalu memberi jawabannya pada hacker lain supaya mereka menyelesaikan masalah baru dan tidak selamanya berkutat pada masalah-masalah lama.

(Tidak harus berkeyakinan bahwa semua produk kreatif Anda harus direlakan bagi orang lain, meski hacker yang demikianlah yang paling dihormati hacker lain. Menurut nilai-nilai hacker, jual saja sebagian asal cukup untuk tetap makan, tetap dapat membayar sewa rumah, dan tetap dapat memakai komputer. Tidak melanggar nilai hacker jika Anda memanfaatkan ilmu Anda untuk membiayai keluarga atau bahkan memperkaya diri, asalkan sambil melakukannya tetap setia pada disiplin ilmu dan sesama hacker lain.)

3. Kebosanan dan pekerjaan membosankan itu jahat.
    Hacker (dan manusia kreatif pada umumnya) tidak seharusnya dibosankan dengan pekerjaan bodoh yang berulang-ulang, karena ini berarti mereka tidak melakukan pekerjaan yang hanya bisa dilakukan oleh mereka — menyelesaikan persoalan-persoalan baru. Pemborosan sumber daya ini merugikan semua pihak. Karena itu kebosanan dan pekerjaan membosankan bukan saja tidak menyenangkan tapi juga jahat.
 Agar dapat bertingkah laku seperti hacker, Anda harus meyakini hal ini sehingga Anda berkeinginan untuk mengotomasi sebanyak mungkin bagian yang membosankan, bukan saja bagi diri sendiri tapi juga orang lain (terutama sesama hacker).
 (Ada satu kekecualian yang jelas. Hacker kadang melakukan pekerjaan yang di mata orang lain tampaknya berulang-ulang atau membosankan, ini untuk latihan menjernihkan pikiran, atau dalam rangka memperoleh keahlian atau pengalaman yang tak bisa tidak harus diperoleh dengan cara demikian. Tentu saja hal ini dilakukan atas dasar kehendaknya sendiri — setiap orang yang mampu berpikir tidak seharusnya dipaksa menjadi bosan).

4. Kebebasan itu baik.
    Secara alamiah hacker itu anti-otoriter. Siapa pun yang dapat memerintah. Anda akan dapat menghentikan Anda untuk menyelesaikan persoalan yang menarik — dan, sesuai pikiran otak para otoriter, pada umumnya akan membuat alasan yang benar-benar bodoh untuk itu. Jadi sikap otoriter harus dilawan di mana pun Anda berada, agar nantinya tidak menekan Anda dan hacker-hacker lain.
 Para otoriter hidup di atas 'sensor dan kerahasiaan'. Mereka tidak percaya pada kerjasama dan berbagi informasi — satu-satunya jenis ‘kerja sama’ yang disukai adalah yang dapat mereka kendalikan. Jadi untuk berlaku seperti seorang hacker, Anda perlu mengembangkan rasa benci pada penyensoran, kerahasiaan, dan penggunaan kekerasan atau penipuan untuk memaksakan kehendak pada orang dewasa. Dan Anda harus bersedia bertindak atas dasar keyakinan ini.

5. Sikap saja tak ada artinya tanpa keahlian.
    Untuk menjadi hacker, Anda perlu mengembangkan sebagian dari sikap-sikap yang telah disebutkan. Tapi memiliki sikap saja belum membuat seseorang menjadi hacker, atau atlet juara atau bintang rock. Untuk menjadi hacker dibutuhkan kecerdasan, latihan, dedikasi, dan kerja keras.

 Jadi, Anda perlu belajar untuk tidak mempercayai sikap saja dan menghormati setiap bentuk kemampuan. Hacker tidak bersedia menghabiskan waktu dengan orang-orang yang hanya bersikap seperti hacker, tapi hacker memuja keahlian — terutama keahlian dalam hacking, tapi juga keahlian di bidang apapun. Yang terlebih bagus lagi yaitu keahlian dalam bidang yang sulit dan hanya dapat dikuasai oleh sedikit orang, dan yang terbaik adalah keahlian dalam bidang yang sulit dan melibatkan ketajaman mental, keahlian, serta
konsentrasi.
Bila Anda memuja keahlian, Anda akan merasa senang dalam meningkatkan kemampuan diri — kerja keras dan dedikasi akan menjadi semacam permainan yang mengasyikkan ketimbang pekerjaan membosankan. Dan hal ini penting dalam proses menjadi hacker...

@>Kemampuan Hacking Dasar
 'Sikap' hacker penting, tapi terlebih penting lagi 'keahlian'. Sikap bukan pengganti keahlian, dan ada seperangkat keahlian menggunakan perangkat tool yang perlu Anda kuasai sebelum orang bahkan bisa berpikir memanggil Anda hacker.
 Perangkat tool ini perlahan-lahan memang berubah seiring teknologi yang menciptakan keahlian baru dan membuat keahlian lama tidak berguna. Misalnya, dulu keahlian pemrograman bahasa mesin termasuk, dan kemampuan HTML belum dan hanya baru-baru ini saja. Yang jelas saat ini yang termasuk adalah:

1. Pelajari pemrograman.
    ini tentunya merupakan keahlian hacking yang fundamental. Jika Anda belum pernah belajar bahasa pemrograman mana pun, saya sarankan mulai dengan Python. Disainnya bersih, terdokumentasi dengan baik, dan cukup mudah bagi pemula. Meski menjadi bahasa pertama, bukan berarti Python hanya mainan, Python amat ampuh dan fleksibel dan cocok untuk proyek-proyek besar. Tutorial Python bisa dilihat di situs web Python (terjemahan Indonesia).


 Java juga bahasa yang baik untuk belajar pemrograman. Lebih sulit dari Python, tapi menghasilkan kode yang lebih cepat dari Python. Menurut saya Java amat bagus sebagai bahasa kedua. Perlu diingat bahwa dengan satu dua bahasa pemrograman saja Anda tidak akan mencapai tingkat keahlian seorang hacker, atau bahkan seorang programer — Anda perlu belajar cara memandang pemrograman secara umum, tidak bergantung pada satu bahasa mana pun. Untuk menjadi hacker sejati, Anda perlu mencapai tahap di mana Anda dapat mempelajari bahasa baru dalam beberapa hari, dengan menghubungkan apa yang ada di manual dengan apa yang telah Anda ketahui. Hal ini berarti, Anda perlu mempelajari beberapa bahasa yang jauh berbeda satu dengan yang lainnya.


 Jika ingin serius dalam pemrograman, pada akhirnya Anda harus belajar C, bahasa inti sistem operasi Unix. C++ terkait erat dengan C, jika tahu yang satu, belajar yang lain tidak akan susah. Namun keduanya bukan bahasa yang cocok untuk dipelajari pertama kali.

 Bahasa lain yang juga penting untuk hacker antara lain Perl dan LISP. Perl patut dipelajari untuk kebutuhan praktis. Perl dipakai secara amat meluas untuk halaman web aktif dan untuk administrasi sistem, jadi meskipun nantinya Anda tidak akan membuat program dalam Perl, Anda sebaiknya belajar cara membaca Perl. LISP patut dipelajari karena akan memberikan pengalaman ‘membuka pikiran’ jika Anda telah menangkapnya, dengan mempelajari LISP, Anda akan menjadi seorang programer yang lebih baik, meskipun dalam kenyataan Anda akan jarang memakainya.


Bersambung....