Hacker Newsnew | past | comments | ask | show | jobs | submitlogin

> There's one point in particular that took me a while to grasp: while you can write code that runs on the Ethereum network, every single node has to process that code.

Yep. Unfortunately the creators of Ethereum marketed it heavily as a "world computer" on promotional roadshows, claiming it would replace Facebook and whatnot.

Perhaps more interesting is that, in my view, Ethereum has it wrong: re-executing computation is a really foolish way to do what it can actually do-- which is conditionally allow changes only if a stated predicate holds.

Check out this presentation by my colleague:

Video: https://www.youtube.com/watch?v=TGE6jrVmt_I

Slides: https://cyber.stanford.edu/sites/default/files/russelloconno...

> contracts for financial purposes, voting systems, insurance, or whatever else.

Many of these applications are severely harmed by the lack of privacy in the recompute-everything model.



I'm curious to know what roadshows the Ethereum people were marketing in?


How would Ethereum “replace Facebook”?


Well, it can't in its present form, but there is a market (me, at least) for a distributed app framework that would be the basis for uncensored (and uncensorable) serverless p2p versions of all your favorite social media.


I've heard that idea mentioned a lot but it doesn't seem like anyone has a good strategy for dealing with abuse. This seems especially problematic with a blockchain which cannot be altered: what do you do when someone creates a fake profile, uploads revenge/child porn, nazi propaganda, etc.? In many parts of the world that has a legal requirement to be blocked which would seem to either require a way to rewrite history or the entire system being blocked in that jurisdiction.


> what do you do when someone creates a fake profile, uploads revenge/child porn, nazi propaganda, etc.?

Ignore it and move on. Block the user from your personal feed if you want.

> In many parts of the world that has a legal requirement to be blocked which would seem to either require a way to rewrite history or the entire system being blocked in that jurisdiction.

How has that worked out against BitTorrent?


> Ignore it and move on. Block the user from your personal feed if you want.

That doesn't address the questions:

1. How can you ignore something which is causing you or someone you care about harm? Will you operate a node which keeps that content available against the wishes of the target? (For that matter, how many people will use a network which prevents you from removing mistakes?)

2. You can't just ignore things with legal implications — e.g. if someone uploads legally restricted content, everyone participating in the network has to expect legal consequences even if they personally aren't troubled by it. If you're in Germany and someone else can get Nazi content from your system, do you really think “I didn't upload it and there's no way to block it” is going to lead to a court reaction other than an order to turn it off until the underlying technology is fixed?

3. Ignoring that many places do block BitTorrent, it's different in the key aspect that torrents are independent. Someone who hosts Linux ISOs doesn't have to worry about getting sued because a different user is distributing copyrighted movies. That doesn't seem to fit with a blockchain model and it seems like a major problem growing a social network beyond the immediate founders if everyone has to find a private cluster to join.


> How can you ignore something which is causing you or someone you care about harm?

If it is really causing you harm, you can always sue for libel. If it is just something you dont like, deal with it. The internet is not a "safe space".

> Will you operate a node which keeps that content available against the wishes of the target?

If it is anything like DHT, yes. I don't give a shit. Whoever has a problem can take it up with the originator of the offending content. If they can trace them and prove it is illegal in a court.

> For that matter, how many people will use a network which prevents you from removing mistakes?

Everyone. Do you use git? Do you correct mistakes using a new commit? Congrats, you now know how to correct a mistake on the internet.

> if someone uploads legally restricted content, everyone participating in the network has to expect legal consequences even if they personally aren't troubled by it

In such cases the law is wrong and must change.

> If you're in Germany and someone else can get Nazi content from your system, do you really think “I didn't upload it and there's no way to block it” is going to lead to a court reaction other than an order to turn it off until the underlying technology is fixed?

The way German law treats Nazi sentiments is highly anti-free-speech. Cannot continue for much longer (~50 years). The correct way is to allow free speech but prosecute criminal acts (free-speech is not a criminal act). IMO, irrational laws in countries that are against free-speech should not impact adoption of technology, just as bittorrent is still widely used even though US law is against it.

> Ignoring that many places do block BitTorrent

I am curious how that is done. Are you talking about China? I do not know any way to block the bittorent protocol itself apart from DPI.

> That doesn't seem to fit with a blockchain model and it seems like a major problem growing a social network beyond the immediate founders if everyone has to find a private cluster to join.

I agree. Maybe someone can come up with a solution. Maybe we can encrypt everything so that nodes can not possibly know what the content is. I don't know.


> I don't give a shit. Whoever has a problem can take it up with the originator of the offending content. If they can trace them and prove it is illegal in a court.

If you have a computer serving that to other people (i.e. a real durable P2P system), you're going to be pulled in as a collaborator. Even if you're willing to risk the police and are willing to go to jail rather than compromise an absolute free speech position, which I highly doubt, almost nobody else is and that's kind of the death-knell for a P2P network.

If you want to build things people will actually use, following the law is more important than naive techno-utopian fantasies about being able to force your desires on nation-states.


Count me in as well. For about a decade I've argued that 'we' need a decentralized, encrypted, peer-to-peer way of communication wherein each user physically and legally owns their data (only granting temporary/revocable read rights to other users) and controls said rights on an ad-hoc basis. Including making it public as long as you damn please.

Basically a digital metaphor that you own your 'space' (eg home) and grant other people a temporary right to come in and see/use an item or hear/participate in a conversation. Strong emphasis on the legal aspect since no gov or law enforcement should be able to peek inside without proper authorization (warrant, probable cause, etc).

