Tuesday, December 26, 2006

Kerja dalam hampa



Photo is taken from Aceh Media Center.

2 Tahun

sudah...

Kalau daku saja mengingat hari demi hari yang berlalu.

Bagaimana dengan mereka yang harus berkutat, bergelut, dan berjuang dengan kenyataan itu tiap detik-nya?

Jalan masih panjang.


Tuesday, December 19, 2006

Kebanyakan Alat

Menakjubkan kalau melihat betapa banyaknya alat ukur + alat bantu analisa di dunia telekomunikasi sekarang ini.

Mulai dari alat yang berfungsi memantau operasi dan membantu pemeliharaan jaringan telekomunikasi itu sendiri, kemudian alat untuk mengukur performansi, kemudian alat untuk "melihat" apa yang sedang dibawa oleh jaringan telekom itu hingga ke alat-alat analisa yang bisa mengkorelasikan beragam data dan memberikan beragam kesimpulan.

Belum lagi variasi dari masing-masing jenis alat itu yang berada di pasaran, semuanya gak kalah lucu-nya satu dengan yang lain. Belum lagi yang dikembangkan sendiri oleh para operator jaringan telekomunikasi.

Saking banyaknya alat-alat ini, jarang sekali ada tukang-tukang (bukan pekerja lho) telekomunikasi yang bisa mengetahui fungsi apalagi cara menggunakan beragam alat itu. Bahkan kami, errr... mereka, pun belum tentu mengetahui bahwa sebuah alat itu ada. :-)

Sekarang, bayangkan kalau alat-alat itu semua digabung. Mungkin dalam semacam sistem pelayanan satu atap.

Ceritanya bisa jadi lebih lucu lagi.

Tuesday, December 05, 2006

More on Software

Bjarne follow up the previous paragraph with these:

"On the other hand, looking at "average" pieces of code can make me cry. The structure is appalling, and the programmers clearly didn't think deeply about correctness, algorithms, data structures, or maintainability. Most people don't actually read code; they just see Internet Explorer "freeze."

I think the real problem is that "we" (that is, we software developers) are in a permanent state of emergency, grasping at straws to get our work done. We perform many minor miracles through trial and error, excessive use of brute force, and lots and lots of testing, but--so often--it's not enough."

I can't stop laughin' on this one.

How so true.... :-)

Stroustrup on Software

"Our technological civilization depends on software, so if software had been as bad as its worst reputation, most of us would have been dead by now."

I'm thinking about it now... I mean, really?

Friday, November 24, 2006

Reverse Dependencies

Di dunia Microsoft Windows ada DLL, yang bukan singkatan dari "dan lain-lain" atau "dan lagi-lagi" (walau yang terakhir ini mungkin agak mirip dengan maksud hidup DLL itu *smile*).

DLL disitu adalah singkatan dari Dynamic Link-Library.
Yang artinya kurang lebih adalah kumpulan (pustaka/library, -red) fungsi program yang bisa digunakan oleh program-program lain.

Belakangan ini aku lagi belajar cara bikin semacam DLL itu, tapi di dunia Linux, or I should've say GNU/Linux to not upset anyone. Di dunia ini dia dikenal dengan nama shared objects (CMIIW). Tentu saja aku menggunakan bahasa C untuk membuatnya... :-)

Kalau dilihat dari sudut pandang bahasa C, sebetulnya nggak ada yang spesial tentang pembuatan shared-objects ini, satu hal yang mudah untuk diingat adalah tidak adanya fungsi main(), boleh buat beragam fungsi, asal namanya bukan main(). Ini bisa dimengerti, karena memang dia tidak akan dijalankan langsung.

Beda yang kedua adalah, pada waktu kompilasi, perintah yang digunakan agak sedikit berbeda. Kalau pakai gcc (compiler yang hebat itu!) , gunakan perintah
gcc -shared -fPIC namafile.c -o namafileoutput.so

Dengan demikian maka kumpulan fungsi kita tadi bisa diakses dari program-program lain atau bahkan dari pustaka-pustaka lainnya (detailnya agak sedikit lebih rumit, tapi ya gampangnya gitu dech).

Namun bagaimana jika kita ingin membuat pustaka kita ini dapat melihat fungsi ataupun variabel yang ada di program yang memanggil pustaka kita ini? Ini dinding yang bikin ku kepentok kemarin.

Aku coba teknik standar dalam bahasa C seperti mendeklarasikan variabel/fungsi itu dengan deklarasi extern yang artinya variabel/fungsi itu tidak dideklarasikan dalam pustaka tadi. Dan harus dicari deklarasi jelasnya dimana nanti belakangan. Namun teknik ini tidak berhasil.

