Distributed Social Network

Hola guys and gals,

this is not directly related to NEM but to Crypto in general and I wanted to see what the smart people in this forum have to say about it.

Lately I was reading a bit about distributed social networks and there are a couple of projects being worked on. A lot of people are pissed of by how Facebook treats their users and their privacy and I think if there was an alternative that is easy to use it could be huge.

I am not a leet programmer and not saying I want to build this (I guess it's a massive undertaking) but rather collect ideas for the perfect utopian social network of the future.

The SN should:

- Be Peer-to-Peer, completely decentralized, community owned
- Be End-to-End encrypted, so none of the peers can read anything that is not adressed at them
- Be Free, or else nobody is gonna use it
- Be Ad-Free, because privacy and targeted ads do not work well together
- Have all the features people like about FB, minus the crap
- Not need authentication with a real name but still be resistant against SPAM and malicious clients
- Provide the user with complete control over their data. If someone deletes a picture he uploaded it should be gone forever
- Have a method of monetization that provides enough income to pay for active development and other costs


To get things started a crypto currency would be issued, lets call them Socials. If you join the network you get a number of coins, maybe ten Socials. With those you can do things inside the network, like post stuff, send messages and whatever you do in a social network. The fee is low, like 0.1. Once you are out of Socials you can't do any more stuff.

By being an active node on the network you earn Socials. Pretty much like Proof of Importance, the more value your client provides the more Socials you get on a daily basis. Value in this case means providing bandwidth, storage space and computing power to keep the network alive. This gives an incentive for a strong and diverse P2P-Network.

The underlying currency comes with built-in demurrage. One percent of your total amount of Socials evaporates every day and flows back to the network in order to be distributed out among active nodes.

If the community decides on an improvement a member or a group inside the network can be hired as developers and paid in Socials that are collected by the community. They are then free to exchange those for Bitcoin or whatever. With enough users the currency should be strong enough to allow for money leaving the system without having a bad effect.

By coupling a currency with a social network you could reach a way bigger audience than cyptos have nowadays and give people a reason to use crypto. Provided there is great ease of use, as in my grandma needs to be able to sign up.

Also, a reputation system should be implemented to build trust between users. This is working really well on smaller scales like forums and such.


Thoughts?

So using the social network costs "money" (or cryptocoins like your new "Social"). Since this is actually not unfair, people won't like it, "because facebook is free" and the p2p social network de facto isn't.

Of course facebook is not free - users pay with their data. But people don't see it like that.

No it does not cost money. You get free coins when you join and as long as you are an active node in the network.


No it does not cost money. You get free coins when you join and as long as you are an active node in the network.


costs:
With those you can do things inside the network, like post stuff, send messages and whatever you do in a social network. The fee is low, like 0.1. Once you are out of Socials you can't do any more stuff.

+
One percent of your total amount of Socials evaporates every day


income:
By being an active node on the network you earn Socials. Pretty much like Proof of Importance, the more value your client provides the more Socials you get on a daily basis.


income, if not active enough? -> pay

No I don't think you should have to pay.

You will only lose one percent of your Socials every day so there will always be a small amount left for you to use.

And to get more coins all you have to do is provide value to the network. That means just leave your account/client open so it can process network traffic and after a short while your coin supply will go up again.


No I don't think you should have to pay.

You will only lose one percent of your Socials every day so there will always be a small amount left for you to use.

And to get more coins all you have to do is provide value to the network. That means just leave your account/client open so it can process network traffic and after a short while your coin supply will go up again.

Well then you pay by leaving your computer running. Either way, people will see this as a payment since facebook is free. Again - to be clear: This is not my opinion, but I expect this from people to say.

Also a problem: There are lot of people who use soial networks 99% with mobile devices. Providing value to the network with a mobile device is not really possible, so people would have to leave their desktop or laptop running which is power consuming and annoying.

That's true mobile devices might be a problem but maybe also a good thing.

Most people who have facebook on their mobiles have the app running all the time because it never really shuts down unless you restart your phone.

Modern phones are small computers and maybe they could provide value to the network. Latest generation phones and tablets have pretty fast processors and enough memory to do stuff. So you would even fill up your Socials by just having the app running on your phone, which is what people are doing all the time anyway.

Thanks for your input so far!


That's true mobile devices might be a problem but maybe also a good thing.

Most people who have facebook on their mobiles have the app running all the time because it never really shuts down unless you restart your phone.

Modern phones are small computers and maybe they could provide value to the network. Latest generation phones and tablets have pretty fast processors and enough memory to do stuff. So you would even fill up your Socials by just having the app running on your phone, which is what people are doing all the time anyway.

Thanks for your input so far!


They have the app running but it's rarely doing anythinig. A few requests here and there to see if something happend but that's about it. In no way enough to maintain a blockchain.

I don't think an ordinary blockchain would be the best tech for something like this. I think someone is doing exactly this kind of thing on the bittorrent protocoll which sounds like a much better idea.

That's true mobile devices might be a problem but maybe also a good thing.

Most people who have facebook on their mobiles have the app running all the time because it never really shuts down unless you restart your phone.

Modern phones are small computers and maybe they could provide value to the network. Latest generation phones and tablets have pretty fast processors and enough memory to do stuff. So you would even fill up your Socials by just having the app running on your phone, which is what people are doing all the time anyway.

Thanks for your input so far!

Mobile devices are little computers, that is right. But they need to save all the energy, otherwise they wouldn't even make it to run 1 complete day...

Plus there is a big technical problem for p2p via mobile devices (if not using WiFi):
A mobile device gets its IP from a service provider, therefore this IP is not a public accessible IP but inside a subnet of the service provider. To be able to establish a connection to the mobile device from outside (which is needed for a working p2p network), you would have to open a port at the service provider to be forwarded to the mobile device. Service providers don't do that (for reasons).
You can compare this situdation to a laptop at home which gets its local IP from a router. At home you have access to the router and can open the port. But you don't have access to the NAT at the service provider for your mobile device.
-> P2P for mobile devices (which is not using WiFi) is NOT possible without a central server which helps to establish a direct connection to the mobile device.

Synereo is trying to do a Distributed Social Network.

I watch this thread some time now and it might be interesting.

https://bitcointalk.org/index.php?topic=827782.0

Hello

There are already a lots of existing projects related to p2p
social networks.
There are not directly related to crypto currencies.
Check it here:
https://prism-break.org/en/all/#social-networks

The Synereo project looks pretty cool, I am watching this although there is not much to see yet.

Ads and privacy don't fit together IMO but still way better than FB.


Hello

There are already a lots of existing projects related to p2p
social networks.
There are not directly related to crypto currencies.
Check it here:
https://prism-break.org/en/all/#social-networks


Wow, didn't know this site. Extensive collection of good stuff!

Did anyone try Friendica? Maybe we should set up a server for the NEM community to try it out…?!  :stuck_out_tongue:

Saw aether lately, it seems reasonable, not sure how stronger it can get (par to mesh networks):

https://github.com/nehbit/aether-public / http://www.getaether.net/


Saw aether lately, it seems reasonable, not sure how stronger it can get (par to mesh networks):

https://github.com/nehbit/aether-public / http://www.getaether.net/


That looks cool. Not really a social network but I'll try it out.

Interesting how he plans on implementing PoW to defend against Spam and Sybil attacks:

Sybil attacks

The Sybil attack, in this context, means a malicious user creating hundreds or thousands of nodes (Sybils) to have more votes than he or she is allowed. This can be used to push posts into popularity by upvoting, or for the reverse, to bury others by downvoting.

The solution I have found to prevent this issue is to make creation of any significant amount of nodes prohibitively expensive in terms of processing power. At the creation the node hashes its key a certain user-definable number of times. This communicates to others that the node has exerted a certain amount of effort to prove that it is legitimate. Users pick a threshold above which they deem acceptable enough to interact with, and only accept connections from nodes that can prove spending that effort.

Spam

Spam is ubiquitous, but what it means in this context is a flood of unwarranted messages to either create a DDoS attack on the network, or to harass people with messages they do not want.

To prevent spam, my plan is to implement a similar proof-of-work which communicates to the receiver that the creator of that post did a certain amount of work to prove that the post was not mass-produced. The idea is the same: to make creation of hundreds or thousands of posts cost-prohibitive.

Anyone try aether?

I'm all in favor of decentralized money, social networks, communications, internet and governance happening in a decentralized manner. 

I don't necessarily think that a token and block chain need to be a part of this.  Early version of Skype if I remember right was decentralized and free communication.  And bittorrent is another good example of a decentralized service. 

As far as I can see, a social network too need not have a token and should be totally free, but that… the network might have a token as a way of rewarding people using the platform. 

The way I imagine it is like this. 

Let's say I invent an app, say for a social network.  All the normal functions should be free.  But if a person wants to buy special stickers, or they want to tip, or they want to play a game designed for that platform, then those things should use a blockchain token designed for that platform.  Third party devs building on that platform will use the token it make transactions with customers with no friction. 

The makers of the platform to some extent can be the central bank of their platforms token, and that is how they get financially rewarded.

But for the users, they need not in anyway ever touch the token and need not ever  be a part of the financial ecosystem.  Only if they want to they can for premium services. 

Maybe social networks can be re-imagined. Using blockchain technology it should be possible to link many different applications/networks in a decentralized way.