Programmer mindset bermain Tinder

published at Sebagai programmer, menggunakan suatu layanan tentu tidak selalu tentang "bagaimana menggunakan layanan tersebut", melainkan ke bagian "bagaimana layanan tersebut bekerja" juga.

Untuk yang belum tau apa itu Tinder, you are welcome.

Tulisan ini just for fun, sekalian mencoba untuk membaca "bagaimana machine learning memberi rekomendasi", so here we go.

Latar Belakang

Sebagai programmer, menggunakan suatu layanan tentu tidak selalu tentang "bagaimana menggunakan layanan tersebut", melainkan ke bagian "bagaimana layanan tersebut bekerja" juga.

Tidak heran mengapa programmer seringkali membaca blog seperti Instagram Engineering, Tinder Engineering, dan berbagai <insert_company_name_here> engineering blog lainnya.

Karena, kebanyakan programmer adalah tipe yang "penasaran".

Tinder menjadi perhatian gue selain karena ehm ingin mencari partner, juga Tinder menjadi salah satu yang di "highlight" di dunia Web. Terlebih setelah ~1.5 tahun yang lalu Addy Osmani menerbitkan studi kasus tentang PWA nya Tinder disini.

Selain itu, Tinder sangat bergantung dengan Machine Learning untuk fitur rekomendasi dan juga kepentengan bisnis. Gue enggak (atau belum?) tertarik dengan Machine Learning, tapi lagi bikin demo app untuk tutorial membuat "tinder-clone" menggunakan React Native, so here we go.

Machine Learning

Pada dasarnya ML adalah sebuah sistem untuk *mempelajari sesuatu. *Sama seperti manusia ketika diberi gambaran misal seperti ini:

Pasti kamu menyangka bahwa itu adalah Kopi. 4 poin diatas terus di improve sampai mesin ini benar-benar pintar. Misal, bila sekiranya gambarannya hanya seperti ini:

Mesin bisa ~60% yakin kalau itu kopi berdasarkan "model" yang sudah dipelajari sebelumnya meskipun gambarannya hanya ada 2 poin.

Kita tidak akan membahas seputar teknis nya ML—selain karena tulisan ini ditulis menggunakan bahasa Indonesia, juga karena gue gak ada kapabilitas disitu–jadi mari kita kembali ke maksud sebelumnya hahaha.

Sebelumnya, mari kita bicarakan sedikit tentang bisnis model nya Tinder.

Tinder memiliki 3 "plan" untuk menghasilkan uang:

Kita perlu membahas itu untuk tau sedikit seputar "business logic" dari tinder. Dan berbekal machine learning, konversi menjadi lebih menjanjikan terlebih mereka memainkan psikologi manusia dalam bisnis nya.

Let's cheat the machine

Kita akan mulai dari People who likes you, lalu ke People near you, dan terakhir ke People you see.

People who likes you

Ini bisnis yang paling menjanjikan di tinder, menampilkan orang-orang yang menyukai (swipe right) kita. Tujuan utama tinder adalah untuk mempertemukan orang-orang yang sama-sama swipe right.

Dan jika hanya "ber-swipe right sebelah tangan", tentu itu masalah. Namun menjadi solusi bagi tinder untuk menjadikannya ladang uang! Polanya, orang-orang yang swipe right kamu akan muncul 30-70% di barisan pertama ketika kamu buka Tinder.

Jadi, jika kamu baru buka Tinder, kemungkinan 1-3 profile pertama adalah yang swipe right kamu. Jika kamu tertarik dengan mereka, just swipe right!

Kemungkinan lain adalah mereka yang menggunakan Tinder plus/gold agar menambahkan kemungkinan mereka di swipe right. Ini sudah psikologi dasar manusia:

  1. Manusia tidak pernah puas
  2. Manusia selalu mencari yang lebih
  3. "Hal-hal indah" berada di urutan awal, agar menjadi pacuan indah untuk selanjutnya.

Parameter "indah" disini tentu relatif, tapi relatif hanya milik manusia :)

Karena tinder menggunakan machine learning, si mesin bisa menentukan "indah" nya seseorang berdasarkan pola:

Karena kalau manusia berdasarkan emosi, kan?

People near you

