Sunday, December 13, 2009

Bulan Baru 1431

Menurut perhitungan situs CalSky.com, pada tanggal 16 Desember 2009, terjadi bulan baru (new moon). Fenomena bulan baru, secara astronomis, adalah sebuah peristiwa yang terjadi ketika posisi Bulan berada di antara Matahari dan Bumi. Karena posisinya yang 'membelakangi' Matahari, maka Bulan akan tampak gelap ketika dilihat dari Bumi.

Pada tanggal 16 Desember 2009 itu, posisi bulan baru terjadi tepat pada pukul 19.02 WIB (GMT+07.00), atau pukul tujuh malam. Artinya ketika malam sudah tiba di kawasan Indonesia bagian Barat, bulan baru berada pada garis lurus antara Matahari-Bumi.




Karena malam sudah tiba, artinya pula dari kawasan Indonesia Barat, matahari sudah terbenam di bawah ufuk. Pada pukul tujuh malam, tentu saja Bulan juga berada di bawah ufuk, atau tidak dapat dilihat dengan mata telanjang bagi mereka yang tinggal di kawasan Indonesia Barat.

Keesokan harinya, pada tanggal 17 Desember, posisi bulan sudah sedikit bergeser, karena pergerakannya mengelilingi bumi. Pergeseran ini menyebabkan posisi bulan muncul di atas ufuk ketika Matahari terbenam pada tanggal 17 Desember 2009. Dalam khazanah Islam, peristiwa inilah yang disebut dengan terjadinya Hilal. Secara kasat mata, mungkin Hilal akan sulit terlihat, karena bulan baru terlihat sebagai sebuah lengkungan sabit tipis. Posisi Hilal yang dekat dengan Matahari membuat Hilal semakin sulit dilihat dengan mata telanjang. Walaupun demikian, secara hukum fiqih Islam, bulan baru sudah datang. Dalam konteks bulan Desember 2009, bulan baru yang datang adalah bulan Muharram 1431 H.

Selamat Tahun Baru!

Nah, tanggal 1 Muharram dihitung bertepatan dengan tanggal 18 Desember 2009, walaupun Hilal sudah terjadi pada petang hari tanggal 17 Desember. Karena itu, biasanya pergantian hari dalam kalender Hijriah terjadi pada waktu Maghrib, bukan pada pukul 00.00 tengah malam. Karena itu pula lah, biasanya ibadah sholat tarawih selalu dimulai pada malam hari sebelum keesokan harinya ummat Islam mulai melaksanakan ibadah puasa hari pertama.

Jika saja new moon terjadi pada tanggal 16 Desember sebelum pukul 19.02 WIB, katakanlah pukul 10.00 WIB, maka pada sore hari tanggal 16 Desember 2009 Hilal mungkin sudah dapat dilihat. Jika memang ini betul terjadi, maka bulan baru Muharram jatuh pada tanggal 17 Desember 2009.

Ada kemungkinan juga new moon terjadi pada pukul 15.00 WIB. Jika ini terjadi, maka pada petang hari, Hilal akan sangat sulit terlihat dari kawasan Indonesia Barat. Kurang lebih pukul 00.00 WIB tengah malam di kawasan Indonesia Barat, di kawasan lain di bumi ini (kira-kira di wilayah Perancis, Spanyol, Maroko, dan Afrika Barat) mungkin sudah dapat melihat Hilal ketika terbenam, sekalipun mereka masih mengalami tanggal 16 Desember.

Kondisi seperti inilah yang kadang menimbulkan perbedaan dimulainya awal bulan Hijriyah. Dalam contoh di atas, kawasan Indonesia Barat ketika terbenam tanggal 16 Desember belum dapat melihat Hilal, sementara di Maroko pada tanggal masehi yang sama, 16 Desember, sudah dapat melihat Hilal. Artinya Maroko menjalani tanggal 1 Muharram pada tanggal 17 Desember, sementara Indonesia masih harus menunggu satu hari lagi, ketika pada petang hari tanggal 17 Desember mereka baru dapat melihat Hilal.

Walau begitu, beberapa ahli fiqih Islam sudah mulai mengusulkan sebuah mekanisme sederhana untuk menyeragamkan awal bulan Hijriah.

Sebagai informasi tambahan, berikut ini gambar fase bulan sepanjang bulan Desember 2009 yang diambil dari situs CalSky.



Wednesday, December 09, 2009

BBC E-mail: Battery made of paper charges up

Batere dari kertas. Baru dalam skala penelitian, baru berfungsi di laboratorium. Kalo udah jadi skala komersial, konsekuensinya bisa ke mana-mana.

Tuesday, November 17, 2009

Collaboration in Research

One beautiful thing of the web, beside many others, is you can do a lot of collaborative works. As one ever said, "Two heads are better than one", Web2.0 technology allow us to share ideas, comments, suggestions, critics to what our colleagues do.

Today anyone can create and own their own blog. For free. Put their thoughts there, receive comments and critics. Make their ideas even better, post again to the blog. And the ball rolls quicker and quicker.

Thursday, November 05, 2009

Facebook Invitations

What if I ignored the invitations on my facebook account, and approve it one year (or more) later?

Monday, November 02, 2009

Perubahan Beban (sekali lagi)

Beberapa artikel yang lalu, saya sempat menulis satu tulisan dengan judul Perubahan Beban. Rupanya frasa "Perubahan Beban" lebih banyak dikaitkan dengan beban energi listrik.


Saya memohon maaf bagi anda yang mencari dokumen atau situs web tentang perubahan beban energi listrik, dan kemudian nyasar ke blog saya, yang sama sekali nggak membahas tentang ketenagalistrikan sama sekali.

