Facebook continues to attract lots of criticism with its evolving privacy policies. Its success in attracting users shows the importance of social networks, but I have seen relatively little discussion as to which features people really value, and explorations of the design space for alternatives to centralized solutions.
Users should be free to pick how they want to pay for services and not subject to a single model. A decentralized, distributed solution to social networks makes this easier to realize. Essentially you should be free to choose which server you want to host your social presence (your profile page).
The next choice depends on how paranoid you are. This boils down to how much you are prepared to trust your server with your data. For most of us, we are probably content to trust the server as long as it provides an adequate level of security. An alternative is to encrypt data in the web browser and to never give the keys to the servers. The browser generates a symmetric key to encrypt a notification, and then uses the public key for each friend to mask the symmetric key. As always there are trade offs. The more paranoid you are, the more computation and the greater the level of network traffic are involved. This slows things down and will drain the battery faster when you are using a mobile device.
What kinds of features do people want from social networking? Here is a quick brainstorm:
- notifications of what their friends are doing/planning
- shared calendars
- easy ways to upload/share/tag/sort photos and videos
- directories to find friends, colleagues and others
- shared recommendations for all kinds of things
- avoid unwanted leakage across different social groups
- immediate/delayed and push/pull communication models
- symmetric and asymmetric social relationships
- cool social apps
When it comes to finding people/organizations it makes sense to control what information you disclose to different directories. This also involves some degree of trust in the servers that support search across these directories. Access to directories could be restricted to people in given groups. Search could be distributed across servers using peer to peer models as an alternative to centralized solutions such as we are used to with Google and Facebook.
All of the above could be implemented as open source modules that can be installed on any server. It seems that Diaspora is working in this direction and on interconnecting existing social network sites e.g. twitter, facebook, etc, but, perhaps it is work taking a step back, as there is a world of opportunity to be explored. What do people really want from social networking?