Cinta Programming

Sebagian orang di dunia ini cukup beruntung, mereka bisa menemukan sesuatu yang dicintai dalam hidupnya, dan bisa hidup melakukan hal yang dicintainya. Umumnya mereka ini orang-orang seni, pemusik yang cinta musik, pelukis yang cinta lukisan dsb. Tapi dalam hidup ini saya juga sudah melihat orang-orang yang mencintai bidang-bidang lain. Professor matematika yang mencintai matematika, dosen yang mencintai mengajar, dsb. Saya menggunakan kata cinta, karena lebih kuat dari kata “suka” (menurut KBBI, cinta artinya “suka sekali”).

Saya beruntung dulu bisa berkenalan dalam dunia programming sejak umur 13 tahun. Sejak dulu bisa memprogram BASIC, saya senang sekali bisa membuat aneka macam program. Dan sejak 15 tahun yang lalu sampai sekarang saya senang bisa selalu memprogram sesuatu. Saya sering kasihan kalau melihat orang yang banyak komplain tentang pekerjaannya, yang menganggapnya jadi beban. Saya menyarankan orang-orang, terutama yang masih muda, untuk mencari hal-hal yang dicintainya, daripada nanti mengeluh sepanjang hidupnya.

Ada begitu banyak pengalaman programming yang ingin dituliskan, tapi sepertinya sampai sekarang belum cukup waktu. Tapi kalau tidak segera dimulai, makin banyak pengalaman yang terlupakan. Bu Inge pernah menyarankan membeli domain cintaprogramming.com dan sudah saya beli, tapi sampai sekarang belum diisi. Dulu rencananya semua orang yang cinta programming bisa meminta sub domain untuk diisi (misalnya http://yohanes.cintaprogramming.com), tapi sampai sekarang belum sempat diurus karena masih terlalu banyak memprogram yang lain 😛

Semoga tahun ini situs tersebut bisa aktif diisi.

Mari beralih ke compiler baru

Saya gemes, sampai tahun ini (2008) saya melihat masih ada dosen yang menyarankan mahasiswanya memakai Visual Basic 6, Turbo C++ 3.0, Turbo Pascal 7, atau software sejenis yang sudah sangat ketinggalan jaman. Saran ini bisa dalam bentuk praktikum di kelas, atau untuk tugas akhir.

VB 6 versi terakhir adalah tahun 1998, dan sudah tidak disupport lagi (untuk siapapun juga) oleh microsoft pada tahun 2008. Turbo C++ 3.0 dirilis tahun 1991 (17 tahun yang lalu), dan Turbo Pascal 7 dirilis tahun 1992 (16 tahun yang lalu).

Mungkin sebagian akan bertanya, mengapa harus pakai software yang baru? yang lama kan masih bisa dipakai?. Ada banyak alasan mengapa sebaiknya pindah ke compiler yang baru.

Alasan pertama adalah: pembajakan. Software-software tersebut memang sudah tua, dan tidak dijual lagi, tapi bukan berarti boleh disebarkan secara bebas. Perusahaan-perusahaan pembuat software itu masih memiliki hak cipta atas software-software tersebut. Dulu mungkin belum banyak alternatif pengganti compiler, tapi sekarang sudah ada banyak. Jika bisa memakai yang legal, kenapa harus membajak?. Turbo C++ bisa digantikan dengan GCC, atau jika perlu IDE, bisa memakai Micosoft Visual C++ versi gratis. Turbo Pascal bisa digantikan dengan FreePascal, atau jika perlu IDE bisa memakai Turbo Delphi Explorer (Turbo Delphi versi gratis) Lazarus. Visual Basic bisa digantikan dengan Gambas, atau Visual Basic .NET (versi gratis).

Lanjutkan membaca “Mari beralih ke compiler baru”

Ingin keliling Indonesia

Sudah 18 bulan saya dan istri saya tinggal di Chiang Mai, Thailand. Chiang Mai merupakan salah satu tujuan wisata populer di Thailand, dan merupakan kota terbesar kedua setelah Bangkok. Satu hal yang sering ditanyakan oleh warga Thailand adalah sudahkah pergi ke tempat wisata X di Thailand? Umumnya jawaban kami adalah “belum”, karena kami memang bukan tipe orang yang suka jalan-jalan. Sekitar 3 bulan setelah kami di sini, kami pernah kedatangan tamu orang Indonesia, dan sempat mengantar mereka jalan-jalan ke beberapa tempat di sekitar Chiang Mai, dan kesimpulannya: wah ternyata tempat yang mereka bangga-banggakan tidak lebih indah dari Indonesia. Kami memang kagum dengan promosi dan kebanggaan warga Thailand pada tempat wisatanya, kami juga  kagum dengan pemeliharaan tempat wisatanya, tapi dari segi keindahan alamnya, rasanya masih jauh kalah dari Indonesia.

Kepergian kami ke berbagai tempat wisata itu membuat kami ingat betapa indahnya Indonesia. Dua bulan sebelum berangkat ke Thailand, kami mengunjungi Bali untuk pertama kali. Mulanya kami datang sebagai bagian dari panitia Asia Open Source Symposium, tapi setelah acaranya selesai kami memutuskan untuk tinggal lebih lama. Sebagai panitia kami tidur di hotel berbintang, tapi untuk meneruskan wisata dengan biaya sendiri, kami tidak ingin mengeluarkan biaya yang banyak. Tadinya kami pikir hotel dan biaya jalan-jalan akan cukup mahal, tapi ternyata ada banyak travel agent yang menyediakan paket murah selama di bali, misalnya yang kami pakai adalah http://www.balitrip.com/. Kami memilih paket yang murah, hanya 1.2 juta rupiah untuk berdua. Paket yang kami ambil sudah termasuk hotel (3 hari 2 malam), mobil Timor, dengan sopir yang sekaligus jadi guide, dan gratis biaya masuk ke berbagai tempat wisata. Kami hanya perlu ekstra uang untuk makan malam dan membeli oleh-oleh karena paketnya sudah termasuk makan pagi dan siang.

Mungkin tidak adil membandingkan Bali dengan beberapa tempat wisata di Chiang Mai yang mungkin belum dikenal dunia. Akan lebih adil kalau membandingkannya dengan beberapa tempat wisata di Bandung. Tujuh bulan setelah kami di sini, kami pulang untuk liburan Natal. Kami ingin mengunjungi tempat wisata di Bandung yang belum pernah kami kunjungi yaitu kawah putih dan situ patenggang. Ternyata pandangan kami tidak berubah: Indonesia memang jauh lebih indah. Kelemahannya memang kurangnya promosi dan kurangnya pemeliharaan tempat wisata. Ada banyak teman kami yang asli Bandung yang belum pernah mengunjungi tempat itu, dan kalau belum pernah ke sana, bagaimana bisa membanggakan tempat itu pada para pendatang baik lokal maupun internasional.

Saya pernah pergi ke sebuah sisi Danau Toba, di mana sebuah sekolah informatika berdiri, tapi saya pergi ke sana untuk tujuan pekerjaan. Awal tahun 2008 ini kami mengajak Ibu saya untuk benar-benar mengunjungi Danau Toba. Danau Toba sangat luas, dan pemandangannya beragam, tapi semuanya sangat indah. Di bulan Maret, untuk pernikahan adik ipar saya, kami kembali pulang ke Indonesia, kali ini saya mengajak seluruh keluarga saya untuk melihat keindahan danau Toba. Kali ini kami menyempatkan diri mengunjungi pulau Samosir, pulau terbesar yang ada di sebuah danau. Pemandangan tepi danau Toba dari Samosir juga sama indahnya dari sisi yang lain. Sayang tidak banyak turis baik lokal maupun asing yang mengunjungi Danau Toba.

Mayoritas penduduk Thailand beragama Budha, tapi saya kaget ketika mengetahui rekan-rekan kerja saya tidak seorangpun pernah mendengar Borobudur, kuil Budha terbesar yang ada saat ini. Setelah mendengar aneka kisah dan informasi mengenai Borobudur, mereka sangat tertarik untuk mengunjungi Borobudur (selain Bali), mudah-mudahan rencana mereka untuk datang ke Indonesia tahun depan bisa terwujud.

Kalau dipikir, berwisata di Indonesia jauh lebih menyenangkan dibanding di luar negeri. Beberapa perbandingan:

  1. Di beberapa tempat di berbagai negara (misalnya Thailand), turis asing dikenai tarif masuk lebih tinggi (hingga 10 kali lipat dibanding penduduk lokal). Berwisata di negeri sendiri lebih enak karena kita menjadi penduduk lokal.
  2. Guide kadang tidak bisa menjelaskan dengan baik hal-hal yang ingin kita ketahui, baik karena ketidaktahuan ataupun bahasa Inggris yang pas-pasan. Di negeri sendiri kita bisa mengobrol dengan penduduk lokal dengan bahasa Indonesia yang bisa menjelaskan aneka macam hal mengenai tempat dan budayanya.
  3. Aneka macam barang ternyata lebih murah di Indonesia, dan banyak barang Indonesia yang ada di luar negeri. Risna pernah menemui Ibu-ibu dari Malaysia yang berbelanja baju di Bandung karena lebih murah dibanding di Malaysia. Ketika adik saya studi tour ke Malaysia, dia melihat sebagian penjual yang berteriak “batik asli Indonesia”, dan waktu membeli oleh-oleh di pasar Warorot di Chiang Mai, kami hampir saja membeli Batik buatan Indonesia.

Saya memang belum melangkah lebih jauh dari asia, tempat yang sudah saya kunjungi hanya Singapore, Malaysia, Thailand, Vietnam, dan Taiwan, tapi saya sudah punya tekat akan berusaha memprioritaskan untuk berwisata di Indonesia. Tahun depan kami ingin sekali bisa mengunjungi Lombok dan Bromo, dan mudah-mudahan kami bisa mengunjungi lebih banyak lagi tempat-tempat di Indonesia di kesempatan berikutnya (seperti Nias, Danau Singkarak, dll). Kami berdua berharap akan ada lebih banyak orang Indonesia yang mau mengunjungi Indonesia, dan mempromosikannya dalam bentuk tulisan. Mudah-mudahan banyak situs seperti http://indonesia.travel yang memberi informasi lebih banyak kepada kami dan kepada banyak calon turis lainnya.

Menyimpan Foto di Flickr

Sejak Risna beli Nokia 3650 yang memiliki kamera di masa awal kami pacaran, kami sudah mengumpulkan banyak foto. Kami bukan fotografer professional, jadi foto-fotonya boleh dibilang sekedar dokumentasi (atau zaman sekarang orang yang semacam ini disebut photoblogger). Sudah ada beberapa kamera yang kami pakai, sejak kamera cicilan kartu kredit, sampai kamera saat ini.

Jumlah foto-foto kami totalnya sudah puluhan gigabyte, dan semakin sulit mengaturnya. Dulu sempat memakai iPhoto di iBook, tapi makin melambat ketika jumlah foto mencapai ribuan. Ketika pindah ke Linux, segala metadata yang pernah dimasukkan jadi hilang lagi 🙁 . Akhirnya diputuskan bahwa penyimpanan online akan lebih mudah dikelola.

Lanjutkan membaca “Menyimpan Foto di Flickr”

Why I Like cat

Bukan, posting ini bukan soal kucing, tapi soal perintah cat di UNIX (Linux/Mac/BSD). Perintah ini gunanya untuk menggabungkan (concatenate) file-file input ke standard output (bahasa sederhananya: ditampilkan ke layar). Jika hanya satu file yang diberikan sebagai input, maka file itu akan ditampilkan.

Di UNIX, kita bisa mengkomposisi banyak perintah dengan menggunakan pipe. Output perintah satu bisa dijadikan input perintah yang lain. Nah banyak orang suka menggunakan cat untuk memberikan file ke program lain, misalnya seperti ini:

cat file.txt| grep secara | wc -l

(hitung berapa jumlah baris yang mengandung kata secara)

Penggunaan perintah cat tersebut sebenarnya tidak perlu, karena seharusnya cukup

grep secara file.txt | wc -l

atau bisa juga menggunakan redirection

grep secara < file.txt | wc -l

Sebagian orang memandang penggunaan cat dalam kasus ini sangat tidak diperlukan, dan dianggap membuang resource (karena proses cat harus dieksekusi plus pipe harus dibuat). Orang-orang ini (sejak 1995) kadang-kadang memberikan “penghargaan” Useless Use of cat.

Saya termasuk orang yang suka menggunakan cat di 99% situasi. Dalam posting ini saya akan memberikan alasannya kenapa.

Lanjutkan membaca “Why I Like cat”

Jaringan Kecil di Apartemen Kami

Ternyata setelah dihitung ada 12 benda di rumah kami yang memiliki satu atau lebih alamat IP: modem ADSL, Router, 2 komputer, 2 laptop, 2 ponsel, 1 ipod touch, 2 network attached storage, 1 PDA, dan 1 Wii. Tanpa disadari, pengalaman menjadi admin di informatika ITB selama 3 tahun sangat membantu dalam mengurus masalah jaringan di rumah. Sekarang mau cerita dikit-dikit deh mengenai jaringan di apartemen.

Ada banyak OS yang terlibat dalam jaringan ini, 1 komputer memakai Linux 64 bit (Debian Lenny), 1 komputer memakai Linux 32 bit (Debian Lenny), NAS juga menggunakan Debian (versi ARM), satu laptop (mac book pro) menggunakan OS X Leopard, satu lagi menggunakan Windows XP. Satu ponsel menggunakan Nokia S60 3rd edition, yang lain menggunakan UIQ 3.0.  PDA menggunakan Windows Mobile, iPod touch menggunakan OS turunan OS X, dan Wii menggunakan OS-nya sendiri.

Router Wifi yang sudah diinstall linux dan dimodifikasi, berfungsi sebagai gateway, proxy, DHCP server, dan DNS server. Proxy server ini dibutuhkan oleh Wii, karena ISP kami yang sangat aneh (tidak meneruskan request HTTP tanpa user agent). Karena kadang ada tamu yang datang dan perlu IP, kami perlu server DHCP dan tidak menggunakan alamat statik untuk sebagian device kami. DNS server diperlukan untuk mengcache request, dan sekaligus supaya device-device di rumah bisa diakses dengan nama.

Network Attached Storage Agestar (namanya irina) difungsikan sebagai download station, web server, backup server dan music station. Kalau ingin mendownload sesuatu yang besar, kami cukup menjalankan perintah wget atau transmissioncli (dalam layar “screen”) dan ditinggal. NAS ini juga sekaligus menjadi web server (bisa diakses di http://irina.homelinux.com).

Lanjutkan membaca “Jaringan Kecil di Apartemen Kami”

Data Pemilih LN Pemilu 2009 Dipajang di Internet

Setelah ramai kasus Diknas yang menampilkan data 36 juta siswa di Internet, sekarang giliran panitia pemilu luar negeri di beberapa negara berbuat hal yang sama. Kali pertama saya menyadari hal ini adalah ketika di milis IndoBangkok ramai membicarakan data pemilih yang dipajang di Internet di situs http://www.pplnbangkok.net/http://www.kbri-bangkok.com/, dan saya menemukan bahwa situs resmi Pemilu 2009 bangkok adalah http://www.pplnbangkok.net/ (Panitia Pemilihan Luar Negeri Bangkok 2009/PPLN Bangkok 2009). Data-data ini cukup penting, meliputi: Nomor Paspor, Nama, Tempat Tanggal Lahir, Jenis Kelamin, Alamat di Indonesia, dan Alamat di Thailand. Akhirnya setelah diprotes, data ini diturunkan dari Internet (meskipun selama beberapa hari masih dapat dicache via Google), dan pejabat yang berkait sudah meminta maaf di milis.

Lanjutkan membaca “Data Pemilih LN Pemilu 2009 Dipajang di Internet”