Ini salah satu contoh sederhana betapa susahnya mengungkapkan kebutuhan informasi (information needs) dalam masalah Information Retrieval.

Thursday, October 29, 2009

Sinetron Antah Berantah

Tersebutlah sebuah negeri, di mana sinetron tak bermutu terus diputar demi mengejar rating. Cerita yang seharusnya sudah berakhir dipaksakan berlanjut dengan pemunculan tokoh-tokoh baru, alur cerita yang dipaksakan dan tidak masuk akal. Apapun diupayakan agar iklan terus datang mengalir, mendatangkan rejeki bagi mereka yang terlibat di dalam produksi sinetron. Utamanya para artis yang entah dari mana datangnya, siapa riwayatnya, asal punya nama berbau-bau Western atau Indo, wajah cantik dan tampan, jadilah dia kecipratan rejeki iklan yang menumpang tingkat rating tinggi dari sinetron yang bersangkutan.

Mungkin kondisi yang sama terjadi pada kehidupan nyata negeri itu, ketika skenario tak masuk akal dan dipaksakan dibuat, untuk memangkas kekuasaan lembaga pamungkas yang punya potensi memangkas rejeki para koruptor tengik yang entah dari mana datangnya, siapa riwayatnya, asal punya kuasa dan dana, membungkam mulut para hakim dan polisi yang kelaparan karena gaji bulanan mereka tak cukup memberi makan anak istri.

Menulis kekesalan di blog pun terancam penangkapan, dengan alasan yang dicari-cari, dengan alasan mencemarkan nama baik.

Mau dibawa ke mana negeri itu?

Monday, October 19, 2009

Ayat-ayat Gempa Tuk Gathuk

Beberapa saat setelah gempa di Sumatera Barat terjadi tanggal 30 September 2009 yang lalu, beredar pesan pendek tentang 'kecocokan' ayat alQuran, surat 17 ayat 16 yang terjemahannya sebagai berikut:

Dan jika Kami hendak membinasakan suatu negeri, maka Kami perintahkan kepada orang-orang yang hidup mewah di negeri itu (supaya mentaati Allah) tetapi mereka melakukan kedurhakaan dalam negeri itu, maka sudah sepantasnya berlaku terhadapnya perkataan (ketentuan Kami), kemudian Kami hancurkan negeri itu sehancur-hancurnya.

Ayat Quran ini oleh sebagian umat Islam dianggap bertepatan dengan waktu terjadinya gempa, yang dikatakan, menurut pesan pendek yang beredar tersebut, terjadi tepat pada pukul 17.16 waktu Indonesia bagian barat.

Sebagian orang menerima pesan pendek itu dengan takjub, seolah membuktikan bahwa alQuran, kitab suci umat Islam, terbukti kebenarannya.

Alhamdulillah, saya sendiri tidak sempat menerima kiriman pesan pendek yang dimaksud. Semoga ini menjadi bukti nyata bahwa sebagian besar umat Islam di Indonesia tidak begitu saja menerima dan menyebarkan pesan-pesan semacam ini.

Jika merujuk mesin pencari Google dengan memasukkan permintaan 'ayat-ayat gempa sumatera barat', banyak ditemui berbagai artikel berkaitan dengan masalah ini. Mungkin juga salah satunya artikel yang saya tulis ini.

Saya sendiri Muslim. Bagi saya, isi pesan pendek tersebut sangat disayangkan dikirim oleh umat Islam. Sesungguhnya membuktikan kebenaran alQuran sebagai wahyu dari Allah tidak dilakukan dengan cara demikian. Membuktikan kebenaran Quran dengan menunjukkan kejadian yang 'kebetulan' cocok dengan ayat-ayat tertentu justru menunjukkan bahwa alQuran adalah kitab kebetulan, bukan kitab yang berisi dengan kebenaran sejati. Saya merasa perlu menuliskan beberapa hal yang semoga menghindarkan cara berpikir yang tidak sepantasnya dalam memahami alQuran.

  1. Penomoran ayat alQuran dilakukan pada masa khalifah, setelah nabi Muhammad wafat. Masing-masing ayat turun dalam urutan kronologis yang belum tentu sesuai dengan waktu pukul 17.16.
  2. Jika kejadian bencana alam memang benar kebetulan cocok dengan ayat-ayat yang tercantum di dalam alQuran, mengapa kita tidak melakukan antisipasi sebelumnya? Bukankah kalau memang benar ada kecocokan, seharusnya kita sudah mengetahui bahwa pada pukul 17.16 akan terjadi musibah?
  3. Bagaimana dengan ayat-ayat dalam alQuran yang bernomor lebih daripada 59? Apakah mereka tidak memiliki kecocokan dengan kejadian dan peristiwa yang terjadi? Atau, apakah mereka sama sekali tidak ada gunanya?
  4. Jika memang benar ada kecocokan, harusnya akan lebih hebat jika umat Islam dapat memberikan peringatan kepada dunia, bahwa pada pukul sekian menit sekian akan terjadi musibah bencana. Mengapa tidak ada peringatan semacam ini sama sekali dari umat Islam sebelum gempa terjadi?
  5. Dikatakan dalam pesan pendek itu ayat surat 17 ayat ke-16 cocok dengan waktu kejadian. Mengapa yang dijadikan patokan adalah waktu Indonesia bagian barat? Mengapa tidak digunakan waktu GMT atau waktu Mekkah? Mengapa tidak diperhatikan surat 10 ayat 16 atau surat 13 ayat 16?
  6. Jika diperhatikan isi ayatnya, apakah kita tidak menyakiti perasaan orang asli Sumatera Barat? Apakah dengan isi ayat yang demikian berarti orang Sumatera Barat adalah orang yang paling banyak durhaka sehingga merekalah yang layak terkena azab gempa? Sungguh naif pemikiran semacam ini.
  7. AlQuran itu sepatutnya dipahami secara keseluruhan. Jangan hanya dipahami satu ayat, sementara ayat-ayat lain diabaikan. Nomor ayat yang 'kebetulan' cocok dengan waktu kejadian cenderung menggiring alam pikiran kepada takhayul, yang justru tidak disukai dalam Islam.
