Archive for June, 2007

Useless How To

WikiHow adalah sebuah situs berformat wiki yang berisi tutorial “How To” untuk berbagai macam hal. Content-content yang ada disana cukup menarik dan seringkali sangat berguna. Oleh sebab itu gw memasukan WikiHow kedalam daftar subscribe di Google Reader gw.

Ada banyak artikel bertipe How To disana dengan range topik yang sangat bervariasi. Kita bisa menemukan artikel mulai dari yang berjudul “How to Improve the Readability of Your Software Code” sampai artikel yang berjudul “How to Win at Rock, Paper, Scissors “. Semua dikelompokan kedalam kategori-kategori tertentu sehingga memudahkan kita untuk mencarinya.

Format situs yang berupa wiki membuat semua orang bisa menambah dan memperbaiki artikel yang ada agar menjadi lebih baik. Sayang, format wiki ini juga sekaligus menjadi kelemahan. Orang bisa memasukan artikel apapun yang dia suka. Kadang-kadang artikel yang masuk sangat konyol.

Berikut adalah contoh artikel yang konyol dan tidak berguna menurut gw dengan judul “How to Make Exe File Using Notepad” :

Read the rest of this entry »

Pentingnya Pengetahuan Mengenai Algoritma

introduksi

Gw bukanlah seorang programmer kelas berat. Gw gak make SQL Query untuk mencari kunci motor gw yang nyelip di atas meja. Gw juga gak pernah nulis program yang jumlah barisnya lebih banyak dari bulu anjing. Gw cuman programmer wannabie, programmer yang lagi belajar. Emang sih, gw udah gak belajar nulis “Hello World” lagi ( dalam beberapa bahasa tertentu ).

Implikasinya adalah, tulisan ini sama sekali tidak mempunyai basis ilmiah dan akademik yang kuat. Tulisan ini hanyalah sebuah opini pribadi yang muncul dari pengalaman singkat gw selama mrogram. So, silahkan perbaiki jika ada yang salah.

Algoritma ?

Beberapa orang pernah bilang ke gw, algoritma dan pemrograman serta turunan-turunannya adalah mata kuliah nomber dua paling penting dari semua mata kuliah yang diberikan di jurusan ilmu komputer. Gw emang belum ngerasain mata kuliah di CS. Tapi gw bisa ngebayangin, betapa sulitnya hidup sebagai programmer jika tidak mengerti algoritma sama sekali.

Pada dasarnya, algoritma adalah langkah demi langkah yang harus di ambil untuk menyelesaikan suatu masalah. Langkah ini sifatnya eksak karena komputer tidak bisa berfikir sendiri. Anda harus menginstruksikan dengan benar apa yang mesti komputer lakukan. Jika instruksi yang anda berikan salah atau tidak efisien, komputer tidak akan memperbaikinya sendiri. Andalah yang harus memperbaikinya.

Seberapa Penting ?

Mempelajari algoritma berarti anda mempelajari bagaimana menyusun langkah-langkah penyelesaian masalah. Sebuah masalah tidak hanya bisa diselesaikan dengan satu solusi. Ada beberapa solusi yang menghasilkan jawaban yang benar. Masing-masing solusi cocok untuk kondisi tertentu atau kadang ada satu solusi yang menjadi solusi terbaik dalam keadaan apapun. Mempelajari algoritma berarti anda mempelajari bagaimana memilih solusi yang paling tepat untuk masalah yang sedang anda hadapi.

Salah memilih solusi ( meskipun hasilnya benar ) akan berdampak buruk pada performace. Ada bisa saja memotong sosis menggunakan obeng. Tapi jelas prosesnya akan lebih lama dan hasilnya tidak akan sebagus saat anda menggunakan pisau. Contoh lain, saat anda harus memindahkan air, ya – air. Saat anda harus memindahkan air dari drum satu ke drum yang lain, menggunakan gayung mandi adalah pilihan yang baik. Namun saat air ada di sebuah truk tangki yang besar dan hendak digunakan untuk memadamkan api, menggunakan gayung mandi hanya akan menambah jumlah korban. Itulah gambaran sederhana mengenai pentingnya algoritma.

