Sessions at Strange Loop 2010 on Friday 15th October

Your current filters are…

  • Android Squared

    by Bob Lee and Eric Burke

    Square enables users to accept card payments on Android devices. Square reads magnetic stripe data through the microphone port using a free reader and sends receipts via email or SMS. Square has been featured in the Android Market and at Google I/O.

    Bob and Eric, the programmers behind Square, will demonstrate how magnetic stripe decoding works. They’ll describe Square's unique approach to Intent-based APIs used in the point-of-sale API. They’ll share tips for taming the activity stack and building device-independent user interfaces.

    Finally, they’ll give a sneak peak into their upcoming open source Android library Retrofit. Retrofit provides utilities for dependency injection (using Google Guice), simple and fast persistence, REST communication and dialog management.

    At 1:00pm to 1:50pm, Friday 15th October

  • Working with Dimensional data in Distributed Hash Tables

    by Mike Malone

    Recently a new class of database technologies has developed offering massively scalable distributed hash table functionality. Relative to more traditional relational database systems, these systems are simple to operate and capable of managing massive data sets. These characteristics come at a cost though: an impoverished query language that, in practice, can handle little more than exact-match lookups at scale.

    This talk will explore the real world technical challenges we faced at SimpleGeo while building a web-scale spatial database on top of Apache Cassandra. Cassandra is a distributed database that falls into the broad category of second-generation systems described above. We chose Cassandra after carefully considering desirable database characteristics based on our prior experiences building large scale web applications. Cassandra offers operational simplicity, decentralized operations, no single points of failure, online load balancing and re-balancing, and linear horizontal scalability.

    Unfortunately, Cassandra fell far short of providing the sort of sophisticated spatial queries we needed. We developed a short term solution that was good enough for most use cases, but far from optimal. Long term, our challenge was to bridge the gap without compromising any of the desirable qualities that led us to choose Cassandra in the first place.

    The result is a robust general purpose mechanism for overlaying sophisticated data structures on top of distributed hash tables. By overlaying a spatial tree, for example, we’re able to durably persist massive amounts of spatial data and service complex nearest-neighbor and multidimensional range queries across billions of rows fast enough for an online consumer facing application. We continue to improve and evolve the system, but we’re eager to share what we’ve learned so far.

    At 2:00pm to 2:50pm, Friday 15th October

    Coverage slide deck