Ternyata ada 1 lagi argumen di gcc yang bisa dipakai untuk mengatasi masalah ini. Argumen itu adalah argumen -rdynamic. Digunakan ketika kita mengkompilasi program yang akan memanggil pustaka kita tadi, agar variabel/fungsi-2 yang ada di program ini di eksport dan bisa diakses dari pustaka kita tadi pada saat dijalankan.

Dan masalah ini namanya adalah Reverse Dependencies. Gitu.

Capek dech.

Wednesday, November 15, 2006

Hmm... Free Software... yummy

Jadi,
Java, yang bahasa dan framework pemrograman, dan god knows what apaan lagi dia itu sebenarnya, yang dibuat oleh James Gosling dari Sun yang hebat itu, akhirnya menjadi Free Software dengan menggunakan lisensi GPLv2.

Hmm... ini artinya apa ya?

Friday, November 10, 2006

Jumpa lagi...

Pernah coba mrogram pakai bahasa tingkat Enak (e gede) kayak php atau perl atau ruby? Segalanya sudah enak tersedia disitu. Paling tidak, hampir segalanya.

Ada beberapa yang bisa dicatat, tapi saat ini, enaknya kita ngomongin soal "associative-array", salah satu jenis struktur data yang didukung oleh bahasa-bahasa tersebut. Dengan associative-array ini, kita bisa melakukan hal-hal sebagai berikut:

daftar_harga["apel"] = 2000;
daftar_harga["mangga"] = 3000;

Sekarang, mari bermain dengan bahasa C. Bahasa tingkat enak (e kecil) yang satu ini sungguh ajaib. Konsepnya gak banyak, cukup untuk bisa disimpen di alamat memori akses langsung di otak kita. Ini keliatan awalnya. Nyatanya, setan didalamnya cukup banyak untuk bisa bikin stress orang-orang yang gak siap mental.. :-)

Nah, di C, tidak ada yang namanya associative-array. Jenis data array memang ada di C, namun tidak associative, semua array hanya bisa punya indeks angka. Jadi kalau ingin melakukan hal seperti diatas dalam C, kita jadi harus melakukan, kira-kira, hal berikut:

#define APEL 0
#define MANGGA 1

daftar_harga[APEL] = 2000;
daftar_harga[MANGGA] = 3000;

penjelasan detailnya apa itu #define, silahkan cari di kamus-kamus terdekat.

Problem ini tentu saja selesai, kalau kita memang hanya ingin melihat daftar harga Apel dan Mangga. Bagaimana bila kita tiba-tiba ingin melihat juga daftar harga Jeruk, Salak, dan Semangka?

Di php dan kawan-kawan, ini bukan masalah besar, malah jika ingin kita bisa saja membuat associative-array secara dinamis dengan mengambil daftar buah dan harga dari sebuah file atau mungkin dari tabel di database.

Bagaimana melakukan hal yang sama dalam C?

Untuk itu, kita jadi perlu berkenalan dengan hash dan linked list, dua format struktur data yang bisa digambarkan dengan 1 kata; "Menarik"!

Dari dulu waktu mulai belajar C, kalau ketemu linked list, aku selalu garuk-garuk kepala. Pertama pusing, bagaimana sebenarnya dia bekerja, kemudian pusing, mengapa implementasi linked-list ku selalu berhasil mengeluarkan pesan "Segmentation fault". Dan terakhir, suka terkagum-kagum sendiri karena akhirnya (mengira) berhasil mengerti dan membuat linked list sendiri :-)

Cukup dengan nostalgianya.

Sekarang bagaimana kita bisa menggunakan hash dan linked list untuk implementasi sesuatu seperti associative array?

Konsep-nya sederhana, begini mungkin ceritanya:

1. Mengingat bahwa di C segala array itu hanya bisa diindex dengan angka, maka kita perlu merubah kata-kata yang ingin kita jadikan indeks itu menjadi angka terlebih dahulu. Inilah gunanya hash. Dengan menggunakan fungsi hash, kita bisa merubah kata-kata "pisang" jadi angka 1, misalnya.

2. Keliatannya selesai? Belum. Mengingat bahwa tidak ada fungsi hash yang sempurna, dalam artian selalu menghasilkan angka yang berbeda untuk setiap macam kata, maka tabrakan (collission) pasti akan terjadi. Misalnya, kalau hash("pisang") => 1, maka bukan tidak mungkin kalau hash("rambutan") juga => 1. Kalau begini, apa yang bisa kita lakukan? Ada dua yang kuketahui, 1 yang disebut dengan Chaining, dan 2 yang disebut dengan Open-Addressing.

3. Berhubung kita lagi ngomongin linked-list (dan aku gak ngerti Open-addressing *smile*), maka kita memilih metode Chaining untuk memecahkan masalah tabrakan tadi. Chaining ini artinya, semua data yang mau kita associate-kan kita simpan dalam sebuah hash-table dalam bentuk linked-list.

