Discover what's happening in Ljubljana in real-time


I've always been a big fan of the power of the crowds. When a mass of people can achieve much more than a few skilled individuals can. And ever since we've started playing with Twitter's API, I've been think about the possibilities of this magnificent data source. Besides Twenity, we've done a few other Twitter mashups like Twitter walls, but this wasn't enough. We wanted something more - geolocation. Displaying information on a map in real-time. But since there aren't that many tweets equipped with GPS coordinates, we needed to include other services for more diversity as well. Which we did, and Ljubljana Realtime, a social event discovery application, was born.


Data and services

Ljubljana Realtime currently feeds on four different services: Twitter, Foursquare, Instagram and Flickr. It would be great if we could add other services as well, but Facebook doesn't allow public geo search, Google+ doesn't support geo search at all, and other services either aren't appropriate or don't offer an API which would allow us to get their data.

These four services are visited once a minute, and all posts in a radius of around 5km from Ljubljana city center are found: tweets, Foursquare trending venues, pictures from Instagram and Flickr. A variety of information created with different purposes on different occasions.

Ljubljana Realtime radar

The area covered by Ljubljana Realtime. Different services require different searches, based on maximum allowed radius.

The application

These posts are displayed on a map, which was the original idea for the prototype. The last hours of posts on Google Maps, which can be zoomed and filtered at will. But the whole display felt a bit chaotic (still does), since there are many posts in vicinity of one another. That's why we knew we need to group similar posts, and we did this by the post's nearest Foursquare venue. Then a funny thing happened: this simple solution enabled something magnificent, something that could be much bigger than the whole posts-on-a-map application.

Anyways, since geo location is heavily connected with mobile devices, the application is responsive and fully compatible with most smartphones. Perhaps there will be native apps as well at one point.

The stream

Back to the magnificent. Originally, a Twitter bot was intended to come with the application (I love making those), which would tweet all trending foursquare venues to promote the application. But this seemed a bit lame, we needed to add something cooler. Something that would add more value and detect an event before a 4sq trending venue would happen. This is where the mentioned grouping of posts by venue came in handy, and the logic is as follows: if two or more people publish form the same venue in a single hour, this could very well mean something's happening there. And in most occasions, this turned out to be true. Read further for more details.

Ljubljana Realtime tweets

Discovering an event before a trending venue on Foursquare.

The event discovery stream is available on Twitter and Facebook.

The problems

Besides unstable APIs, the biggest problem we are currently facing is the geolocation itself. GPS chips in mobile phones are often not accurate enough, so people are located tens or hundreds of meters from their actual location. Combine that with the amount of Foursquare venues out there (imagine tall buildings), and you can understand Ljubljana Realtime sometimes has problems with connecting a post to a venue. Not to mention duplicated venues. We've eliminated some of this effect by only using venues with a certain amount of checkins and different users, but this will surely be the greatest challenge the project is facing in the future.

Ljubljana Realtime failed discoveries

An event which is not.

The results

Problems aside, in most cases, Ljubljana Realtime event discovery works great. In a week or so since it's online, it discovered many events that were happening in Ljubljana (night run to the Castle, an athletic meeting, one of the first iPhones 5 in Slovenia, a public garage sale in park Tabor, etc.), and on many occasions, it discovered these events before a trending venue happened on Foursquare. Which is great. The potential is obviously there, and newer, improved versions and algorithms will surely behave even better.

Ljubljana Realtime discoveries

A few of the great discoveries Ljubljana Realtime made.

The plans

This project is being developed in an agile way, where the application's behavior is constantly being monitored and changes deployed rapidly according to discovered strengths and weaknesses. The MVP (minimum viable product) is there, and with a few minor modifications, Ljubljana Realtime will soon be ready to expand to other cities and regions. Now it's up to you to help us, and it's pretty simple. When something magical is happening on and you are tweeting about it anyways, be a sport and click the arrow to include your geolocation in the tweet. By doing this, you will help others to discover what's going on in our beautiful city.

That's it for now, party on.

p.s. for all the Slovenians out there: the coordinates embedded in a tweet are pretty accurate even though Twitter will say you are in Italy. If you look at the picture of the map below the tweet, there's a polygon around Italy which sadly contains Slovenia as well. Hopefully, Twitter will remove bug someday.

A few more things you might find interesting:

written 28.9.2012 14:37 CET on chronolog
3733 views   •   Like   •