8.29.2008

All the Talks

Talking creates technicalities. Doing eliminates them.

Jadi gitu...

8.25.2008

Semua Salah Saya

Dengan rate room Rp. 471.900 yang saya dapat, kamar Grand Preanger seadanya banget. Ga ada hair dryer-nya, TV kabel isinya sedikit, kuno-kuno pula, ga ada bathtub, dindingnya bopel. Trus, masih musim ya akses internet pake kartu prabayar? Di Savoy gratis tuh... Untung letaknya paling dekat sama hotel terbaik di Bandung versi pintunet, jadi ga bakal khawatir kehabisan tamu lah yaa.. Cukup terima muntahan dari Savoy, tamu-tamu pasti berdatangan, hari-hari kerja dan gajian akan berjalan lancar. Sayang sekali saya ga bisa tinggal di hotel ini sampai jadwal yang sudah ditetapkan, udah penuh, jadi cuma bisa sampe sehari sebelumnya.

Saya reservasi loh, sudah bilang mau reserve dari ahad sampai rabu, tapi disuruh langsung datang aja bawa SPD. Saya sudah pastikan apakah ada kamar, operatornya bilang ada. Begitu datang, cuma ada kamar sampai hari Selasa. Dengan maksud mengakhiri kekecewaan, resepsionisnya bilang saya dimasukkan waiting list, toh saya sudah tinggal. Apa dengan begitu kemungkinan dapat kamar jadi besar? Ga tau deh. Ga lupa sang resepsionis menebak-nebak kesalahan saya, "Mungkin Mbak ga bilang mau tinggal sampai Rabu." Oh God.. Lalu resepsionis satunya lagi juga ga mau kalah, ngingetin saya untuk sering menanyakan kelangsungan kamar saya selepas Selasa. Sibuk banget kali dia, jadi pasti ga inget pernah nulis bahwa penghuni kamar 508 minta perpanjangan kamar. Ga enak juga kali dia, ngerepotin temen kerjanya yang lain untuk berbaik hati mengecek perpanjangan kamar saya. Tenang aja, saya ga begitu kepingin untuk tinggal lama-lama...

Saya seret sendiri kopor berisi baju dan laptop, menuju lift yang tidak lupa saya tanya dimana letaknya. Saya cari letak kamar saya sendiri, mengira-ngira dimana kiblat, steker lampu, pengatur AC.

Yah, mungkin muka saya tidak familiar untuk hotel bintang 4, my bad. Harusnya saya bapak-bapak, atau tidak bermuka lokal. Cewek, bermuka lokal dan datang sendirian ke Bandung? Belajarlah dari kesalahan saya, nginep di Savoy-Homann aja.

Sukabirus, Selayang Pandang

Dulu waktu nenek masih muda *tsaah*, maksudnya waktu saya masih kuliah, belakang STT Telkom -sekarang IT Telkom- masih sawah. Sekarang, rumah-rumah kos apik berdiri angkuh di sepanjang jalan, menggantikan sawah-sawah. Dulu, saya gak kepikir naik taksi sampai tempat kos, sekarang taksi, mobil mewah, barisan motor mondar-mandir bahkan sampai bikin macet di jalan Sukabirus. Tinggal tunggu waktu nih, mungkin sebentar lagi ada mall dan bioskop di Dayeuh Kolot.

Foto-foto di bawah diambil saat jalan pagi dari Sukabirus melewati pinggir sawah rumah-rumah kos baru, sampai gerbang samping IT Telkom. Bareng neng Dias yang sempat ngambek karena hampir ga jadi beli baju Barbie. Dan Teh Iyuk yang dengan baik hati menceritakan hal-hal terlewat oleh saya selama tidak kos di rumahnya lagi. Sempat mampir di warung kakaknya Diah, makan nasi beras merah, ayam bakar, tahu, tempe, perkedel, bala-bala (bakwan), sambal dan lalapan buat sarapan *whaat, sarapan segitunya?* Hehe... tenaang, sebagian dibungkus buat makan di rumah. Warungnya keren, dipinggir sawah dan empang, lesehan, bisa sambil liat (dan diliatin) orang lewat. Nasi beras merahnya dibungkus daun pisang, ayam bakarnya masih anget baru selesai dibakar. Dias yang mungil itu makan dalam porsi yang tidak dapat kami percaya.

Saat taksi Putra yang membawa saya melewati gerbang depan ke arah jalan Telekomunikasi berjalan pelan, sebuah gedung bertingkat terlihat sedang dalam tahap pembangunan. Tampaknya ekspansi Yayasan Pendidikan Telkom buat mengoptimalkan lahan di sekitar kampus masih akan terus berlanjut. Semoga tidak membuat Sukabirus yang bersahabat berubah menjadi lahan pengeruk uang yang materialistis.

8.22.2008

