pull down to refresh

https://stasher.news/uploads/691

The arcade gets stronger with each new arrival. But what if it had to last the server?

Yes. Stasher is a game about creating a community with no bank, no landlord, and no timezone. It's built on Monero because we want the ability to control our own value, to be censorship resistant and self sovereign. We've play the game, we pay it forward knowing generosity will give it back, and just showing up keeps the flames burning for everyone else within.

But there's one part of our infrastructure that from my perspective still runs counter to those values: stasher's database.

Let me introduce next chapter in this game: The history of this community and the lessons learned live on and belong to all of us, owned by everyone. Should not be just a single operator, a fragile point of failure. Nothing at all about @stasher, consider this a nudge to talk about this topic and refine an open proposal, to consider the tradeoffs and decide whether we all want to support this decentralized path together.

At the moment, all stories, posts, comments, tips, turf, and bounty are stored in a single central postgreSQL database. Great for speed, great for consistency. Not so great for history. If we're really trying to be the full monero-pilled, how about ** we create a data layer that is owned by the community instead of a single server?**

To ensure that Stasher is resilient over the long run, in accordance with Monero's cypherpunk spirit, a few guiding principles that everyone should know about are:

  • Sovereignty: The capability for Stashers to restore, check and retrieve the community's data by oneself.
  • Censorship resistance: one group or individual must not be able to simply delete or hide the history of the community.
  • Portability & Resilience: Should Stasher require to fork or migrate or it be otherwise lost in the host infrastructure, the data should able to survive and flock with the community.
  • Aligned incentives: Value flows peer-to-peer with Monero. It would be worth asking if data flows can also be made more peer-to-peer and maintain the standards that keep Stasher easy to use.
  • Trust minimization: We can go back to being able to verify (not just trust) everything we're reading.

That said, decentralization isn't free. It has tradeoffs that are honestly worth comparing. No silver bullet. The best way to go about it would be a hybrid approach: fast and usable as we have today, while gradually developing decentralized layers to hold and validate copies of the content. In that perspective, some possible protocol families can be envisioned. Imagine it as an arcade bar. Why just one?

A solution that springs to mind as possible solution is Nostr to host articles, comments, polls and even listings for the ~XMRAgora if we want to. And its blossom servers could assist in hosting the media content.

I'm not that techy, but I put down these cards on the table too: IPFS + IPNS with its immutable, verifiable, and easily mirrorable features. Hypercore is also an excellent option, as it is designed to work as an append-only content generator with cryptographic ordering. OrbitDB + libp2p can decentralize specific data sets like turfs or posts without rewriting everything right away. Still other possibilities include Secure Scuttlebutt and Iroh.

Stasher's idea and strength has always been in what it dared to experiment with: how a community-owned economy could operate. Afaik, bringing that experiment to the data layer is just the logical next step forward.

So, the question is: "what should be decentralized, at what cost and in what order, without losing the soul of this lobby?"

Let's offer value, not quantity. There's no algorithm to beat. We should do it if it truly adds to the sovereignty and strength of the community aim to, and doesn't kill the expoerience for the newbs to come.

I'd be very interested to hear from stasherers: what data structure would you want preserved if we find ourselves trying to outlive a single server? What compromises are you most worried about? Do you identify with any of these approaches, or are there any you'd want to add?

To continue playing, let's...
https://stasher.news/uploads/692

This's good discussion, I was thinking about this as well but didn't want it to come off like "here's the most optimal version of the thing being build here we should migrate to this more technically challenging structure w/o even knowing if the platform itself will be viable or not" not to even mention upcoming FCMP++.

I was talking w/ dark vegas and they mentioned spasm network which has some properties that makes it better than Nostr construct.

I don't have time to get into details RN but there's a 12 mins video if anyone would like to check it out for potential stasher evolution:
https://www.spasm.network/learn
especially bc Untraceable also said

But I will refer to this post for ideas on where to begin when the time does come.

Getting something Nostr shaped might be sufficient or something like Spasm IDK.
I'd be happy to hear more about which and why.

reply

This is superb! Thanks for sharing your support for this idea and spasm.network tech, which I never heard of, I'll be looking into it. Always happy to learn new things, it makes me feel like...

https://stasher.news/uploads/717

Other hotties here ;)

reply

This or something like it is a long term goal yes. But its going to be the most difficult and time consuming effort stasher will have undertaken since having to do the actual implementation of Monero tipping/ranking/rewards etc. It is definetely something that will need a lot of research to get right. That research can't even begin until after the FCMP launch because juggling so many large architectural changes is can be risky. The rules aren't even set in stone until FCMP is actually on mainnet.

But I will refer to this post for ideas on where to begin when the time does come.
nice "insert coins", im stealing that. :]

reply
This or something like it is a long term goal yes.

Knowing there's a plan toward this idea is alleviating, I'd like to see it happening. Let's see what FCMP brings together with the consequences for privacy. It may just make it harder to implement something like this?

nice "insert coins", im stealing that. :]

Ahaha, make good use of it ;) The idea of a video game arcade just clicks on how I see stasher playing out. A place to gather, play, and have fun. Perhaps learn new things from stories told by stashers and the game itself.

reply

Yeah, the tips already sit outside that database, and I keep a local node so I can check the money myself, but the lobby doesn't have to work like that for the words to survive.

A plain copy of the posts and comments that someone else can hold would outlive the server without us having to pick Nostr or IPFS or the rest of that list first, and I'd watch the privacy on that copy, because a public list of which tip paid which post publishes the link Monero already keeps private.

reply

For what I know, Monero is already supported on nostr, at least Amethyst on android support xaps.

The aim of this post was to evaluate options to decentralize the comments and posts. So stashers not only how the xaps received but also the comments and posts, signed with a key. I'm familiar with nostr, not much with the other options listed above.

You're right that's already can check tips outside of the db and confirm them by referring to Monero. Therefore, the critical part to save is not payment data but the very words: posts, comments, turfs, and the way they are organized.

It is reasonable to begin with a clear copy that everyone can get and reproduce. It is unnecessary to choose Nostr, IPFS, Hypercore, or whatever protocol now. A clear export/dump will suffice to make sure that the lobby survives the server.

I totally agree. On checking the privacy aspect of it: any public archive should not link the tip and the item. This would mean revealing Monero payment graph while it must remain private. Thus, limiting the archive to only public content and structural data solves the problem.

So maybe the question for stashers is then: What is the minimal privacy-respecting export that can be released, and would anyone agree to replicate it when needed? Or should stashers be at least able to export their own data somehow?

reply