It's midnight. You're a college student studying for an exam in a library on campus. In a study room 20 ft away sits another student studying for the same exam. The class has 150 students. You don't know any of them. Wouldn't it be great if there were some way to be introduced and make a friend to study with?
How about this one:
Your company has sent you to a client site 2,000 miles away from home. Coincidentally, an old friend is in town on the same days. Your trips overlap, but as you only catch up with each other a couple of times a year, you have no way of knowing that you happen to be staying on the same city block.
These are some of the problems mates (formerly M-Chat) attempts to solve. What is mates, you ask? Well, late last year, a couple of EECS students and I applied for a grant through the GROCS program at the University of Michigan. Our mission: Build an infrastructure to introduce and connect individuals based on physical location, class registration, group membership, academic interests, and other relationships, thereby laying the groundwork for the development of a multitude of next-generation collaborative learning and communication applications.
Allow me to back up a little and explain..
Last semester, I took a mobile technology class in which I led a team in developing a location based service. We built a GPS-powered application for the Pocket PC that would show people a list of nearby friends. They could then select a couple of friends, and find meeting places (coffee shops, restaurants, libraries) near the group. The application interacted with a PHP based web service and received results in an XML format. It was simple, and designed and built in only 8 weeks, but it peaked my interested in GPS and location-based services in general.
Then, late last semester, my friend and classmate Ayush Agarwal introduced me to another EECS student and friend of his, Jeff Powers. The three of us held multiple brainstorming sessions, and eventually, based on Ayush's passion for design, an idea Jeff had been toying with for quite awhile, and my interest in location based services, mates was born.
mates is also a web service (implemented in SOAP, again with PHP). Users supply the server with information including their location, friends, interests, and courses. The server returns information about other users in the system with whom there exists some relationship (for example, all users within a 300ft radius who are taking Physics 100 and are a friend of a friend, along with who the common friend is).
So how is mates different than the wide range of existing social networking applications out there (Friendster, orkut, Facebook)? Unlike those applications, mates strives to be an open infrastructure. We want to bring aspects of social networking into existing applications -- from Friendster to Instant Messaging.
Wouldn't it be cool if your buddy list could instantly populate a group for one of your classes if you had a question you would like to ask other students in the class? Or if your phone could receive a text message every time an old friend you rarely come in contact with happened to be nearby? What if you're simply looking to meet some nearby people with common interests? (we're talking feet here, not "within 10 miles of zipcode X!)
(A cool Avalon interface we're playing around with)
In order to demonstrate the potential of mates, we're also building a proof of concept client using the latest beta of Avalon. The proof of concept client includes an amazing visualization and a working but simple messaging system.
Anyhow, I just thought I'd share some information about the project to which I've been devoting a good portion of my time lately.