Social networks, when properly harnessed, can be remarkably powerful things. The goal of this project is to use that system (with the help of the Internet, of course) to transport inexpensive physical objects (say, a book, a video game cartridge, or a burned CD) from one person to another. Ideally this would be done in a relatively short period of time, comparable to the inexpensive modes of object transport like UPS ground and the USPS.
The system has a few necessary components and a few components that will make it more effective.
The system is mediated by a website which maintains user information and physical packet status information. A social node (or user) registers a packet's header (an ID tag of sorts) and specifies a destination user. The system then computes the most effective path through the social network to transport the packet at that time. The user is then told the name and possibly location of the friend they're supposed to give the packet to. This friend is the first step in the chain of people - or social nodes - the packet goes through.
That friend will take the packet, enter in the packet's ID and register themselves as having received it. The system will then tell them the next social node to give the packet to. As the packet moves, the best path may be re-evaluated in order to reflect the state of the social network at the time.
Eventually, the packet will reach the destination and hopefully the desired user will get the desired packet.
The system requires a critical mass of social meta data to be met. As the social meta-data is attempting to describe an actual social network, the system will function best if it precisely mirrors the actual network. Of course, that won't realistically happen, but all efforts possible should be made to achieve it. If one were to take two arbitrary nodes, one should be able to transmit a physical packet between them within a reasonable amount of time.
This should be achieved using a viral/mememetic spreading system. The mememetic payload needs to be more than simply a functioning system (as, even though the benefits are apparent, they are neither immediate nor guaranteed).
Simple error correction can be dealt with by affixing a postal return address to the physical packet header. Instructions should be placed on the header stating that, upon severe error, the user should return the packet to a source where it can be handled.
Use the same header system, but base it on geocaching. Have the person depositing the payload put it in a place to the north/south/east/west depending on the direction the object eventually must go. Have a known geo-cacher near the deposit go find it and give them instructions on where to put it next. This might be a more fun implementation, as it turns it into a game instead of a chore.