Archive for December, 2009

Art of Debugging

Debugging adalah salah satu skil pemrograman yang paling penting, bahkan lebih penting daripada menulis kode program itu sendiri. Jika kode yang kamu tulis tidak bekerja, maka menjadi tidak berarti apa yang kamu tulis. Berikut ini adalah beberapa artikel untuk membantu kamu menjadi seorang debugger yang lebih baik.

Bug Prevention and Debugging Strategy – Panduan proses pemikiran debugging dan membuat kode program-mu jadi lebih mudah di-debug.

Introduction to GDB – GDB adalah debugger yang terdapat pada sistem operasi Linux.

Introduction to the Visual Studio Debugger – Jika kamu tidak memiliki Visual Studio, kamu bisa mendapatkan, periksalah options di sini

How to Fix Segmentation Faults – Belajar cara mencari dreaded segmentation fault (aka access violation on Windows). Anda akan menemukan hal ini bermanfaat ketika mempelajari tentang  pointers

Hunting Memory Leaks with Valgrind – Sebuah tool berbasis Linux untuk mencari kebocoran dan masalah memori lainnya.

Happy debugging!

Jangan Suka Memuji

Dalam sebuah rapat jurusan disampaikan bahwa ketua jurusan akan melanjutkan kuliah ke luar negeri. Oleh sebab itu perlu dilaksanakan pemilihan calon ketua jurusan pengganti sementara. Maka hampir setiap dosen memberikan usulan calon disertai alasan berupa pujian dan sanjungan  sehingga sang calon ketua merasa dijerumuskan oleh teman-teman dosennya.

Sebenarnya menjerumuskan seseorang ke jurang kebinasaan tidak selamanya berupa celaan atau cacian, tapi justru yang lebih berbahaya dari itu semua adalah berupa pujian dan sanjungan. Karena orang yang disanjung akan merasa seperti terbang ke awan tinggi dan menganggap dirinya paling hebat.

Imam Bukhari dan Muslim meriwayatkan bahwa seorang lelaki memuji seorang lelaki lain di dekat Rasulullah. Mendengar hal itu, Rasulullah bersabda: ” Celakalah engkau karena telah memotong leher temanmu (diucapkan berkali-kali). Jika seseorang dari kamu harus memuji, maka hendaklah ia mengucapkan: aku rasa dia begini dan begini, jika ia berpendapat bahwa orang itu demikian dan yang memperhitungkannya adalah Allah. Tidak seorangpun bisa menyucikan selain Allah”

Ketika melihat kelebihan yang dimiliki oleh teman kita, mengapa harus memujinya? Bukankah itu semua karunia dari Allah? Maka seharusnya yang kita puji hanyalah Allah yang telah berkenan melimpahkan karunia kebaikan pada dirinya.

Sungguh, suka memuji pada teman sendiri bukanlah sebuah ungkapan kasih sayang sejati, tapi  justru sebaliknya tanpa terasa hal itu akan mencelakakannya dan membuat dirinya ujub dan sombong. Perbuatan seperti ini sangat dibenci oleh Rasulullah dan para sahabatnya.

Tirai Mahabbah

Muhammad itu adalah utusan Allah, dan orang-orang yang bersamanya adalah keras terhadap orang-orang kafir tapi berkasih sayang sesama mereka. (QS Al-Fath 29)

Banyak kebersamaan yang hancur akibat perselisihan dan pertikaian antar sesama muslim. Bahkan, persahabatan atau pernikahan yang hanya lingkup kecil dari kebersamaan terkadang berakhir dengan perpisahan dan perceraian. Coba lihat kehidupan orang kafir, di antara mereka saja bisa saling melindungi. Lalu mengapa di antara sesama muslim masih terjadi pertentangan dan permusuhan?

Kebersamaan tidak bersifat material, tapi merupakan dimensitas perasaan antar sesama yang hanya bisa disentuh oleh kasih sayang.  Walaupun sebagian muslim telah menyadari bahwa antara orang Islam itu bersaudara, tapi mereka belum mengerti hakikat persaudaraan dalam Islam. Maka penting sekali untuk mengetahui bagaimana tips menjalin kasih sayang dalam persaudaraan sesama muslim.

