Through careful API reverse-engineering and innovative data processing, we've created the first app able to calculate the exact location of each and every YikYak post, and have created both a webapp visualization and Yo channel to showcase the possibilities of this newly unlocked data.
Our webapp revamps the YikYak experience for the web to provide a uniquely data-rich experience. Browse the heatmap of Yaks on campus to find hotspots of activity. Explore your neighborhood and see what your neighbors are saying in their Yaks. No longer are you limited to merely campus-level granularity; with WhatTheYak, you have the freedom to pinpoint what's going on on campus, exactly where it happens. We've also integrated HTML5 notifications into the webapp to provide near-instant updates straight to your desktop when a Yak is posted on your campus. All of the data provided through the webapp are streamed to your browser in real-time for a smooth experience. When a new Yak is posted, it appears automatically on the map surrounded by a circle of uncertainty as the app works to determine its location. Once a accurate location is achieved, the circle of uncertainty is hidden and the marker fixed in place.
Yo Wordcloud Generator
Our Yo channel (WHATTHEYAK) is an innovative combination of the Yo platform and YikYak service that provides an easy way to find out what's going on around you. Just one tap, and you'll receive a custom wordcloud of the 20 closest, most recent Yaks surrounding your physical location. Based on the size of the word displayed in the wordcloud, you can get a quick glimpse of what's happening in your area. It's never been so simple to find out about events, themes, and trends around you.
How we make use of the APIs:
Yo API: Using the Yo API, we're able to easily receive the user's location when they send our service a Yo. We're then able to send back their completed wordcloud image as a direct link.
Google API: We make extensive use of the various features of the Google Maps API, including heatmaps, custom icons, and color schemes in order to provide a quality web visualization.
MongoDB: This database forms the backbone of our persistent datastore, and makes the various services of our app possible. Geospatial indexes and queries are used to efficiently store and query Yak locational data. Aggregate queries are utilized to display statistics of average scores by school. Asynchronous requests from both the webapp and Yo endpoint are handled by the database quickly.
Microsoft: Our service is hosted using the Azure Websites service, and utilizes a MongoDB database also hosted on Azure.