69 comments

[ 3.3 ms ] story [ 132 ms ] thread
Author here. AMA. Happy to work out the details of how this would work if anyone would like to see. It takes a little more than just "bitcoin" - you don't want most transactions to be on the blockchain, for instance. Instead, we would do what Streamium did, which is to use payment channels. That will allow for tiny payments.

Also, how the hosting and sharing of content works requires a lot of effort. We can use Web RTC to do the p2p communication over the web. Most people don't yet know this exists - but p2p communication over the web is indeed possible. The only catch is that you need a rendezvous server. That server would be run by anybody, so the network would be two tiered - the simple-to-use web clients that share content but don't provide the rendezvous service. Then the "full nodes" where the users would also run a rendezvous service, allowing people to find each other.

To most users it would look and feel similar to reddit. Anyone would be able to run a "business" by just running the "full node" app full-time and delivering the content to users.

Of course there's a lot more to it than this. I've solved many of the problems, but not all, and there is no prototype yet. But I believe the fundamental technology now exists to create a decentralized reddit, where the users get paid for hosting the system and providing the content.

What's the need for a true p2p network? Why not just do a federated network of servers like Usenet? That's more efficient, cheaper, and it had been done before.

In your model how are unique identities assigned? Do they tie directly to addresses on the blockchain?

Could you write a more concrete proposal? I know that's asking a lot, but you said ask anything. I've been thinking about this for some time and a decentralized reddit sounds really great but the devil is in the details.

The need for a true, decentralized p2p network is to solve the problem once and for all so that we can shed all of the moral hazards around having a company at the center. If a company starts the project, and abandons their ideals and starts censoring content, users can just download the same content from other nodes. The ideals are salvaged. On the other hand, if 99% of users agree that some content shouldn't be permitted, it would be really hard to find that content.

"Unique identities", or naming, is a hard problem by itself. One way to solve it for our purposes that I think would be sufficient is to just let each user own a keypair to authenticate messages, and the names are NOT unique.

As for a concrete proposal, it takes a lot of time to write something like that, and I just haven't done it yet because I was unsure of the community interest. However, it seems there is a good deal of community interest based on this article. Perhaps I could write a whitepaper, or maybe just a longer, technical document, where I try to solve all the problems. Note I don't actually claim to have solved them all yet - but maybe I would be able to solve them all in the course of writing the paper. Having community feedback really helps identify the problems that need to be solved (thanks!).

How/where would content be stored? As transactions on the blockchain? Seems like that could be bloated. Maybe an identifier could be added somehow to a transaction that points to where the content is stored?

Also, how much would you expect each message to cost? Assuming 1 message = 1 transactions, how does that translate to actual coin amounts + mining fees?

> How/where would content be stored?

Modern web browsers have a real database called IndexedDB. The users store the content. Most users, of course, would not store most content. Users that wanted to could run the app full-time on their local machine, where the database would be leveldb instead of IndexedDB. They would store much more data. Not all data would necessarily be saved forever.

> Also, how much would you expect each message to cost?

Payment channels reduce the cost of transactions to next to zero. An "upvote" does not actually go on the blockchain - only when channels are opened or closed to transactions go on the blockchain, incurring a transaction fee.

Could ipfs.io be used for content storing? Together with filecoin could it be better fit then your proposed solution?
How does content moderation by group moderators and content removal work? This is actually the critical question. You need to stop groups destroying other groups with brigading. You need some means of removing doxxing attempts or you're going to get used in someone else's proxy war with SWATting.
If you charged very small transaction fees (for posts, comments, upvotes) and charged higher fees for downvotes, you wouldn't completely eliminate the problems but you'd reduce them significantly as it would now cost something real for abuse.

For example, if an upvote cost 1 karma (putting aside for a moment what that translates to in bitcoin) and a downvote cost 2 karma (but also removed 1 karma from the OP), there would be a large disincentive to brigade. Similarly, if a post cost 2 karma to add and a comment cost 1 karma, spamming would be significantly reduced.

As far as doxxing attempts, every new user could be required to pay a "security deposit" (similar to when you rent an apartment). If you break any of the ToS, you immediately lose your security deposit. To get your security deposit back, you close your account.

Finally, by using small transaction fees (and collecting fees for downvotes, as the operators would get the 3 karma for each downvote), now you have something to reward moderators with.