Pertama, sesama muslim tidak mencela dan mencibir saudaranya ketika melihat kelemahan dan kekurangannya. Ali bin Abu Thalib berkata, “Jangan engkau bersedih karena ucapan-ucapan orang yang dilontarkan tentangmu, karena jika yang mereka katakan itu benar, itu adalah hukuman yang dilaksanakan di dunia sebagai pengganti di akhirat nanti atas perbuatanmu yang salah di dunia ini. Dan jika yang mereka katakan itu tidak benar, maka itu adalah sebuah pahala yang engkau peroleh tanpa engkau mengusahakannya.”

Kedua, terhadap sesama muslim hendaklah saling berendah hati, bersabar dan memaafkan kesalahan dan kekhilafan saudaranya. Adapun jika berbuat salah maka seorang muslim harus berani mengakui kesalahannya dan meminta maaf atasnya. Bila merasa malu untuk meminta maaf secara langsung, maka mintalah bantuan kepada saudara yang lainnya untuk menyampaikan permintaan maaf kita atau melalui surat.

Ketiga, sesama muslim tidak memuji saudaranya ketika melihat kelebihan yang dimiliki oleh saudaranya itu. Suka memuji pada saudara sendiri bukanlah sebuah ungkapan kasih sayang sejati, karena hal itu akan membuat dirinya ujub dan sombong. Perbuatan ini sungguh dibenci Rasulullah dan para sahabatnya.

Keempat, sesama muslim saling menolong saudaranya ketika terperosok ke dalam perbuatan dosa. Ketika menolong atau memberi nasehat janganlah di depan umum. Karena akan membuat dirinya enggan menerima nasehat akibat dipermalukan, walaupun dia tahu nasehat itu benar. Hormatilah dirinya di depan umum dan tegurlah dia di kala sendirian.

Kelima, balaslah perbuatan baik dengan yang lebih baik. Seringlah memberikan hadiah kepada saudara kita, karena akan menimbulkan kecintaan dan menghilangkan kedengkian serta kejengkelan di hati. Jika saudara kita memberi hadiah, maka janganlah menolaknya walaupun kita sudah memiliki yang labih baik dari pada apa yang dia hadiahkan. Hal ini demi menghargai niat baik dan menjaga hatinya.

Keenam, berhati-hatilah ketika timbul keinginan untuk memiliki sesuatu begitu kuat. Jika yang mendapatkannya saudara kita, maka biasanya perasaan iri dan dengki padanya akan muncul, “Mengapa yang mendapat dia bukan saya?” Ingatlah semua itu yang membagi adalah Allah. Jika kita menyandarkan diri kepada apa yang Allah pilihkan, maka tidak akan pernah mengharap apa yang tidak Allah pilihkan bagi kita.

Ketujuh, tetaplah berprasangka baik kepada saudara seiman, hingga datang kepada kita suatu berita atau bukti yang mengubah prasangka itu. Janganlah kita ikut menyebarkan suatu berita, sementara kita sendiri belum yakin akan kebenarannya. Berusahalah menjaga lidah kecuali untuk segala hal yang baik, dengan demikian kita dapat mengalahkan syaitan.

Kedelapan, sesama muslim saling menutupi aib saudaranya. Jika melihat atau mendengar saudara sesama muslim sedang menggunjing saudara muslim yang lain, maka hentikanlah perbuatannya. Rasulullah memberi kabar gembira kepada orang yang mau membela saudaranya yang sedang digunjing, “Barangsiapa yang membela saudaranya yang sedang digunjingkan, maka orang itu berhak dibebaskan oleh Allah dari neraka” (HR. Ahmad).

Kesembilan, tiada bentuk ikatan persaudaraan yang lebih kuat daripada ikatan yang dirajut dari benang cinta dan benci karena Allah semata. Jika dalam hati kita terdapat perasaan benci atau suka kepada seseorang, maka kembalikan segala sesuatunya kepada tuntunan Al-Quran dan As-Sunnah. Jika amal perbuatannya dipuji dalam Al-Quran dan As-Sunnah, maka kasih sayangilah dia. Sebaliknya jika perilakunya dibenci dalam Al-Quran dan As-Sunnah, maka jauhilah untuk sementara waktu hingga dia memperbaiki perilakunya. Hal ini agar kita tidak membenci dan menyukai seseorang dengan hawa nafsu, karena hawa nafsu itu akan menyesatkan kita dari jalan Allah.

Maryamah Karpov

