31 May 2007

Retouch Photo Rusak


Ini karya saya pake Photoshop. Gak susah, cuma butuh waktu 1 1/2 jam buat benerin foto ini. Pertama Edit Curves, terus pake Clone Stamp dan Patch Tool. Thanks buat Nisa atas contoh foto yang sempurna.


Sebelum:



Sesudah:


Ada yang mau tutorialnya? Kasih comment dulu dunk... :)


Bangsa Semut pake IKON Lucu

Awalnya saya ngrasa ada yang 'membosankan' lihat Bangsa Semut. Yah, banyakan tulisan gak ada gambarnya. Bukan apa-apa, tapi emang rada males ngerjain gambar-gambarnya. Kemarin kebetulan mood-nya lagi pengin utak-atik CorelDraw sama Photoshop. Sekalian degh, saya bikinin ikon yang -menurut saya- cukup lucu-lucu ini. Mudah-mudahan bisa mempermudah milih bacaan, n bikin ratingnya naik. (he... laris manis). Kalo artinya saya kira udah jelas khan?


27 May 2007

CakePHP Chapter2: Konsep Dasar

Sebelum memulai instalasi dan praktek lainnya, ada baiknya kita mengenal konsep yang diterapkan dalam CakePHP. CakePHP menggunakan apa yang disebut dengan pola Model-View-Controller (MVC). MVC adalah pola desain software yang membantu secara logis memisahkan kode program anda, membuatnya lebih reusable, maintainable, dan lebih baik secara keseluruhan.


Dalam istilah Cake, Model mewakili bagian table/record database, dan hubungannya dengan table/record yang lain. Model juga dapat berisi aturan validasi data, yang biasa diterapkan ketika data model di-insert atau update.

View mewakili file tampilan Cake, yang merupakan HTML biasa dengan tambahan kode PHP.

Sedangkan Controller dalam Cake menangani permintaan dari server. Controller menangani user input (URL dan data POST), menerapkan business ligic, memakai Model untuk membaca dan menulis data dari dan ke database dan sumber lainnya, serta mengirimkan data keluaran ke file View yang sesuai.

Untuk memudahkan pengorganisasian aplikasi, Cake menggunakan MVC tidak hanya untuk mengatur bagaimawa objek berinteraksi dalam aplikasi, tapi juga bagaimana file-file disimpan, yang akan dijelaskan nanti.

Ok, sekarang kita beralih melihat susunan file/folder dalam CakePHP. Jika anda meng-unpack file yang sudah didownload dari chapter 1 sebelumnya, anda akan melihat bahwa ada beberapa folder dalam Cake. Namun ada tiga folder utama: app, cake, dan vendors. Secara lengkap berikut susunan folder dalam CakePHP:


/app
    /config          - Berisi file-file konfigurasi database, ACL, dll 
 
    /controllers     - Controllers aplikasi anda 
        /components  - Components aplikasi anda
 
    /index.php       - mempersilahkan anda untuk mengembangkan cake dengan /app
sebagai DocumentRoot
 
    /models          - Models aplikasi
 
    /plugins         - Plugins aplikasi
 
    /tmp             - digunakan untuk caches dan logs
(set folder ini menjadi writable)
 
    /vendors         - Berisi third-party libaries untuk aplikasi
 
    /views           - Views aplikasi
        /elements    - Elements, bagian dari tampilan
        /errors      - Custom error pages
        /helpers     - Helpers
        /layouts     - Application layout files
        /pages       - Static views 
 
    /webroot         - DocumentRoot untuk aplikasi
        /css
        /files
        /img
        /js
 
/cake                - Library inti Cake. Jangan edit file apapun dalam folder ini.
 
index.php           
 
/vendors             - Untuk server-wide third-party libraries.
 
VERSION.txt          - Versi Cake yang anda gunakan


CAKEPHP Chapter1: Pindah Framework Yuk...


