There seem to be many reasons why people connect online. For example, on Twitter, I have connected to friends, colleagues, family, people I have met at conferences (or simply know from some of the work), and a couple celebrities (like Tom Waits). These few reasons encompass a largely incomplete list of why two people may connect on a social network; of course, understanding why people connect to each other would give insight into suggesting new connections for people to make… This is all part of ongoing work. However, one of the things I was interested in doing with this is looking at how connections relate to locations: I wanted to visualise the extent that overlaying a social network over a map would demonstrate some (any?) kind of clustering/ whether any groups may emerge. Fortunately, there are a ton of APIs out there, ready to be played with (perhaps Berners-Lee’s “raw data now!” chant is indeed coming true). I tried out a couple:
- Twitter REST API: for collecting social connectivity info (it helps being whitelisted if you woud want to collect a lot of data, otherwise 100 hits/hour should be enough!)
- Yahoo! GeoPlanet API: the neat thing about this API is that it takes a user-input description of a location (“Barcelona, Spain”) and returns a detailed description of the location, include latitude/longitude (41.385658, 2.16994). This API allows 50,000 queries per day, and requires an App ID.
- Google Maps API: for putting markers on a map. Probably includes some of the same functionality that GeoPlanet provides, but I ran into and started playing with GeoPlanet first, thanks to this blog post.