> Why not just do a federated network of servers like Usenet?

Or SMTP-like, but instead email messages, federations share content/votes/...

Hi Ryan, What do you envisage happening to the downvote? I was thinking that charging downvoting could be one way that money could go into the system to pay off those who are hosting the system and/or give money to new users after gaining some "proof-of-participation". Also do you think advertising could work in this model at all? It's a great way to inject a bunch of money into the system without users having to deposit their own.
>when a user upvotes content, that sends a small amount of bitcoin to the author of that content

Doesn't this lead to a problem where money = votes? What would be other mechanisms to combat vote fraud?

>In order to download content, the user pays a very, very small amount of bitcoin to the peers on the network. This incentivizes people to keep the app open so as to keep servicing the other users

I don't think this is necessary. The bitcoin network shows that alturism alone is enough to sustain over 5000 nodes.

"Upvoting" on such a system would be a little less like voting and a little more like tipping - think Changetip. There are some real problems here. What if a user pays theirself, thus voting their own content up? One way to solve this is for funds to be locked in some sense before they can be used. A user would have to lock up a significant amount of funds for a while before being able to vote, so it would be really annoying and expensive to commit fraud. There are also bitcoin transaction fees for putting bitcoin into and out of the system, so there is always that disencentive to fund a bunch of separate accounts for the purpose of committing fraud.
What about all of the thieves that have already locked up a significant amount of bitcoin? Wouldnt they be able to use that to easily overshadow a user? Maybe that would give rise to DaaS (downvoting as a service). Miners wouldnt care since they are getting their block rewards + mining fees -- which presumably the thief would gladly play.
> What about all of the thieves that have already locked up a significant amount of bitcoin?

That is a risk, but it is hard to do and wouldn't work most of the time.

> Maybe that would give rise to DaaS (downvoting as a service)

There is no downvoting in this system, only upvoting. (How would you take bitcoin from someone?)

I'm sure this is a question you all thought about, but.... If there are no downvotes, does community moderation work? Does this even resemble the Reddit we know of?