Dunia tehnologi informasi yang saya tekuni saat ini benar-benar sedang berevolusi. Banyak yang bisa dijabarkan dari kalimat tadi. Namun saya hanya akan bercerita mengenai bahasa pemrograman yang saya pernah praktekkan sendiri.

Sejak masih SMP saya sudah belajar komputer (sekitar tahun 1998). Waktu itu komputer yang saya punyai adalah Intel 80486 dengan HD cuma 250 MB. Saya sudah belajar DOS 6.0 dan Windows 3.11. Bahasa pemrograman yang saya pelajari adalah QBASIC. Sifatnya masih main-main, penasaran.

SLTA saya harus berpisah dengan komputer saya. Saya disekolahkan oleh orang tua ke luar kota. Kadang masih bisa ngutak-atik komputer di rental pengetikan. Karena komputer di tempat rental tidak terpasang developer tools, seperti aplikasi pemrograman, saya hanya bisa sedikit ‘iseng’ bikin-bikin file BATCH atau VBScript. Pernah juga bikin virus macro pakai editor internal yang ada di Word. Kadang masih sempat main-main VB di rumah pake komputer Via 1 GHz Pro.


Setelah tiga tahun tidak ada ‘pegangan’, akhirnya saya punya komputer lagi. Kali ini Pentium 4 1,8 Ghz dengan HD 120 GB. Cukup banyak yang saya pelajari, walau belum cukup untuk dibilang ‘lengkap’. He…

Saya sempat belajar C++, GCC, Gambas, Phyton, ASP, .NET, dan PHP. Di sisi DBMS saya juga pernah pakai Access, SQL Server, MySQL, PostgreSQL. Kesemuanya hanya pada samapai tingkatan ‘rata-rata’.

Selalu ada keraguan untuk memperdalam suatu bahasa pemrograman dalam diri saya. Karena sebagus apapun kita menguasai suatu bahasa pemrograman, biasanya ada saja bahasa pengganti yang lebih matang, yang seringnya berbeda sama sekali konsepnya dengan yang sudah kita pelajari. Sejauh pengamatan saya, sepertinya hanya Java yang relatif stabil dan bisa diandalkan untuk program berskala besar sampai beberapa tahun ke depan. Saya juga sudah belajar sedikit tentang Java. Namun saya tidak ingin mengulasnya, karena sudah banyak tulisan yang membahasnya.

Kali ini saya ingin ngomong masalah framework. Kita bikin tulisan ini ringan-ringan saja. Agar anda dapat mengikutinya dengan mudah. Definisi yang saya pakai pun seringkali tidak baku dan tidak mengarah ke suatu referensi. Siap?

Baik, pertanyaan yang pertama: apa sih framework itu? Gampang aja: framework kita artikan kerangka kerja. Terus kenapa kita butuh framework? Banyak alasan yang bisa dikemukakan. Tapi kalau saya pribadi cenderung menyukai kemudahan yang ditawarkan dan sudah bosan dengan metode pengembangan yang ngasal dan gitu-gitu melulu. Nanti akan lebih saya jelaskan.

Ok, sekarang saya persempit lagi bahasannya dengan menambah satu kata: ‘PHP’. Jadilah framework PHP. PHP untuk saat ini masih bisa diandalkan untuk pengembangan aplikasi berbasis web. Keistimewaan PHP yang paling saya sukai adalah cross-platform, open-source, dan mendukung konsep OOP. Sekarang contoh nyata framework PHP tuh seperti apa?

Ada banyak contoh. Yang berbasis CMS seperti PostNuke dan Mambo. Dan yang lebih keren seperti Mojavi, WACT, PHP.MVC. Atau yang menekankan reusable code, event driven programming, dan berbasis komponen seperti Prado. Lagi-lagi semuanya punya kelebihan dan kekurangan. Dan saya kira sudah banyak referensi yang bahas CMS ataupun Prado. Sedang seperti Mojavi cs. belum banyak. Tapi saya pilih yang lebih populer dan memiliki komunitas yang aktif, yaitu CakePHP. Kalau boleh jujur, sebetulnya konsep yang ditawarkan Prado juga menarik. Namun sayang, untuk kemudahan dalam menemukan aplikasi yang mendukung untuk menulis kode komponen Prado secara auto-complete belum ada. Sedangkan CakePHP masih mengandalkan kode-kode dari PHP dan HTML.