Sumber rujukan:
1. e-quran, http://e-quran.sourceforge.net/chapter/017.html

Tuesday, October 13, 2009

Google SideWiki

This is a wonderful Relevance Feedback mechanism. Really helpful, and useful too!

in reference to: Google Sidewiki (view on Google Sidewiki)

Wednesday, October 07, 2009

Perlombaan Netflix Berakhir

Pernah dengar kata Netflix? Bagi para penggemar dan pemerhati film, khususnya film Hollywood, semustinya nama ini tidak asing lagi. Netflix adalah sebuah perusahaan rental film online. Sebagai sebuah perusahaan rental, Netflix betul-betul serius dalam menjalankan bisnisnya. Merekomendasikan judul film apa yang pantas dinikmati oleh pelanggannya adalah salah satu perhatian mereka.

Dalam skema bisnis Netflix, jika seseorang menyukai sebuah genre film, maka jika Netflix memiliki judul-judul film baru dengan genre yang sama, seharusnya Netflix merekomendasikan judul film baru tersebut. Ini sesungguhnya adalah hal yang sangat wajar. Perusahaan lain seperti Amazon juga melakukan hal yang sama. Bahkan Google dan Yahoo pun, jika diperhatikan, selalu menampilkan tautan (link) iklan yang entah bagaimana caranya, bisa dikatakan sesuai dengan apa yang kita minati.

Persoalan besarnya adalah bagaimana caranya? Bagaimana perusahaan-perusahaan besar itu bisa mengetahui apa minat kita, dan pada gilirannya kemudian merekomendasikan produk-produk barang atau jasa yang kemungkinan besar akan kita lirik.

Semakin sering seseorang berbelanja jenis produk tertentu, semakin besar pula kemungkinan dia untuk membelanjakan uangnya untuk produk-produk sejenis. Cukup masuk akal, ya nggak? Dalam kasus Netflix, semakin sering seseorang menikmati film-film genre tertentu, maka tentu saja orang ini akan senang jika Netflix memberitahukan keberadaan judul-judul film baru dari genre tersebut. Dengan kata lain, Netflix ingin memanjakan pelanggannya, yang nanti pada gilirannya akan menambah pemasukan bagi Netflix.

Dalam rangka menjawab pertanyaan besar "bagaimana caranya" itu, Netflix mengadakan sebuah kontes besar dengan hadiah yang tidak tanggung-tanggung: 1 miliar dollar US! Kompetisi ini dimulai pada tahun 2006 yang lalu, dan selama tiga tahun terakhir membangkitkan setidaknya 51.000 kelompok peneliti untuk mengembangkan algoritma terbaik yang dapat memprakirakan film apa yang akan disukai oleh masyarakat. Bukan hal yang aneh sedemikian banyak orang ingin memperebutkan hadiah sebesar itu!

Kontes diselenggarakan dengan cara Netflix menyediakan sekumpulan data berukuran sangat besar, berisi data historis film-film apa saja yang pernah disewa oleh para pelanggan Netflix. Tentu saja identitias para pelanggannya disamarkan. Tugas dari para kontestan adalah membuat algoritma yang belajar dari data historis tersebut, untuk meningkatkan tingkat keakuratan prediksi jenis film yang akan disukai orang. Tugas ini tampak sekilas sangat sederhana, tapi dengan jumlah data yang sangat besar, tugas ini bukan sebuah hal yang sepele.

Netflix akan menilai prestasi dari setiap kelompok dengan jalan masing-masing kelompok mengirimkan hasil prediksi yang mereka hasilkan dengan algoritma yang dikembangkan.

Pada akhirnya, tanggal 21 September 2009 kemarin, hadiah itu diberikan kepada satu kelompok bernama BellKor Pragmatic Chaos. Menurut situs KDD Nuggets, tim BellKor menang dari tim lain yang memiliki prestasi sebanding sepanjang perjalanan kontes, karena BellKor mengirimkan hasil akhir mereka 10 menit sebelum hasil yang dikirimkan oleh tim Ensemble. Bayangkan, hanya perbedaan 10 menit membuat mereka bisa memenangkan hadian 1 miliar dollar!

Jika dilongok lebih jauh, algoritma buatan BellKor mampu meningkatkan tingkat ketelitian prediksi dari 10.09 persen menjadi 10.1 persen! Sebagai pembanding, Netflix menggunakan satu data set yang hanya bisa diakses oleh Netflix sendiri, dan hasilnya algoritma BellKor mampu meningkatkan tingkat ketelitian sebanyak 10.6 persen.

Beberapa tautan di dalam artikel ini bisa anda telusuri untuk mendapatkan informasi lebih detil tentang Kontes Netflix dan tim BellKor.

Open Source Data Mining di Indonesia

Apa yang bisa dilakukan dengan perangkat-perangkat lunak berbasis Open Source di Indonesia, khususnya perangkat lunak Data Mining?

