SevenPlusTwo
SevenPlusTwo

Independent researcher | World explorer | Never stop exploring

ZuSocial @Istanbul - Nov 13th Daily Roundup

(edited)
Super packed day at ZuSocial from art & storytelling, to hardcore technical workshops and hands on 101 session
ZuSocial @DAM co-working space at Istanbul

Super packed day at ZuSocial from art & storytelling, to hardcore technical workshop and hands on 101 session. A Daily Roundup below:

1/ Crafting Legends: Storytelling and Art for your Project

Guest: ColtonArt @mettahead

Memes are sticky, which performs great on socials and encapsulates the narrative. Super cool session leveraging AI (ChatGPT, Midjourney, Dalle) to think wide and articulate our project stories with memes and mythology.

2/ Kiwi News / Farcaster workshop

Guest: Tim @timdaub from Kiwinews @KiwiNewsHQ

KiwiNews is a decentralized hacker news using P2P set reconciliation. It uses a Merkle Patricia Tree to achieve its set reconciliation.

The technical challenge of nodes synchronization

In an ideal case, where all nodes have perfect internet connection, using a gossip subscription mechanism can easily create a P2P network where all nodes stay "live" by subscribing to a topic and adding messages in order to their database. Thus, we could assume that all nodes are always reaching the same state.

However, in real cases, nodes often lose connection, crash due to bugs etc., which needs a solution for offline nodes to catchup. For nodes that didn't transit from state 0 to state 1 due to offline issues, they cannot directly transit from state 0 to state 2 as state 1 is missing. Thus, simply broadcasting messages is not sufficient.

Explaning the technical challenges using Pokemon is on fire and super illustrative

What is set reconciliation?

Set reconciliation is the mechanism to synchronize nodes back to the current state when having been offline.

Solution to achieve set reconciliation

To achieve set reconciliation, we can use bitmap or merkle tree. Bitmap solution has several drawbacks including:

  1. Message sets could have unpredictable set sizes as they are user-defined.

  2. Modern hash functions would make the size of bitmap significantly huge, which is impractical to share between nodes。

  3. Bloom filters don't work well as they are probabilistic, which requires re-validation upon synchronization.

Merkle tree has the advantages of being deterministic, scaling with increasing number of messages, and verifiable root hash.

  • By using Merkle tree solution, different trees will broadcast their latest tree root hash to all other peers. When there is a difference between root hash, it descends a level deeper in the trie and sends nodes for comparison, which needs less messages to be sent over the network and less compute when comparing.

  • fTo resolve the conflict, the nodes will have 3 states among "match", "mismatch", and "missing". In the case that missing node is a leaf and we recieved it for comparison, we add it to the local tree and update all of that subtree's hashes.

Relevant links

3/ Orbis & Ceramic workshop

Guest: Sergey @ukstv from Ceramic @ceramicnetwork, Dona from Orbis @useOrbis

Ceramic protocol

Ceramic is a decentralized data network that provides data storage for blockchain protocols, and is designed for multiple use-cases such as decentralized social media, gaming etc.

Building on top of IPFS/ IPLD, Ceramic adds streams as mutable elements of data, provenance, access control and indexing, which provides the benefits including mutable data storage, data composability, better dev experience, sign in with Web3, decentralization & permissionless, and high scalability.

In Feb 2023, it launched composeDB, a decentralized graph database, which has the features of fast indexing, composable, decentralized, and open data (other DB can also be built parallel to compose DB).

Relevant link:

Orbis

Orbis is an open social protocol on Ceramic. It started as a dApp and turned into a social infra. Orbis' tech stack incl. Orbis nodes, Ceramic (decentralized data network), Lit (decentralized key mgmt), and Postgres (supabase).

By using and building on top of Ceramic, Orbis has the future potential of :

  • Being a decentralized database

  • Use composeDB data models for composability

  • Fully open source and extensible

  • Quick start for devs as it's Web2 friendly

  • Familiar query interfaces

Relevant link:

4/ IPFS 101 workshop

Hacker: Srdjan @pyr0py, Marios and Daniel

Hands on 101 session with Terminal time!

Terminal time!

Relevant link:

CC BY-NC-ND 4.0

Like my work?
Don't forget to support or like, so I know you are with me..

Loading...

Comment