Keistimewaan CakePHP yang saya sukai diantaranya:

  1. Scaffolding: fitur yang memungkinkan menguji aplikasi tanpa menuliskan kode CRUD (Create, Read, Update, Delete).
  2. Kompatibel dengan PHP4 dan PHP5
  3. ACL (Access Control List)
  4. Request dispatcher, yang membuat URL menjadi ‘lebih indah’
  5. Berbasis MVC (Model, View, Controller)
  6. Built in validation, dan masih banyak lagi fitur menarik lainnya.

Saya ingin memandu anda secara perlahan, sekaligus kita belajar bersama. Namun jika anda membutuhkan referensi resminya bisa anda kunjungi di http://cakephp.org.

Tapi sebelum anda memulai, anda bisa mendapatkan CakePHP dengan:

1. Download versi stable-nya di http://cakeforge.org/projects/cakephp/.

2. Versi nigthly build (stable dan ditambahkan bug fixes) dari http://cakephp.org/downloads/index/nightly.

3. Menggunakan SVN client ke https://svn.cakephp.org/repo/trunk/cake/

Happy CakePHP! :p


22 May 2007

HOT SPOT: Kebutuhan, Peluang, dan Ancaman


Popularitas Tukul Arwana dan jargonnya “kembali ke laptop” benar-benar bisa membuat suatu hal yang signifikan, termasuk di sekitar Yogyakarta. Lihatlah di sekitar kota, khususnya di kampus-kampus, mall/pusat perbelanjaan, ataupun resto/café di bilangan utara Kota Yogyakarta. Banyak anak-anak muda, yang notabenenya mahasiswa, membawa gadget yang biasa digunakan Tukul untuk memandu acaranya itu. Umumnya mereka membawa laptop yang sudah dipersenjatai dengan WiFi (Wireless Fidelity) Card atau kadang disebut juga Wireless LAN Card atau Wireless Card saja. Sebuah piranti untuk laptop yang menghubungkan laptop dengan Access Point(AP) atau Router untuk mengakses internet. Bagi laptop baru, umumnya sudah ter-install WiFi card. Sedangkan laptop lama, cukup dengan mengeluarkan uang dua ratus ribuan, anda sudah dapat menikmati layanan internet gratis di berbagai tempat di Yogyakarta.
Layanan internet gratis di sekitar wilayah AP ini biasanya disebut hot spot. Hot spot yang daya jangkaunya hanya beberapa meter saja ini juga punya standarisasi sendiri. Namun yang paling banyak diterapkan di Yogyakarta, adalah 802.11 b dan 802.11 g yang masing-masing memiliki kecepatan 11 Mbps dan 54 Mbps atau 108 Mbps dengan tambahan Turbo G (saya belum menemukan yang 802.11 a). Kedua standarisasi ini bekerja pada frekuensi 2,4 GHz.
Untuk memanfaatkan Hot Spot ini, ada berbagai macam kebijakan yang diterapkan oleh provider-nya. Ada yang bisa langsung terhubung dengan AP (seperti di Ambarukmo Plaza/Citranet, Kedai Nusantara di Nologaten, atau Lembah Kampus UGM), ada yang harus terdaftar MAC address (nomor seri WiFi Card) dan IP address-nya (seperti di kampus, i.e.: AMIKOM, UGM), dan ada pula yang memakai WEP Key (semacam password ke AP) (seperti di RAMA-NET/Netindo Group, Seturan).
Namun biarpun berbeda-beda, ada satu kesamaan keuntungan yang bisa kita dapatkan, sama-sama gratis. Hal ini sangat menguntungkan, khususnya bagi mahasiswa yang senang mendengar kata “gratis”. Kalau beruntung, anda bisa sekaligus menikmati pemandangan atau suasana yang menyenangkan di sekitar hot spot. Kalau ada duit, anda bisa singgah ke café sembari menikmati secangkir kopi, cukup dengan sedikit biaya yang jauh lebih murah daripada yang anda keluarkan untuk menggunakan jasa warnet. Yang paling asyik adalah jika tempat tinggal kita dekat dengan area hot spot. Jika legal, kita bisa memanfaatkan layanan ini kapan pun kita mau. (Hal ini sangat berbeda dengan yang saya rasakan ketika di Bandung –ketika saya PKL di Telkom RisTI selama dua bulanan. Semisal di BTC (Bandung Trade Center), BEC, Cihampelas Walk atau beberapa café lain yang mengharuskan berlangganan ke CBN, Melsa, atau IM2. Kalau ada gratisan, biasanya tiap sekitar tiga menit putus).
Adanya hot spot gratisan ini, bagi kebanyakan mahasiswa seperti saya merupakan berkah tersendiri. Selain hemat biaya, resiko keamanan seperti history, cache, ataupun lupa logout dari suatu website bisa terhindari dengan memakai laptop sendiri. Software aplikasi yang digunakan pun bisa lebih beragam dari software-software yang terinstal di komputer warnet. Bagi entrepreneur, melihat hot spot ini merupakan suatu peluang untuk melebarkan segmentasi pasar atau menjaga loyalitas pelanggan. Dan bagi pedagang komputer, hot spot ini menjadi isu penting untuk menaikkan angka penjualan laptopnya.
Di samping keuntungan dan peluang yang ditawarkan, hot spot juga datang dengan sedikit kerugian dan ancaman. Yang nantinya paling terasa dampaknya adalah bisnis warnet. Seiring terjangkaunya harga laptop, orang-orang yang beralih menggunakan layanan hot spot ini pun akan makin banyak jumlahnya. Namun, hot spot ini pun bukan berarti bebas dari ancaman. Ada segelintir orang yang “kreatif” (baca:kere dan aktif) yang tinggal di sekitar lokasi hot spot, mampu menghadirkan hot spot tadi ke tempat tinggalnya. Tentunya resiko keamanan dan bandwith yang terbuang karena hal ini harus bisa diatasi. Selain hal tersebut, yang mungkin jadi ancaman buat WiFi adalah hadirnya tehnologi baru yang lebih hebat seperti WiMax yang punya daya jangkau hingga 30 km. Jika sudah begini, maka pemerintah dan instansi/asosiasi pengusaha yang terkait harus secepatnya membuat regulasi untuk memanfaatkan keuntungannya dan mengatasi kerugian yang dibawa.
Di balik semuanya, saya yakin nantinya akses internet masyarakat kita bisa merata dan cuma-cuma. Menjadi suatu kebutuhan yang tak terpisahkan dari kehidupan kita. Sama seperti akses acara televisi. Dulu kita wajib membayar “iuran”, namun sekarang kita bisa menonton acara televisi sesuka hati kita berkat kerjasama sponsor yang menjajakan produknya lewat televisi. Pertanyaannya: “Siapkah kita menyaring informasi dari internet tersebut? Khususnya untuk anak-anak dan generasi muda kita?”

