Archive for March, 2007

Oops.. gak bisa oracle di mac!

Setelah seharian mencoba, dan kemudian terbentur error yang sama, ada library yang tidak ketemu, dan dilanjutkan dengan brosing kesana-kesini, disimpulkan kalaou sementara ini oracle 10.1 belum bisa diinstall di osx intel. Penyebabnya adalah karena library untuk intel belum didukung oleh oracle. Mungkin oracle akan suppport untuk leopard.

Oh well, sementara ini menggunakan parallels dan windows hehe.. and while at it, menggunakan toad juga ;)

Tags: , ,

Singleton vs static

Kedua jenis class ini sangat mirip dalam penggunaannya, dengan perbedaan jika class singleton, dalam satu sesi aplikasi, hanya ada satu object yang diinstantiate, sedangkan static class ( class yang hanya terdiri dari static method ) tidak pernah ada instance yang dibuat, sesuai dengan sifat method-nya. Satu lagi, karena static class tidak pernah di instantiate, maka static class tidak dapat menyimpan state, atau bisa saja dengan menggunakan variabel static. Hmm.. jadi tidak bisa dibilang berbeda dong haha.. Tapi kalau tidak salah variabel tersebut tidak bisa diakses karena class tidak di instantiate, yang berarti variabel tersebut tidak pernah ada.

Hanya saja karena kemiripan penggunaan, yaitu kebutuhan akan instance yang hanya satu (atau tidak ada instance sama sekali) pada satu sesi aplikasi, maka kadangkala bingung juga mana yang harus dipakai.

Setelah luntang lantung ke beberapa situs ( lewat google hehe ) ternyata ada satu hal yang harus digunakan dalam mempertimbangkan metode yang dipakai. Yaitu perbedaan siat keduanya, penyimpanan state, dan satu lagi polymorphism.
Jika state class diperlukan dalam aplikasi, atau jika pada satu saat nanti class akan di extend, singleton lebih layak dipakai. Jika method hanya digunakan untuk memproses data, tapi penyimpanan data dalam class, pakai static method.

There you go!

( biar gak lupa hehe )

Tags: , , ,

Kuncinya adalah proses bisnis!

Ketika sarapan tadi saya sempat kepikiran mengenai proyek terakhir yang saya kerjakan. Proyek yang sebenarnya tidak berbeda dengan proyek-proyek lain, hanya saja unik karena proyek pekerjaan saya pada proyek ini adalah semacam disaster recovery.

Proyek ini seharusnya berakhir pada desember 2006, dari mulai pengerjaan oktober 2006. Tetapi karena perusahaan yang diberi wewenang untuk mengerjakannya ternyata tidak dapat memenuhi deadline sesuai kesepakatan ( dengan kata lain subkonnya ngaco ), maka akhirnya saya dan beberapa teman diterjukan.

Recoverynya sendiri berjalan dari pertengahan desember sampai pertengahan maret 2007. Selama tiga bulan. Tidak berbeda dengan waktu yang seharusnya menjadi tanggung jawab subkon. Kalau dipikir-pikir jadi tidak berbeda dong tim saya dengan subkon tersebut ?

To our defence ( hehe bahasanya ), tim saya berangkat dengan posisi sebagai programmer semua, jadi kita nanti dibawah subkon yang memang selama ini menjadi team leader dari proyek. Dan karena posisi sebagai programmer, yang dikerjakan haya level programming, tidak mencakup scope yang lebih luas. Kemudian pada bulan januari, ketika kemudian subkon tidak lagi mau mengerjakan, kami mulai harus memikirkan semua aspek dari aplikasi, mulai dari proses bisnis, core dan sistem pendukung pada aplikasi dan pengerjaannya sendiri.

Dan itu yang benar-benar menghabiskan waktu. Saya merubah modul yang saya kerjakan sampai empat kali karena harus menyesuaikan dengan proses bisnis ( pada saat pertama dibuat, masih merujuk ke dokumen dari subkon, yang ternyata tidak sesuai dengan proses bisnis ), dan perubahannya, serta karena harus menyesuaikan dengan sistem pendukung ( database connection pooling ). Dan itu juga terjadi untuk semua modul yang kami kerjakan.