Ini beberapa curah-ide (brainstorming):
  • Identifikasi peraturan daerah, perpu, peraturan menteri, undang-undang, dan sebagainya yang saling kontradiksi satu sama lain.
  • Mengidentifikasi aliran uang yang terlibat di dalam pencucian uang (money laundering), khususnya untuk identifikasi pemilik rekeningnya, supaya bisa diajukan ke KPK.
  • Mencari tahu lapangan kerja yang betul-betul dibutuhkan di Indonesia, profesi apa yang paling dicari sama tenaga kerja Indonesia, profesi apa saja yang sudah jenuh.
  • Mencari potensi obat-obat tradisional Indonesia dengan menambang data DNA tumbuh-tumbuhan endemik.

Friday, October 02, 2009

Memantau Gempa

United States Geological Survey (USGS) punya situs web yang menampilkan informasi tentang gempa-gempa yang terjadi di seluruh dunia. Waktu Tasikmalaya diguncang gempa beberapa waktu yang lalu, situs usgs.gov masih tetap dapat diakses, sementara situs BMKG (Badan Meteorologi, Klimatologi, dan Geofisika) Indonesia sempat tidak dapat diakses selama beberapa saat.

Semoga tautan kedua situs tersebut dapat membantu bagi mereka yang ingin memantau gempa secara harian.

Friday, September 18, 2009

Kapan Idul Fitri?

Sejak beberapa tahun terakhir, sering muncul pertanyaan kapan dimulainya bulan Ramadhan atau datangnya hari Lebaran Idul Fitri.

Untuk membantu menjawab pertanyaan tersebut, berikut ini ada situs yang membantu memberikan jawaban. Situs pertama, Rukyatul Hilal, dibuat oleh orang Indonesia, berisi informasi terpadu dan beberapa sumber daya. Informasi yang termuat di dalam situs ini antara lain berbagai metode yang dilakukan untuk menentukan awal bulan Hijriah, baik dengan cara hisab maupun dengan cara rukyat. Di samping artikel-artikel tersebut, kita juga bisa dapatkan beberapa perangkat lunak yang dapat diunduh untuk membantu kita mendapatkan informasi kapan awal bulan terjadi.

Situs kedua dibuat oleh sebuah tim astronom dari universitas McDonald di Texas, Amerika Serikat. Situs ini bernama Star Date Online. Pada bagian Moon Phase, kita dapat melihat secara visual fase bulan sepanjang bulan berjalan. Jika anda mengunjungi situs ini pada bulan September 2009, anda dapat lihat bahwa pada tanggal 20, fase bulan sudah melewati bulan baru, terbukti dengan terlihatnya sabit bulan yang sering kita dengar dengan nama Hilal.

Insya Allah, saya akan berikan satu artikel tentang berbagai kriteria penentuan awal bulan dalam budaya Islam dalam tulisan terpisah.

Thursday, September 03, 2009

Melati untuk Marvel, Mati untuk Sinetron Indonesia

Saya bukan pecinta Sinetron. Alasannya sederhana, karena ketika sinetron sedang ditayangkan, saya lebih sering berada dalam perjalanan pulang.

Alasan lainnya karena sinetron Indonesia sudah keterlaluan memutar logika berpikir.

Salah satu contohnya sinetron dengan judul "Melati untuk Marvel". Tempo hari saya sempat melihat salah satu tayangan episode sinetron ini, dan ternyata alur ceritanya sudah sungguh di luar nalar. Tokoh utama sengaja dimatikan oleh sutradara, lalu dihidupkan kembali.

Nalar berpikir televisi yang menayangkan sinetron semacam ini pun jadi dipertanyakan. Kalau sinetron dengan alur cerita seperti itu masih dipertahankan dengan memelintir jalan cerita sedemikian rupa, dengan alasan menaikkan rating, apakah betul bahwa para penikmat sinetron masih bertahan mengikuti alur cerita yang dipaksakan?

Kalau ternyata hasil survey menunjukkan tingkat rating sinetron "Melati untuk Marvel" masih tinggi, ada dua kemungkinan. Pertama, metode survey dan lembaga yang melaksanakan survey pasti pembohong besar. Kedua, pengelola stasiun televisi yang bersangkutan sudah terlalu bodoh untuk ukuran orang Indonesia.

Tuesday, August 18, 2009

Jam Analog

Pada ulang tahunku di tahun 2009 kali ini, sahabatku Wisnu memberi hadiah sebuah jam tangan analog. Di muka jam tangan itu tertera angka tanggal yang menempati posisi pukul tiga. Angka tanggal ini berganti setiap kali waktu menunjukkan pukul 12 malam. Angka-angka tanggal yang tertera seluruhnya ada 31, sesuai dengan jumlah hari terbanyak dalam sebuah bulan Masehi.



Pada pergantian bulan, ketika angka di kalender dinding menunjukkan tanggal 1 bulan berikutnya, aku tidak mengoreksi angka tanggal yang tertera pada jamku. Kubiarkan angka di jam putihku menunjuk angka 31, yang seharusnya kumajukan satu hari sehingga sama dengan tanggal 1.

Hal ini terus kulakukan setiap kali pergantian bulan. Maksudnya, aku tidak melakukan koreksi setiap kali seharusnya aku memajukan angka tanggal di jamku. Demikianlah, ketika bulan kedua setelah bulan ulang tahunku tiba, angka tanggal di jamku masih meleset satu hari. Di bulan ketiga, masih meleset satu hari juga. Bulan keempat, meleset semakin jauh, dua hari.

Begitu seterusnya.

Pada bulan apakah aku berulang tahun?

Pada bulan dan tahun berapakah angka tanggal pada jam analog pemberian Wisnu kembail menunjukkan angka yang sama dengan angka tanggal di kalender?

