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

This isn't theoretical, I've implemented this system already in code: https://github.com/amark/gun . Just spoke on it in London, Germany, and the USA.

I think people need to know that this discussion is no longer happening only in the hands of academics, this is now available to developers - with or without the academic side.



> I've implemented this system already in code

It doesn't look like you have. I watched the demo video "GUN Survives a Primary Fault" and the conflicting updates were resolved with a LWW semantic, which is non-deterministic.

(EDIT: I read some docs, and it looks conflicts are resolved by choosing the highest lexical order of the value. So, apologies for the assumption. I assumed LWW because the BBBBBB update was seen last after the fault was resolved. Nonetheless, I think it is interesting you're treating the browser as a peer in the system, and not simply a client)

> this is now available to developers - with or without the academic side.

I don't understand this attitude. Working closely with academics ought to be what industry strives for. They take the time to research, formalize theorems and write proofs to advance the current state of the art in Computer Science. This research helps move industry forward. A tight relationship between industry and academia is mutually beneficial, for what should be obvious reasons.


Thank you for looking at it! But I do need to correct you, it is not using LWW semantics. To be clear, LWW isn't possible in a decentralized system because "last" is different for every peer. Only a centralized system can have a "last" because it has an objective place to measure last from. GUN is using a deterministic merge function, not LWW.

Academia - I agree with you! Good words, sir. I was just wanting people to know that it does exist in code land as well, because often times academic designs aren't. So I think it is important to highlight when they are available.




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

Search: