# A Better Web is Coming

(Cross-posted from my [blog](https://mattscodecave.com/posts/a-better-web-is-coming.html))

It bums me out when I see how much of the Web is trolling, ads, and endless re-shares of yesteryear's memes. The cynic in me thinks that this is it, this is as good as it gets–we're stuck and cursed to never realize the full potential of this amazing, planet-spanning network we've built. But then, I remind myself that what I see is a coordination problem. And we, humans, have been pretty decent at solving these for thousands of years. Like the time when we went from living in caves to cities (with lights and flush toilets!). Or when we built up from tiny semi-barbarian princedoms to vast organizations like the East India Company. So there's hope.

How would a better Web look like though? I got a small hint when I read a paper about Wust. [Wust is an experimental online discussion system][0] that sort of reminds me of knowledge organization tools such as [Obsidian.md][1] or [Roam Research][2]–however, instead of being tailored to individuals or small groups like those two, it is designed for large groups of strangers. To accomplish that, it includes features that specifically aim to improve discourse quality. I found that fascinating because if it could do that, it could potentially raise the Web's sanity waterline by a few inches.

I've never seen anything like it before. The more I think about it, the more convinced I am that we will see more Wust-like systems pop up and stem the tide of low-quality content flooding the Web today. To explain why I think so, let me tell you about a discussion system called Wust.

## Defining the Problem
Wust's creator traces low quality discourse to two problems: ineffective moderation and the duplication of content.

Moderation is hard. Early on, most of it was done by small groups of volunteers. They enforced norms by bans, warnings, and locking or deleting offensive content. But this approach had problems. First, it was difficult to scale because finding trustworthy, dependable people in a sea of strangers that wanted to volunteer took time. Second, as in other hierarchical systems, some moderators became corrupt and abused their privileges. It all got a little better after Web 2.0 arrived and augmented online communities with simple voting systems. That alleviated both problems by giving users more say in how their group was organized. However, a new problem appeared: making popularity synonymous with quality, which resulted in dank memes often attracting most of the attention and basically burying quality content like SSC posts.

On the other hand, duplication is a permanent tax on a community's creative energy. Let me illustrate what I mean: Alice makes a post asking about the dangers of COVID-19. The post generates some useful insights, but as the discussion dies down, it gets bumped off the front page. People lose track of it. Later, Bob comes around and posts the same question. If he's lucky someone will link to Alice's post. But if not, he and the others will likely cover the same ground. Repeat this a few time and all you have is a handful of similar posts and a lot of wasted motion.

Wust addresses these problems in two ways. First, it changes the structure of the discussion from a tree to a graph and makes it easy to navigate through a system of tags. Second, it gives users a voting system that encourages participation, effectively moving most moderation responsibility to them.

## The Structure of Wust
Today, most online discussion is organized into tree-like structures. A site's entry-point commonly presents users with a list of topics. If you were to click on one, you find not only comments about the topic, but also comments replying to the comments. It's trees all the way down.

This is suboptimal because:
1. By emphasizing recency and popularity over quality, even high quality posts will slowly disappear out of sight.
2. Most of these trees are unbalanced–some topics or comments will generate the majority of discussion. So, when attempting to engage with a popular topic, writing a new top level comment will likely lead to it getting ignored, which encourages users to create more new posts even if they're duplicates.
3. This may sound counter-intuitive but trees are difficult to navigate. As they grow, it takes more and more time to explore all the branches and sift through irrelevant information to find what you're seeking. For moderators, it becomes harder and harder to find and remove content that breaks the rules. Thus, users are further encouraged to create new posts.

In other words, trees implicitly lead toward duplicating content. One can, of course, resist this, but then their content will get less attention and less engagement.

To overcome these issues, Wust structures discussion as a graph. Doing so divorces content from its creation time, allowing the system to promote quality. (I describe how it does this later). However, being less structured, graphs are even more difficult to navigate than trees. Wust's answer to this is a system composed of two types of tags.

First, there are context tags. One or more can be attached to each piece of content, describing what is about, eg. "mathematics", "music", "AI risk", etc. In other words, they categorize content by theme, making it easier to search. Second, there are classification tags, which describe how a piece relates to its context(s) or to other content. So, for example, a post titled "What would AGI look like 10 years before it manifests?" would include context tags like "AI", "Existential Risk." Its classification tags would indicate that it's a "Question" related to another post (eg. "Preparing for AGI").

Wust keeps tag pollution under control by using a handful of mechanisms:
- Only system administrators can create context tags.
- Similar classification tags are combined into one. For example, "Canine" and "Dog" point at the same content.
- Classification tags support multiple inheritance, so someone searching for "Animal" will also find content tagged with "Dog."

Consider how all of these features help limit duplication–if users can find existing topics and contribute to them, they will create fewer new posts; If a single post can exist in multiple contexts, users don't have to re- or cross-post it elsewhere.

## Voting in Wust
So far, Wust resembles graph-based content organization software. But thanks to its voting system, it allows large groups to use to literally build knowledge. Imagine Roam Research, except scaled to thousands of users. Or Wikipedia, but less about being an encyclopedia and more about being a group-mind interested in specific problem domains (like rationality, body-building, writing, etc.). How does that even work? Let's start with the basics.

Any Wust user can edit any piece of content. To do that, they submit a change request, which can contain anything from grammar fixes, additional information, to new context or classification tags. Others can vote whether to approve or rejected the proposed changes. This should channel users' effort toward improving existing posts rather than creating new ones. To further encourage this, Wust feature a karma system.

Users gain karma when their change requests are accepted and lose it when they are rejected (or reverted). With enough karma, users can have their requests bypass the voting process and get applied instantly. When that happens, however, a change request is automatically created to revert the changes, giving the community a chance to weight in nonetheless. What's more, a user's karma gives their votes more weight, but only in specific contexts. So if someone contributed a lot to "mathematics", they have more say in shaping that context.

Unlike in Reddit or Facebook, Wust posts do not have a score. Instead, users vote on how relevant a post is to its contexts. The resulting number determines a few things:
- How many votes are required to change the post. More relevant and more valuable posts will need more votes to alter.
- How much karma a user need to have their change applied instantly. Again, more valuable posts will be harder to alter.
- How much karma a user will gain or lose if their change request is accepted or rejected respectively.

Additionally, to alleviate the popularity-quality problem, Wust treats page views as downvotes. The reasoning here is that most users are far less likely to downvote content they dislike, usually opting to just close the tab. Stated another way, bad content doesn't get enough downvotes, so Wust remedies that by treating each page view as a partial downvote. (There are mechanisms in place to prevent abuse of this).

Putting all this together, we get an adaptive discussion system with a more decentralized way of governing itself, which directs users' behavior toward benefiting the whole group. Let's unpack this.

Because of the karma/voting system, Wust users basically do not own the content they produce–everything they create can be edited by everyone else. This is kind of like a shared garden of sorts.

And by shifting moderation responsibilities from the few to the many, essentially giving users the power to reward and punish, Wust allows a larger portion of users to shape community norms. The price for this, however, is the there will be fewer new posts and edits will have to go through a voting process. Everything will be a little slower in a similar way how democratic governments are a little slower than their centralized counterparts. If the comparison really holds true, we would expect Wust-based communities to also make fewer catastrophic mistakes, like authoritarian governments do.

Additionally, by moving away from the popular "one user, one vote" paradigm, Wust allows those whose contributions are most valued by others to wield more power. In a way, this mimics real-life informal institutions, where people who have earned trust and standing within a community have more say in decisions about it. I'm thinking of respected shop keepers, teachers, and other "beacons of the community." And, as in real life, Wust's community could reduce a misbehaving "superuser's" karma until they lost their privileges.

Finally, it's worth noting how Wust discourages classic anti-social behavior patterns popular in today's system. For one, most current systems expose users' vanity metrics like post or upvote counts, which is often taken as a proxy for their standing in the community. But users Goodhart this by creating as much content as possible in the hopes that at least some of it will win the karma lottery. In other words, these systems encourage users to increase their status by inflicting low-quality posts on everybody else.

## The Near Future of the Web
The Wust paper was published in 2015. Back then, most people were only beginning to understand the direction the Web was heading. [Search engine results were becoming stuffed with SEO-friendly crap][3]. Social media users were discovering how easy "engaged and connected" turned into "distracted and addicted." And workers were learning that slick tools like slack or google suite [created a stream of constant interruptions][5]. But it was all shiney and new and few cared.

Today, I feel there's growing discontent with this state of things, which translates into an unmet need, a need to collaborate efficiently on meaningful work. It doesn't matter if it's creating new bodybuilding routines or organizing a group of fanfic writers–the medium of the Web doesn't do much to limit the cost that antisocial users impose on everyone else.

All this means is that there's an increasing number of people looking for better ways to communicate on the Web and Wust marks the general direction things are heading–a more efficient, more bottom-up way of collaborating, with more emphasis on healthy community.

I can't wait to see what's coming.

[0]: https://publications.rwth-aachen.de/record/670223
[1]: https://obsidian.md/
[2]: https://roamresearch.com/
[3]: https://news.ycombinator.com/item?id=28113007
[4]: https://www.wired.co.uk/article/slack-ruining-work
[5]: https://www.vox.com/recode/2019/5/1/18511575/productivity-slack-google-microsoft-facebook