Catatan: Gambar diambil dari http://www.qualitylogoproducts.com/tradeshow-promotions/cambridge-analog-watch.htm

Tuesday, July 07, 2009

Bolong di IE, FaceBook tak muncul di Firefox

Sore hari waktu Indonesia bagian Barat (GMT+0700), situs detik.com mewartakan satu artikel tentang bolongnya keamanan sistem operasi WindowsXP. Celah keamanan ini terutama akan terbuka kalau pengguna Windows XP menjalankan browser Internet Explorer versi 6 atau versi 7. Dalam artikel di detik, disebutkan resiko keamanan ini terjadi ketika browser IE diarahkan ke situs yang sudah tercermar oleh malware. Anehnya, per sore hari WIB, situs facebook tak muncul kalau diakses menggunakan Firefox.

Apakah ini termasuk cara si malware untuk memaksa pengguna WindowsXP menggunakan IE?

Monday, July 06, 2009

von Neumann Architecture

Komputer modern yang umum digunakan sekarang ini, termasuk (kemungkinan besar) komputer yang anda gunakan untuk membaca tulisan ini, dibangun berdasarkan ide yang diajukan oleh seorang pemikir besar bernama John von Neumann. Dia, bersama beberapa tokoh lain, dianggap sebagai the founding fathers dari Ilmu Komputer. Tanpa kontribusi pemikiran beliau, kita tak akan mengenal yang namanya internet, Black Berry, atau Hot Spot.

Sebuah komputer, menurut von Neumann, terdiri atas tiga komponen utama. Ketiga komponen ini disusun sedemikian rupa dalam sebuah susunan yang dikenal dengan nama Arsitektur von Neumann. Ketiga komponen tersebut adalah:
  1. Processing Unit
  2. Memory
  3. I/O device
Ketiga komponen tersebut disusun sehingga komponen Memory terletak di antara Processing Unit dan I/O device. Setiap komputer modern yang digunakan saat ini, harus memiliki ketiga komponen tersebut. Jika salah satu komponen tidak ada, maka komputer tidak dapat digunakan.

Processing Unit tidak lain adalah perangkat keras yang sering kita kenal sehari-hari dengan istilah CPU atau Prosesor. Mereknya macam-macam, yang sering kita dengar antara lain Intel, AMD, Motorola. Beberapa perusahaan lain juga membuat prosesor khusus, seperti prosesor-prosesor yang digunakan dalam perangkat bergerak (mobile devices) seperti telepon genggam dan, yang terkenal sekarang ini, BlackBerry.

Ya, telepon genggam sebetulnya adalah komputer juga, dan menggunakan arsitektur von Neumann.

Tanpa CPU, kita tak bisa menggunakan komputer. Kita katakan CPU adalah 'otak' komputer. Tanpa 'otak' fungsi-fungsi komputer tentu saja tak akan berjalan, seperti manusia tanpa kepala.

I/O devices memiliki bentuk bermacam-macam. Sifatnya juga ada yang wajib dan ada yang merupakan tambahan. Perangkat masukan-luaran yang umum kita temui sekarang adalah papan bidai (keyboard), tetikus (mouse), dan layar monitor. Ketiga perangkat ini wajib ada. Tanpa mereka, walaupun komputer sudah dilengkapi CPU dan memori, tak ada yang bisa kita lakukan.

Bayangkan jika anda punya komputer, lengkap dengan papan bidai dan tetikus, tapi layar monitornya tak ada. Atau layar monitornya ada, tapi papan bidainya rusak. Tetikus mungkin tidak terlalu penting, tapi kebanyakan sistem operasi sekarang membuat tetikus sebagai sebuah perangkat masukan-luaran yang cenderung menjadi wajib sifatnya.

Perangkat masukan-luaran yang lain sifatnya pilihan (optional), artinya boleh ada boleh juga tidak ada. Kalau ada lebih bagus.

Bayangkan kalau anda punya komputer baru, sudah terpasang dengan sistem operasi dengan tampilan bagus, tapi tak bisa ditambah dengan perangkat lunak baru karena tidak punya CDROM drive. Mungkin anda masih punya pilihan untuk mengunduh perangkat lunak yang anda perlukan melalui internet. Jika begitu halnya, perangkat masukan-luaran seperti WiFi dan modem CDMA menjadi wajib.

Perangkat yang lain seperti pencetak (printer), boleh ada boleh tidak. Tentu lebih bagus jika anda memiliki satu buah alat pencetak, supaya apa-apa yang anda kreasikan dengan komputer dapat dilihat hasilnya. Kalau membeli alat pencetak terlalu mahal, mungkin anda bisa pinjam atau menyewa di warnet.

Komponen ketiga, Memory, juga tak kalah penting. Seperti saya tulis tadi, komponen ini merupakan komponen yang menghubungkan antara Processing Unit dengan I/O Device. Memory dapat dilihat sebagai sebuah rangkaian cell yang bersebelahan satu sama lain (contiguous). Setiap cell dapat menampung sejumlah informasi, biasanya dihitung dalam satuan byte. Satu byte tersusun atas delapan (8) digit informasi biner. Sejatinya, di dalam memory komputer, informasi biner ini mewujud dalam bentuk aliran arus listrik.

Peran penting Memory dapat terlihat ketika sebuah program dijalankan di dalam komputer. Sebuah program, dalam pandangan von Neumann, hanya dapat dijalankan jika program tersebut ada di dalam memory (RAM). Siapa yang menjalankannya? CPU.

CPU komputer manapun, dari waktu ke waktu hanya melakukan tiga operasi dasar dan sederhana:
  • Fetch
  • Decode
  • Execute