04 March 2007

Setitik Nila


Semakin malam obrolan empat orang di pos ronda RT 05 RW X Kelurahan M serasa makin asyik. Paling tidak, itulah cara terbaik mereka yang meronda malam itu untuk menghilangkan kantuk. Sambil sesekali berkelakar dan bermain kartu, mereka satu per satu keliling memantau keadaan sekitarnya. Kegiatan ronda malam yang sudah lama mati kini dijalankan lagi setelah maraknya kemalingan di sekitar Kelurahan M semakin santer akhir-akhir ini. Rumah yang terakhir kemalingan adalah rumah Pak Lurah mereka. Seperangkat home theater dan beberapa peralatan elektronik lainnya ludes dibawa maling. Sejak itulah, Pak Lurah yang juga seorang pengusaha waralaba itu mengeluarkan instruksi untuk mengaktifkan kembali kegiatan ronda malam di masing-masing RT. Alhamdulillah, hampir satu bulan sejak dikeluarkannya instruksi itu belum ada kejadian kemalingan lagi di Kelurahan M.

“Kalo dihitung-hitung, yang paling banyak kemalingannya itu Pak Lurah kita, ya Kang?,” kata Juned pada Kang Amin dengan nada bertanya.

“Dia mah enggak begitu kehilangan. Hasil usaha dagangannya sebulan saja lebih dari cukup untuk membeli lagi barang-barang yang dicuri itu,” timpal Kang Amin yang mulutnya penuh dengan kripik singkong. Ia memang tidak pernah mau rugi soal makanan. Mumpung sekarang bukan gilirannya untuk menyuguhkan makanan. Sebaliknya, ia akan sedikit makan kalau tiba gilirannya. Syukur-syukur masih ada sisa untuk dibawa pulang dan bias untuk cemilan di rumah. Maklum, keluarga Kang Amin termasuk keluarga dengan ekonomi pas-pasan.

“Yang paling kasihan ya Pak Giman itu. Motor kreditan yang baru dipakai tiga hari ikut-ikutan diboyong maling,” Kang Soleh, Ketua Pemuda RT 05, tidak mau ketinggalan memberikan komentar.

“Betul Kang! Padahal kreditannya kan sampai tiga tahun, dan gaji guru SD seperti Pak Giman dan saya ini kan kecil. Paling sisa sedikit setelah semua kebutuhan hidup keluarga tercukupi,” kata Kelik teman seprofesi Pak Giman.

“Eh iya, ngomong-ngomong sampeyan sudah nanya sama Abah belum siapa malingnya dan dimana keberadaannya?,” tanya Juned pada Kang Soleh.


“Sudah, katanya sih pelakunya gerombolan.”

“Abah tidak menyebutkan satu per satu namanya dan dimana mereka sekarang?”

“Tidak.”

“Aneh ya? Tidak biasanya Abah seperti itu. Biasanya Abah kan kalau ditanya barang-barang yang hilang langsung memberi tahu barangnya sekarang ada dimana dan siapa yang mengambil.”

“Iya ya, Ned! Dulu saja ada muridku yang kehilangan tas sekolah, terus dia langsung sowan ke Abah. Abah langsung ngasih tahu kalau tasnya ketinggalan di rumah temannya,” Pak Kelik kembali menimpali.

“Ah… mungkin Abah sudah terlalu capek malam itu. ‘Pasien’-nya kan banyak. Waktu berkunjung ke Abah kemarin, kebetulan aku pasien terakhir malam itu,” Kang Soleh mencoba tetap ber-khusnudzan.

“Iya ya, mungkin betul yang barusan sampeyan katakana. Katanya Abah itu Cuma punya waktu tidur tiga jam setiap harinya,” kata Kang Amin sambil melilitkan sarung di pinggangnya dan menghabiskan kopi yang tersisa di gelas besarnya. Sebentar lagi giliran dia menggantikan Pak Asep yang sedang keliling.

“Coba saja sampeyan hitung sendiri.”

Kang Soleh menyalakan rokok kelintingan-nya, kebiasaan dia sebelum bercerita.

“Pagi hari beliau harus bangun jam empatan untuk memimpin jamaah subuh di masjid pesantrennya. Setelah itu ngajar ngaji santri-santrinya. Selesai pengajian dia ngantor di Madrasah Aliyah sebagai Kepala Madrasah. Itu pun kadang-kadang beliau keluar dari Madrasah untuk mengontrol anak buah di toko meubel dan bengkel mobilnya. Biasanya beliau keluar dari toko atau bengkel ba’da Ashar. Sehabis itu, ngajar ngaji bandongan di Masjid Agung. Maghrib sampai Isya, beliau mengkhususkan diri untuk ber-i’tikaf di Masjid. Tidak boleh diganggu siapapun, apalagi mengurus hal-hal yang bersifat keduniawian. Beliau punya waktu untuk berkumpul dengan keluarga beliau sampai jam sembilan malam. Paling-paling sekedar beristirahat atau makan bersama keluarga. Itu juga kalau beliau tidak ada permintaan untuk mengisi pengajian di suatu acara. Sehabis itu, beliau buka praktek dan menerima tamu-tamu yang mau berkonsultasi padanya, mulai dari permasalahan hukum agama hingga hal-hal seperti pesugihan, mulai orang kere hingga konglomerat atau pejabat teras, sampai jam satu malam.”

