
Automating Tinder
I was introduced to the mobile dating-app Tinder a couple of months back and the premise is simple: Like (swipe right) a person, based on the profile -- and if the person likes you back -- you're a match and you get to converse with the person.
The tinder app was quite revelationary to me, from a HN perspective. A small feature (Crush List) from a major established product (Orkut in its heyday) which had not gained sufficient traction could be spinned-off as a new product by itself -- as a sleek, fun to use, Facebook-social-graph based app.
Psychological aspect
Tinder's best feature is that that it deliberately didn't add any.
As a result, you were left with a lot of unanswered questions. How many people swiped-left? What's your hit-ratio? How many more upcoming recommendations are there with my current settings? This made is all the more mystical & therefore engaging.
Gradually Tinder became less of a dating service and more of a 'confidence boost' app. Tinder-dates are unheard of. Through matches, people felt more 'wanted' and Tinder facilitated that.
As far as social dynamics of Tinder goes, girls have an upper hand initially and the liberty to be choosy -- to swipe left if you will. But once the match it done, it's upto the guy to initiate the conversation.
Given the generally low hit-ratio for males and even more so for South Asian males ;), the best strategy for guys is to swipe-right-all. And when there is a match, decide if they want to initiate the conversation.
Tech stuff
Slightly inspired by Amy Webb: How I hacked online dating, I went about my strategy -- albeit in a bit more automated fashion.
I had not previously known on how to intercept REST calls from a mobile device and this was an ample opportunity to increase my tech skill-set - while having fun - so I had more the reason to go this route.
The first step was to intercept REST API
calls. This guide was extremely helpful.
Once that was done, I coded a perl
script, which essentially replayed the intercepted API
calls in a loop.
In simple terms, the script did this:
- Get my list of recommendations (limit by 40) --
get_forty()
- Like (swipe-right) each one of them --
like_all()
- Wait for 5 seconds to not overwhelm the Tinder servers. (And avoid appearing automated... sorry..)
- Go back to step 1.
The code is available here.
Result
Well, seeing this is always enthralling:
But even with a very relaxed Tinder criterion setting, I exhausted my list of recommendations within the hour.
And new recommendations were made available only after every 24 hours. This probably gives an insight on how the Tinder-backend works (daily data-crunching and generation of recommendations? Maybe.) .
But anyways, Tinder matches have been more frequent now -- and it feels that much more nicer to be 'wanted'.
- I had a quick look at the T&C of Tinder. This doesn't violate them to the best of my knowledge.
- Couple of other technical notes here