Ketika CPU melakukan operasi fetch, satu byte instruksi dari memory disalin ke Arithmetic Logical Unit (ALU). Setelah itu CPU melakukan operasi decode, yaitu menginterpretasikan jenis operasi apa yang terkandung di dalam instruksi tersebut. Setelah mengetahui jenis instruksinya, CPU kemudian meng-execute instruksi tersebut.

Selesai melakukan operasi execute, CPU kembali ke siklus fetch, namun kali ini CPU mengambil instruksi berikutnya dari memory. Proses ini terjadi berulang kali terus menerus selama komputer belum dimatikan.

Seringkali ketika kita membeli komputer baru, terdapat informasi kecepatan prosesor komputer tersebut, misalnya 2,6GHz. Nilai ini menunjukkan bahwa prosesor tersebut mampu melakukan siklus fetch-decode-execute sebanyak 2,6 milyar kali dalam satu detik.

Setiap merek CPU memiliki jenis instruksinya masing-masing, yang disebut sebagai instruction set, sering disebut juga dengan bahasa mesin (machine language). Instruction set prosesor Intel tidak sama dengan instruction set prosesor Motorola.

Dalam tulisan selanjutnya akan saya bahas sebuah contoh instruction set yang digunakan oleh sebuah komputer 'mainan'. Instruction set ini disebut dengan bahasa SML.

Wednesday, June 17, 2009

Kemampuan Merawat dan Tingkat Pendidikan

Belum sampai satu bulan diresmikan, jembatan Suramadu sudah menjadi korban vandalisme bangsa sendiri. Sedih deh ngedengernya.

Capek-capek dibikin, diperjuangin dari tahun 60-an, demi kepentingan mereka sendiri. Begitu jembatannya jadi, malah di-preteli. Bukannya terima kasih, malah ngerusak hadiah yang diberikan buat mereka. Gimana coba cara mereka mikirnya?

Bukan hanya jembatan Suramadu aja kasusnya. Di Jabodetabek, coba lihat KRL dan angkutan umum lainnya. Dapat hibah bis dan kereta dari Jepang dalam kondisi yang masih baik, setahun kemudian udah berdebu dan banyak yang nggak berfungsi dengan baik.

Gimana kita bisa bikin fasilitas umum karya sendiri, kalo ngerawat yang udah ada aja nggak bisa?

Monday, June 15, 2009

Important Words

Suppose you are given a bunch of texts. They can be as small as one short sentence, a simple paragraph, or a complex document. From these texts, you were asked to determine the most important words representing each text. What is your strategy?

One simple way to answer this problem is to calculate the occurrence of all words in each text. The words that has high number of occurrence can be safely assumed to be the most important ones.

Another approach is to consider the first and the last sentence of each paragraph. This strategy is applicable to texts that at least has one paragraph. We know that most people write the main idea of paragraph in the first sentence, or sometimes in the last sentence. So it is worth considering these two positions in a paragraph.

You have to know how to identify what character starts and ends a sentence though. For example, most sentence ends by a period, like this sentence. But sometimes, period is used to denote abbreviations as well, as in "Ph.D.", or "Washington, D.C.". Your algorithm has to take into consideration of these appearance of periods in the middle of a sentence.

Another approach I can think of right now, is to throw out the stop words. These are words that has no important meaning, they support the whole sentence as a connector in complex sentence, such as "and", "or". State it in other words, stop words are the words which if you dropped them from a sentence, you can still get the meaning of the sentence. Try this example:

I was going to market with my wife yesterday, and we bought a kilo of apple.

If we drop "was", "to", "with", "and", "a", "of" from that sentence, we can still get what I want to say:

I going market my wife yesterday, we bought kilo apple.

Using this approach, your algorithm should be able to identify which words belong to stop words.

Any other ideas?

Tuesday, April 28, 2009

andLinux di Belakang Proxy / FireWall

Tulisan sebelumnya memuat penjelasan serba singkat tentang apa itu andLinux, cara mendapatkannya, serta cara instalasinya. Tulisan ini membahas tentang masalah yang saya hadapi setelah melakukan instalasi andLinux.

Pertama, perlu saya ceritakan dulu kenapa saya menghadapi masalah.

Komputer tempat saya memasang andLinux berada dalam sebuah jaringan privat dengan alamat IP 192.168.11.0/24. Jaringan privat ini terlindung di belakang sebuah proxy server di tempat saya bekerja. Jadi semua koneksi internet yang dilakukan dari komputer saya harus melalui proxy server ini.

Ketika andLinux selesai dipasang, di komputer saya seolah-olah ada satu jaringan privat lagi, yaitu jaringannya si andLinux. Sialnya, ketika memasang driver TapWin32, andLinux memberikan alamat 192.168.11.0/24 pada jaringan lokalnya sendiri. Akibatnya komputer saya justru jadi tidak bisa terhubung ke internet sama sekali, karena alamat IP komputer saya seolah-olah jadi 'ditutup' oleh alamat IP jaringan andLinux.

Dengan adanya masalah seperti ini, tentu saja jaringan andLinux tidak bisa terhubung ke internet. Dan ini adalah masalah saya yang kedua. Sebab untuk mengupdate distro Ubuntu yang menjadi bawaan andLinux, komputer saya harus bisa terhubung ke internet, padahal justru komputer saya sendiri jadi kehilangan akses ke internet.

