When Android first came out, there was no mobile version of match.com or Facebook. In turn, I thought, wouldn’t be cool if there was a location-based profile matching application for the phone? And so the idea of GeoDate was born.

Each user gets an associated profile describing basic attributes about themselves as well as the types of people they want to meet. Via a background process, users could opt to enable tracking whereby the phone would periodically inform a central server of its location, and based on a current location and user-defined radius, users could display a map visualizing where nearby people of interest are located and then provide access to those found profiles.

There were a bunch of interesting technical hurdles at the time. For example, in the above screenshot, the interactive tree-list was not a custom control; invoking SOAP calls from the Java subset used by Android required tweaking the ksoap library, and I implemented a generic client-side dispatcher for making server calls, one that used custom annotations and reflection – it was elegant for what it was.

I had a whole bunch of other ideas about what this app good do; but, at the time, even a basic app might have been competitive as there was nothing location-based like this available yet. Since then, match has developed a mobile application, and social networking has exploded making it much easier to find people on other platforms.