Semakin canggih suatu solusi maka akan semakin kompleks algoritmanya. Saat anda hendak menyambungkan kabel ke papan PCB, ada beberapa pilihan yang tersedia. Anda bisa menggunakan solder atau bisa juga menggunakan isolasi. Meyambung kabel menggunakan solder hasilnya akan lebih baik dibandingkan menggunakan isolasi. Namun menyambung kabel menggunakan solder butuh keterampilan yang harus dipelajari dan dilatih terlebih dahulu sebelumnya.

Menggunakan solder tanpa pengetahuan yang cukup bisa berakibat buruk. Tentu anda tidak ingin mengambil resiko dan pada akhirnya lebih memilih isolasi. Begitu juga dengan algoritma. Jumlah solusi yang anda pilih sangat bergantung dari seberapa tinggi pengatahuan dan pengalaman anda dalam menyelesaikan persoalan.

Mempelajarinya ?

Belajar algoritma berbeda dengan belajar PPKN - baca, hapalkan, pahami, hayati, dan aplikasikan. Belajar Algoritma mirip seperti belajar persamaan diferensial – pahami konsepnya lalu berlatihlah dengan cara menerapkan ilmu yang didapat di berbagai persoalan. Untuk bisa menyelesaikan persamaan diferensial, tentu anda harus memahami integral dan teknik penintegralan. Begitu juga dengan algoritma, untuk bisa mencari pohon rentang minimum dengan algoritma prim, anda harus mengetahui konsep graph sebelumnya.

Dalam kasus-kasus dasar, kebanyakan algoritma bisa dipelajari langsung tanpa modal ilmu apapun kecuali otak yang sehat. Kabar baiknya adalah, sampai level tertentu ( tergantung kepada orangnya ), anda bisa mempelajari algoritma sendiri tanpa harus dibimbing oleh seseorang. Cukup cari buku yang bagus, lalu mulailah belajar.

Kesimpulan

Algoritma dan pemrograman adalah kemampuan paling penting nomer dua yang harus diasah oleh orang IT pada umumnya dan programmer pada khususnya. Tentu anda tidak memerlukan penguasaan algoritma yang mumpuni jika cita-cita anda hanya jadi pengamat pornomatika.

Btw, apa pelajaran paling penting nomer satu di jurusan ilmu komputer ? Jelas jawabannya adalah “Mengetik lanjutan” .

Tamu dipagi hari

Pagi itu memang tidak biasa. Jika biasanya gw terbangun untuk shalat shubuh saat ayam jago sudah berangkat kerja, kali ini lain.. Gw bangun jam 3.30 gara-gara serangan nyamuk jahanam yang kehausan. Heran gw, padahal bagian kaki dan tangan udah gw balur dengan sofell international anti nyamuk. Tapi nyamuk-nyamuk bajingan itu tetep aja bisa ngisap darah lewat rambut gw. Akhirnya gw terpaksa garuk-garuk kepala dengan antusiasnya sepanjang malam.

Malam itu gw tidur di karpet. Gareng nginap dikamar gw. Mungkin itu saat-saat terakhir gw bersama-sama dia menikmati suasana perwira sambil ngbrol ngalor-ngidul tentang pak agus – kepala lab kimia yang emosian dan punya rambut mirip kuas cat air. Ya.., dia resmi pindah kos-kosan sejak tanggal 14 juni kemarin. Pahit emang rasanya. Bisa dibilang gak ada orang lain yang bisa gw jadiin temen penghilang sepi di kosan selain dia. Gw rada shock dan sedih banget pas dia ngasih tahu kalau dia pindah kos-kosan. Tapi ya sudahlah, pilihan tetap pilihan dan harus kita hargai. Ironisnya, alasan dia pindah sama dengan alasan kenapa gw sedih dia pindah : sepi..

Matahari mulai terbit. Gw ama gareng duduk di teras berdua sambil nyalain coklat kesukaan masing-masing. Ah..pagi yang indah. Jarang-jarang gw bisa menatapi embun pagi seperti ini. Otak yang lagi penat gara-gara ngapalin nama-nama gelas kimia bisa gw segarkan untuk sejenak.