Jadi selama tiga bulan ini kami mengerjakan modul yang sama berulang-ulang karena satu dan lain hal. Jadi pengerjaannya sampai tiga bulan.

Sekarang ini sih ketika bisa berpikir lebih jernih, hal tersebut tidak boleh terjadi lagi..

  1. Tidak usah lagi menggunakan subkon selama masih bisa dikerjakan sendiri, which means total control.
  2. Apapun situasi proyek, hal yang paling penting sebelum mulai mengerjakan adalah tahu sasaran pengerjaan, yaitu proses bisnis.
  3. Sebelum pengerjaan dimulai ( menyambung dari point 2 ), harus tahu juga secara garis besar sistem yang akan kita kerjakan atau seperti kasus ini sistem yang ada.
  4. Untuk kasus seperti ini, yang pertama kali harus dikerjakan adalah mempelajari bisnis proses terlebih dahulu.
  5. Berulang-ulang tapi penting, yaitu pemahaman atas bisnis proses.
  6. Jika tidak berhasil, kembali ke point 2 :lol:

Hambatan yang paling besar adalah bahwa pada deadline, kustomer pasti ingin melihat hasilnya. Dan pasti tidak akan berhasil dengan target pertama pengerjaan adalah proses bisnis. Tapi tanpa hal itu, yang terjadi adalah seperti yang saya alami, yaitu pengerjaan hal-hal yang sama berulang-ulang. Oleh karena itu, hal pertama yang harus diselesaikan adalah proses bisnis.

Yang dapat dilakukan adalah dengan membagi waktu tersisa dari proyek untuk mempelajari bisnis proses, seminggu atau dua minggu, baru kemudian, harus dengan kerja keras, membangun aplikasinya. Sama saja dengan pembangunan aplikasi secara normal yah.. oh well :lol:

Tags: , ,

Pengakuan yang woow

Berita besar yang belakangan ini hadir dan sangat mengejutkan adalah pengakuan Khalid Sheikh Mohammed dari dalam penjara guantanamo yang mengatakan bahwa di bertanggung jawab secara penuh terhadap beberapa serangan teror yang terjadi beberapa tahun ini.Dari serangan 11 september, pemboman kedutaan besar, bom bali (huh?), bahkan sampai penyerangan terhadap Plaza Bank, yang notabene belum ada pada saat KSM di tahan.

Tapi seperti biasanya, apa yang menguntungkan diambil dan apa yang merugikan tidak disentuh. Pihak berwenang amerika mengatakan bahwa pengakuan perencanaan dan pelaksanaan 9/11 itu ‘genuine’. Tapi tidak menyinggung pengakuan yang lain.

Jadi bagaimana pihak amerika bisa tahu kalau sebagian pengakuan tersebut adalah benar ? Apa kriteria yang dipakai untuk mensortir pengakuan-pengakuan tersebut ?

Dan jika pengakuan tersebut adala benar, maka Osama Bin Laden tidak bersalah, karena sebulan setelah 9/11, OBL mengaku tidak tahu menahu mengenai serangan teror tersebut, tapi seperti kasus sekarang, karena dia adalah kambing hitam yang sudah ditunjuk, maka pengakuannya tidak digubris.

Dan lagi, jika kesalahan tetap ditimpakan ke Al-Qaida, bagaimana mungkin seorang ‘bawahan’ merencanakan operasi yang sedemikian kompleks dan canggih tanpa sepengetahuan pemimpin besarnya ?

Dan amerika sedemikian naive semua orang akan mempercayai apa yang dikatakannya ? wow :D

Tags: ,

Akhirnya, beli juga

Hmm.. dengan judul sejelas itu, rasanya isi tulisannya sendiri sudah tidak perlu lagi. Tapi kalo judul saja kan tidak bagus juga. Makanya saya menulsi seperti ini, supaya tidak hanya judul saja.