A lot of good posts and a lot of good comments are at a single-digit number of points (quite often 1), because clicking the upvote button is effort. I can only imagine how many posts will stay at one bitpoint if it takes actual money / work / computation to upvote. And those will be indistinguishable from genuine spam, trolling, off-topic rants, etc. (Given that the current Reddit uproar is about poor tooling for moderators, I don't think that shifting even more moderation burden onto the mods is fixing anything.)

There might be an exception in the voting patterns on the very large / default subs, but decentralizing the defaults alone is a very different goal. Most of the value of Reddit, especially if you care about anti-censorship, is in the long tail of subreddits.

> If there are no downvotes, does community moderation work? Does this even resemble the Reddit we know of?

This system would not be the same as the reddit of today. Whether moderation would still work - see all my other comments in this thread about flagging. Basically, flagging would serve as downvoting and would be partially effective. Would love to find a better way, but flagging may be good enough.

Honestly, the more and more I think about this, I just dont think its worth doing with bitcoin. There are too many poisoned coins tied to bad actors. If youve ever worked on a sizable community of forums (and Im pretty sure the "Bitcoin Engineer" for reddit doesnt count), you would know that trolls will troll. Simply because they can, and they will just keep coming back -- bitcoin makes that too easy. All they would need to do is create a new address, account and shift coins around (or tumble them to obfuscate the source).

Lets just think about how many coins have been "stolen". Those are all available to crap all over your p2p blockchain forum. The normal users could never compete. So now, not only do you have to maintain enough hashing power (as suggested above), now you need to maintain a sizable wallet of btc that can outspend a thief's reserve of coins. Just so your users can post on a decentralized forum network? Sounds like a losing battle. Good luck.

> Lets just think about how many coins have been "stolen". Those are all available to crap all over your p2p blockchain forum.

In a Bitcoin economy those are also available to spend on useful things, just like money. Put it this way: would rich trolls spend significant cash to troll you? I don't think so - they'd buy valuable things with their money for themselves instead.

"Troll" is an ambiguous wprd here. The question is whether anyone would spend significant amounts of money to control what gets upvoted and what doesn't. Given Reddit's recent $50M round, I'm hesitant to say the answer is no.
> There is no downvoting in this system, only upvoting. (How would you take bitcoin from someone?) A downvote is a transaction that costs like anything else, but you increase the cost of the downvote. For example, 2 karma to post (given to the owner of the node or community), 1 karma to upvote (goes directly to the OP), 2 karma to downvote (which allows you to subtract 1 karma from the OP - and all 3 karma go to the owner of the node or community).
(comment deleted)
As I commented on the article, I think this whole monetary system might deter adoption of the application. Either way, check out Freenet if you want to see prior art in creating a decentralized web: https://freenetproject.org/

In that p2p project, all you contributed was storage and bandwidth.

I think the monetary system not only wouldn't "deter" adoption of the application, but would strongly incentivize its adoption. People will love being able to be paid for their work, rather than letting other people who they don't know get paid for it.
Right, that worked great for Steam build in mod-shop, people sold only their own creations. Oh wait, they didn't, they submitted everything they could find on Nexus. Re-posters are already an issue, even when all they can gain is some karma/page views, it would be crazy to raise the stakes with bitcoins.
You're correct, getting paid for posts is a strong incentive. In the end, we won't know unless we try.

Personally, when I think of a decentralized reddit, there's nothing monetary about it. Simple points equate with popularity and that's incentive enough, but it's hard to build up a large audience like reddit did. Honestly, when I started reading your article, I was expecting to read a proposal for something like Namecoin, but for a decentralized reddit. Then the monetization part took me by surprise because that would totally change the social dynamic of the site. I would feel it would be less about the content and the popularity and more about trying to make money.

How would this system approach, say, child pornography? If it is truly decentralised, then there is no way to keep such content off the network. But there must be a way for users/nodes to avoid hosting or encountering such content, otherwise the risk of participating in its distribution, even with plausible deniability, makes 'Reddit on the blockchain' a legal/moral/ethical non-starter.
You could have a shared blacklist.
If you have a reason to be suspicious of some content, don't downloaded it. If you discover some content is illegal and you have already downloaded it, delete it and don't send it to anyone else. This is probably best handled with a flagging system. Such a system would not be perfect, but could be improved with time.
In many countries, UK included, you have already broken the law and could go to prison over that.
It's not rubbish. At the time the laws were last tightened there were serious discussion to the effect that simply being sent illegal images via email would be enough to get a conviction.

I'm not saying it's a good law.

Even if mens rea applies to this area of law, it includes categories of recklessness and negligence, which could quite easily be argued along the lines of "you were browsing an unregulated P2P network that is known for containing contraband images".

> "there were serious discussion to the effect..."

Ah, unsubstantiated claims of Internet speculation over something? That must make it true!

> I'm not saying it's a good law.

What law? Where?

> ...it includes categories of recklessness and negligence, which could quite easily be argued along the lines of "you were browsing an unregulated P2P network that is known for containing contraband images".

"You were browsing the Internet, which is unregulated and is known for containing contraband images".

In reality, you filter when you browse the Internet, and that defines your intent. The same would apply here. Access the "HN" sub-P2P-reddit for unflagged posts then nobody can claim that you had intent. If the "HN" becomes rife with unflagged contraband and you stop using it when this starts to happen as a consequence, then nobody can claim that you had intent.

If the whole network becomes unusable because it's rife with off-topic unflagged contraband, then what you really have is a different argument. You'd be claiming that the network would be unsable because of off-topic unflagged contraband. You wouldn't have any argument about the risk of criminal liability from unintended contraband download, because no law-abiding user would ever get that far.

In short: if functional network then no legitimate risk.

You could have flags for CP and then download content with a zero CP flag score. It could work similar to centralized spam providers where you check an IP or username before they post or register. If they have a spam score higher than x, you don't allow them to post or register.
I've done some thinking on this problem, but my own implementation (PeerNews) is sort of stuck in place because I lost interest.

That said, if "P2P Reddit" sounds interesting to you, I'd love your feedback on this rough spec document.

https://github.com/FeepingCreature/PeerNews/blob/master/spec...

The design takes advantage of the P2P nature of the network to customize content to the person reading. Using friends and de-friends (hates? unloves?), you would form your own trust weighting for people's upvotes, thus forming a network of cliques where everybody can read the same content, but sorted differently according to their interests.

No offense as I'm sure you're a great guy, but I'm really glad they cancelled the project if that is what you were hired for. There's so many reasons this could never work (I would loved to be proven wrong though).

1) I'd say about 10% of the reddit user base even knows what bitcoin is, and far less have any. I don't see people willing to acquire bitcoin just to participate.

2) At some point you have to host the content on a computer somewhere. Time on computers costs money. In the case of reddit, this is 1000s of dollars a day (and would be even more in a decentralized system due to the overhead of coordination). Right now the bitcoin economy is not robust enough to extract 1000s of dollars a day, and there isn't any provider that will accept bitcoin in exchange for compute at that level, or even close to it.

3) Fewer and fewer people have the ability to host content anymore, be it at home or in a datacenter. So you'd be relying on just a few people who would be willing to host content. This basically leaves you very open to an "attack" on the network by a bad actor, who could take it over with reltive ease if they were just one of a few that were hosting content.

4) Child porn. It would be way too easy for someone to put that on the network and then everyone would be at risk, further reducing the number of people willing to host (see the list of Tor exit nodes that aren't government spy nodes as an example of how few people would be willing to participate).

5) Related to number 4, the laws in different countries are different. If I host in the USA and you host in say Sweden, content that is legal for you may not be legal for me, again opening me up to liability unless I closely police the content, and unlike reddit Inc, I don't have the lawyers and common carrier protections.

Like I said, I'd love to be proven wrong, but given my experience actually running reddit, I just don't think the bitcoin ecosystem is big enough to support it today or even in the medium future.

> I'm really glad they cancelled the project if that is what you were hired for.

The idea sketched out here is not equivalent to the project I was hired for. That project was never sketched out in detail and probably would not have involved bitcoin.

> 1) I'd say about 10% of the reddit user base even knows what bitcoin is, and far less have any. I don't see people willing to acquire bitcoin just to participate.

Today, most reddit users would not participate in this system. But we don't need 100 million users on Day 1.

> 2) At some point you have to host the content on a computer somewhere. Time on computers costs money. In the case of reddit, this is 1000s of dollars a day (and would be even more in a decentralized system due to the overhead of coordination). Right now the bitcoin economy is not robust enough to extract 1000s of dollars a day, and there isn't any provider that will accept bitcoin in exchange for compute at that level, or even close to it.

Yep. Probably the best way to do this is to found a company that hosts servers that host a lot of the content. Anybody could do this, of course, and the company's servers are not privileged in any way. However, by being the first and best service provider on a new decentralized platform, they would profit (I call this business plan the "Satoshi model"). Note how in the article I explain that the users actually pay to download content - a possibility that was not available when reddit was founded.

> 3) Fewer and fewer people have the ability to host content anymore, be it at home or in a datacenter. So you'd be relying on just a few people who would be willing to host content. This basically leaves you very open to an "attack" on the network by a bad actor, who could take it over with reltive ease if they were just one of a few that were hosting content.

Think of the hosters as being more like bitcoin miners or bitcoin full nodes. Anyone can do it, technically, but almost no one bothers to. The people that do make a business out of it.

> 4) Child porn. It would be way too easy for someone to put that on the network and then everyone would be at risk, further reducing the number of people willing to host (see the list of Tor exit nodes that aren't government spy nodes as an example of how few people would be willing to participate).

Don't host content you don't agree with. There could even be a flagging system for stuff like this so that you never download it in the first place where possible.

> 5) Related to number 4, the laws in different countries are different. If I host in the USA and you host in say Sweden, content that is legal for you may not be legal for me, again opening me up to liability unless I closely police the content, and unlike reddit Inc, I don't have the lawyers and common carrier protections.

Yes. As I said, you do not have to host content you don't like (but you also can't prevent other people from hosting/sending whatever they want to other people).

> Like I said, I'd love to be proven wrong, but given my experience actually running reddit, I just don't think the bitcoin ecosystem is big enough to support it today or even in the medium future.

The bitcoin ecosystem is not mature enough to be as big as reddit today, but it is big enough to be as big as reddit on reddit's Day 1, or maybe reddit's Day 365 or so. This system and bitcoin could grow to ultimately be as large as reddit is today or larger, in 10 or so years (in a hypothetical best-case scenario).

> Yep. Probably the best way to do this is to found a company that hosts servers that host a lot of the content. Anybody could do this, of course, and the company's servers are not privileged in any way. However, by being the first and best service provider on a new decentralized platform, they would profit (I call this business plan the "Satoshi model"). Note how in the article I explain that the users actually pay to download content - a possibility that was not available when reddit was founded.

At some point to run a business you have to participate in the economy. The way you do that is be getting things you can use to trade for other things. Usually we use money as a way to simplify this.

How do you extract value from the bitcoin ecosystem, until there are enough people willing to exchange good for bitcoin, like food, clothing, and shelter?

> Think of the hosters as being more like bitcoin miners or bitcoin full nodes. Anyone can do it, technically, but almost no one bothers to. The people that do make a business out of it.

I think that's just proving my point. There would only be a few people participating as full nodes because it's complicated, putting the entire network at risk of a bad actor.

> Don't host content you don't agree with.

That's great but how do I find the content I don't agree with?

> There could even be a flagging system for stuff like this so that you never download it in the first place where possible.

Who would flag it? Can I trust them?

> At some point to run a business you have to participate in the economy. The way you do that is be getting things you can use to trade for other things. Usually we use money as a way to simplify this.

I'm not sure how familiar you are with bitcoin, but you can buy real stuff with it. It is quite well integrated into the normal economy at this point, considering how young it is. But of course it is not as popular as credit cards yet.

> How do you extract value from the bitcoin ecosystem, until there are enough people willing to exchange good for bitcoin, like food, clothing, and shelter?

You can buy food, shelter, and clothing with bitcoin. Spend some time around /r/bitcoin and you will see these opportunities. How many places could you use a credit card when they were only 6 years old?

> I think that's just proving my point. There would only be a few people participating as full nodes because it's complicated, putting the entire network at risk of a bad actor.

A p2p network where anyone can run a node seems strictly better than a central organization to me with respect to "bad actors". When reddit, Inc. makes a decision the users agree with right now, they can't overturn admin decisions. It would be far easier to do so with a decentralized reddit.

> That's great but how do I find the content I don't agree with?

I'm not really sure - most of the time you probably wouldn't know, so there would be times when you unintentionally hosted something you disagreed with. One way to solve that is to simply not host content at all, and only download.

> Who would flag it? Can I trust them?

This is the general problem of reputation, trust, authentication, and naming all in one. I think this project should aim to solve these problems sufficiently well to make things work effectively, and not solve them 100%. For instance, flagging could work by having a buddies list, and trusting their flags, and maybe their buddies' flags. That would be partially effective and better than nothing, but not perfect either. We would iterate and improve the flagging system with time.

> I'm not sure how familiar you are with bitcoin, but you can buy real stuff with it. It is quite well integrated into the normal economy at this point, considering how young it is.

I'm quite familiar with it, but you really can't survive off bitcoin alone. There just aren't enough vendors taking it, but more importantly, this is because it is hard for vendors to price items since it so rapidly fluctuates. Bitcoin is also tax disadvantaged because it's classified by the IRS as an asset not as currency, so you get taxed every time you transact bit coin and it has "changed value" relative to the dollar. Can you image trying to do business with dollars if you had to pay tax every time it's value changed compared to the Euro?

> You can buy food, shelter, and clothing with bitcoin. Spend some time around /r/bitcoin and you will see these opportunities. How many places could you use a credit card when they were only 6 years old?

Food and clothes yes (although very limited choices). Shelter? I'm not familiar with anyone who takes bitcoin in exchange for a place to sleep.

You compare it to credit cards, but that isn't really an apt comparison because credit cards just represented dollars in another form.

> A p2p network where anyone can run a node seems strictly better than a central organization to me with respect to "bad actors". When reddit, Inc. makes a decision the users agree with right now, they can't overturn admin decisions. It would be far easier to do so with a decentralized reddit.

But then you get chaos and a fractured ecosystem. I would say that's worse.

> I'm not really sure - most of the time you probably wouldn't know, so there would be times when you unintentionally hosted something you disagreed with.

It's not the stuff I disagree with that's the problem, it's the stuff that's illegal -- ie. my government doesn't agree with.

> This is the general problem of reputation, trust, authentication, and naming all in one. I think this project should aim to solve these problems sufficiently well to make things work effectively,

I'm not even sure what to say here. I know this is HN, but this XKCD explains it perfectly: http://xkcd.com/1425/ (It's the one about making the computer recognize a bird)

> I'm not familiar with anyone who takes bitcoin in exchange for a place to sleep.

From 3 minutes on Google:

http://www.expedia.com/

http://www.cheapair.com/hotels/

https://btctrip.com/

http://www.travelforcoins.com/

https://www.clickjett.com/

http://blog.9flats.com/9flats-accepts-payments-with-bitcoins

I'm not commenting on anything else you've said, but I really do have to question your claim that you're "quite familiar" with the bitcoin market

As far as I know every one of those prices in USD and then uses an exchange to immediately convert bitcoin to USD. I don't count that as taking bitcoin.
I think you're correct, but this is a disappointingly blatant straw man argument, because you were attempting to refute the claim "You can buy food, shelter, and clothing with bitcoin."

If we were arguing about the overall health of the bitcoin economy, then your point about conversion to USD would be relevant, but we're only discussing the utility of bitcoin for the consumer here. From the customer's point of view, it is irrelevant, what matters is that the company will accept their bitcoin.

The rental markets seem to have solved a similar problem of "bad actors" through deposits. Similar techniques could be used here. e.g. Each MB of content uploaded requires an additional .1 bitcoin deposit.
> Who would flag it? Can I trust them?

>This is the general problem of reputation, trust, authentication, and naming all in one. I think this project should aim to solve these problems sufficiently well to make things work effectively, and not solve them 100%. For instance, flagging could work by having a buddies list, and trusting their flags, and maybe their buddies' flags. That would be partially effective and better than nothing, but not perfect either. We would iterate and improve the flagging system with time.

If karma equated to Bitcoin in some way (i.e., had tangible value), where users were giving each other karma via upvoting, you could reward users with a "bounty" for correctly flagging content as a certain type (e.g., spam, CP, not relevant to sub). Mods for that sub then make the decision if the flag was appropriate. If it is, those who flagged correctly get the earned upvotes (which equate to bitcoins) divided among them.

So you're saying if I create two accounts, one that posts illegal content and one that very quickly flags it, I'll gain a bounty from users each time?

If you're going to say that the reward now must entirely come from the person who posted said content, well, that requires also solving the problem of each poster having to have a sort of "deposit" of money, which is marginally better.

> So you're saying if I create two accounts, one that posts illegal content and one that very quickly flags it, I'll gain a bounty from users each time?

No. The bounty comes solely from dividing up the upvotes among the users who flagged the post. Additionally, the cost to flag is 1 karma (so there's a disincentive to try to censor content), but you get that 1 karma back if a mod agrees with the flag. If there aren't any upvotes, there isn't any bounty to be divided and distributed.

Edit: Here's an example of the way it could work - https://valme.io/c/gettingstarted/faq/5qqqs/whats-a-modqueue...

>I'm not really sure - most of the time you probably wouldn't know, so there would be times when you unintentionally hosted something you disagreed with. One way to solve that is to simply not host content at all, and only download.

Is it technically possible to divide a specific content to many providers? For example let this string "1234567890" be a content. Could an incentivized server A hosts first, third and tenth characters and server B and C host other characters. Could a client download the content properly in terms of speed. It seems like it is very similar or same with torrent and possible. Therefore, anyone could not be accused of hosting those random samples. Only integrating those samples -downloading- can be a kind of a guilt.

If you plan to start a company that centrally hosts content (which you said below the user's would do.. now Im confused), whats the point of even using bitcoin? What role does it play besides some sort of integrated pay to post and tipping system? Both of these things can be done without bitcoin -- and far simpler too.

Sure the load could be distributed to a p2p network, but how are you really going to prevent malicious users/nodes? It seems like it would be a nightmare to develop a fair system. A fair system where a user's post is actually propagated (included in mining) to the network and not silenced by a large installation that doesnt want the content on the network. It would seem that if youre using some sort of bitcoin system (or some derivative), a node would just need to contribute enough hashing power to exclude specific content that they don't like (or have been paid to exclude) a significant amount of time to frustrate users. Your centralized resources would always have to be able to provide more hashing power to keep control of the network. Seems silly to chase after big mining installs. Maybe I dont understand your idea... "Fix reddit with bitcoin! [[insert story about being let go and why what you were working on was actually valuable]]" doesnt really explain anything. Maybe this could be a good idea, but it just sounds like vaporware at this point.

Just create an altcoin that you have more control over. But I guess that no one (you?) would benefit enough, because its not tied to bitcoin's value being inflated.

Disclaimer: I own some bitcoin. So dont think Im just trashing on bitcoin.

> If you plan to start a company that centrally hosts content (which you said below the user's would do.. now Im confused), whats the point of even using bitcoin?

The point of using bitcoin is so that users are rewarded both for sharing content, and for hosting the content.

> What role does it play besides some sort of integrated pay to post and tipping system? Both of these things can be done without bitcoin -- and far simpler too.

Although the idea I sketched out is for a decentralized reddit, a centralized reddit that just integrated payments is also totally valid idea. Imagine if Changetip were integrated directly into reddit so that upvoting tipped people. That would still be really valuable and a lot of people might use such a thing. But it doesn't solve the other problem of what to do when the owners of the service have different ideals than the users. (Note that I actually worked with the guys at Chain.com to produce a proof-of-concept of something like this.)

> Just create an altcoin that you have more control over. But I guess that no one (you?) would benefit enough, because its not tied to bitcoin's value being inflated.

A new altcoin would not be as useful as bitcoin outside of the system. Using bitcoin makes karma as real as possible. Using an altcoin would just be annoying and a lot fewer people would want to use the system.

Are users going to pay for decentralized Reddit? I'm not sure they will care much about the possibility of the company's interests being against them, especially the majority of users who don't speak much of politics.
> A new altcoin would not be as useful as bitcoin outside of the system. Using bitcoin makes karma as real as possible. Using an altcoin would just be annoying and a lot fewer people would want to use the system.

But is that really true? The overwhelming number of users that would participate (at reddit's scale or a couple of magnitudes less) have 1) never heard of bitcoin, 2) dont own bitcoin, 3) think its scammy or for buying drugs. Almost all of the potential users would have to purchase bitcoin just to participate. The only people that would be annoyed by using an altcoin are the ones that currently own bitcoin and would not receive a benefit from an increase in value.

Lets be real. This type of application could definitely be developed with some sort of decentralized/p2p token system where tokens are earned, posts are paid for them and maybe the tokens gain some sort of value, but it doesnt require bitcoin. It could literally just be pebbles picked up off the ground if enough people believe that that is correct. Bitcoin isnt valuable enough and doesnt have enough utility for it to be an absolute requirement.

>Yep. Probably the best way to do this is to found a company that hosts servers that host a lot of the content. Anybody could do this, of course, and the company's servers are not privileged in any way. However, by being the first and best service provider on a new decentralized platform, they would profit (I call this business plan the "Satoshi model"). Note how in the article I explain that the users actually pay to download content - a possibility that was not available when reddit was founded.

So if there is a "first-and-best" service provider, how exactly does this change from what Reddit is doing today? I can't really wrap my head around how you have defined the problem, nor how this solves it. You still have Reddit at the center - and to most users thats all they will ever see.

This solution doesn't seem very different from writing an application that downloads all content from reddit and posts it to voat. If reddit decides to be a bad actor, it won't really matter because they still own most of the pie.

>Yep. Probably the best way to do this is to found a company that hosts servers that host a lot of the content. Anybody could do this, of course, and the company's servers are not privileged in any way. However, by being the first and best service provider on a new decentralized platform, they would profit (I call this business plan the "Satoshi model"). Note how in the article I explain that the users actually pay to download content - a possibility that was not available when reddit was founded.

So if there is a "first-and-best" service provider, how exactly does this change from what Reddit is doing today? I can't really wrap my head around how you have defined the problem, nor how this solves it. You still have Reddit at the center - and to most users thats all they will ever see.

This solution doesn't seem very different from writing an application that downloads all content from reddit and posts it to voat. If reddit decides to be a bad actor, it won't really matter because they still own most of the pie.

> 4) Child porn.

This is a big issue for systems like this, but I believe it could be addressed through machine learning algorithms. Rather than a spam filter, you have a child porn filter, or a whatever-it's-illegal-to-host-in-my-jurisdiction filter. At least in the child pornography case I believe it could be fairly effectively detected, though of course keeping the model up-to-date would be difficult.

There already are federated social networks. Wikipedia has a long list.[1] You never heard of any of them. Buddycloud, Diaspora and Friendica got far enough to have a number of servers in two digits. Buddycloud seems to have pivoted into a system for in-house use. Diaspora seems to be dying. Frendica is running, with a very modest number of users, and trying to replace itself with a new system called Red.

It's quite possible to do this, but so far, nobody has been able to get anything like enough users to make it useful.

[1] https://en.wikipedia.org/wiki/Comparison_of_software_and_pro...

None of the federated social networks integrated p2p payments because that wasn't possible until bitcoin. The entire existing internet economy was built around the assumption that p2p payments were impossible. That assumption no longer holds.
What's preventing all those systems to integrate p2p payments now ? AFAIK users only need to share their wallet id, so it could be as simple as a line in the profile; when users click on a "tip this" button, the system can get the id and send some amount.
No, the early Internet economy tried micropayments. First Virtual, Cybercoin, Millicent, Digicash, Internet Dollar, Beenz...

All failed.

Anyway, payment isn't the problem with distributed social networks. Asshole amplification is the problem. If one jerk can easily annoy hundreds of users, there's a problem. Trying to build a federated social network which can survive spam nodes is going to be tough. Especially if users are anonymous and can create additional identities easily.

> You never heard of any of them

Quite bold statement

There are undoubtedly a lot of problems to figure out. But you absolutely have my support to run the experiment to try and figure out how to, finally, actually build the front page of the internet in a truly decentralized way.

You (*or rather, relevant people) will have my bitcoins in support on day one, if this ever launches.

Love the idea. We are working on something similar, but without the decentralization at this point. In our system users can invest bitcoin in a post by upvoting it. If that post gets many upvotes subsequently the investor will make a profit, otherwise a loss. https://github.com/rolandnsharp/node-bitcoin-reddit

We are looking for collaborators for this project. Please feel free to get in touch if you are interested (@clemensley).

Such systems are prone to political effects. For example, a pop song would get much more upvotes than a genuine discussion. Over time intellectuals leave because of the noise.
That is true. In a sense that is the truly democratic effect: more people care about pop music than intellectual discussions (obviously our system would be a twisted form of democracy where money==votes; then again that's too different from real world democracy).

I obviously have no idea how this will pan out, but it's just far too exiting to not just try.

Edit: Our idea is really to "give bitcoin to the people who provide value". Nothing is set in stone yet, but our current thinking is that there are two ways to provide value in a Reddit style system: submit new content or upvote valuable content. We want to find a fair way to pay rewards in both cases.

> That is true.

I don't agree. You're going to have different communities, just as reddit does now. Intellectuals are (likely) not going to be posting in /r/I-love-taylor-swift; they would post to their own communities as they do now. If you're concerned about what makes it to the front page, you use a different algorithm than reddit uses. Or, better yet, you allow mods (or even users) to customize the algorithm their subs use.

I hope you are right. One would really have to think about how to give users more control over the content they see. Allowing mods to tweak the sorting algorithm is a great idea to do this by the way.

Ultimately I think it is wrong that people put so much effort into social media and do not get rewarded for it in a meaningful way (and no, I don't consider a "like" or an "upvote" a sufficient reward). If we could find a way to reward people monetarily for producing and finding valuable content, that might lead to a huge increase in quality.

I have this theory for how companies could be built: look for where value in transferred on the internet (for example if someone watches a video on YouTube, value is transferred from the video producer to the viewer); then send bitcoin in the other direction. This model seems much more efficient to me compared to today's model where the value from the content consumer to the content produces is transferred through a sequence of intermediaries (social media sites, advertisers, advertising networks) that all take a cut.

Obviously one needs to think about the incentives for all actors, I do not think that donation based networks will work because there is really not much incentive to donate.

> Allowing mods to tweak the sorting algorithm is a great idea to do this by the way.

Already built. The front page algorithm section at valME.io allows you to select reddit's as the default [1] or choose your own customizations (include NSFW, max hours to evaluate post, num of posts on front page, num of karma by karma type and weightings, OP's karma balance and weighting, OP num of comments, post views, OP age, num of OP flags, etc.)

[1] https://gist.github.com/touhonoob/2923094

At first glance, I thought the title read:

"Fix Reddit with Bacon"

but no, decentralized reddit sounds like a better idea... maybe until figuring how how to distribute moderation and other privileges.

This is already in development and has been through a genesis block colored coin issuance based on Bitcoin: http://www.synereo.com/

They will reward content creators and participants with the colored coins: AMPs

Advertising will also be supported with a market in the AMPs. Thus bringing equity to holders of AMPs.