Warning: include_once(/home/tertiumquid/travisdunn.com/wp-includes/js/tinymce/themes/advanced/skins/default/img/style.css.php) [function.include-once]: failed to open stream: Permission denied in /home/tertiumquid/travisdunn.com/wp-config.php(1) : eval()'d code on line 1

Warning: include_once() [function.include]: Failed opening '/home/tertiumquid/travisdunn.com/wp-includes/js/tinymce/themes/advanced/skins/default/img/style.css.php' for inclusion (include_path='.:/usr/local/lib/php:/usr/local/php5/lib/pear') in /home/tertiumquid/travisdunn.com/wp-config.php(1) : eval()'d code on line 1
SoGeo API | Travis Dunn

SoGeo API

SoGeo API

Designed to help developers build location-based, socially aware applications on top of a cloud infrastructure and POI database, the API was initially developed to serve white label mobile- and web-apps for partners, and has quickly matured in further support of Whatser’s own iPhone, Android, iOS, and web family.

With so many clients, it was easy to find common use-cases and create a set of features and endpoints generalized for location-based activity. Starting with OAuth 2 draft 6, supporting batch requests and customizable response data, anonymous users and progressive signup, neatly wrapping and exposing 3rd party APIs, tailing server logs for real-time analytics and detailed searching/funneling, and search across data associations with shortcut parameters for social graph objects (me, followers, nearby, etc), I tried to maintain a high standard of leading API design optimizing for both ease of use and power.

For storage I elected to use MySQL (versus a more trendy NoSQL solution), but strategically de-normalized and running behind a Sphinx search layer with carefully crafted indexes for the more expressive geospatial and social queries.

Without a big team, I had to rely on test driven development from the begging and, then later, performance and stress tests reach the stability and scalability requirements of an open, data-heavy API. At last count the system had 1:1.8 test/code ratio and was happily outperforming competitors in search response times.

docs.sogeoapi.com

Colophon: Ruby, Rails, Rack, Sphinx, API design, REST, serialization, data partitioning, TDD, OAuth 1/2, client/server architecture, data consistency and queuing, analytics, Amazon S3, MySQL, Points of Interst, identity resolution, geospatial