Berikut ini langkah-langkah yang saya lakukan:
  1. Pertama buka Network Connections milik Windows dari Control Panel. Seharusnya setelah andLinux berhasil dipasang, akan muncul setidaknya dua kartu jaringan, TAP-Colinux dan satu lagi jaringan lokal Windows.



  2. Klik-kanan pada ikon TAP-Colinux, lalu pilih Properties hingga muncul satu jendela baru, TAP-Colinux Properties.
  3. Pada tab General, pilih Internet Protocol (TCP/IP), lalu klik tombol Properties.



  4. Di situ muncul alamat IP yang di-set ketika proses instalasi andLinux, yaitu 192.168.11.150. Ubah saja alamat IP tersebut dengan nilai yang berbeda. Saya mengubahnya menjadi 192.168.1.152. Setelah selesai, klik OK.
  5. Kembali ke jendela TAP-Colinux Properties, klik tombol Configure di bagian kanan atas.
  6. Muncul satu jendela baru TAP-Win32 Adaptver V8 (coLinux) Properties. Klik tab Advanced. Pada kotak Properties, pilih Media Status. Selanjutnya pada combo-box Value pilih Always Connected.


  7. Klik OK untuk kembali ke jendela TAP-Colinux Properties, lalu klik OK lagi untuk menutupnya.
Sekarang giliran Local Area Connection milik Windows yang perlu diverifikasi agar jaringan andLinux dapat terkoneksi ke internet. Berikut ini langkah-langkahnya:
  1. Klik kanan ikon Local Area Connection, lalu pilih Properties hingga muncul jendela Local Area Connection Properties.
  2. Pilih tab Advanced.
  3. Yakinkan pilihan Allow other network users to connect through this computer's Internet connection dicontreng.



  4. Klik OK.
Setting alamat IP dan sharing kartu jaringan Windows sudah selesai. Sekarang yang perlu kita lakukan adalah melakukan setting pada sisi andLinux.
  1. Klik Start, All Programs, andLinux, lalu pilih andLinux Console (FLTK).
  2. Login dengan user root.
  3. Jika ini pertama kalinya anda login ke sistem andLinux, anda dapat login tanpa memasukkan password. Jika ini yang terjadi, ada baiknya anda set password root anda dengan mengetikkan perintah passwd.
  4. Ketikkan perintah vi /etc/network/interfaces.
  5. Sesuaikan isi berkas tersebut dengan contoh di bawah ini.
    # Used by ifup(8) and ifdown(8). See the interfaces(5) manpage or
    # /usr/share/doc/ifupdown/examples for more information.

    auto lo eth0 eth1

    iface lo inet loopback

    #iface eth0 inet dhcp

    iface eth0 inet static
    address 10.0.2.15
    broadcast 10.0.2.255
    netmask 255.255.255.0
    gateway 10.0.2.2

    iface eth1 inet static
    address 192.168.1.150
    network 192.168.1.0
    netmask 255.255.255.0
    broadcast 192.168.1.255
    gateway 192.168.1.152
    Sesuaikan alamat IP pada interface eth1 dengan alamat IP yang anda gunakan pada langkah sebelumnya ketika memberikan alamat IP untuk kartu jaringan TAP-Win32. Dalam kasus saya, saya memberikan alamat IP 192.168.1.150.
  6. Simpan berkas /etc/network/interfaces.
  7. Update tabel routing dari jaringan andLinux ke internet. Caranya, ketikkan perintah
    route add default gw 192.168.1.152.
    Sesuaikan alamat IP dalam perintah tersebut dengan alamat IP yang diberikan untuk kartu jaringan TAP-Win32 sebelumnya.
  8. Dari command prompt, ketik perintah reboot.
  9. Setelah proses reboot selesai, seharusnya sekarang sistem andLinux sudah dapat terhubung ke internet. Login lah sebagai root lalu ketikkan perintah

    export http_proxy='http://user:password@192.168.7.77:8000/'
    apt-get update
    untuk mengupdate distro Ubuntu. Sesuaikan user dan password dengan username dan password di proxy server. Begitu juga alamat IP dan nomor port yang digunakan.

andLinux dan Instalasinya.

Dalam posting sebelumnya, saya hanya menyebutkan status kemajuan instalasi andLinux di komputer saya. Sebelumnya saya sudah berhasil melakukan proses instalasi, namun ternyata proses apt-get update dan apt-get upgrade tidak bisa berjalan sempurna karena komputer yang saya gunakan terlindung di belakang satu Proxy Server.

Tulisan ini saya buat agar mereka yang ingin bereksperimen dengan andLinux dapat memecahkan masalah yang sempat saya hadapi.

Pertama, apa sih andLinux itu? andLinux adalah sebuah distribusi sistem operasi Linux yang bisa dipasang di lingkungan sistem operasi Windows bagaikan sebuah aplikasi biasa. Kira-kira mirip seperti jika kita memasang software game atau Microsoft Office di komputer berbasis Windows. Dengan demikian kita bisa menjalankan dua sistem operasi yang berbeda pada saat bersamaan.

Kok bisa? Bagaimana mungkin hal ini dilakukan? andLinux menggunakan teknologi virtualisasi, di mana sistem operasi Windows, yang disebut sebagai Guest Operating System, dianggap oleh andLinux sebagai sebuah perangkat keras sungguhan. Padahal sesungguhnya semua yang terjadi adalah membuat perangkat keras semu atau virtual. Karena itu teknologi yang digunakan disebut dengan virtualization.

andLinux sendiri dibangun di atas sebuah virtualisasi Linux bernama coLinux. Bedanya andLinux sudah membungkus semua yang diperlukan dalam satu bundle. Jika anda ingin mencoba coLinux, anda harus melakukan berbagai macam setting secara manual, termasuk melakukan instalasi driver kartu jaringan virtual bernama TapWin32. Dengan mengunduh paket andLinux, semuanya sudah diotomasi. Yang perlu dilakukan adalah klik-ganda pada berkas instalasi andLinux, dan kemudian klik next-next-next-finish. Semudah kita memasang perangkat lunak berbasis Windows yang lain.