Sebuah SQL Statement untuk Dynamic Search

Tulisan ini didedikasikan untuk Pak Firman, bos saya dulu di Jatis Ecom. Copyright ide ini milik beliau.

Pernah punya form yang isinya parameter search? Yang field-nya boleh diisi boleh tidak? Terus SQL statement nya nggak ditanem di dalam koding? Say... pake ibatis atau web.config, app.config, setting.ini, sqlserver.properties? Galaxy developers, how are you guys today *loss focus*

Kalo SQL statement ditanem di dalam koding, remeh, tinggal pake IF, ya kan? Kalo SQL nya di luar? Mesti bikin banyak, sebanyak parameter search yang boleh kosong? Nggak dong.. pake aja parameter dummy.

Gini, anggap aja kita punya 2 parameter search, NAMA dan NIK. Dua-duanya boleh kosong. Anggap ada tabel pegawai, fieldnya NAMA, NIK, ALAMAT.

Maka SQL defaultnya akan begini:

SELECT nama, nik, alamat
FROM pegawai
WHERE nama = :parameter_nama: and
nik = :parameter_nik:

Jika isi parameter adalah string kosong alias '', maka query di atas bakal mengembalikan hasil karyawan dengan NIK = '' dan NAMA = ''. Padahal user maunya kalo isi parameter kosong, maka query harus mengembalikan hasil seluruh isi tabel.

Caranya? Ganti SQL nya dengan yang ini:

SELECT nama, nik, alamat
FROM pegawai
WHERE ( nama = :parameter_nama: OR 1 = :parameter_nama_kosong: ) and
( nik = :parameter_nik: OR 1 = :parameter_nik_kosong: )

Kalau NAMA = '', maka :paramater_nama_kosong: diisi 1. Otherwise, isi :parameter_nama_kosong: dengan apa saja selain 1. Lakukan hal yang sama untuk NIK dengan mengisi :parameter_nik_kosong:. Done.

Gimana? Got it?

8.19.2008

Sometimes love just ain't enough

Kalo Allah bilang belum, sebesar apapun cinta saya pada ide melangkah ke tahap selanjutnya, tak akan cukup. Cinta memang tidak cukup, Allah lah yang mencukupi, ya kan?

NB: silakan kasih tahu saya Qur'an surat dan ayat berapa...

8.15.2008

Kalau Kedatangan Programmer Baru

Maka hal-hal kecil yang biasa luput dari perhatian adalah:

  • Dia belum tahu budaya koding di kantor. Silakan kasih dia satu contoh project kamu yang well-developed, well-documented dan well-maintained. Itu akan jadi standar dia untuk mulai koding. Dia akan belajar gimana cara logging, menangkap dan menampilkan exception, database yang biasa dipake, naming convensions.
  • Dia tidak tahu bisnis proses. Kalau dia tahu, dia ga akan bikin search transaksi sejak perusahaan didirikan sampai saat ini beranak pinak tanpa parameter mandatory selain tanggal. Pastikan dia dapat sumber-sumber yang dibutuhkan supaya proses belajarnya berjalan cepat. Contoh form pembelian, penjualan, aplikasi lain yang terkait atau mirip, narasumber, koneksi internet supaya bisa nanya gugel.
  • Dia belum tahu di posisi mana dia berdiri. Dia harus bekerja dengan orang-orang asing yang kemungkinan besar mempersulit hidupnya dengan mengambil keuntungan dari ketidaktahuannya. Beritahu secara umum apa yang dapat dia ambil, dari siapa dan bagaimana. Dan apa yang sebaiknya tidak diambil, dari siapa dan dengan cara apa.
  • Dia belum mahir menentukan prioritas. Permintaan internal kadang datang dari staf sampai level manajer. Dari yang sekedar iseng-iseng berhadiah (IIB) sampai yang mempengaruhi performance. Kalo dia keukeuh menyelesaikan yang IIB tadi, katakan dengan jelas prioritasnya. Itu yang perlu dia tahu untuk mulai kembali ke jalan yang benar.
Kalau tidak ada yang memastikan ini terjadi, maka kamu saya sebagai programmer baru harus proaktif memastikan kita dapat semua hal di atas. Have a nice code day!

8.14.2008

Tantangan Smartforms

Looping hanya boleh terjadi di satu main window. Masalahnya, saya mau looping di beberapa window, dari source internal table yang berbeda. Ok, kalo ga bisa beberapa window, saya mau deh kerja bakti supaya jadi 1 window. Tapi abis itu "terlanjur basah ya sudah mandi sekali", kerja bakti lagi nyatuin ke 1 internal table. Pusing.. Worth it ga yah... tar abis dibikinin gini, ga kepake ...::(

6:19 PM: update, ga perlu kerja bakti, YAY!! Curang2 dikit pake &SFSY-PAGE&

 
Template by yummylolly.com