Distributed contact management using HTTP

The Idea

A few months ago, Momo came up with an idea to manage contact data in a decentralized and distributed way. The plan was to provide a simple interface to manage and distribute contact data using HTTP. Some weeks ago he finished his bachelor thesis on this topic.

The Project

After some discussions with Momo, I decided to implement his protocol specification. Fortunately, I had the possibility to do this as a software project at my university. The project was mentored by Prof. Kriha.

The implementation itself was done using Scala, Lift and MongoDB.

Abstract

For those of you who don’t want to download the whole documentation, here’s an abstract:

We all live in times of digital communication: Almost everybody is reachable via cellphone, instant messaging or email. Not only the communication itself evolved but also the communication channels increased dramatically. Some people have multiple email addresses, instant messaging accounts and profiles on several social networks. It is virtually impossible to keep track of all the information available.
To address these problems, Moritz Haarmann came up with an idea of a system which is able to manage contact data in a distributed and convenient way. The result of this idea was a protocol proposal which enables users to manage their address data so they can just stop worrying about it.

This documentation describes the implementation details and design decisions made to create an usable software which uses the protocol defined by Moritz.

Documentation

I’ve also written a documentation which describes the protocol specification, some implementation details and the technology used. Have fun with it.