Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Define good / hard problems we need to tackle to move ssb forward #39

Open
arj03 opened this issue Jun 8, 2020 · 9 comments
Open

Define good / hard problems we need to tackle to move ssb forward #39

arj03 opened this issue Jun 8, 2020 · 9 comments
Assignees

Comments

@arj03
Copy link
Contributor

arj03 commented Jun 8, 2020

Networking:

  • Muxrpc
  • SCTP over UDP for holepunching
  • The role of pubs
  • EBT
  • Tunnel-routing

Messages / feed identity:

  • Feed format (Crappy Format, Bamboo, Gabby grove (js, spec))
  • Delete messages
    • Locally is more or less there in js land, replicating a bit wonky in crappy format
    • Network wide, really depends on a new format
  • Seperate key from feed (what if I could chose the feed format depending on the interaction?)
  • Same-as
    • Identity Tangle
  • Non-linear "feeds"
  • Ephemeral feeds
    • Earthstars implementation, note their model is document based instead of feed based, but some of the same concerns apply.
  • SSB observables
  • Better blocking

Partial replication:

Onboarding:

  • Indexing (both locally and shared?)
  • Validation
  • Private messages
  • Non-pub invites
    • Patchwork is stuck on ssb-friends fork
    • DHT invites
    • Tunnel invites

Blobs:

  • Something different than simple gossip flooding
  • Friend storage?

Private groups:

  • WIP js implementation
  • I also believe there is a WIP go implementation by keks

Pubs:

  • Their role in the friend graph and as a way to ensure proper availability of feeds
@arj03
Copy link
Contributor Author

arj03 commented Jun 8, 2020

@arj03
Copy link
Contributor Author

arj03 commented Jun 8, 2020

The bug talk: https://hackmd.io/0Ks7oOT9THWyc887s0cfGw

@arj03 arj03 self-assigned this Jun 8, 2020
@cblgh cblgh changed the title Define good / hard problems we need to tacle to move ssb forward Define good / hard problems we need to tackle to move ssb forward Jun 8, 2020
@arj03
Copy link
Contributor Author

arj03 commented Jun 9, 2020

@staltz I noticed you wrote muxrpc-push-stream as in progress. Can you elaborate on that? I was testing push stream the other day and it appears to be quite a lot faster. What is your opinion on streams in general in ssb? Considering we don't have the-one-who-must-not-be-named to maintain pull/push stream?

@arj03
Copy link
Contributor Author

arj03 commented Jun 9, 2020

ARJ Onboarding, feed thoughts: https://github.com/arj03/ssb-new-format

@staltz
Copy link
Contributor

staltz commented Jun 10, 2020

@arj03 Unless my memory fails me, the-one-who-must-not-be-named said that muxrpc with push streams isn't ready yet. We could try checking with cryptix too, what he thinks about it.

@elavoie
Copy link
Contributor

elavoie commented Jun 10, 2020

Can I be included on why the-one-who-must-not-be-named should not be? Is that to avoid spurious notifications? Or are there additional reasons (funny or not!)?

@arj03
Copy link
Contributor Author

arj03 commented Jun 10, 2020

It should be this. But yeah, status wise I think you are right. I found that out the hard way with flumelog-aligned-offset that was definitely not ready yet ;-) What I'm after here is that if we are going to change some of the fundamental things (like pull stream in js land) or muxrpc, then it might make more sense to use something that was not written by dominic (the-one-who-must-not-be-named) :) And I was interested in your thoughts on that Andre. The good thing about push stream though, as an example, is that it is a 1-1 mapping api wise with pull streams so super easy to change.

@arj03
Copy link
Contributor Author

arj03 commented Jun 19, 2020

I had a nice chat with Cryptix about this. We are going to draft up a document for a parallel network api that implements some of these ideas, mostly related to onboarding and partial replication.

@arj03
Copy link
Contributor Author

arj03 commented Aug 18, 2020

Added some links to relevant Earthstar documents. Note their model is sufficiently different from ours that the ideas cannot be used directly, but at least the discussions give some good overview of where some of the problems lie.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

3 participants