If you’ve read the previous two articles, you know that Elemental Chat is just proof of concept, a way of stress-testing Holochain and the Holo hosting network. Because of that, it doesn’t have any moderation features except to ‘reset the network seed’. You might be wondering what this all means. If so, this article is for you.
It’s not impossible; we just haven’t designed it into Elemental Chat. It’s not meant to be a production-quality chat service. And in order for certain moderation actions to work (like banning a user), Holochain will need a fully functioning ‘immune system’, which will be completed sometime after this test begins.
This is getting a bit technical, but every hApp has its own isolated network (or set of networks, in some cases). Each network is distinguished by a unique fingerprint called its ‘DNA hash’. That means that, by default, two distinct hApps don’t share any data or participants among them. And each network has its own database, stored and shared by its participants.
Now, you can also take an existing hApp and change one small detail about it called the ‘network seed’. This doesn’t change the way the hApp works, but it does change its DNA hash, which means you now have a completely separate network.
When Holo resets Elemental Chat’s network seed, it does it to the copy of Elemental Chat that ships on HoloPorts. This creates a new network with a ‘blank slate’ for data.
If Holo can just reset the network seed, doesn’t that mean they can control hApps? I thought Holochain was supposed to be an unenclosable carrier.
We talk about Holochain as ‘agent-centric’, respecting individual power to make choices. On the one hand, that means you can publish any garbage you like. On the other hand, it means that nobody else is obliged to pay any attention to it. Your agency is balanced by the agency and norms of the group. We describe this tension as ‘mutual sovereignty’.
This principle plays out a bit differently when a hApp is on the Holo hosting network. When you access that hApp, what’s actually happening is that some host somewhere is allocating a little bit of space on their HoloPort to run a copy of the hApp for you. Just as they have every right to kick you out of their house if you start breaking their fine porcelain, they also can remove your hApp instance if you start creating bad data.
Currently the only way to host a hApp on the Holo network is for us to release the hApp in an update to the HoloPort’s operating system. For now, that does give us power over the hApps that hosts can host, but it’s only temporary — we intend to provide a Host Console which allows hosts to choose whatever hApps they like.
As a business, Holo also has a responsibility to vet apps that are published and offered to hosts via the Host Console. They’re still free to host whatever they like, but we’re not going to help them to find hApps that are unethical or illegal.
But even if you can’t access a hApp through the Holo hosting network anymore, nobody can prevent you from using Holochain to run it on your machine — not Holo, not individual hosts, not the Holochain engine, not your peers in the hApp network. The only way a hApp can truly be shut down is for every last participant to turn off their copy.
If we decide to reset Elemental Chat’s network seed, you and your friends can still install it on your machines, use the old seed, and recreate the old network (with all of its nasty offensive content, if there are still any peers online to get it from). Nobody can block you from accessing your own data, nor can they prevent others from interacting with you. On the other hand, you can’t force anybody to participate either. That’s how an agent-centric system works.
Modern social media platforms, on the other hand, use their coercive power to censor or boost things according to their internal rules. This is a dangerous weapon in their hands; they can (and do) use it to both protect and harm the people who use their services.
Many folks in the Holochain community want to build something different. We’ve already seen that, in a hApp, nobody has the power to coerce anyone else. This is a good starting point, but by itself it doesn’t have the power to create healthy online spaces.
We’re already seeing some explorations of what an online space, owned by the community and moderated by the community, could look like.
Junto, a foundation dedicated to creating social media that puts human vitality first, is working on various designs. They believe authenticity slowly disappears when metrics such as likes, shares, and follower counts drive content discovery algorithms. They made two simple design choices: first, to remove these metrics altogether; second, to form social sharing into ‘neighbourhoods’. The first choice could have the power to break the feedback loop of sensationalism that seems to be nurturing much of social media’s toxicity, while the second choice keeps people connected and accountable to each other. This could create healthier online spaces, which would require gentler moderation tools.
The Neighbourhoods model aims to equip communities to define their own norms for healthy interaction. In their view, collaborative design sessions are the best settings for these decisions. That’s because well-facilitated co-design connects members to each other’s needs, values, and intentions. They learn what reputation metrics are important to them — clarity, humour, generosity, accuracy, punctuality, and so on — and how they ought to influence the activities of the group. They begin to understand how to interpret the reputation metrics of other groups, mediated through ‘memetic bridges’ — people who belong to both groups. And just as importantly, the technologists involved in the process gain a much clearer picture of real needs.