Sekarang ini menggunakan MacBook MA700A, dengan memori di upgrade menjadi 2 Gb. Bagus kok, dari bentuknya dan performanya. Dan sementara ini hal-hal yang tidak menyenangkan yang saya baca di internet belum ada yang benar-benar terjadi.

Yang pertama dicari adalah java-nya, dan ternyata sudah ada java 1.5.06, lebih baru dari yang didonlot kemarin. Install firefox, sudah, tomcat, sudah, idea, sudah, netbeans, sudah.. Tinggal oracle nih.
Dan dari linux kemarin yang susah memang install oracle. Sementara ini menggunakan parallels deh :D.

Install windows menggunakan parallels sangat mudah ternyata. Tapi lamanya sih tetep seperti install windows biasa hehe.

Well… install oracle deh.. hmmm… lupa bawa cd oracle. sial.

Tags: , , ,

To Mac or not To Mac

Jika orang lain membicarakan mobil atau motor, saya biasanya diam, karena tidak punya bahan, hehe, dan juga karena saya tidak begitu tertarik dengan dunia otomotif. Ketertarikan paling dekat, ya setiap hari naik mobil, atau menonton Formula 1, paling tidak sampai beberapa tahun yang lalu.

Ketertarikan saya lebih ke arah komputer, mengagumi motherboard baru, atau kepengen beli prosessor terbaru, atau sebel karena belum juga upgrade ke X2-nya AMD :lol:. Walau begitu sih sebenarnya desktop di rumah masih cukup powerful untuk menjalankan oracle, webmethods server ditambah develop dengan IntelliJ IDEA dan webmethods developer. Tapi kan seneng juga kalau desktop jadi X2 :D

Beberapa waktu terakhir ini saya sedang terpesona dengan MacBook. Sudah sejak lama suka dengan operating system dari apple, tapi sejak keluarnya produk dari apple menggunakan prosesor intel, jadi jadi lebih terpesona. Dan saking terpesonanya sampai memutuskan untuk membeli notebook dari apple.

Oleh karena itu beberapa waktu ini saya melakukan survey, melihat-lihat harga dari macbook dan ternyata yang paling reasonable malah yang seharga $1300-an dolar, dengan seri MA700 A. Dengan spek Code 2 Duo 2Gh, 80 Gb, 1Gb Memori, rasanya sangat lebih masuk akal dibandingkan versi yang lebih tinggi MA 701, yang hanya berbeda kapasitas hard disk 120 Gb, dengan harga $1500. Dengan harga segitu bisa dapat MA700 dengan kapasitas memori 2Gb, itu lebih penting :D.

Sebenarnya macbook pro lebih menarik lagi, hanya saja disamping beberapa perbedaan yang tidak penting, seperti firewire 800, yang sangat kelihatan adalah VGA card pada macbook pro menggunakan ATI minimal 128, sedangkan macbook menggunakan gpu buatan intel, yang lebih murah, apalagi dengan memori yang di share dan main memori. dan juga kebutuhan untuk coding lebih besar dibandingkan dengan kebutuhan untuk main game. Jadi sementara ini mac book lebih layak untuk dibeli. Mungkin 2-3 tahun kedepan baru memakai macbook pro. Oh iya, perbedaan yang tidak begitu penting hehe, adalah besar lcd. 13,3 untuk macbook dan 15-17 untuk pro. Tidak penting karena sekali lagi nantinya dipakai untuk coding :D

Tapi mengejutkan juga ketika browsing dan mendapati ternyata banyak sekali masalah pada macbook, seperti random shutdown, overheat, warna yang hilang dsb. Untungnya setelah browsing kesana-kesini sambil merasa kawatir, ternyata hal tersebut terjadi kebanyakan pada produk-produk awal peluncuran macbook. Jadi semacam user test gitu deh. Asem juga nih apple.. di test dulu ke di pabrik sebelum diluncurkan.

Jadi to mac or not to mac ( tuku mac or not tuku mac ) :lol:.

Tags: ,

Anti spam buat shout box

