ramalannama.com

Leave a Comment!
Hari ini mesin pencari Google sedang diramaikan dengan melonjaknya pencarian kata "ramalannama.com", sebuah situs humor horoskop nama yang lucu. Situs ini akan "meramal" masa depan pekerjaan seseorang berdasarkan namanya, tentu saja hanya untuk bercanda.

Berikut adalah hasil ramalan untuk beberapa nama terkenal:

  • Mike Tyson: tukang cukur
  • Cristiano Ronaldo: atlet karate
  • Kim Kardashian: joki three in one
  • David Blaine: artis bermasalah
  • Jean Claude Van Damme: pakar keuangan
  • Celine Dion: perenang
  • Eminem: tenaga administrasi

Entah mengapa situs ini tidak mau meramal untuk nama-nama seperti "Barrack Obama", "Lady Gaga", "Justin Bieber" dll.. mungkin karena sudah terlalu terkenal?

Dari sisi algoritma peramalan, sepertinya situs ini tidak sekedar meramal secara acak untuk setiap input. Karena kalau kita masukkan nama yang sama, maka akan keluar hasil ramalan yang sama secara konsisten. Cara yang paling sederhana adalah, peramalan memang dilakukan secara acak, tetapi kemudian hasilnya dicache dengan memanfaatkan mekanisme caching internet itu sendiri. Hal ini bisa dilakukan dengan menggunakan metoda GET (bukan POST) pada form yang digunakan. By default metoda GET akan dicache baik di client oleh web browser, di server oleh web server, maupun di proxy server bila koneksi anda melalui proxy. Ramalan kedua kali dst untuk nama yang sama akan diambil dari cache, sehingga akan selalu menghasilkan ramalan yang sama.

Tetapi mekanisme caching bisa dibypass dengan mereload atau merefresh halaman web. Artinya server akan dipaksa untuk memberikan respons baru untuk setiap reload yang dilakukan, sehingga akan dihasilkan ramalan baru. Dan ternyata, ramalan untuk nama yang sama akan tetap sama, walaupun sudah dilakukan reload berkali-kali. Berarti, situs ini tidak bersandar pada mekanisme caching untuk menghasilkan ramalan yang konsisten.

Cara lain yang lebih sophisticated adalah mekanisme peramalannya itu sendiri memang tidak dilakukan secara acak. Misalnya dengan memaintain sebuah array berisi daftar pekerjaan, kemudian mengubah nama menjadi indeks menggunakan semacam fungsi hash, dan menggunakan indeks tersebut untuk memilih pekerjaan dari array. Karena setiap nama akan dikonversi menjadi indeks yang tetap, maka nama yang sama akan selalu menghasilkan ramalan yang sama. Dan tergantung fungsi hash yang digunakan, maka setiap nama yang berbeda bisa mendapatkan indeks yang sama maupun berbeda, ini tidak masalah.

Tetapi hati-hati!! Situs ini akan berusaha melakukan hal-hal yang mungkin tidak anda sukai, seperti:

  • Membuka layar secara penuh (full screen).
  • Memborbardir anda dengan pop-up window berisi iklan untuk setiap kegiatan yang anda lakukan.
  • Menyimpan nama anda di halaman "latest name".

Demikian, anda dapat mencoba meramal apa pekerjaan anda dan teman-teman anda di masa depan.. :)


Related Posts : acak , array , caching , fungsi , get , halaman , hash , indeks , konsisten , mekanisme , metoda , nama , pekerjaan , peramalan , proxy , ramalan , reload , server , situs , web

Sebulan Terakhir