Tuesday, December 28, 2010

Outstation.... lagi....

besar kemungkinan aku kene pegi outstation lg... from 22hb hingga 31 hb jan 2011 nanti....

tapi the best part nya... tpt outstation tu dkt jer dgn kampung aku..... hahahhahaha.... ada yg aku stay rumah mak & abah aku jer ni kang.... huhuhuhuhu....

apapun masih x confirm... tapi kemungkinan tu besar la... tgk la macamana nanti.

Monday, December 13, 2010

my Workstation@home

akhirnya...

aku ada workstation aku sendiri kat rumah. yg proper.. maksud aku meja and kerusi utk mengadap laptop.

sebelum ni aku gunakan sofa & meja kopi... ataupun aku tumpang workstation wife aku.

x la complete sgt. tapi cukup utk 2 biji lappy & 1 mac mini + monitor.

nanti ada masa aku snap gambar nya.

Sunday, December 12, 2010

im passing 30 today

hari ini genap umur ku 30 tahun... alhamdulillah aku bersyukur dgn nikmat & kurnia yg Allah berikan kepada aku setakat ini.

seorg isteri & 3 org hero yg comel.. cukup mengembirakan aku.

ahli keluarga & keluarga mentua... semua menyenangkan aku...

cuma azam aku selepas ini utk terus memperbaiki diri dr semua aspek kehidupan.

amin...

* terima kasih kepada isteri tercinta belanja aku makan malam di san francisco....
*thanxs to all wishes kat wall facebook aku.

Thursday, December 9, 2010

Simple MySQL tips

MySQL merupakan satu pelayan pengkalan data yang bagus.

tetapi walau sehebat mana pun sesuatu aplikasi pelayan pengkalan data itu tidak akan ada maknanya kalau kita salah mereka bentuk struktur pengkalan data kita.

masalah utama utk pengkalan data berasakan sql adalah capaian masa untuk sesuatu 'query' itu selesai.

kalau didalam pembangunan berasakan web, masa amat penting. proses timeout merupakan mimpi ngeri yg tak nak dihadapi oleh pembangun aplikasi berasakan web. ada 2 penyumbang besar kepada jumlah masa yg diperlukan utk sesuatu halaman itu berjaya dipaparkan di pelayar pengguna selain dari jangkauan dan limitasi capaian internet ialah masa yg diambil oleh bahasa pengatucara utk memproses sesuatu permintaan dan masa yg diambil oleh query utk mendapatkan keputusan dari pengkalan data.

didalam satu permintaan mungkin akan ada 1 atau lebih query yg perlu dilakukan utk mendapatkan data2 yg didinginkan. disini, masa akan menjadi panjang kalau kita tidak menstrukturkan 'table' pengkalan data dgn betul.

paling penting, 'PRIMARY KEY' ataupun kunci utama data kita. jangan ketawa jika ada yg x buat pun bende ni. byk kegunaan primary key ini. bukan shj untuk mengelakkan pengulangan data ia juga mempercepatkan carian/query kita. kesan mungkin tidak nampak jika kita bermain dgn data berskala kecil.. tetapi bila ia menjangkau ratusan ribu baris... anda akan tepuk dahi memikirkannya...

untuk mempercepatkan carian/query, kalau boleh.. column yang penting & selalu dicari setkan ia dalam kombinasi primary key. sebagai cth.

kod untuk bilik darjah : 010305
dimana:
01 mewakili id blok
03 mewakili id tingkat
05 mewakili id bilik darjah.

pendekatan yg paling sesuai adalah memecahkan kod bilik darjah itu kepada 3 column berasingan. dan gabungkan 3 column itu sebagai primary key.

ini juga memudahkan anda membuat carian bedasarkan blok atau tingkat atau bilik darjah atau mana2 gabungan mengikut keperluan. adalah lebih cepat masa yang diambil mengunakan standard operator seperti =,!= daripada mengunakan 'LIKE %someting%'.