Sebelumnya tentu kita perlu mengunduh paket instalasi andLinux dari situsnya. Dalam artikel ini, yang saya gunakan adalah paket instalasi dengan window manager KDE.

PERHATIAN: Ukuran berkas instalasi andLinux yang lengkap dengan window manager KDE adalah 653megabita. Jika koneksi internet di tempat anda kurang stabil, ada baiknya anda minta tolong rekan atau teman yang memiliki koneksi internet stabil dan cepat.

Setelah berhasil diunduh, lakukan proses instalasi seperti memasang perangkat lunak yang lain. Klik ganda, lalu next-next-next-finish. Dalam prosesnya, paket instalasi akan memasang juga driver kartu jaringan virtual TapWin32. Prosesnya cukup mudah, semua setting alamat IP virtual juga dilakukan secara otomatis selama proses instalasi.

Lalu apa masalahnya? Masalahnya muncul dalam kasus seperti saya di mana komputer yang saya pasang andLinux berada dalam jaringan privat dan dilindungi oleh satu server Proxy.

Apa saja masalahnya, dan bagaimana mengatasinya? Semuanya saya tuliskan dalam artikel berikut ini.

Thursday, April 23, 2009

What Are You Working On?



Melakukan pencarian yang tak menentu memang bisa membuat frustrasi. Kadang muncul perasaan bahwa apa yang dicari pun tak pernah jelas.

Sama seperti perjuangan menegakkan kebenaran. Kadang apa yang kita raih sungguh di luar jangkauan, out of reach. Tapi selama kita yakin akan apa yang kita lakukan benar, lakukanlah.

Sedikit cerita dari Jorge Cham ini saya harap bisa memberikan gambaran.

Tuesday, April 21, 2009

Sinkronisasi Waktu melalui PrayTime.Info

Kadang-kadang saya sering memerlukan untuk mensinkronisasikan jam komputer yang saya gunakan agar sama dengan komputer-komputer lain. Dulu biasanya saya menggunakan utilitas yang memanfaatkan protokol NTP, Network Time Protocol. Namun seringkali saya menemui masalah karena protokol ini menggunakan nomor port tertentu yang biasanya tidak dijinkan untuk digunakan, terutama jika komputer-komputer yang saya gunakan berada di belakang komputer proxy atau firewall.

Dalam dunia internet sekarang, di mana kegiatan browsing merupakan salah satu kegiatan utama, protokol yang biasanya diijinkan untuk menggunakan port komunikasi adalah protokol HTTP.

Dengan menggunakan protokol HTTP, sekarang saya tidak perlu lagi menggantungkan diri pada protokol NTP. Sejak saya menemukan situs PrayTime.Info, saya dapat mensinkronisasikan waktu komputer saya dengan mudah. Walaupun masih menggunakan cara manual, paling tidak metode ini cukup efektif, setidaknya bagi saya.

Yang saya maksud dengan cara manual adalah, ketika mencocokkan jam komputer, saya tetap harus melakukan setting melalui Control Panel. Jika saya menggunakan protokol NTP, semuanya dilakukan secara otomatis.

Ok, langsung saja saya sampaikan apa yang saya lakukan untuk mencocokkan jam komputer saya dengan waktu internasional.
  1. Buka browser, dan arahkan ke situs PrayTime.info. Situs ini secara otomatis akan mengenali wilayah geografis komputer anda. Tentunya ini tergantung dari parameter yang ada di "Regional Settings" di dalam Control Panel komputer anda. Untuk komputer-komputer di Indonesia, biasanya sih pada saat instalasi sistem operasi, wilayah geografis ini akan di-set ke GMT+0700.
  2. Perhatikan di bagian kanan dari situs, akan ditampilkan informasi seberapa lambat atau seberapa cepat jam komputer kita dibandingkan waktu standar di internet. Dalam contoh saya ini, komputer saya dikatakan "Your computer clock is 14 sec slow".

  3. Berdasarkan informasi ini, selanjutnya saya klik-kanan pada icon jam (biasanya di pojok sebelah kanan bawah), lalu pilih "Adjust Date and Time".
  4. Untuk mencocokkan waktu, pertama saya lakukan sedikit perhitungan. Karena jam komputer saya lebih lambat 14 detik, maka nanti saya akan klik bagian menit dari jam di window "Adjust Date and Time". Begitu saya klik, jam komputer akan dihentikan hingga kita meng-klik tombol Ok atau Cancel. Yang saya lakukan adalah saya majukan bagian menit itu maju satu menit lebih awal, lalu saya hitung mundur (60 - 14) detik, atau 46 detik. Empat puluh enam detik kemudian, saya klik tombol OK.
  5. Saya Refresh situs PrayTime.Info, maka tampilan "Your computer clock is 14 sec slow" tidak ada lagi, karena jam komputer saya sekarang sudah cocok dengan waktu internet.


Monday, March 23, 2009

andLinux

Yes.. that is "andLinux". There is no space between "and" and "Linux".

Finally, my "andLinux" installation can do its premiere debut of "apt-get update" and "apt-get upgrade" after this long time of searcing the net on how to do it.

What is this damn thing "andLinux" I mention?
And how did I manage to solve the problems I vaguely mentioned?

Unfortunately, I have no mood to report it right now. Just want to check the update and upgrade process of andLinux is going fine first. I am sure I will write about this. Later, after I am having some fun with this crazy but useful thing.