Diaspora indeed was an interesting idea in theory (good first step I'd say) but the execution sadly was flawed (too cumbersome to sell it to anyone, even free as in beer).

As far as I'm concerned, no social solution satisfies these tenets yet, and so that's an open 'market' as we speak. Blockchain is conceptually a good basis for history/logging (I'd considered torrent to be a good candidate before that).

Monetization of user data could be achieved on an individual basis by granting rights to commercial entities (eg Xbox, Spotify, clothing brand...) to monitor specific activities (eg my gaming metrics, my listening metrics etc). You'd have per-user contracts (eg Spotify authorized by x million people to monitor their musical habits, paying each a few cents per week possibly deducted from their bill if subscribed to the actual premium service).

No middleman, or at least not necessary by design if you can in-house the whole monitoring/marketing (but agencies would likely appear, such as Google adword or Facebook ads operate currently). In this design, even Facebook or any social media would have to be granted rights to read your data, and could not hold/copy it beyond said authorization (in storage space, also in time).

The whole point being to transfer physical and legal ownership back to users, thus able to revoke all rights to anyone, and operate solely on a peer-to-peer basis (maybe I just want to talk to a few people and that's it).

Newsfeeds of sorts can also be envisioned on a per-user basis if said user runs some dedicated software which sorts and presents data this user has viewing rights to, hopefully in a much more customizable way than current Silicon tech monopolies.

At least that's the idea. I'm pretty sure we'll eventually have something like that, we can't keep on digitalising our world with ever less control, it's a bit of a country without public space and no individual private space either, only corporations (not far from the ontology of fascism, although consensually accepted here since you're not obligated legally, only socially pressured into using said networks).

But from this idea to actual execution, there is still a pretty huge gap, notably because any worthy solution needs to be actually adopted by a majority of users. It needs to be sellable to the highest extent (even if it were free), and thus provide actual value over existing solutions. Tooling, ease of use, clarity so as not to trick users, all aspects matter.

Ten years ago I thought this would be long done by now. I evolved into thinking this is actually somewhat of a hard problem (per real-world constraints of all kinds, ie social, political, ethical, not strictly technically) that I want to actively try to tackle personally, whatever I can bring to a solution.


This is an incredible fleshing out of similar thoughts I've had for a while, thanks!

Even just simple 'sharing' things get to me: I want to get a huge bunch of files from my computer to a friend. For semi frequent transfers I just give my friend credentials to a guest account on a VPS so he can rsync them down.

I wonder if we'll ever get a fundamental method of moving files peer to peer that is as easy as email (and similarly open). Something like Resilio (Bittorrent) Sync or Syncthing but more ad hoc?


Well thank you for the comment first of all.

About moving files it also numbs my mind that we still haven't really solved this as we close the 2010s. I think it'll get easier as we gradually move mainstream storage to clouds but it begs the question of ownership; the now-old meme of dropbox etc being "someone else's computer". I strongly believe that a decent cloud provider should encrypt everything before data leaves the user's screen and until it reaches some end user's (blind transport and storage, just like the post office doesn't peak on your letters and boxes). Provided decent API and tooling some of these providers could indeed allow peer-to-peer management. Local storage is dying for the mainstream as networks get better, and it's ok if we tackle the privacy issues the right way. I think.


> ..I thought this would be long done by now. I evolved into thinking this is actually somewhat of a hard problem (per real-world constraints of all kinds, ie social, political, ethical, not strictly technically) that I want to actively try to tackle personally

A notable act would be to join the course of an ongoing project, if one which is flexible enough to build onto exists.


You meant noble act? I agree with you, wholeheartedly. I'm just not aware of any good candidate right now. However even if I or anyone were to build an original solution, it's just 'new' conceptually, but technically all the bits of tech exist already (peer-to-peer eg torrent, encryption eg rsa, etc.), so that solution would likely be about assembling the pieces together. Again no magical billion dollar idea here, but a matter of great execution, ie integration and value proposition in our case.

For cost reasons, quality, and security, I think it should absolutely rely on open-source pieces (and be an open-source project itself, to allow for public review and efficient feature growth). Whoever (individual, group) assembles said solution should therefore become a de facto contributor to all projects used, if only for the sanity of the arch-project.

The matter of profitability bugs me though, because it should not be for profit but you need full-time devs and actually a whole company to run the project with excellency (it needs to be 'sold' to users, I mean promoted to be known and used, a bit like NGOs, and supported/maintained), so I think opt-in marketing (ads, or taking a cut on peer-to-peer contracts like Spotify I mentioned) could be one way of doing it. Ideally, the corporate structure would be not-for-profit so there's no dividends (people and businesses get value but the actual structure doesn't beyond paying employees and contributions, that should be enough incentive for all actors, B or C or states, to root for its neutral continuation, kinda like DNS or email). The point being that everyone had motives for it to exist but no one would profit directly from it, only through it. It's like the police, or the state itself, or public streets: collectively supported.


> The point being that everyone had motives for it to exist but no one would profit directly from it, only through it. It's like the police, or the state itself, or public streets: collectively supported.

The Open Source community needs an open committee founded on promoting projects of this nature. -- [Open committee over closed since such a foundation could easily be corrupted by personal interests]


You would think so, but doesn't the lack of one already existing speak rather loudly about it's market potential?


I don't know about the serverless part, but wasn't this the promise of Diaspora?


It wouldn't, though a lot of the initial "Web 3.0" hype seemed to imply that, such as this post by a cofounder [1]. Even their website used to mention Facebook [2].

[1] https://web.archive.org/web/20140723210829/http://insightsin...

[2] https://web.archive.org/web/20140801161657/https://www.ether...


Here is one early stage project I've heard of using ethereum: https://akasha.world/




Guidelines | FAQ | Lists | API | Security | Legal | Apply to YC | Contact

Search: