Or put it another way, Never Trust Your Anti-Virus!
Why?
Well, sebagai intro, di bulan Desember yang super sibuk ini (’coz Dec 15 deadlines ;)), di antara kesibukan pembuatan dokumen-dokumen pelaporan yang menumpuk dari sekian banyak proyek menjelang tutup buku akhir tahun, termasuk dokumen-dokumen penunjang untuk proyek-proyek tahun depan, di antara tugas-tugas luar kota untuk delivery produk, di waktu luang di sela-sela segala jenis kesibukan itu aku masih menyempatkan waktu mendesain dan membuat sebuah aplikasi kecil yang bisa membuat file yang bisa diolah oleh Microsoft Office atau OpenOffice.
Dan hasilnya? Sebuah virus! Hahaha, kurang kerjaan banget kan?
Doh! Sebenarnya bukannya aku kurang kerjaan, banyak banget malah, sebagaimana telah aku sebut di atas. Dan sebenarnya aku tidak berniat membuat sebuah virus, aku hanya membuat sebuah aplikasi kecil yang bisa membantu mempercepat penyelesaian pekerjaanku. Mengerjakan dokumen-dokumen itu adalah pekerjaan yang menurutku sangat membosankan dan membuang-buang waktu. Namun itu sudah menjadi tanggung-jawab pekerjaan yang mau tidak mau harus diselesaikan. Dan aku ingin pekerjaan itu bisa diselesaikan dengan cepat, tepat dan efisien sehingga tidak membuang waktuku dengan percuma. It’s because being effective is our key to success. Sungguh pola pikir karyawan teladan yak? Sebenarnya tidak, aku berpikir seperti itu karena aku bekerja di perusahaan sendiri. Dan aku ingin perusahaan ini nantinya bisa maju sekaligus kompeten serta sangat efektif dalam operasinya sehingga bisa memberikan aku waktu luang berlebih untuk bersenang-senang, titik! Hahaha. Namun aku sadar semua itu tidak akan datang dengan sendirinya. Harus ada kerja keras. Seperti kata pepatah: berakit-rakit ke hulu, berenang-renang ke tepian. Artinya? Pasti sudah pada tahu lah
Kembali ke pokok permasalahan, selama membuat dokumen-dokumen itu aku melihat ada pattern yang sebenarnya bisa diotomatisasikan oleh sebuah program. Itu karena sebenarnya dokumen-dokumen adalah serupa (tapi tak sama). Lebih dari itu, aku juga mengamati bottle-neck penyelesaiannya adalah pada kegiatan formatting, setting layout dan drawing. Style, formatting dan layout adalah tiga hal yang stright-forward untuk diotomatisasi. Sebagai prove of concept, aku telah membuat beberapa script dan template yang memungkinkan proses otomatisasi ini. Done!
Namun kombinasi script dan template ini ternyata dianggap terlalu susah oleh orang-orang Administrasi. Yach, namanya juga prove of concept, hehehe. Ternyata detil-detil konfigurasi dari tool-tool dan komponen-komponen scripting yang aku anggap mudah ternyata tampak susah oleh orang-orang non-teknis. Dan begitulah, aku pun menyibukkan diri meluangkan waktu membuat sebuah program stand-alone tanpa konfigurasi bertele-tele sehingga konsep otomatisasi ini bisa dipakai oleh orang lain selain diriku, dan aku pun telah merencanakan beberapa iterasi untuk menghadapi dan menyelesaikan tantangan pribadi ini.
Iterasi pertama, style dan formatting. Done! Microsoft Word telah berhasil membuka file hasil output dari program dan menghasilkan kombinasi style dan formating yang diinginkan pada tipe dokumen yang menjadi target, meski baru bisa meng-handle dokumen berisi teks biasa saja, tanpa gambar, list, tabel dan field-field khusus dari Microsoft Word.
Iterasi kedua, list. Done! Microsoft Word telah berhasil membuka file hasil output dari program dan menghasilkan kombinasi list, enumerasi dan bullet yang diinginkan, meski baru bisa meng-handle list dengan sub-list yang tidak lebih dari tiga level dengan bullet tipe standar saja, namun seharusnya telah cukup untuk kebanyakan dokumen. Retouching dibutuhkan untuk hasil akhir.
Iterasi ketiga, tabel. Done! Microsoft Word telah berhasil membuka file hasil output dari program dan menampilkan tabel yang diinginkan, meski baru bisa membuat tabel yang sederhana saja tanpa aksesoris tambahan seperti shading dan table-in-table, namun seharusnya telah cukup untuk kebanyakan dokumen teknis. Retouching dibutuhkan untuk hasil akhir.
Iterasi keempat, gambar bitmap. Done! Microsoft Word telah berhasil membuka file hasil output dari program dan menampilkan gambar yang diinginkan, meski hanya menyupport file BMP, JPG dan PNG saja, namun seharusnya sudah lebih dari cukup untuk kebanyakan dokumen.
Iterasi kelima, gambar vektor. Done! Microsoft Word telah berhasil membuka file hasil output dari program dan menampilkan gambar yang diinginkan, meski hanya menyupport file EMF saja, namun seharusnya sudah cukup untuk kebanyakan dokumen yang dicetak dengan printer laser.
Iterasi keenam, otomatisasi vector drawing. A work in progress. Sebagaimana telah disebut sebelumnya, kegiatan drawing termasuk bottle-neck pembuatan dokumen. Tujuan iterasi ini adalah mengekploitasi kemungkinan otomatisasi pembuatan gambar, terutama untuk descriptive content seperti seperti relasi table dalam database, diagram alur, atau sekedar deskripsi visual dari sebuah list/item-item dari proses kegiatan a.k.a. workflow. Format outputnya adalah file EMF.
Dan pada suatu titik dalam iterasi EMF ini, maka AntiVir akan menampilkan peringatan virus seperti di bawah ini setiap selesai compile dan linking dari kode program. Bukan hanya itu, dialog ini selalu muncul saat kita buka direktori tempat dia berada, kita klik, kita double-clik, kita klik kanan, atau kita jalankan lewat command prompt.
Very annoying!
Definitely I made no virus here as you can read in my confession above *lol*.
Now.what.the.hell.is.that.WORM/Agobot.40848?
It’s interesting to have this virus in the first place because we creates it,
… and it infects ourself,
… but is it really a virus?
Well, I’ll talk about that later since this article itself is a long read already.
See ya!

