Sebuah aggregator blog..
31 Jul
Yay, my newest gadget addition is here. Thanks to Chewy who is kind enough to bring the device from far away land called America.
The box:
The contents of the box:
But before I can do anything with it, it must be recharged... argh!
Finally, up!

27 Jul
Berangkat jam 7 KRL menuju Bogor. Kami memilih KRL karena cepat (1 jam dari Tebet), murah (Rp 2,500) dan nyaman (Sabtu, tidak padat). Dari stasiun Bogor, kami langsung meluncur ke terminal Baranangsiang, dan memilih rute bus Bogor-Pelabuhan Ratu (Bus MGI, seukuran Kopaja). Dengan tarif 25 ribu (AC), kami mulai berangkat ke Pelabuhan Ratu sekitar pukul 8.30
Sebuah perjalanan yang panjang. Kalau tidak salah, saya tidur bangun sampai tiga kali dan akhirnya tiba di Pelabuhan Ratu sekitar pukul 12 (3,5 jam). Di terminalnya, begitu bus masuk langsung berdatangan para tukang ojek di sekeliling bus. Benar-benar membingungkan jika baru pertama datang kesana.
Yang kami lakukan sederhana, janjian di warung makan yang kami tunjuk lalu kami berpencar. Sementara solutif, kami terlepas dari kepungan. Tapi ternyata selama kami makan (dan bahkan saat sholat di masjid), masih ada saja tukang ojek yang ‘setia’. Tentu yang seperti ini justru membuat kami tidak nyaman dan meninggalkannya. Oiya satu lagi, di warung makan itu kami ‘sepakat’ menemukan pelayan yang ‘khas sunda’ :p.
Berdasarkan info dari sopir angkot (yang efeknya kami harus membayar ongkos ‘mahal’), maka kami menuju Pantai Karanghawu, 14 km dari kota kecamatan Pelabuhan Ratu. Karanghawu, asal kata Karang berbentuk Hawu (tungku), pada dasarnya pantainya terbagi dua, yang berkarang dan yang berpasir. Masih bersih, tidak terlalu ramai. Sayang, kami tidak menemukan fasilitas hotel atau tempat makan ‘representative’ yang banyak kami temukan di area Pantai Citepus, sekitar 4-8 km dari kecamatan.
Diantara yang hotel eksotis adalah Samudera Beach Hotel (SBH). Hotel ini satu diantara tiga hotel yang dibangun Soekarno, yakni Hotel Indonesia, Sanur dan Pelabuhan Ratu sendiri. Percaya tidak percaya, banyak ‘cerita’ yang mengiringi di hotel-hotel tersebut. Dan di Pelabuhan Ratu sendiri, hotel ini tampak dari luar kurang terawat. Padahal eksotisme bangunan lampau masih terpancar dari hotel ini (dalam hati, ingin suatu hari menginap di hotel ini).
Berikut adalah beberapa snapshot yang diambil teman saya (his courtesy).
Ini adalah view dari Karanghawu, karang yang tegak melawan ombak.
Pasir yang terhampar, menggugah keinginan untuk merasanya.
Dan inilah kami, dua orang di balik ide perjalanan ini.
Saya mulai menuliskan sesuatu di pasir, untuk sebuah nama.
Sebelum pulang, kami menemukan view yang bagus dari bukit kecil. Sebuah sawah dengan background pantai. Subhanallah, sungguh indah indonesia kita.
Kami lalu pulang jam 4 sampai terminal Pelabuhan Ratu. Harapan kami, menuju Bogor dengan bus AC. Sayangnya, bus AC sudah tidak ada setelah kami menunggu hingga jam 5. Sudah sejam terbuang, maka kami memutuskan bus AC Pelabuhan Ratu-Sukabumi. Sebenarnya bisa menggunakan yang menuju Bogor tapi non-AC. Pikir kami ideal, di Sukabumi pasti banyak bus ke Jakarta (AC). Dan karena si teman tampaknya ingin tahu Sukabumi, kotanya Vagetoz (hehe).
Jam 8 sampai di Sukabumi, terminal sudah sepi. Jangankan bus Jakarta AC, bus menuju Jakarta sudah tidak ada (yang masih banyak justru Bandung, sempat terpikir ke Bandung aja). Jadilah harapan tinggal harapan). Tapi kami bertekad, lebih baik bisa makan tidak bisa pulang daripada bisa pulang tapi tidak bisa makan. Maka, kami makan dulu. Selesai makan, kami akhirnya memutuskan naik colt L300 menuju Ciawi untuk harapan 24 jam bus menuju Jakarta.
Sempat kami di ’handover’ ke Colt yang lebih penuh penumpang di Cibadak, daerah dimana jalan percabangan ke Sukabumi dan Pelabuhan Ratu. Setelah peristiwa itu, saya tidak bisa tidur. Khawatir ada ’handover’ lagi atau malah-malah kena ’akal’ orang. Tiba di Ciawi sekitar jam 10.30, sebuah malam yang ramai.
Tapi perjalanan tidak berhenti disini. Masih harus memilih antara Bus Kampung Rambutan, Merak (ancaman turun di Slipi atau di tengah tol Pancoran), atau mobil ’omprengan’ Cawang. Sampai detik terakhir, Cawang lah yang kami pilih karena alasan lebih dekat ke tujuan. Tiba di Cawang lalau meluncur langsung dengan Taksi pilihan menuju Pancoran sampai jam 11.30.
Menurut teman, kami baru saja seperti melakukan Black Hawk Down, rencana penyerangan 15 menit namun akhirnya jadi seharian. Kami menikmatinya, seperti benar-benar tidak direncanakan, menantang. Dan berpikir bahwa dalam hidup, sekali-kali kita perlu melakukan yang seperti itu. Kuncinya, kita harus menemukan teman perjalanan yang tepat.
26 Jul
Well, Microsoft finally hit Zune Pass with a lot of track restriction (you can't download, you have to buy). We're not even owning the tracks, why the need to have restrictions?
I've put up a forum post complaining about this issue here. Vote if you think that Zune Pass should lift track restrictions.
23 Jul
17 Jul
Jumlah undangannya tidak banyak. Hanya kerabat dekat dan sahabat kedua mempelai yang hadir. Pembawa acara serta pembaca doa kerabat sendiri. Musik dimainkan oleh teman-teman pengantin. Tidak ada beragam upacara adat yang rumit yang mengiringi pernikahan itu. Pakaian serta tata rias pengantin juga biasa saja. Cuma sedikit lebih formal dibanding pada hari biasanya, namun cukup anggun untuk dipandang sebagai gambaran pernikahan.
Sekali lagi, tak tampak hal luar biasa dari acara perbnikahan itu. Tetapi, saya merasa sangat nyaman berada di sana. Ada suasana yang jarang saya peroleh dari menghadiri kebanyakan pesta pernikahan pada acara tersebut. Saya merasa, suasana pernikahan itu sangat akrab. Pembawa acara dengan sangat ringan menyapa, bahkan berseloroh, pada tamu-tamunya. Hal itu wajar karena memang ia mengenalnya persis.
Antarkawan juga bisa saling dorong untuk menyanyi, atau memainkan musik. Para tamu juga saling sapa, hingga berbincang akrab. Pengantin juga tak harus terus-menerus berdiri tegak di tempatnya dengan terus-menerus memasang senyum anggun, menunggu diberi ucapan selamat. Sesekali, mereka seperti 'menjemput bola', berjalan (kadang bersama, kadang sendiri-sendiri) mendatangi tamu, bertukar kata secara ringan.
Suasana pernikahan demikian sungguh berbeda dengan pesta pernikahan yang kini lazim. Tapi, suasana itu justru mampu mengingatkan: apa makna pesta pernikahan? Kita acap merancang pesta pernikahan seagung dan semegah mungkin. Alasan kita, itu hari yang benar-benar istimewa. Lalu, kita merancang segalanya agar sempurna. Mulai dari bentuk undangan, atribut kenang-kenangan, seragam pakaian, tempat pelaminan, makanan, hiburan, dan sejuta pernak-pernik lainya.
Begitu banyak yang harus diurus, dan begitu banyak yang ingin mengurus agar benar-benar sempurna. Hasilnya, seringkali pesta pernikahan justru menjadi ajang ketegangan keluarga. Alih-alih melahirkan suasana yang hangat, pesta pernikahan banyak yang kemudian menjadi sekadar formalitas. Pesta pernikahan kita acap bergeser fungsi dari acara bersyukur dan memohon doa menjadi ajang pamer gengsi dan atribut diri. Banyak tamu hadir dengan perasaan terpaksa. Tak enak tidak datang karena sudah diundang. Jika demikian, doa restu apa yang dapat kita harapkan?
Kesederhanaan dalam pernikahan hari itu menyeret saya pada pertanyaan yang dalam. Apa ya sulitnya berpikir dan bersikap sederhana seperti itu? Jangan-jangan kerumitan kita dalam menggelar pesta perkawinan adalah refleksi dari kerumitan cara berpikir dan bersikap secara menyeluruh. Kita lebih mementingkan atribut ketimbang makna. Kita memenangkan formalitas dibanding otentitas dan spontanitas. Kita mengedepankan gengsi ketimbang esensi. Pantas jika bangsa kita masih jauh dari efektif.
.... - by: Zaim Uchrowi
***
Sebuah pernikahan yang bersahaja. Bagaimana menurut anda?
12 Jul
11 Jul
9 Jul
Congratulations to the Antarmuka team for winning one of the achievement awards in Imagine Cup 2008.
Source: http://imaginecup.com/about/news.aspx.
5 Jul
Yesterday evening, I've delivered a talk on protecting your code. Frequent readers would recognize that the first half of the talk was actually written in depth in the first SLPS post. It's not perfect, but I had fun. But definitely the best I did in English, so far.
So for you who didn't quite caught up with what I was talking (I know, I mumble here and there trying to buy some time :D), I'll explain in depth through this post.
First of all, I'm going to reemphasize my point of view; open source does not work, for business. It might be good for education, community, or charity, but not for business. You're trying to sell something you share, that's just doesn't make sense. This is why, there's an inherent requirement to protect your code.
When we're thinking about protection, we'll think: "It's compiled! They won't/don't/can't have the source code." Wrong.
If you're still on this mind set, then you should visit (or revisit) the first part of this post. There I demonstrate how easy it is to convert any compiled .NET assembly back to it's original source code. This actually made up the first of three parts of the talk. Compiling a small application and decompiling it using Microsoft and third party tools.
The next part is about basic protection. Microsoft have bundled Visual Studio with Dotfuscator Community Edition. It doesn't do much (even though the UI provided so many different features -- disabled), only some simple renaming. I've demonstrated how to use Dotfuscator.
This is the original code, which is 100% reproducible:
And after obfuscation using Dotfuscator Community Edition, it will become, even though it's 100% reproducible, but it's harder to understand:

Several important points on obfuscation:
You've seen Dotfuscator in action, now you'll want more. Unfortunately, more means money! You can easily search for obfuscation products using Google Live Search, so finding one is not on the scope of this post. I don't have any product ready, so I just try to open one of the users of obfuscator.
The company is Intersoft, the product is a UI control library. I "volunteered" to crack open their authorization code. Since good product requires good adversaries, therefore I embark upon the journey of the dark.
Here's one piece of the code which I have successfully decompiled:

This is only one part of the code which is the constructor. As you can see the obfuscator actually renamed parts of the code with unidentified characters. It's not easy to distinguish one with another, and in come parts of the code, Reflector crashes when trying to decompile it.
Long story short, I've been able to crack half of it (only the runtime component) in 8 hours. After that I lost interest, since buying it will be cheaper than hacking it.
Several important points on (expensive) obfuscation:
The third part of the talk is actually about Microsoft's product, Software Licensing and Protection Services, or in short SLPS. They have a product web site at root level (which means it's quite important) at www.microsoft.com/slps and if you have MSDN Subscription, you can get a free basic subscription to play with.
The difference between Microsoft and partner offerings is in the way the code protection does. While partners sell obfuscators, Microsoft sells encryptors. So your code is 100% not modified, but encrypted. This encrypted code will then run in a Secure Virtual Machine, or in short SVM. SVM itself runs on top of CLR (so it's still managed code). Moreover, Microsoft also offer activation services for your protected code. So when you pay for protection from Microsoft, they give you the ability to sell your software. Money out, money in.
Details will be in part three.