“Ck… ck … ck… Luar biasa kegiatan Pak Kyai Tamim alias si Abah itu ya! Sudah kebutuhan dunianya tercukupi, ilmunya pun bermanfaat bagi orang banyak,” sahut Kang Amin spontan.

“Itu juga tidak terlepas dari jasa ayahanda beliau, Kyai Muklas. Konon Abah mewarisi pengikut almarhum Kyai Muklas dari bangsa jin yang jumlahnya ribuan. Jin-jin inilah yang selalu membantu Abah untuk menjawab pertanyaan-pertanyaan pasiennya.”

“Dan saya rasa uang yang beliau terima dari pemberian pasien-pasiennya setiap bulan saja cukup untuk biaya naik haji berapa orang.”

“Itulah rizqi, kita yang sulit-sulit nyari ngalor-ngidul belum tentu dapat, Abah tinggal duduk di rumah, rizqinya malah nyamperin dia,” Juned yang dari tadi Cuma bertanya kini memberikan komentar.

Begitulah, malam itu tidak terasa terlewati dengan obrolan yang mengasyikkan. Tapi seperti malam-malam sebelumnya, sejak kegiatan ronda malam diaktifkan kembali malah tidak ada kejadian apa-apa. Bertentangan dengan ingin terciptanya rasa aman, warga RT 05 dan juga seluruh warga Kelurahan M hanya bisa berharap maling-maling itu melakukan tindakan ceroboh yang bisa membuat mereka tertangkap.

Malam kali ini, rintik-rintik hujan mulai turun sejak ba’da Isya tadi. Namun demikian, tetap saja tak dapat membuat semangat warga yang mendapat giliran tugas ronda malam itu surut. Mereka benar-benar menunaikan tugas mulia itu dengan tingkat kesadaran pribadi yang sangat tinggi. Mereka tidak ingin ada lagi salah satu warganya kehilangan harta benda mereka.

“Sampeyan sudah sowan ke Abah lagi, Kang?,” tanya Pak Giman.

“Sudah,” jawab Kang Soleh. Kang Soleh diam sebentar sambil menghirup nafas panjang dan melinting-linting rokoknya. Dia seperti sudah benar-benar kehabisan akal untuk memuaskan pertanyaan itu. Mulutnya hanya mampu mengeluarkan jawaban singkat yang entah sudah diulangnya berapa kali. “Abah masih belum memberikan jawaban pasti, ia hanya berpesan supaya kita bersabar.”

“Saya kok jadi curiga dengan Abah. Tidak biasanya Abah seperti ini!”

“Hus …! Segala bentuk su’udzan itu gak baik Pak,” tukas Kang Soleh. Tiba-tiba memorinya tersangkut kembali dengan kejadian serupa yang pernah dialami Bu Minah, tetangga satu temboknya. “Setahun yang lalu Bu Minah juga pernah kehilangan perhiasannya, namun Abah juga tidak memberikan jawaban pasti.”

“Dan sampai sekarang?,” Pak Giman bertanya lagi. Tapi apapun jawaban yang dikatakan Kang Soleh nantinya, dia hanya mencemaskan motornya yang tidak kunjung kembali.

“Belum ketemu.”

