Scott Penrose

Distributed Social Networking

Scott Penrose is a perl hacker with an interest in home automation. He has been playing with electronics since he was old enough to burn his fingers with a soldering iron.

The world is looking at alternatives to Facebook. The commercial companies are (Google+), the large open organisations are (Browser ID - sort of), and lots of open source solutions.

My requirements

My solution will depend on an Open and Distributed standard.

Open standard vs Open source

To be an open standard, you really need multiple implementations. Many organisations will not allow a standard to be released unless there are multiple to demonstrate that.

It is much easier to write an open source application to do social networking than a distributed one. And it is much easier to write a distributed application than an open standard.

Distributed

This is pretty self explanatory. The main requirement here is to allow someone to run their own node, or host it with someone else, even commercially. I now have my email hosted commercially, after running it myself for 18 years. Fortunately email is easy to do so. It is a commodity, I can move it any time. I can even move it to another hosting company running the same software (same features) or a different set (different software). And it is smooth to do so. I can change the file formats, the back end, the software running it, everything. This is what we need for social networking

What it is

What is social networking. Or rather, what do I want to do?

Share private (mostly static) information

  • Facts about me:
    • Phone number
    • Email address
    • Birthday
  • Meta facts about me:
    • Work history

Share private discussions

Selectively share media (optional discussions)

Community Databases (e.g. Game Scores)

Networks

  • Arbitrary groupings of people: Friends, Family, Glider Pilots
  • Associations: OSDC, Melbourne Perl Mongers, Gliding Club of Victoria, French Island Community Association ...
  • Association with an individual: Worked with; Went to school with ...

Gateways

TODO - ability to have gateways to other network sites - taking my open and choosing to publish it on a Facebook page, or Google +. Partly this saves time: aggregation. Partly this give more control: Privacy.

Issue list

My issue list. Some of these may not be an issue, but I need to investigate to understand.

Security on where you are stored

Email does not have any security, but you can be pretty sure that when you email someone it does go to the right place. This is because we trust DNS (not getting into nitty gritty here, but generally true).

Using Diaspora as an example: I can store my seed in any pod, and I can move them to other pods. So if I just start up a rogue pod, and take someones identity? Needs to be considered. Maybe already done?

Central things...

This one is vague, but one example might be "LIKE" - if I "LIKE" this web page, I get to see how many people like this page. Which POD do I ask? How is it distributed?

See Also

  • Social Networks