Karena salah satu benefit Tinder Plus & Gold adalah "explore without border" yang sederhananya: Temukan orang dimanapun mereka berada, ini menjadi salah satu parameter match nya seseorang.

Sebagai pengingat, di tulisan ini kita fokus ke tujuan utama Tinder: tentang Match. Jadi kita akan membahas seputar itu.

Berdasarkan bagian sebelumnya (tentang People who likes you), jika di 1-3 profile pertama kamu gak menemukan orang yang swipe right kamu juga, kemungkinan orang tersebut ada di bagian ini.

Intinya, mainkan jarak. Jika sebelumnya jarak kamu 5 KM, coba ganti menjadi yang lebih sempit, misal 2 KM. Lalu setelah itu ganti lagi ke 5 KM. Kemungkinan orang yang swipe right kamu ada disitu.

Kenapa?

Machine learning.

Itupun (kemungkinan) bila memenuhi kondisi berikut:

Selalu ada kemungkinan yang terjadi, karena, memangnya apa sih yang pasti didunia ini selain kematian?

People you see

Ini terakhir, tapi persentase "jaminan nya" nya sekitar 33%. Salah satu keuntungan Tinder plus/gold adalah frekuensi muncul nya profile mereka, dan itu yang menjadi alasan kenapa persentasenya cuma ~33%.

Inget kan tujuan utama Tinder? Singkatnya:

Yakni dengan cara menampilkan (lagi) orang-orang swipe right kamu, meskipun kamu sudah swipe left nya. Kita mudah lupa, dan tinder memiliki fitur "smart photos" yakni memilih foto *kita *yang terbaik. Jadi, meskipun kita misalnya ingat pernah swipe left dia (dengan melihat nama & fotonya), kamu mungkin akan lupa karena meskipun namanya sama, tapi fotonya beda.

Juga, paling kita melihat foto orang tersebut sekitar 6 detik. Karena jelas, sudah psikologi manusia tentang "pandangan pertama". Dan kita biasanya *menilai *seseorang secara singkat dari pandangan pertama tersebut. Ya kan?

Jadi, jika kamu menemukan orang yang sama (lagi), kemungkinan dia swipe right kamu juga.

Penutup

Ini berdasarkan pendapat & penilaian pribadi, bukan informasi yang 100% valid, apalagi hasil reverse engineering. Tapi, ada yang menarik dan itulah alasan mengapa gue menulis ini. Yang paling bawah gue bisa match karena mainin jarak, dan yang paling atas karena muncul lebih dari 1x dan berada di urutan ke 2. Gue bisa tau 2 itu "akan" match sama gue karena... Nanti akan kita bahas dibawah :))

Yang intinya, hipotesa gue diatas sedikit bisa diterima karena sudah gue riset~

Bonus

Gimana gue tau mereka bakal match sama gue sedangkan gue gak subscribe tinder plus/gold? Thanks god, I'm programmer Web Developer. Kalau kamu Web Developer, harusnya ngerti sih sama gambar diatas :))

Jika tidak, bandingkan dengan gambar dibawah Hipotesis gue, kenapa mereka menggunakan filter daripada gambar beneran, demi efisiensi sih. Nge-blur image, punya image lebih dari 1, ada cost nya diberbagai level dan skala.

Juga, gambar yang diblur ukuran nya kecil banget, dibawah 150px. Dan juga, cuma bisa lihat gambar enggak berarti bakal bisa nemukan profile mereka secara automagically, jadi, enggak menganggu business logic nya aplikasi tinder.

Kesimpulan

Ini murni just for fun, dan ingin mengasah skill "penasaran" gue. Gue yakin programmer harus memiliki rasa penasaran yang tinggi (ini lagi gue tulis di buku gue, click for spoiler) untuk menjadi programmer yang... unik. Enggak pabrikan.

Yang intinya, sebagai programmer, jangan hanya berhenti di "bagaimana menggunakan suatu aplikasi", tapi coba ke "bagaimana suatu aplikasi itu bekerja". Yang maksudnya, itu adalah salah satu mindset yang lagi gue coba tanem di evilfactorylabs. Mindset pembuat, mindset maker.

Dan bukankah untuk membuat sesuatu kita harus tau bagaimana cara kerja sesuatu tersebut, bukan?

Thanks for reading, enjoy your swipe right.