Lagi asik-asiknya ngobrol.. datang seorang bapak-bapak. Orangnya tinggi, gondrong, pake jaket hitam terbuka, dan memiliki kumis yang tumbuh terlalu liar. Gareng spontan menggumam “mirip sujiwo tejo.. ” . Gw masih terpana dan agak ngeri. Jangan-jangan dia permerkosa homo spesialis kos-kosan. Bisa suram masa depan gw kalau ampe jadi korban.

Orang aneh tadi menatap gw, dengan logat jawa yang kental dia berkata : “Mas, nebeng kekamar mandi dong” . Terus gw tunjukin dia kamar mandi umum yang secara tak resmi udah jadi milik mas anwar ( penjaga kos2an gw). Gw pun nambahin “Tapi izin dulu mas ama yang punya, tuh kamarnya di luar gerbang” .

Dia pun jalan terburu-buru ke arah gerbang seperti udah dua bulan gak pergi ke toilet. Pintu kamar mas anwar emang kebuka dari tadi. Dia langsung nyelonong masukin kepalanya kedalam kamar mas anwar. Gw udah yakin ni orang kagak bener. Kalau dia orang tua normal, mestinya dia ngetok pintu, ngucapin salam, dll. Gw gak tahu dia ngobrol apa ama mas anwar. Yang sempet gw tangkap mas anwar nyuruh dia ke kali tapi si aneh tetep aja ngotot pengen nebeng ke kamar mandi.

Gw bergumam pelan ke si gareng “Kayaknya bakalan ribut nih, mas anwar kan orangnya rada emosian”. Setelah dialog singkat, rupanya orang aneh itu murka.. “SAYA MAU NEBENG KE WC, KASIH GAK ??? ” kata dia dengan suara mahasiswa lagi orasi. Mas anwar langsung masuk kekamarnya lalu keluar lagi membawa pipa besi “PERGI KAMU !!” kata mas anwar gak kalah buas.

Untung orang gila itu pergi.. Kalau enggak dia bisa terbunuh mungkin. Selain mas anwar yang bawa pipa besi, di seberang kosan gw juga ada kuli bangunan yang kayaknya udah nyiapin bumbu masak buat bikin tu orang gila jadi semur.

Ya, pagi itu memang tidak biasa..

In search of sun sine

Warnet-warnet yang terletak disekitar kampus memang bikin kita makan jantung. Baiklah, kita mulai perjalanan ini dengan pergi dari rumah, membawa harapan dan keinginan yang besar untuk menulusuri dunia maya. Sesampai di warnet, hati bertambah riang karena masih ada tempat kosong yang bisa ditempati. Kita mulai membuka membuka browser, ketik alamat, jantung pun semakin berdegup kencang sementara kaki mulai panuan sampai…. “Server not found – Firefox can’t find the server at www.example.com” .What the fuck ? Pesan satu milliard yang ditampilkan seakan-akan melelehkan semua harapan besar yang kita bawa dari peraduan.

Dunia memang kejam kawan… tapi haruskah dunia maya pun memberikan cobaannya kepada kita? Adakah warnet di sekitar kampus IPB yang dapat diandalkan ? Yang memiliki koneksi yang cepat nan stabil ? Sulit memang. Mayoritas warnet di sekitar kampus menggunakan koneksi internet super cekak telkom sepeda. Gw emang gak pernah memakai telkom sepeda secara pribadi, namun isu-isu buruk soal itu sudah menyebar dimana-mana. Bagaimana dengan cyber kampus ? ah… gw pengen nyoba, tapi karena gw dalam  masa peralihan, malas rasanya nyetor 50rb ke pihak cyber ( iya, emang gak nyambung ).

Warnet disekitar rumah gw menggunakan koneksi dari jalawave. Cepat, stabil, dan handal.. ( sayang mahal ). Tapi pelayanan nya top bgt. Layar 17 inch flat, web cam, mau makan mie tinggal ngetik, mau beli kopi tinggal ngetik, sakit perut juga tinggal ke WC, semua diantar sampai kietempat. Yah.. sudahlah, mungkin ini yang terbaik yang bisa kita dapat, syukuri ajah… Toh, masih banya orang-orang nun jauh disana yang bahkan belum merasakan terang-benderangnya listrik.

Semoga esok matahari bersinar lebih cerah dari hari ini dan telkom sepeda pun bisa berubah menjadi telkom speedy sesuai namanya.