Reader Moof forwarded me this post about one man’s efforts to see just what can be achieved on FourSquare with a bit of coding and one or two hours.
Turns out you can do quite a lot.
At some point last week, I devolved into a 12 year old hacker, and I spent many spare hours (and my computer’s spare cycles) abusing the system with a set of scripts operating fake accounts. Not only did I add new venues like the North Pole, but I started persistently checking into coveted landmarks, like the Statue of Liberty.
The post’s author, KrazyDad, decided to get smart with all those Starbucks Mayor wannabes. Are you familiar with the behaviour here? Just in case you’re not, one of the most popular — or at least, best known — uses of FourSquare is to check-in to your local Starbucks. Why? Well it’s simple: There’s always a long queue and, you know, it’s a good game. It doesn’t really appeal to me, but there’s a lot of others who obsess over checking into their local ‘bucks in order to maintain their ‘Mayor’ status.
KrazyDad decided to have a bit of fun with them. Heh:
I created five ‘Java Monkeys’ which grabbed about 120 different Starbucks in different regions (east, west, midwest, south, intl). I identified and targeted hotly contested Starbucks by searching Twitter for recent oustings. My script automatically visited those ones, to the consternation of the new mayors.
The ‘Java Monkeys’ got the biggest reactions. FourSquare users get far more irate when they lose mayorship of a Starbucks, as compared to a Statue of Liberty or Mount Rushmore. People are much more attached to the small places they visit over and over, and have some personal investment in. The smaller the venue, the bigger the value.
What KrazyDad has exposed is that the FourSquare concept is heavily dependent on playing fair. That’s fine when you’ve a few hundred thousand in-the-know geeks playing along. But that doesn’t scale at all, unfortunately, because there’s quite a lot of human nature ready to game the system, even if all you’re getting is an extra badge.
One of the FourSquare representatives commented on the post to say they’ve got some ideas in the works to try and prevent such gaming.
If you’re a FourSquare enthusiast and you’ve been wondering why your friend is always ahead of you, take note.
I too think Foursquare is a bit rubbish… but I'm equally tiring of those who try to prove it by actively disrupting it for others. It is a silly little game (IMO) but lets leave those who want to play it to get on with it and have adult discussions about it.
I suspect the argument here is that this was done to prove the vulnerability, but I doubt many would dispute this weakness existed, so no demo was really needed.
They could really just check the last checkin location and the current checkin location (then calculate the distance between them – ok thats an expensive calculation), and if the difference in time is less than the time it would take to get to the “current” checkin location in reality then don't allow the checkin.
That would be slightly more accurate than just limiting the time between checkins which could also be done.
I like that idea!
I looked into the “distance” algorithms etc quite some time ago for Buddycloud ideas and also for some other crazy ideas I had to do with nearby calculations. An accurate distance using spherical globe stuff is expensive, but a rough “distance” shouldn't be too expensive to do on every checkin attempt.
Yeah, it doesn't need to be super accurate – you just need an upper bound, which can be roughly computed quite cheaply.