Aku terkesiap. Ayah yang tak pernah mengatakan tidak untuk apa pun yang kuminta, Ayah yang mau memetikkan buah delima di bulan untukku telah mengatakan tidak, untuk sesuatu yang paling kuinginkan melebihi apa pun…

Masih menjadi misteri bagi saya mengapa buku keempat dari tetralogi laskar pelangi ini diberi judul Maryamah Karpov. Nama encik Maryamah hanya tertulis dua kali dan sama sekali tidak berperan penting dalam alur cerita. Saya menduga bahwa Hirata telah menyembunyikan sesuatu yang tak ingin ia bagi dalam novelnya tersebut. Bagi saya harusnya novel itu berjudul Njoo Xian Ling atau mungkin lebih tepat diberi judul Mencari Anak Perawan di Sarang Penyamun.

Terlepas dari kontroversi judulnya, harus saya akui novel ini kaya sekali dengan detil budaya melayu dan setting lokasinya. Novel ini juga menularkan semangat petualangan dan pantang penyerah yang mengingatkan pada tulisan Enid Blyton. Sulit menebak berapa banyak buku yang harus dibaca penulis untuk menulis novel ini dan berapa lama waktu yang dibutuhkannya untuk riset dan mengumpulkan semua detil pendukung cerita.

Tak seperti novel lain, saya tak menyediakan waktu khusus untuk membaca novel ini. Alih-alih saya membacanya seperti cerita bersambung, berhenti setiap selesai satu mozaik dan membiarkan diri penasaran ketika mengerjakan pekerjaan lain. Akhirnya setelah dua pekan saya selesai membacanya dan sebagai cerita non fiksi, saya percaya dengan kejujuran endingnya yang tidak happily ever after.

Cinta bisa saja berbanding terbalik dengan waktu, tapi pasti berbanding lurus dengan gila. Kalimat ini mengingatkan saya dengan kegilaan di masa lalu. Semua yang pernah jatuh cinta rasanya pasti setuju dengan kalimat tersebut. Tapi di mozaik yang lain saya sungguh kuciwa dengan kesimpulan yang diambil Ikal: … sekarang aku sampai pada satu titik pemahaman bahwa dari seluruh lika-liku hidupku, untuk perempuan inilah aku telah dilahirkan.

Jika saya seorang Mahar, dengan gaya sok tahunya saya akan menasihati Ikal begini: Boi, kau ini terlalu mengagungkan cinta pada perempuanmu. Tidakkah kau mengetahui kisah orang-orang yang mengagungkan cinta? Tengoklah kisah Samson Delilah, Majnun Layla, Romeo Juliet, Sam Pek Eng Tay, Hamlet Ophelia… Tidakkah kau perhatikan semuanya memabukkan, menyesatkan dan berakhir menyedihkan?

Program C dengan Visual C++

Program C pada Windows dapat dikompilasi dan dieksekusi menggunakan Visual C++. Berikut adalah langkah-langkah menggunakan Visual C++ mulai dari cara membuat project hingga mengeksekusinya.

Membuat project
1. Buka Visual C++ Microsoft Developer Studio
2. Klik menu File – New
3. Klik tab Projects – Win32 Console Application
4. Isi Project Name dan tentukan Location (lokasi penyimpanan project)
5. Klik OK

Membuat file C
1. Setelah membuat project, klik menu File – New
2. Klik tab Files – Text File
3. Pastikan check box pada Add to Project terisi (checked) dan pilihan berisi nama project tadi
4. Pada isian File Name tulis nama file.c
5. Klik OK
6. Ketik program sesuai sintaks bahasa C dan klik menu File – Save

Mengompilasi dan Mengeksekusi file.c
1. Setelah membuat file C, klik menu Build – Compile file.c
2. Jika ada error, klik dua kali pada pesan error di bawah untuk mengetahui lokasi error
3. Setelah program diedit klik menu File – Save dan klik lagi menu Build – Compile file.c
4. Jika tidak ada error lagi, klik menu Build – Build file.exe
5. Jika ada error, klik dua kali pada pesan error di bawah untuk mengetahui lokasi error
6. Setelah program diedit klik menu File – Save dan klik lagi menu Build – Compile file.c
7. Jika tidak ada error lagi, klik menu Build – Build file.exe
8. Jika tidak ada error lagi, klik menu Build – Execute file.exe

Selamat mencoba!