Susah juga ya menjelaskannya.
Mungkin aku harusnya menjelaskan soal apa itu linked-list dulu kali ya?

to-be continued aja dech... :-)

ps: anyone interested, please lookup the details on Google or Wikipedia, they should have it and should provide better explanations than what I can give.

Thursday, November 09, 2006

Bersyukur pada-Mu...

ya Allah,
aku sering lupa dan kurang bersyukur.

Untuk hidup yang Kau berikan...
atas setiap hembusan nafas.

Untuk mendung hari ini,
atau panas esok hari.

Thursday, October 05, 2006

Satu lagi korban keegoisan kita

Kemarin dulu, aku lihat berita, ada kakek-kakek tua meninggal di kolong jembatan.
Konon beliau meninggal karena sakit.

Begitu saja.
Tanpa ada yang menyadarinya sampai suatu ketika.

Satu lagi tamparan buat kita dan keegoisan kita.

Freakonomics

Menurut Steven D. Levitt di buku ini,

"Moralitas itu menggambarkan bagaimana dunia yang ideal"

sementara,

"Ekonomi menggambarkan bagaimana yang sebenarnya terjadi di dunia ini"

Levitt ini sendiri orangnya konon unik, misalnya dikisahkan, ketika ada seorang pengemis menghampiri dia, yang Levitt lakukan hanya menatap pengemis itu hingga dia berlalu sendiri.

Kemudian Levitt berkomentar,
"Wow, dia punya ponsel yang sangat bagus! Bahkan lebih bagus dari milikku."

Walau agak berat buatku yang gak pernah sepenuhnya mengerti ekonomi ini (walaupun telah berusaha, bener!) buku ini sangat menarik.

Di buku ini diceritakan bagaimana mendeteksi kejujuran eksekutif-eksekutif dan pegawai-pegawai perusahaan-perusahaan top dengan cara berjualan roti.

Atau betapa teori Broken Window yang selama ini dipercaya sebagai faktor utama yang berhasil mengatasi bahkan mengurangi kriminalitas di kota New York selama periode tahun 90-an itu ternyata hanya punya kontribusi minimal. Dan apa faktor utamanya? I don't want to be a spoiler. Just go read the book. (Gramedia, where's my percentage... ? )

Atau tentang mengapa banyak bandar narkoba masih tinggal bersama ibunya.

Dan banyak lagi kisah-kisah menarik lainnya.

Oh iya, menurut penjual roti itu, paling tidak 87% manusia itu jujur. Paling tidak, manusia-manusia yang bekerja di perusahaan-perusahaan kenamaan itu.

Wednesday, September 27, 2006

Bahayanya Senjata Nuklir

Tiba-tiba jalur komunikasi putus antara dua instansi militer penting.

Kemungkinannya cuman dua. Satu, semua jalur komunikasi alternatif terputus, dan kedua, ini yang mengerikan, serangan telah dilancarkan lawan yang menghancurkan dua instansi penting itu.

Jalur komunikasi itu punya banyak sekali rute alternatif, termasuk diantaranya melalui jalur telekomunikasi komersial. Jadi kemungkinan nomer satu ini sangat kecil.

Tanda bahaya dibunyikan, pesawat-pesawat B52 pun disiagakan, mereka diinstruksikan untuk menyalakan mesin dan bersiap-siap, namun juga untuk tidak lepas landas sampai ada pemberitahuan lebih lanjut.

Melalui komunikasi radio akhirnya didapatkan fakta bahwa tidak ada penyerangan apapun terhadap instansi-2 tersebut. Dan ternyata semua rute alternatif jalur komunikasi tersebut mempunyai satu titik simpul di sebuah stasiun relay yang saat itu punya masalah mekanik (motor kepanasan) dan mengakibatkan putusnya semua jalur komunikasi.

---

Peristiwa diatas dan banyak peristiwa-peristiwa "nyaris" lainnya yang hampir membawa dunia ke kehancuran akibat perang nuklir bisa dibaca disini.

Ini satu hal yang, menurutku, susah untuk dilihat secara optimis.

Bulan Penuh Berkah

Ramadhan itu bulan penuh berkah, kata seorang Akhmad Syakhlani.

Dan dia lebih lanjut mengatakan kalau kita seharusnya memandang Ramadhan dari sisi itu.

Hmm...

Aku berdoa semoga memang demikian adanya Ramadhan 1427 kali ini, penuh berkah, bagi semua. Bagi mereka yang melaksanakan kewajibannya, dan bagi yang lain, yang merasakan berkahnya melalui mereka yang melaksanakannya.

