News for hackers. Stuff that matters.
Re:Paradigm shifts for the decentralized Web by marknadal on Tuesday January 30, 2018 @07:09PM (#16270262)
Wow, point for point this is what we've built at gun ( https://github.com/amark/gun ).

- You only store the data you are subscribed to, which if it is your data, it is automatically stored in localStorage and if you run a Electron/React-Native app, is also backed up on your harddrive, and optionally you can have it backup to any server you run. This is particularly true with the P2P identity system: https://hackernoon.com/so-you-want-to-build-a-p2p-twitter-wi...

- This data can only be decrypted by the app if the user happens to use that app. The app doesn't have any special server, it is just some front-end logic, for instance, see this 4min interactive tutorial: https://scrimba.com/c/c2gBgt4

- The interface literally is just query, where that query is represented in HTML (or GraphQL at https://github.com/brysgo/graphql-gun ) with automatic 2-way binding based off of `name` attributes, like so: https://github.com/amark/gun/blob/master/examples/contact/in...

Ruben, if you happen to see this shoot me an email (check my HN profile)! I also know Dmitri as well! Great article! :)

Re:Paradigm shifts for the decentralized Web by rubenverborgh on Thursday February 01, 2018 @02:34PM (#16285069)
Just saw this, and by total coincidence just met with Dmitri this morning. Sending you an email!
Re:Paradigm shifts for the decentralized Web by rapnie on Tuesday January 30, 2018 @07:35PM (#16270380)
thx! i have been following gun for a while.. very interesting project!

but its decentralization features are not all too clear to me (have to dive deeper). things like peer discovery, nat traversal, gossiping, etc.

does that come with the package?

Re:Paradigm shifts for the decentralized Web by marknadal on Tuesday January 30, 2018 @08:05PM (#16270500)
I'm honored!!! Thanks. Yes, the architecture is P2P/decentralized (see this talk https://youtu.be/5fCPRY-9hkc ), however:

- NAT Traversal sucks and WebRTC is still very glitchy. To get around this, it is easier/better to just run gun on your machine directly (not via a browser) and connect directly to other gun peers with their IP addresses. Then browsers can connect via websocket fallback, but as WebRTC gets better that will work too.

- Peer discovery is not built in by default, but should be trivial to do by starting with some bootstrapping peers, which as other peers connect to them everybody saves the new IP addresses to a common `gun.get('peers').set(IP)` table. So yes, it is easily possible, just not built in (I'm sure in the future we'll have a full fledged extension for it).

- re:"gossip" GUN automatically daisy chains updates through peers of peers, in an ad-hoc mesh-network manner.

Would love to chat more! What is your email? Mine is mark [atatatat] gunDB [dotdotdot] io !

Re:Paradigm shifts for the decentralized Web by rapnie on Tuesday January 30, 2018 @08:26PM (#16270622)
great! enlightening.. (a mail has been dispatched :)