Perhelatan EURO, diawali dengan EURO dan diakhiri dengan EURO

27 06 2008

Perhelatan EURO 2008 telah dimulai dan sebentar lagi akan mencapai puncaknya. Di balik perhelatan akbar tersebut, ada suatu makna tersimpan. Apa itu? Masih ingat EURO 2004 di mana Yunani menjadi juaranya? EURO 2004, tepatnya 4 tahun yang lalu adalah suatu masa di mana banyak pemuda dan pemudi yang berbondong-bondong masuk dan memulai mengenyam pendidikan di Perguruan Tinggi. Ditandai dengan perhelatan EURO 2004 mereka memulai kehidupan yang baru sebagai seorang mahasiswa.

Sekarang, ada apa dengan EURO 2008? Tentu saja ada hubungannya dengan EURO 2004, mahasiswa-mahasiswa tadi kembali memulai kehidupan baru mereka, namun bukan sebagai mahasiswa lagi (sudah lulus hehehehe :D).

Selamat kepada rekan-rekan yang baru lulus! Proficiat! (Diawali dengan EURO dan diakhiri dengan EURO!). Selamat menempuh hidup baru! :D





Hungarian Notation

10 05 2008

Banyak programmer Windows menggunakan sebuah konvensi untuk menamai variabel dalam kode yang mereka buat. Konvensi ini dikenal dengan sebutan “Hungarian Notation“. Penamaan variabel biasanya dilakukan dengan menambahkan prefix / awalan yang menandakan tipe data dari variabel tersebut. Berikut adalah beberapa contoh penggunaan Hungarian Notation tersebut:

prefix ‘c’ –> char atau WCHAR atau TCHAR
prefix ‘by’ –> BYTE (unsigned char)
prefix ‘n’ –> short
prefix ‘i’ –> int
prefix ‘x’, ‘y’ –> int yang digunakan untuk koordinat x dan y
prefix ‘cx’,'cy’ –> int yang digunakan untuk length (x dan y); ‘c’ di sini merupakan “count”
prefix ‘b’ atau ‘f’ –> BOOL (int); ‘f’ merupakan “flag”
prefix ‘w’ –> WORD (unsigned short)
prefix ‘l’ –> LONG (long)
prefix ‘dw’ –> DWORD (unsigned long)
prefix ‘fn’ –> function
prefix ’s’ –> string
prefix ’sz’ –> string yang diakhiri dengan karakter 0
prefix ‘h’ –> handle
prefix ‘p’ –> pointer

Prefix-prefix di atas merupakan contoh-contoh prefix yang sering digunakan oleh para programmer Windows khususnya untuk merepresentasikan tipe data dari variabel yang mereka buat. Contoh: iNilai, variabel iNilai merupakan variabel dengan tipe data integer.

Semoga tulisan ini sedikit memberikan gambaran agar ketika kita melihat source code dengan prefix-prefix di atas kita tidak perlu terlalu bingung lagi… :D





Mensana In Corpore Sano

7 05 2008

Di tengah kesibukan kuliah yang tiada henti-hentinya, olahraga tidak pernah dilupakan. Seperti slogan yang akrab di telinga para siswa sekolah dasar di Indonesia, “Mensana In Corpore Sano” yang terjemahan bebasnya kira-kira sebagai berikut, “Di dalam tubuh yang sehat terdapat jiwa yang sehat“.

Foto kegiatan Futsal Bareng bersama dengan rekan-rekan saya yang lain (Foto diambil oleh: AT menggunakan kamera milik IT :p) :

Kebanyakan mahasiswa yang sibuk dengan pekerjaannya melupakan olah raga ditambah lagi tidak adanya mata kuliah olahraga pada kebanyakan universitas / institusi pendidikan di Indonesia.





Trik seorang guru…

5 05 2008

