> a distributed datastore has to redundantly store everything
Scuttlebutt gets around this: you only store and rebroadcast your friends' stuff (and anything else relevant to you).
You're actually seeing content from your local storage — which is why Scuttlebutt works seamlessly offline — so there's no need for altruism.