Dan semoga ridha Allah jadi milik kita.
Amin.

Ways on seeing religion differences

  1. To treat religion as the prime factor that defines a person and use this view to guide how we interact with other people. We might dislike them just by that, or on the contrary, loving them by that.
  2. To treat religion just like we treat skin colors, sure it make different people different, but when we interact with people as an educated person, we'll (usually) disregards skin colors. So we realizes the differences, might also grows some prejudice upon them, but we won't act by it.
  3. To treat religion as an insensitive issues, that really don't matter in everyday life.

So what's your view?

My own view right now might be a join of the views above.
I choose to respect the religion of others, may considered religion is irrelevant in many things on interactions with others in everyday life, and I also tend to care more for my own religion.

Errr... it sounds unclear.
Ok, let me rephrase, basically, my view is this:

(taken from Al-Quran, Surah Al-Kafirun, last verse)
"Lakum dinukum waliyadin"

It translates (my own words, please CMIIW):
"For you your religion, for me my religion".

No Judgement != No Opinion

Beberapa minggu lalu berlangsung diskusi kecil-kecilan di Isnet. Ngomongin perbedaan, dan bagaimana mengatasinya on conceptual, individual level. Menariknya buatku, diskusi ini mendalami pemikiranku yang lama tentang masalah ini.

Ibu Dr. Darfiana Nur yang hebat itu, menyebutkan sesuatu yang mirip dengan pandanganku tentang ini.

Basically its goes like this:
No judgement to the belief of others. But not opinionless.

Below is my personal stressing on the point (not hers).
I really, really, think that enforced personal judgements to others is bad.

And I really like to bring a point I've mentioned in the discussion here,
this point I raised when the discussion went on to mention that Muhammad SAW/PBUH had in several times enforced judgement to others when they disregards or insults Allah.

My point were:
" ... we are not Muhammad, may never will be. We don't have his wisdom, we don't have Allah direct guidance and we don't have his qadha and qadar ... "

When we judge people and enforce our judgements as if they were the only right possible judgements or interpretation on a matter, we have more or less acting as God.

And that is an unforgivable sin.

What's your 10 MRU shell commands?

Following a meme on planet debian:

$ history|awk '{print $2}'|awk 'BEGIN {FS="|"} {print $1}'|sort|uniq -c|sort -nr|head -10

81 ls
76 ll
71 cd
32 svn
27 vi
18 ps
16 apt-cache
13 find
13 exit
12 ssh


---

Nothing outstanding here...
Still an interesting things...

So what are yours?
Comment please.

Friday, August 25, 2006

Pointer to Function vs Pointer to Data

From http://www.opengroup.org/onlinepubs/009695399/functions/dlsym.html:

--- start ---

The ISO C standard does not require that pointers to functions can be cast back and forth to pointers to data. Indeed, the ISO C standard does not require that an object of type void * can hold a pointer to a function. Implementations supporting the XSI extension, however, do require that an object of type void * can hold a pointer to a function. The result of converting a pointer to a function into a pointer to another data type (except void *) is still undefined, however. Note that compilers conforming to the ISO C standard are required to generate a warning if a conversion from a void * pointer to a function pointer is attempted as in:

fptr = (int (*)(int))dlsym(handle, "my_function");
--- end ---

Hmm...

Hmm...

Hmm...

So that's why they do it like this:


* (void **) (&fptr) = dlsym(handle, "my_function");

me, on learning how to load a library ...

and the really funny thing:
I was actually searching first to linux kernel code to learn how they did module load/unload, before resorted to dl*() family of functions...

Poor me.

Friday, August 18, 2006

Merdeka!

Setting tahoen 1945.

atau 05, sebagaimana tercantum dalam teks asli proklamasi,
yang aku baru ngeh lagi kemarin, ketika mengikuti (dengan khidmat dong) peringatan detik-detik krusial itu kemarin.

Rakyat mendengarkan dengan khidmat, harap-harap namun bukan cemas, sesuatu yang lain yang dirasakan, bulu kuduk tidak mau kalah unjuk diri, menegaskan rasa itu. Merinding.

Soekarno pelan dan penuh ketegasan mengucapkan bait-baik teks yang disusun malam sebelumnya. Hatta dekat berdiri dibelakangnya.

Mungkin tak ada yang tahu bagaimana hari-hari berikutnya akan dilalui. Mungkin pula saat itu tak ada yang begitu memperdulikannya. Rasa haru dan bahagia terlalu dalam. Mengaburkan rasio.

Ketika teks selesai dibacakan, rasa yang terpendam pun meluap, memuncak, membuncah. Semua berteriak.

Merdeka!

---

Setting tahun 2000.

Aga lahir.

Negeri tempatnya lahir, berkubang dalam sengketa.
Sengketa berdarah antar saudara.
Mempertanyakan makna kemerdekaan.

Jika merdeka, mengapa menderita?
Jika merdeka, mengapa terkungkung?

tertekan. ditekan.

Tak bebas mencari makna hidup.
Tak bebas mengikuti langkah angin.
Terbelenggu.

Maka Aga pun Mahardika.

---
Setting tahun 2006.

Merdeka-pun mendua.
Sebagian terkekang karenanya.
Mungkin karena sadar bahwa Merdeka itu belum.

Sebagian, menari dalam setiap langkahnya.
Merasa bebas. Seperti angin. Tanpa batas.
Bebas tanpa arti. Mungkin juga tanpa isi.

Tidak sadari, bahkan angin pun mengikuti aturan-Nya.

Friday, August 04, 2006

A War on Stupidity and Arrogancy

Seen on planet debian (from: http://www.advogato.org/person/vorlon/diary.html?start=17):

On foreign policy

When you defend the death of a civilian
and say
he should have known better
he should have left his home
and his life
in the land of your enemy
that is hate.

When you say the boy's death was justified,
for daring to be born in that country
with such people
and such policies
it is because you hate.

When the war comes to your town
and you are caught in the cross fire,
I too will say,
you had it coming.

---

What more we can say?

I'm hereby declaring a war on stupidity, ignorancy, and arrogancy shown by Israel and America, winners of the Stupid and Arrogant Goliath of the century award.

I do realize that there still exists many smart, sightful people with conciousness on both countries, to them I offer my condolences for being intellectually impotent, though that may not be by their own will.

And this war is not limited to those countries, but also to others who shows that kind of stupidity, ignorancy and arrogancy.

Monday, July 17, 2006

The War on Terror ?

This one taken from: http://www.britshalom.org/csforum/read.php?id=43?

"You and your friends have no moral right to be there and certainly not to do what you are doing to the population there. You have no moral right to imprison the population, to enter their homes in the middle of the night, to go from home to home by breaking down walls, to detain people indiscriminately, to destroy, to shoot, to tyrannize and to inflict casualties."

It's a reply from an Israelian to a letter from an Israel's soldier.

---

We're all living in a very sad period.

A period where intolerance, greed, and stupidity rules. A period where people stop using their sanity, and chooses to be insane. A period where people stop using their hearts, even forgot about it.

Terrors, as in peace effort, is not an individual or group act, it is a global, unified act. That's why when we said we should bring war on terror, at that moment, if we have self dignity and a little piece of consciousness, we should realize that we should start the war onto ourself.

And it's not a war of weapons.
It's a war of mind and heart, a war of finding one's trueself. A war against one's inner-evils.

B'cause human are meant to love and be loved.

If we care for all the children of war, to all the victims of war, past present and future, we should stop these stupid wars on terrors and start healing ourselves and others.

Start to love again.

Wednesday, June 28, 2006

Ali bin Abi Thalib r.a.

Waktu ditanya,

"diantara shahabat-2 Nabi, siapa yang paling kamu kagumi?"

Aku menjawab, "Ali bin Abi Thalib r.a.".

Hari ini, dari blog-nya mas Fami yang luar biasa, aku mendapatkan nasihat-nasihatnya Imam Ali ketika beliau akan wafat, daripada nanti aku pusing lagi mengingat-ingat nasihat-nasihat beliau itu, aku paste saja disini.

”Aku berpesan kepada kalian berdua, bertakwalah kepada Allah. Jangan mencintai dunia, walau ia menggodamu. Jangan menangisi sesuatu yang menyusahkanmu. Sampaikan kebenaran. Sayangilah anak yatim. Beri petunjuk orang yang sesat. Berbuatlah untuk akhirat. Jadilah musuh orang zalim, dan pembela orang yang dizalimi. Berbuatlah sesuai dengan Kitab Allah. Dan jangan jadikan Allah sebagai sasaran caci maki.”

”Aku berpesan padamu, Nak. Hendaklah engkau bertakwa kepada Allah, mendirikan shalat tepat waktu, menunaikan zakat pada yang berhak, menyempurnakan wudhu karena tidak sah shalat tanpa bersuci. Aku berpesan padamu agar memaafkan dosa, menahan amarah, bersilaturahim, bijaksana pada orang bodoh, mendalami ilmu agama, tabah dalam menghadapi masalah, menjaga Al-Quran, bertetangga dengan baik, menyeru kepada kebajikan, melarang kemungkaran dan menghindari perbuatan keji.”


Nasihat-nasihat beliau ini sulit kuanggap sebagai nasihat-nasihat kosong, kalau mengingat kisah-kisah beliau selama hidup.

Manusia-manusia luar biasa yang dibentuk oleh Rasulullah seperti ini, pastilah sedang dirindukan sangat oleh bumi. Rindu dendam yang membuatnya memuntahkan isi perutnya dan menggoncang alam serta makhluk-makhluk yang sedang lupa.

Jadi inget surat Al-Zalzalah.

Ada 600.000

.... orang superkaya di Indonesia.
Konon kabarnya.

Kalau 600.000 orang superkaya ini, memberi modal usaha 100 juta rupiah untuk 10 orang indonesia lainnya, dan aku yakin 1M rupiah itu bukan jumlah besar buat mereka, maka kita bisa mengurangi 6.000.000 pengangguran di Indonesia.

Pada saatnya, usaha 6.000.000 orang itu akan menarik minimal 10 orang lain lagi, itu artinya 60.000.000 orang Indonesia. Bisa dibayangkan jika 60.000.000 orang Indonesia ini punya keluarga minimal 1 orang istri/suami.

Well, mungkin, gak seindah itu.
Tapi kalau 20% saja dari jumlah itu yang berhasil, 12.000.000 orang. Wow.

Di Isnet sekarang lagi berkembang diskusi untuk mendanai proyek-2 penelitian. Agar para ilmuwan bisa fokus sepenuhnya mengembangkan ilmu dan berinovasi tanpa harus memikirkan nasib anak-istrinya. Mungkin bisa juga 600.000 orang superkaya tadi membantu kearah ini.

Ustadz Nadirsyah Hosen juga menekankan kalau Indonesia bisa menjadi Emas lagi, jika ulama-nya (baca: ilmuwan-nya) sibuk menggali Ilmu.

Monday, June 26, 2006

Wednesday, June 14, 2006

On Togetherness

I really don't believe that God has created mankind and the world which we're living, under the same blue sky and burning sun, and all's just for sideseeing how fast we can destroy it and ourselves.

A scene in Mahatma Gandhi (the movie) strikes me.

There are two extremes on the political situations that time. One part was demanded to split India to separate states, both with each own Islam and Hindu territory (which is now becoming Pakistan and India), other was insisted to became one nation.

Gandhi was about to go onto a meeting to discussed the future of India. There are demonstrants gathering just in front of the blocks where Gandhi's living. And they blocked Gandhi's way out, asking, why did Gandhi participating in the meeting, they insisted on asking Gandhi to support separation of India.

Gandhi was very upset. He speaks, "I'm a hindu, a moslem, a christian, a jews, a buddhist. I'm all of you." And then he speaks about how sad and mad he is to see that his struggle for India's independence has turn to politics and society clash.

In another scene, Gandhi also speaks of how he miss the day, when as a child, he is playing and learning with friends, reading both Tripitaka and Qur'an side by side, learning from each other.

Something said in X-Men-3 pointed out more to me (taken from my lousy memory):

"In the world where intolerance, ego, and anarchy arise, there are brave men who fought against them in search for a better world. A world of harmony."

Imagine there is no heaven.

Tuesday, May 16, 2006

Kehidupan Ghifa

Kalau Aga mengajariku soal keajaiban, dan Nadia mengajariku soal kesabaran.

Maka Ghifa, mengajariku soal kehidupan.

Selamat datang Ghifa, semoga Allah mengiringi tiap langkah kita bersama dengan ridha-Nya. Dan semoga Dia juga akan membimbingmu pada saatnya nanti dengan rahim dan rahmat-Nya.

(ps: Ghifa itu titipan Allah yang ketiga di rumah kami, baru saja datang Jumat kemarin, May 12, 2006 13:50-13:55 JAVT)

Wednesday, May 10, 2006

Reading the Google Story

Me currently reading The Google Story.

Inspirational, to say the least.

Wednesday, May 03, 2006

Selamat Hari Pendidikan Indonesiaku

Indonesia adalah negeri yang menyediakan banyak kesempatan untuk berbuat. Untuk beramal. Begitu banyak hal yang masih bisa dilakukan disini, mungkin karena banyaknya sehingga orang-orangnya jadi sering sibuk diskusi (baca: debat -red) memikirkan hal-hal apa saja yang perlu, bisa dan harus dilakukan.

Untungnya beberapa orang melangkah ke tahap berikutnya, hingga banyak ide-ide yang akhirnya mewujud dan menjadi nyata. Mewarnai Indonesiaku.

Syahdan ada pak Yohannes Surya yang entah sudah kesekian berapa kalinya menghantarkan anak-anak bangsa menjadi jawara-jawara di ajang Olimpiade Fisika tingkat Asia dan Dunia.

Prestasi yang bukan sembarangan, secara umum, kita seringkali jadi juara. Untuk tingkat Asia saja, kita masih diatas Singapura, Taiwan, dan bahkan Israel (yang masih ndableg itu)! Hanya sedikit dibawah Cina. Dan bahkan untuk Fisika praktis, Indonesia adalah pemenang pertama.

Lalu ada juga Ibu-ibu kembar Kartini (namanya siapa ya ibu-ibu itu?). Kusebut demikian, karena prestasi mereka yang __sungguh__ sangat luar biasa. Sejak tahun 1996 mereka membantu anak-anak yang kurang mampu agar bisa bersekolah juga.

Bagaimana caranya?
Dengan mengadakan sekolah gratis (iya, gratis!) untuk anak-anak itu di kolong-2 jembatan layang/tol di DKI Jakarta. Dan sekarang ini konon sudah banyak alumni-2 sekolah-sekolah mereka yang sudah menjadi dokter, polisi, pengusaha dan lain sebagainya.

Sekarang ini Sekolah Darurat Kartini, begitu namanya, sudah tersebar ke berbagai penjuru tanah air.

Aku ingin berdoa, ya Allah, berikanlah yang terbaik buat para pejuang seperti mereka ini.

Tuesday, May 02, 2006

Script to convert lots of OGG to MP3 with GStreamer

After I find out how to use gstreamer to convert ogg to mp3, another obvious problem suddenly appears. How do I convert many ogg files to mp3 using gstreamer?

I solve this problem using some bash script kung-fu. It might be ugly or not the best solution, but it work for me.

First, I create an executable script file with this content:

--- convert.sh script start ---
#!/bin/bash
(
IFS=$'\n';

mkdirhier $2$1;
for j in `ls $1*.ogg`
do
k=`basename $j`;
gst-launch-0.10 filesrc location="$1$k" ! oggdemux ! vorbisdec !
audioconvert ! lame ! filesink location="$2$1$k.mp3";
done
)
--- script end ---

And then, to use this script to convert many ogg to mp3, I use this command on bash prompt:


(
IFS=$'\n'
for i in "folder1/" "nested/folder2/" "here is another folder/with ogg/";
do
./convert.sh $i /destination/folder/;
done
)
IFS is Input Field Separator, an environment variable used by bash to split inputs. Here we need to only split input by newline ('\n').

Hope it helps some poor soul out there :-)