kurangkan pengunaan varchar/char sebagai primary key. lebih sesuai jika mengunakan int atau tinyint bergantung kepada keperluan. praktikan pengunaan data rujukan yang amat membantu jika anda membangunkan aplikasi yg byk mengunakan data rujukan.

sebagai cth lg, jika anda mengunakan NO KP tai NO IC (benda yg sama) sebagai primary key. ia betul.. sesuatu yg unik. tetapi dalam format no kp lama, ada char disitu. ini akan melambatkan masa pencarian anda walaupun anda dah kenalpasti colum itu sebagai primary key.

apa yg boleh anda buat ialah. ciptakan 1 colum baru. bg nama cth 'idorang' dgn column type 'BIGINT' dgn kapasiti column sebanyak '20' dan column type 'UNSIGNED'.

gunakan query ini.

update table
SET `idorg` = CONV(SUBSTRING(CAST(SHA(TRIM(no_kp)) AS CHAR), 1, 16), 16, 10)

query diatas akan automatik ciptakan 1 unik id utk manusia yg mengunakan no kp sebagai identiti mereka bedasarkan nilai didalam column no_kp. dan ia semua int.

setakat ini sahaja tip utk mempercepatkan masa diambil utk carian didalam pengkalan data MySQL.

ada byk lg tip yg boleh dipraktikan dan diamalkan. bergantung kepada keperluan.

sekian.... salam.....

Monday, November 15, 2010

my New Toy

sebelum ni biasanya main dgn tingkap jer... tetapi sebelum outstation awal bulan aritu dpt mainan baru.... kita pakat makan apel plak...

sebenarnya sebelum outstation awal bulan lalu kepala tgh pening memikirkan solution utk masalah utk server mysql kitaorg. utk development kami hanya pakai laptop shj. upgrade RAM to max.... and buat semua kat dlm laptop. sebelum ni ok je... x da masalah... but bila start bermain dgn data yg berjuta2 row. masalah mula timbul... satu hak plak nak buat processing semua server dlm 1 laptop.... nak alter table pun makan berjam2 lamanya...

idea asal nka hack/cari solution utk install MySQL server dlm portable hard disk... duk pening pikir... sebab kalau nak bawak sebijik lg laptop... amatla menyusahkan...

cari punya cari.... akhirnya... jumpa la menatang ini..


Mac Mini Server

hahaha... cuma masalah utamanya adalah aku x biasa MAKAN APPLE. kombinasi perl + MySQL ada masalah... yg lama baru dapat dirungkainan... isu dgn 64bit & 32bit... etc...

makin hari makin seronok plak aku bermian dgn apple ni... pandangan cetek aku yg mengangap apple hanya utk org2 graphic memakan diri aku sendiri... aku dah start jatuh hati dgn apple... hahahhahhaa...

*hari ni aku ada masalah dgn wireless keyboard yg tiba2 x detect/x leh nak pair... bila surf jumpa solution mudah... masa pairing... tekan buatton enter/retuen ulang2 kali sampai dia jumpa... problem solve...

aku akan update perkembangan perl + MySQL (2 MySQL running on da same machine)... dari mainan baru aku ini...

Thursday, October 21, 2010

Sibuk & Peluang

sejak kebelakangan ni... paling tepat lepas raya... mmg aku terasa amat sibuk sekali... jarang dpt balik keje on time.. tido mmg la x pernah cukup...

ada 2 projek yg perlu aku hadapi sejak kebelakangan ini... alhamdulillah semua nampak mcm ada sinar kejayaan ... cuma doakan sahaja semua nya mendapat pulangan yg sepatutnya.

2 projek ini memberi tekanan yg berbeza.

projek pertama lebih kepada memenuhi piawaian dan standard yg perlu dipenuhi oleh kami. kami atau aku lebih tepat sekali, agak lemah dari segi term2 gempak & hebat yg byk digunakan org2 marketing. bila presentation aku agak blur bilamana soalan mengunakan term2 sebegitu... tapi bila diterangakan dari segi teknikal... itu la yg mereka maksudkan... hhahahhaha....