“Ah… lagi pula tak semua jawaban Abah bisa dipastikan kebenarannya. Saya juga punya teman seperti Abah. Tapi jawabannya sering salah. Itu juga tergantung amal dan wiridan yang dilakukan Abah dan tingkat ilmunya serta jin yang menjadi khadam-nya,” komentar Pak De Tomo, sesepuh yang membuat empat lain yang meronda malam itu enggan untuk bermain kartu seperti biasanya. Pak De hanya ingin menenangkan Pak Giman yang jelas masih terlihat belum percaya dan bisa menerima musibah yang menimpanya.

“Maksudnya?”

“Tidak ada satu pun makhluk yang sempurna. Apalagi sempurna perbuatannya. Jin, seperti halnya manusia, juga punya keterbatasan. Meskipun jin itu makhluk ghaib, namun bukan berarti mereka tahu segala sesuatunya. Hanya Allah lah yang Alimul Ghaibi was Syahadah, Yang Maha Mengetahui yang ghaib dan yang nampak.”

Setelah Pak De Tomo selesai berbicara, tiba-tiba Pak Giman menjadi sumringah dan segera bangkit dari duduknya dengan penuh semangat. Bukan karena jawaban Pak De Tomo yang bijak dan menenangkan itu, namun karena terdengar suara yang ditunggu-tunggu Pak Giman selama ini.

“Maling… maling… maling…!,” teriakan itu bergema disertai suara kentongan. Kang Soleh sontak menabuh kentongan di Pos Siskamling dan diikuti keempat kawannya berteriak memberitahukan adanya maling. Para warga sekitar RT 05 berhamburan keluar rumah. Makin lama makin banyak suara itu. Tak mau ketinggalan, para warga dari RT lain pun ikut beramai-ramai turun ke jalan mengikuti sumber suara. Saat yang mereka tunggu selama ini untuk menangkap maling yang selama ini membuat mereka tak bisa tidur tenang sudah datang.

Tiga bayangan hitam berkelebat tak karuan malam itu. Sosok mereka sulit untuk dikenali, karena selain cahaya lampu yang remang-remang, wajah mereka pun tertutup. Namun secara fisik dapat diperkirakan bahwa tiga sosok itu adalah lelaki dan masih muda. Tubuh mereka tegap dan tinggi dengan perawakan yang kekar.

Tiga bayangan hitam yang sudah menyadari diri mereka akan menjadi sasaran amukan warga secepat mungkin ambil langkah seribu dari rumah yang menjadi sasaran perbuatan mereka malam itu. Tubuh mereka yang tinggi besar tak mampu menyembunyikan nyali mereka yang menciut. Debaran jantung mereka terasa lebih keras dan kencang dari biasanya. Adrenalin terasa terpompa deras di bawah kulit mereka. Tak ada waktu untuk berfikir kemana mereka akan lari dan bersembunyi. Mereka benar-benar panik. Barang-barang yang mereka ambil dari rumah korbannya mereka tinggalkan begitu saja. Yang penting bagi mereka saat ini adalah selamat dari kepungan warga.

Warga yang sudah dipenuhi rasa kemarahan dengan penuh semangat mengejar ketiga sosok itu. Semua warga dengan keadaan seadanya turut serta berlari di belakang ketiganya. Ketiga sosok itu terus berlari dengan menghimpun segenap tenaga yang tersisa. Ketika ketiganya sampai di pertigaan jalan, mereka tak bisa berfikir dan bergerak bersama-sama lagi. Mereka berpisah. Yang satu lari ke arah kiri, dua yang lain ke arah kanan. Namun malang bagi ketiganya. Kemanapun mereka lari, di depan mereka sudah menghadang sekelompok massa lainnya yang sudah siap dengan alat pemukul di tangan mereka masing-masing. Ada yang memakai tongkat, sapu, payung, panci, ranting-ranting pohon, bahkan beberapa senjata tajam.

Ketiga bayangan hitam itu sudah terpojok. Tak ada celah jalan ataupun gang-gang sempit untuk melarikan diri. Mereka berdiri merapat di tengah-tengah persimpangan jalan. Lutut mereka gemetaran. Mereka benar-benar takut. Untuk menatap wajah para warga pun mereka tak berani. Keberanian yang tersisa dari mereka hanyalah mengharapkan belas kasihan dan ampunan warga, yang tak mereka berikan pada para korbannya dulu. “Ampun… ampun…,” kata-kata itu diucapkan dengan mimik memelas dan wajah pusat pasi.