Oh btw, because I'm using gstreamer here, this script can easily be changed to convert __any__ multimedia file to any multimedia file that supported by gstreamer.

Wednesday, April 19, 2006

Debian vs Ubuntu - Part II

Before, here's part I .

Don't get me wrong. I don't think Debian is hard __at_all__.
By far, Debian is one of the best GNU/Linux distribution in simplifying life of its users.

What I mean is like this, in Debian, I can do many things much easily/confidently than in Ubuntu. Like auto-configuration of network, for example. In debian, I can just do `apt-get install laptop-net`, edit some configuration files, and 'Bismillah', I get network auto-configuration, which is very important for travelling laptop user like me.

Sure I can do the same in Ubuntu, but it just felt not right. With much of its customization, like the great job they done for power management, these kinds of things should've also at least been made simpler to configure, if not zero-configuration.

Even power management in Ubuntu still has some flaws, like hibernation that takes too long. This, I suspect because they are using in-kernel swsusp instead of the still out-kernel suspend2 which, by my experience, is faster and quite stable. I don't have a problem with this, if Ubuntu also provide ways to change to suspend2 easily. By now, I don't think Ubuntu provide this (and other kernel-related tweaking). Please CMIIW.

Can I just get the best of both worlds? (The most updated (desktop) packages in Ubuntu, with the ease of tweaking in Debian)

