Friday, March 30, 2012

Algoritma Google Search, hanya Tuhan dan Insiyurnya yang Tahu

Teknik searching Google itu bisa dibilang, hanya Tuhan dan insiyurnya yang tahu.

Lagi iseng melihat-lihat url yang dihasilkan oleh google, ternyata query string yang dihasilkan itu memiliki function yang cukup rumit.

Satu contoh, ketika mengecek url google search berikut:
https://www.google.com/#hl=en
gs_nf=1
tok=csFOWq7xRr5Ya666Xn1uiA
cp=5
gs_id=a4
xhr=t
q=car+show
pf=p
output=search
sclient=psy-ab
pbx=1
oq=carsh
aq=0s
aqi=g-s2g2
aql=
gs_sm=
gs_upl=
bav=on.2,or.r_gc.r_pw.r_cp.r_qf.,cf.osb
fp=fb2600dd7c563832
biw=1280
bih=593

Secara acak saya ambil salah satu query string yaitu gs_upl. Kemudian saya cek di Google arti dari gs_upl. Lalu saya diarahkan ke STACKOVERFLOW dan didapat penjelasan yang sangat rumit. Seseorang mengambil source code javascript yang ada dibalik html:

From the script that builds gs_upl (j) I found that:

function(){
   var b=a.R(),e="f";f.md()?e="o":d.na()&&(e=d.gf());
   var j="",o=f.sa();o&&(j=o.Ub());var l="";
   if(o=d.K()){
      for(var l={zd:[],$b:v,Ja:0},r=o.length,t=0,w;t<r;++t){
           w=t==r-1;var y=o[t],u=l,z=i.za(y.F()).Ha();(y=y.Wa())&&(z+="-"+y);
           if(z!=u.$b)
              u.Ja&&u.zd.push(u.$b,u.Ja),u.Ja=0,u.$b=z;
              ++u.Ja;w&&u.Ja&&u.zd.push(u.$b,u.Ja)}l=l.zd.join("")
      }
      b={oq:b,aq:e,aqi:l,aql:j
   }
   ;
   if(g.ub)
     j=Z()-q,
     j[c(a.Te()),c(a.Ue()),k,j,h.Of(),h.Nf(),h.dd(),h.ed(),
       h.Kf(),h.Mf(),h.Lf(),h.Qf(),h.Jf(),h.Pf(),c(a.Ve())]
       .join("l"),
   b.gs_upl=j;
   return b
}

--

Didalam satu function javascript memiliki banyak function-function lagi. Cara mengeceknya dengan melihat kode "()".

Google emang rumit.

Thursday, March 29, 2012

Pengembangan Software Tidak Bisa Dibandingkan Dengan Pengembangan Secara Internal

Belum lama ini saya mendapat pencerahan dari salah satu vendor software lokal.

Ketika saya melakukan penawaran dengan membandingan pengembangan secara internal yang menurut saya membutuhkan waktu sedikit sehingga bisa dianggap projeknya tidak terlalu besar karena akan membutuhkan sumberdaya yang sedikit dan biaya yang rendah, saya mendapat jawaban seperti ini:

Dear Pak Adi,

Terima kasih atas infonya.
untuk pengembangan software tidak bisa dibandingkan dengan pengembangan secara internal pak, jelas harganya jauh lebih murah deploy internal :-).

Banyak komponen2x harga yang tidak terdapat jika kita deploy secara internal. Bapak tidak perlu pusing untuk mikirin biaya mandays para programmer, design, analyst, project manager dll, belum termasuk komponen2x biaya operational, pajak, asuransi, dll

Dan juga Service adalah komponen yang paling penting pak :-)

Pricing kami sudah kami sesuaikan sesuai dengan pembicaraan kami sebelumnya dengan Pak Adi mengenai Budget harganya, dan setelah kami berikan discount itu adalah Best Price yang sudah kami berikan kepada PT BSA.

Atas perhatiannya kami ucapkan terima kasih.


--

.
.
.
.
.
Dalem.

Wednesday, March 28, 2012

1 artikel dengan banyak halaman di Detikcom

Detikcom sedikit mengalami perubahan. Sebuah artikel yang saya baca, menuntut saya untuk membuka 7 halaman agar bisa membaca seluruh isi artikel:


Terkesan manipulatif dengan tujuan ketika kita lengah, mata tersenggol dengan iklan, kita ngeklik iklan agar pendapatan via iklan juga meningkat.

Tapi gaya seperti ini sudah dilakukan oleh situs berita diluar. Hal biasa.

Nice move�

Tuesday, March 27, 2012

Bos Harus Keras

Detikinet memuat artikel berjudul 12 kalimat inspiratif Bill Gates yang sangat ngegampar.

Kutipannya:

Jika Anda pikir guru Anda adalah orang yang keras, tunggulah sampai Anda memiliki bos.

Kenapa bisa saya bilang ngegampar. Karena selama ini saya tidak terlalu keras terhadap anak buah sehingga hasil kerja dari departemen saya sering tidak memuaskan.

Alhasil, memang benar, untuk menjadi bos harus keras dan kalau perlu harus galak.

Monday, March 26, 2012

Ide dan Kertas

Apa yang bisa kita pelajari dari foto sketsa asal muasal Twitter buatan Jack Dorsey dibawah ini?


Jangan pernah membangun sesuatu tanpa dituangkan dalam kertas.

Jangan pernah membuat aplikasi hanya berdasarkan apa yang ada diotak kita saja.

Ide akan lebih mudah dieksekusi jika sudah dituangkan diatas kertas.

Itu saja.

Sunday, March 25, 2012

Panjang Karakter Customer Card NAV yang Bikin Pusing

Saat ini saya mendapat kendala di Microsoft Dynamic NAV. Kendala yang sepele tapi berdampak yang luar biasa ke bisnis proses di kantor.

Kendalanya sederhana, panjang kolom nama customer di NAV hanya 50.

Tapi ada customer kami yang memiliki panjang nama PT lebih dari 60 karakter.

Alhasil, seluruh proses transaksi dari sales order � invoice � faktur pajak jadi tidak bisa diterima.

Duh!!!

Saturday, March 24, 2012