Oddbean new post about | logout
 @hodlbod you have outbox on coracle, correct? Have you measured what percentage of “missing notes” is post outbox implementation? 
 I don't use other clients much, but my feeling is that:

- Coracle succeeds at finding specific missing notes better than other clients. Sometimes this is impossible, because other clients don't include any hints, which makes the outbox model impossible to implement.
- Coracle does not load complete feeds, for two reasons:
    - The outbox model is not fully implemented. Many profiles point to relays they don't actually use, or that are actually defunct, meaning Coracle has guess at fallbacks. In other words, the notes the user is looking for aren't where they should be.
    - There are too many relays, with too much redundant information. There are around 500 relays on the network, and 30-100k active users, meaning on average there are around 200 users per relay. All but the smallest follow lists will have to connect to upwards of 50 relays to fetch from all relevant relays. Coracle only connects to `relay_limit` relays, which is configurable by the user, and defaults to 10. That means you're connecting to at best 20% of the relays you know you could connect to. Coracle supplies reasonable defaults (user selections + hubs), but the network is actually currently *too* decentralized (this was Mazin's point a few weeks ago).

Ways to improve the state of things:

- Better outbox support, especially from clients *writing* the notes.
- Fewer relays. We really only need 20-50 relays at the network's current size.
- Social clustering over relays. Don't join random relays, join ones that map to your social circle.
- More reliable indexing. Clients should publish 10002s, and notes should be copied to user relay selections when they change.