Sayangnya permintaan maaf mereka tak diterima warga. Satu pukulan mendarat telak di tengkuk salah satu dari mereka. Pukulan itu langsung diikuti pukulan-pukulan lainnya yang tanpa ampun menghajar wajah dan tubuh mereka malam itu. Amarah dan emosi sudah tak dapat dibendung lagi. Mereka melampiaskan kedongkolan yang sudah lama ditahan. Terlebih lagi Pak Giman. Malam itu dia seperti kerasukan tenaga yang luar biasa. Pukulan dan tendangan yang dilayangkannya menghajar tanpa belas kasihan.

Kang Soleh yang sedari tadi berada di belakang kerumunan massa, berusaha masuk ke tengah-tengah kepungan untuk menghentikan aksi main hakim sendiri itu. Dengan dibantu beberapa pemuda lainnya, akhirnya aksi warga itu dapat dihentikan. Namun malang, salah satu dari maling itu sudah terkapar tak berdaya. Kang Soleh mendekati tubuh itu dan memeriksa detak jantungnya. Dia menghela nafas panjang dan menggelengkan kepalanya. Dia menyesali tindakan warga yang main hakim sendiri, meskipun dia dapat memaklumi dan mengerti tindakan mereka.

Salah satu maling itu telah mati. Kang Soleh mencoba membuka topeng yang menjadi penutup wajah maling itu. Dalam keremangan lampu-lampu jalan malam itu, Kang Soleh berusaha mengenali wajah yang sudah hancur itu. Kang Soleh tersentak kaget ketika berhasil mengenali wajah yang tidak asing baginya.

“Astaghfirullahaladzim, taufik dan hidayah-Nya memang sebagian dari rahasia-Nya.”

Setelah mendengar kejadian itu, Kyai Tamim langsung pergi menuju tempat kejadian perkara (TKP). Hatinya galau. Ia berharap berita yang baru didengarnya dari beberapa pemuda yang melapor padanya tidak benar-benar terjadi. Sepanjang jalan ia berusaha menata hatinya berulang kali. Raut gelisah terlihat jelas di wajahnya dan matanya yang mulai berkaca-kaca.

Di TKP sudah terlihat beberapa orang polisi mengamankan kedua tersangka yang masih hidup dan sesosok jasad yang menggeletak tak berdaya itu. Beberapa polisi lain terlihat sedang mengorek keterangan dan menyusun kronologi kejadian. Kyai Tamim segera menghampiri jasad yang sudah tak bernyawa lagi setelah polisi memberinya izin untuk melewati garis batas polisi. Ditatapnya sosok itu. Berulangkali ia berusaha meyakinkan dirinya bahwa yang dilihatnya tidak benar. Namun dilihat berapa kali pun tetap saja ia tak bisa memungkiri bahwa sosok itu benar-benar sudah mati. Dan sosok itu sangatlah dicintainya.Ia menghampiri tubuh itu, kemudian memeluknya. Tangisnya memecah memilukan warga yang masih berdiri di sekitar TKP. Pelan-pelan dipanggilnya beberapa kali nama orang yang sudah mati itu, berharap dia masih bisa mengucapkan sedikit salam perpisahan untuk yang terakhir kalinya, serta sedikit permintaan maaf. Maaf karena tidak bisa mengemban amanat yang telah diberikan Allah kepadanya. Maaf karena dirinya telah gagal mendidiknya. Gagal menjadi ayah bagi jasad itu. Buah hatinya sendiri. Anaknya yang telah terjerumus dalam pergaulan yang salah, dan Kyai Tamim berharap masih bisa membawanya kembali sebelum Allah menakdirkan lain. Namun, tetap saja jasad itu tak bergeming. La haula wala quwata illa billah…

25 Agustus 2004