Alkisah ada seorang anak sekolah yang tidak sengaja melakukan kesalahan (dalam hal ini kenakalan seperti melempari teman lainnya, dsb) di dalam kelas dan secara kebetulan tidak ada seorangpun yang melihat dia melakukannya, sebut saja anak ini Udin (nama samaran). Tentu murid yang menerima perlakuan tidak menyenangkan dari Udin ini melaporkan kejadian ini kepada seorang guru. Ketika seorang guru datang ke dalam kelas untuk melakukan investigasi dan bertanya, “Hayo… Akui… Siapa yang melakukannya?”. Suasana hening… Si guru tersebut tidak memperoleh jawaban dari satu orangpun. Guru tersebut kemudian kembali ke ruang guru dan berpikir sejenak. Tak lama kemudian Guru tadi kembali ke kelas dan melontarkan pernyataan: “Ibu sudah tau siapa pelakunya, Ibu harap pelakunya menghadap secara pribadi ke kantor guru setelah jam pelajaran hari ini berakhir. Jika tidak, maka Ibu akan memanggil orang tuanya untuk menghadap Ibu”…

Hal semacam ini merupakan salah satu contoh trik seorang guru untuk menghadapi muridnya. Meskipun dia tidak mengetahui pelakunya, dengan trik seolah-olah mengetahui pelakunya dapat membuat si pelaku mengaku dengan sendirinya (probability90%)





Improvisasi

29 04 2008

Sehubungan dengan Request tentang Improvisasi dalam bermusik pada tulisan saya sebelumnya, maka pada tulisan ini saya mencoba untuk membagikan apa yang saya tahu tentang improvisasi. Improvisasi dapat dilakukan dengan berbagai pendekatan, beberapa di antaranya adalah pendekatan dari chord dan melalui scale. Pendekatan dari chord dapat dilakukan dengan mengkombinasikan nada-nada yang merupakan unsur-unsur dari chord yang digunakan. Jika dari pendekatan secara scale, dilakukan dengan memainkan scale-scale tertentu.

Jika ingin belajar untuk melakukan improvisasi dapat dilakukan dengan membuat melodi-melodi kecil yang sering dikenal dengan sebutan “licks”, yang kemudian sering dilatih dan biasanya akan “keluar” dengan sendirinya. Untuk referensi, saran saya sebaiknya Anda sering-sering mendengar lagu2 yang banyak mengandung improvisasi. Dimulai dengan lagu-lagu yang mudah, kemudian diikuti, lama-kelamaan umumnya kita akan mendapatkan “sense” dari improvisasi tersebut. :D





Hati-hati menggunakan Port pada 8051

26 04 2008

Sekedar berbagi pengalaman, bagi para pengguna uC 8051 (MCs51) khususnya bagi para pemula berhati-hatilah menggunakan port pada 8051 (AT89C51/52, AT89S51/52) Anda khususnya port0. Mengapa?

Jawabannya adalah dari sisi hardware, port0 tidak dapat digunakan untuk men-drive logika ‘1′ (5 volt). Port0 baik digunakan untuk proses “sink” yaitu proses menerima logika ‘0′. Bila dipaksa untuk mendrive logika ‘1′, maka port0 ini akan mengeluarkan nilai ‘Z‘ (High-Impedance). Dari sisi software (khususnya bagi Anda para pengguna C), jangan meng-assign P0 di mana P0 merupakan input dari statement tersebut, seperti

P0 = P0 << 1;

sebaiknya Anda menggunakan temporary terlebih dahulu. Contoh:

temp = P0 << 1;
P0 = temp;

Semoga bermanfaat! :D





Menikmati Hidangan

23 04 2008

Ada berbagai macam cara untuk menikmati hidangan yang disajikan untuk Anda. Tiap orang memiliki gaya yang berbeda-beda dalam menikmatinya. Salah satunya terlihat pada gambar di bawah ini, bagaimana seorang kawan saya yang menikmati kopi pesanannya:

Menikmati Hidangan

Mmmm… Nikmat bukan? Apalagi jika Anda berada di sebelah seorang bintang, seperti seorang musisi Indonesia yang berada tepat di sebelah kiri kawan saya itu.

Pesan hari ini: Makan jangan terburu-buru, nikmatilah selagi bisa!!! :D





Senioritas

1 04 2008