may be continued ...

Wednesday, April 12, 2006

Debian vs Ubuntu

For a start. I've to say, that I like them both.

But for my own uses, I think I'll get back to Debian.
One thing that I believe Debian is good at for me is, the fact that they don't customize much of their distributed softwares.

It make it easy for me to handle the craziness of the systems I'm installing Debian to. Mostly ofcourse they are the systems I'm going to use, or maintain.

While Ubuntu, I believe will be good for the people that don't want to mess with the internals of the systems, let alone changing the configurations here and there. May also never think of what the kernel really is :-)

And for now, for that very need of my own customizations, I'll get back to Debian.

to be continued ...

Tuesday, March 28, 2006

GStreamer, the F/OSS multimedia framework

Hari ini coba iseng sebentar bermain dengan gstreamer.
Dari dulu selalu bertanya-tanya... barang lucu yang satu ini bisa ngapain sih.

Ternyata dia bisa bantuin aku konversi Ogg to mp3 dengan "mudah".

Gini judulnya:

gst-launch-0.10 filesrc location="01-Song.ogg" ! oggdemux ! vorbisdec ! audioconvert ! lame ! filesink location="/tmp/01-Song.mp3"

Aku gak pakai sih mp3 itu. Format pilihanku tetap ogg. Dan CD ku yang di-ogg-kan, asli-asli semua lho. I Say No to Bajakan! :-)