dan semalam, kalau betul apa yg aku dpt tau... kami dpt projek itu... cuma peruntukan yg diterima tidak seperti yg kami minta... dikurangkan... janji dpt.. cuma plan asal utk projek pertama ini ada pembangunan 2 sistem... tetapi oleh kerana peruntukan nya x seperti di harapkan... berkemungkinan ianya hanya pembangunan 1 sistem sahaja. amin.

untuk projek kedua, agak tertekan bermain dgn data dan sumber data... pertama kali aku bergelumat dgn data sebesar ini... ada 1 table database ni, ada 27juta row... 27juta bukan 27 ribu...

isu juga timbuk bilamana struktur data2 berkaitan lain tidak di bina dgn betul.... berterabur... bila data makin membesar... satu hal pulak nak sruktur semula.

bayangkan, ic@ no kad pengenalan yang sepatutnya sesuatu yg unik.... boleh tie kepada lebih dr seorg... mengong... tu belum bende2 lain lg...

satu lg.. pengunaan standard kod... mampu keluarkan kod rujukan mereka... lepas tu.. setiap agensi pun sesuka hati pakai kod rujukan mereka sendiri.... hampeh....

bermain dgn data2 yg besar ini memerlukan perkakasan yg berkemampuan tinggi.. aku hanya dgn laptop berumur dkt 4 tahun.. agak terasa keperitan nya.. dari segi RAM, Hard disk dan processor..... hopefully dpt pakai Mac Book plak lepas ni... aminnnnn......

MSU?

lepas raya aku dpt panggilan untuk interview di kampus MSU baru Shah Alam. asalnya wife aku yg hantar resume ke MSU. dia pun submit resume aku sekali.

masa interview mmg hancus la aku... aku more on business oriented punya kerja... bukan ikut buku 100%. janji projek jalan... sebab kalau ikut betul2 buku sekolah... mmg x deliver la projeck... or kalau deliver pun jadi projek Gajah Putih. mungkin lapangan lain mmg kene ikut buku 100%... but not system development... pada pendapat aku la....

aku kene questionkan oleh prof yg interview aku lepas peperiksaan teknikal tu. dia kata kenapa aku campurkan OOP dgn structured? hahahahha sebab aku jawab base on apa yg aku biasa buat... hahaha... dia kata apa yg aku jawab semua salah.... bercampur aduk.... dia kata kalau aku masuk team dia.. aku kene follow style dia.. kene prepare semua struktur & flow serta semua cucu cicit data dictionary sebelum start coding.... yg mana betul la tu... kita kalau masuk kandang kambing mengembek... masuk kandang lembu mengembok... field dia dgn aku berbeza.. kalau business aku ikut apa yg dia praktikkan... sah x digunakan sistem aku tu nanti... client ni masa nak sistem ckp sistem kecik je... tapi bilamana dah nampak capability sistem.. tu yg nak tambah itu dan ini.... yg mana nampak menyusahkan tetapi $$$$$$$$$$$$$$$$ bagi kami sistem developer... hahahha...

tapi aku seronok pegi interview tu.. byk gak ilmu yg aku dpt dr prof tu.. dia bukan sahaja interview aku.. tapi bagi ilmu2 yg aku pun x tentu dpt kalau x pergi interview tu.

lepas 2 minggu aku dpt call dr HR utk attend sekali lg interview. alhamdulillah.. TETAPI... setelah berbincang dgn wife... pastu dgn my sifu... seterusnya my BOSS..... aku ambik keputusan menolak offer dr MSU tu... it's a though decision... berat tu... MSU dah menapak kuat ... bangunan baru dia sebelah TESCO XTRA/NKVE tu very2 the tempting wan.... but aku terpaksa pikirkan byk bende... mungkin jodoh aku blum lg... insyaallah... mana tau... 1 day nanti....

hopefully janji yg aku terima menjadi kenyataan.... amin...

DNS Problem

yeah.... my dns still got problem... tu yang kadang2 blog ni pun x jumpa... argh!!!!!!!!!!!!!!!!! pening dah main dgn dns server ni.... kene cazri alternative lain plak....