Satu kebiasaan yang sering muncul di sekitar kita adalah masalah senioritas. Sering terjadi tindakan semena-mena kepada mereka yang dianggap sebagai kalangan junior bahkan yang sebenarnya kawan malah menjadi lawan. Saya juga pernah mengalami hal seperti ini, tapi tidak terlalu parah dan lagi “senior” saya tadi memang umurnya lebih tua dari saya. Ada hal yang lebih menyedihkan lagi bagi saya, yaitu tindakan yang diterima teman saya dimana dia diperlakukan secara “tidak wajar” karena dianggap sebagai junior padahal mereka adalah teman sepermainan dan seangkatan.

Jika saya menjadi seorang senior, saya tidak akan menjalankan paham yang namanya “senioritas”. Saya memiliki paham sendiri yang saya sebut “junioritas” (Apa bedanya? hahaha… :? ). Junioritas adalah suatu keadaan di mana para junior tau posisi dan kapasitas mereka sebagai kalangan junior :? . Jadi, apa bedanya “senioritas” dengan “junioritas”?

Sedikit pesan:

Senior Anda tidak selalu lebih baik dari Anda, mereka hanya lebih dahulu tau daripada Anda

:mrgreen:





USB di Virtual Box (Ubuntu 7.10 Gutsy Gibbon)

1 04 2008

Ketika sedang berjalan-jalan di dunia maya, eh ternyata saya menemukan setting untuk membuat USB device dapat digunakan di VirtualBox. Kira-kira caranya sebagai berikut:

Secara default, Ubuntu Gutsy Gibbon telah menghilangkan support untuk /proc/bus/usb/*. Agar USB device dapat digunakan di VirtualBox, editlah berkas /etc/init.d/mountdevsubfs.sh:

$ sudo nano /etc/init.d/mountdevusbfs.sh

kemudian carilah barislah berikut:

..........
# Magic to make /proc/bus/usb work
#
#mkdir -p /dev/bus/usb/.usbfs
#domount usbfs «» /dev/bus/usb/.usbfs -obusmode=0700,devmode=0600,listmode=0644
#ln -s .usbfs/devices /dev/bus/usb/devices
#mount --rbind /dev/bus/usb /proc/bus/usb
..........

Uncomment beberapa baris di atas, sehingga tampak seperti ini:

..........
# Magic to make /proc/bus/usb work
#
mkdir -p /dev/bus/usb/.usbfs
domount usbfs «» /dev/bus/usb/.usbfs -obusmode=0700,devmode=0600,listmode=0644
ln -s .usbfs/devices /dev/bus/usb/devices
mount --rbind /dev/bus/usb /proc/bus/usb
..........

Lalu tambahkan group dengan nama usbusers (System > Administrations > Users and Groups) kemudian tambahkan username Anda ke dalam groups usbusers tadi. Lakukan pengeditan untuk berkas 40-permissions.rules

$ sudo nano /etc/udev/rules.d/40-permissions.rules

Carilah line berikut ini:

# USB devices (usbfs replacement)
SUBSYSTEM=="usb_device",                    MODE="0664"

Ubah seperti ini:

# USB devices (usbfs replacement)
SUBSYSTEM=="usb_device",  GROUP="usbusers"    MODE="0664"

Setelah semua “resep” dilakukan, restart komputer Anda. Lalu jalankan VirtualBox Anda. Lihatlah di bagian setting, akan terdapat menu USB. Selamat mencoba… :D

VirtualBox_ScreenShot

(sumber: http://balikpapan.linux.or.id)





8051 Development Board

31 03 2008

Bagi Anda yang ingin melakukan eksperimen dengan mikrokontroler, hal pertama yang perlu diperhatikan adalah Anda harus memiliki development board untuk di jadikan “kelinci percobaan” (saya bingung, kenapa kelinci selalu jadi tumbal… :-? ). Kebetulan saya juga pernah bereksperimen dengan mikrokontroler 8051 dan pernah mencoba membuat development board sendiri, jadi sekedar untuk sharing pengalaman, mungkin file-file dokumentasi berikut dapat membantu Anda, mungkin sebagai referensi untuk membuat development board.

Skematik: 8051_schematic

PCB File: 8051_pcb

Silk layer: 8051_silk

Semua hasil rancangan di atas dibuat dengan menggunakan software “Proteus 7 Professional”.
Semoga bermanfaat ! :D