Agak pusing juga lama-lama liat spam terus di shoutbox. Semalam sudah berusaha menambahkan code yang harus dientri sebelum post shout, tapi ternyata gagal karena ada kesalahan pemasangan program, atau karena saya salah pasang, gak jelas juga hehe.. Tapi yang jelas sih, code sudah muncul dan sebenarnya sudah masuk ke proses, hanya saja masih ada kesalahan dalam proses, jadi code yang dimasukkan selalu gagal.

Pagi ini rencananya mau mengedit php yang semalam saya tambahkan, tapi teman saya mengusulkan mengapa nama input name dan email, juga message tidak diganti aja, kan spam pasti mencari input dengan nama name, email dan message ? Brilliant idea !!! Jadi berpikir lagi nih, apakah harus nerusin pekerjaan tadi malam atau mengganti semua input seperti usulan teman saya.
And the winner is… mendingan mengganti semua input menjadi a b c, atau nama, esurat dan pesan atau yang lain :D :D

Let see how it goes :D :D

Kalau tidak juga berhasil berarti harus coding nambahin code ke shout box.

kalau ada yang mau mencoba, caranya gampang. shout bos disamping memakai smiletagsmiletag dengan mengganti dua komponen, input name menjadi nama dan message menjadi pesan. Anda bisa juga memakai kata-kata lain, personal preference deh..
1. Ubah template sebelum dipasang ke blog, ada di sample-wp.html, atau langsung ke halaman blog jika sudah dipasang
Name menjadi Name, ganti * dengan b & i.
2. Ubah javascript code di smiletag-script.js
*unction clearMessage(){
document.smiletagform.message.value=document.smiletagform.message_box.value;
document.smiletagform.message_box.value=”";
}

menjadi

*unction clearMessage(){
document.smiletagform.pesan.value=document.smiletagform.message_box.value;
document.smiletagform.message_box.value=”";
}
3 Ubah post.php
$HttpRequest[’name’] = trim($_POST[’name’]);
$HttpRequest[’url’] = trim($_POST[’mail_or_url’]);
$HttpRequest[’message’] = trim($_POST[’message’]);

menjadi

$HttpRequest[’name’] = trim($_POST[’nama’]);
$HttpRequest[’url’] = trim($_POST[’mail_or_url’]);
$HttpRequest[’message’] = trim($_POST[’pesan’]);

selesai :D
smiletag bisa dipasang..
Catatan : ini masih coba-coba, jadi belum tentu bisa menghalangi spam masuk hehe..

Tags: , ,

Nemu Bloggar!!

Aneh juga sudah lama punya dan kadang nulis di blog, tapi baru sekarang ini nemu program untuk nulis di blog tanpa harus online terlebih dahulu. Gara-gara mau cari-cari aplikasi untuk osx, sampai nyasar ke ecto, yang karena agak ribet installnya, jadi mencoba bloggar :D.
Simpel installnya dan cara pakainya, hanya cukup siapkan akses ke blog, dan software blog yang kita pakai, seperti wordpress yang saya pakai, dan siap untuk menulis.
Masih perlu waktu untuk mengeksplorasi, dan mengekploitasi program ini hehe, tapi yang penting ada mainan baru sehingga ada semangat lagi untuk menulis. Apalagi di saat tidak ada kejadian menarik untuk ditulis seperti sekarang ini. Adanya kan kejadian-kejadian yang memilukan, seperti bencana-bencana yang berturut-turut dialami oleh bangsa ini, dari kecelakaan angkutan sampai gempa bumi, banjir dan sebagainya. Juga makin carut-marutnya dunia politik di indonesia, dimana setiap bagian dari dunia politik sepertinya ingin memanfaatkan apa yang dia punya secara maksimal demi untuk kepentingan pribadi dan sesaat. See, nothing special happens around here :)
Well, life goes on deh.
Dan yang paling tepat kan mensyukuri apa yang kita punya dengan berbuat sebaik-baiknya untuk masa depan kita dan generasi selanjutnya. Paling nggak mungkin saja 10 tahun lagi blog ini masih ada :lol:
ya nggak..

Tags: ,