Perintah diatas berangkat dari keingintahuan iseng doang. Menarik? Sedikit sih. Soalnya di dunia penuh kegelapan seperti MS-Windows yang serba cantik itu, konversi diatas (dulunya) minimal butuh download software tambahan, yang seringkali musti kita "crack" lagi sebelum bisa dipakai.

Sekarang sih katanya gstreamer sudah tersedia juga di platform MS-Windows.

(oh ya 1, aku pakai gstreamer yang versi 0.10, yang versi 0.08, seharusnya gak jauh beda)
(oh ya 2, salah satu plugin gstreamer yang kupakai diperintah diatas adalah lame, yang konon kabarnya belum patent-free, tapi aku gak tau itu lame yang itu, atau lame yang sudah free dari Fluendo, yang mereka rilis untuk gstreamer 0.10)

Monday, February 27, 2006

Devils and Dust

Well I've got God on my side
And I'm just trying to survive
What if what you do to survive
Kills the things you love
Fear's a dangerous thing
It can turn your heart black you can trust
It'll take your God filled soul
Fill it with devils and dust


(Bruce Springsteen)

Wednesday, February 08, 2006

Serba Serbi... Etc... etc...

Let's See what has happened to me, my life and the world after the New Years (3 New Years has passed, by the way).

So, Happy New Year, Gong Xi Fa Cai, and Marhaban ya 1427H.

Aku sendiri punya kesempatan untuk mengunjungi Australia (Canberra-Sydney-and a little bit of Melbourne). Belajar Network Costing judulnya. Setelah dua tahun ikut membantu project itu, lumayan juga dapet jatah jalan-jalan. Padahal pertamanya dulu sempet bingung, kok bisa aku yang ditunjuk ya? Network Costing apaan sih? He..he..

Terus projects lain juga banyak yg sudah selesai (80%-keatas). Tapi banyak yang belum, dan yang 20% itu sendiri seringkali lebih menekan dari yang 80% ya?

Bikin weblog baru judulnya Indonesia Bagus, tempat dimana aku harap aku bisa menyumbangkan sesuatu yang positif buat negeri tercinta. Walau sekarang masih berisikan tulisan-tulisan lucu, mana tahu apa yang bisa dibawa oleh waktu dan usaha nanti?

Ngomong soal blog, hey, Blog-nya mas Koen berubah! Jadi lebih apa ya? Mas Koen bilangnya sih "Elegan", kalo aku sih bilangnya jadi keliatan lebih dalem lagi. Seperti air yang tak beriak, karena kedalamannya. All the best for you Mas.

Ditengah berbagai kerumitan teknis, aku putuskan untuk ganti Distro Linux di laptop-ku jadi Ubuntu, banyak alasannya sih, sisi teknis maupun bisnis. Ini keputusan yang agak berat lho, mengingat beragam kemesraan yang telah kujalani bersama Debian. Those lovely moments.

Di dunia Computing, aku agak-agak surprise sendiri, tahun kemarin, TEAM (the Traffic Engineering Software I've created here), agak-2 bersifat santai-2 (untuk tidak menyebutnya iseng) aku ikut sertakan dalam APICTA Indonesia (apaan tuh? Google aja ya). Masuk dalam kategori Communication Application, TEAM berhasil meraih peringkat pertama. Wow, seneng juga waktu itu, apalagi jadi sempet salaman langsung sama Pak Menteri. Namun merasa agak-agak lucu, karena aku yakin bener kalo di dunia Computing, aku ini masih cukup bego/gak tau apa-apa.

Memang kemarin gak dapet apa-apa sih, aku juga gak mengharapkan apa-apa. Tapi konsekuensi buat para pemenang di tingkat Nasional kemarin adalah berhak ikut APICTA tingkat Asia Pacific, tadinya mau di Bali, tapi karena ada bom Bali, jadinya diundur dan akhirnya diputuskan diadakan di Chiang Mai Thailand.

Nah, Minggu depan ini, tepatnya sekitar 15-21 Februari 2006, aku kan pergi kesana. Dan kali ini, ugghhh, bebannya kerasa banget. Aku udah gak bisa pergi dengan santai lagi, judulnya juga udah berat sekarang, mewakili diriku, perusahaan, dan Negeri tercintaku Indonesia.

Dan sampai hari ini, presentasiku belum siap juga... Wahh!!!

Eh, btw, kalo memang berita ini benar, selamat buat para pemenang.

Hmm... banyak kerja lebih besar lagi nih kedepannya.

Seems like its going to be a tough year.