Tuesday 28 February 2012

Random Thought February



Random thought
  1. Mineral water cannot quench my thirst anymore. Only sweet tea can. I wonder if vampires feel the same way about blood.
  2. Mungkin jurus terbaik yang diperlukan programmer dan desainer adalah Kage Bunshin no Jutsu. So many ideas and no time/manpower.
  3. "For engineers, our deadline is the deadline time. For market, the deadline is the opportunity." - Nico
  4. Saya curiga bahwa orang-orang jenius adalah orang dari masa depan yang menggunakan mesin waktu untuk kembali dan memperbaiki masa lalunya yang suram.
  5. [Android] Misalnya mau bikin Button programmatically (ga pake XML). Kalau misalnya kita punya drawable dalam bentuk resource (contoh R.drawable.image), lebih baik langsung button.setBackgroundResource(R.drawable.image). Jangan ubah R.drawable.image jadi obyek Drawable dulu (drawable = context.getResources().getDrawable(R.drawable.image); button.setBackgroundDrawable(drawable)). Hal ini buruk kalau R.drawable.image mengandung animasi (contoh kalau bikin selector pake XML). Nanti animasinya ga jalan.
  6. [Android] Just realized that beside Log.v(verbose), Log.d(debug), Log.i(info), Log.w(warning) and Log.e(error), there's Log.wtf(What a Terrible Failure)
  7. [Game Dev] Tips bikin gerakan Seeking Missile. Pertama cari vektor antara misilnya dengan targetnya. Terus cari vektor satuannya. Habis itu kalikan vektor satuan dengan kecepatan maksimal misil.
  8. [Manga Mobile] Just finished multiple manga source for Manga Mobile. And there're so many bug reports. Emailed on top of that. So sorry everyone >.<
  9. [Manga Mobile] Comment by user: Jan 28, 2012 11:02:34 AM on version 1.952 "fucked up"
  10. Don't go too far ahead, or be ready to be alone there.
  11. When I hate something, I just feel like making the game of it. Setelah kuliah Agama Islam, I feel like making a game about God (like Black and White?). Setelah naik angkot yang ngetem 1 jam, I feel like making a game about Angkot (like Dinner Dash?). And I had countless idea for game about programming.
  12. Keraguan adalah puncak dari keyakinan - Imam Al-Ghazali.
  13. Rioux SVN for free and private SVN :)
  14. Hello World in GWT and App Engine! So excited! Tutorial  in Indonesian coming up :). Ini tutorial Inggris-nya yang lumayan bagus (dibandingkan yang Google punya)
Damn GWT, how am I supposed to learn from ur f****d up sample?


Monday 13 February 2012

Google Search API!

Baru saja menemukan sesuatu yang cukup keren. Hal ini berkaitan dengan API untuk searching pada Google.

Pada mulanya saya ingin melakukan pencarian rating suatu manga pada mangaupdates. Hal ini saya lakukan menggunakan Google (karena mangaupdates tidak memiliki API untuk melakukan pencarian). Saya melakukannya dengan membuat request ke http://www.google.com/search?btnI=I%27m+Feeling+Lucky&q=mangaupdates+ dan melakukan page scrapping terhadap halaman hasil pencarian melalui Google tersebut. Cara ini akhir-akhir ini menjadi obsolete (damn Google, ternyata suka ganti-ganti juga) dan membuat aplikasi Manga Mobile saya crashing terus menerus.

Lalu saya memutuskan untuk mencari API yang legal yang disupport sepenuhnya oleh Google. Hasil dari pencarian saya adalah melakukan request ke http://ajax.googleapis.com/ajax/services/search/web?v=1.0&q=mangaupdates+. Request ini mengembalikan JSON object yang bisa langsung diubah menggunakan GSON bila anda menggunakan librarynya. Salah satu contoh hasil request dapat dilihat pada gambar dibawah.
mencari rating manga "I Love 9" menggunakan Google Search API
hasilnya cukup memuaskan, sesuai dengan Google Search biasa dan tidak terlalu memakan bandwidth. Dari hasil JSON ini, saya tinggal men-decode nya dan mencari obyek URL yang saya perlukan (dari contoh atas, URL itu adalah http://www.mangaupdates.com/series.html%3Fid%3D23657.