Design thoughts for building a better kind of social space with many webs of trust

post by MakoYass · 2020-09-06T02:08:54.766Z · LW · GW · 35 comments

This is a link post for https://makopool.com/better_space_with_wots.html

Contents

  Webs of trust, specific tastes, a more discerning, open, peaceful kind of social network system
    
    concise, complete explanation of what webs of trust are and all of the reasons they work
      Some noteworthy systems that use webs of trust
    principle: Users should not be asked to reduce themselves to a single brand
    
      A taxonomy of very good webs of trust that should arise under a healthy culture of usage
      UX
    this made
None
35 comments

Webs of trust, specific tastes, a more discerning, open, peaceful kind of social network system

Abstract

A set of guiding design principles and a partial design for a social tool that uses webs of trust to identify the curators of content tags in a way that is decentralized, scalable, manageable, and in many cases subjective. I believe this would make content tags vastly more useful than they previously have been, giving rise to a robust, human-centric way of discovering information and having productive conversations about it.

A concise, complete explanation of what webs of trust are and all of the reasons they work

A web of trust is a network of users endorsing other users.

If you tell a web of trust who you trust, you can then travel along and find out who they trust, and so on as far as you wish to go, and that will give you a large set of people who you can trust to some extent, by transitivity.

Webs of trust can scale up at an exponential rate, as each new user can immediately add more users (better, they can start issuing endorsements in their own network segment even before they're added). This is pretty cool. Wonderfully, despite that, webs of trust can also be pruned and weeded fairly easily: If a few bad endorsements do get made, and the newly empowered bad users start adding more bad users, we will be able to trace the source of badness back through the endorsement relations to the root causes, and pruning them away will also prune away everyone that came through them, directly or indirectly (unless those people have received endorsements from other non-bad people since being added, in which case they're probably fine, and they will remain in). Crucially, the pruning and weeding does not need to be done by any central authority. Every user is the center of their own web, they can bring in anyone they like.

Webs of trust are useful for tracking qualities of users which come with the ability to recognize the presence of that quality in others. Most personal qualities are self-recognizing, in this way, to some extent. A person who has it, faced with another person, can usually figure out whether they have it too.

Examples of such qualities include good taste, responsibility, or not a spambot.

Some non-examples would be is a spambot (spambots are mainly about spamming and are not very interested in identifying each other), or is a fool. A web of trust would not help with keeping track of these qualities, but, again, most qualities people talk about aren't like these. If you do find yourself in need of a web that tracks a non-selfrecognizing quality, consider just making a web that tracks its negation. not a spambot, or no fool would work pretty well.

You might notice that some of the given examples of selfrecognizing qualities have rather subjective meanings. Not everyone will agree about what good taste or responsibility means. Though using fully explicit definitions of things is preferable where possible, sometimes it isn't possible (who would ever try to formally define taste?). Another neat thing about webs of trust is that they will still often work pretty well in those cases! If people disagree about the nuances of a quality, they will often end up organizing into separate webs of trust that agree within themselves. Webs of trust are compatible with subjectivity.

That makes webs of trust suitable for moderating a truly global platform. At no point does a central authority have to decide for everyone else what any of the webs are about. If two groups disagree about what sorts of things should be posted in a fundamental tag like respectful discourse or safe content, they don't have to interact! The web of trust is so powerful as a moderation technology that they can wholly split their webs and keep using the same tags in completely different ways without stepping on each other.

Some noteworthy systems that use webs of trust

The prototypical example of webs of trust seems to have been the process of establishing of real identity in PGP signature networks.

A friend, Alexander Cobleigh, is implementing a subjective moderation system for the P2P chat protocol Cabal, which you can read some things about here

Webs of Trust are being used to measure social adjacency in various distributed systems, for instance

Core principle: Users should not be asked to reduce themselves to a single brand

A web of trust can be used to exclude spammers, sibyls, annoying people, rude people, bad people, or people with bad taste. However, if one web of trust were used to cover all of those meanings and purposes at once, I imagine the results will be pretty inhumane; people would commit chilling, cowardly omissions of self to avoid any risk of being perceived as rude lest the web put them in the same icy hell as spammers.

Twitter kind of is like that, and I think it exhibits a lot of the problems we should expect that to have. On twitter, you have one face, you get one tube, the people who follow you have to be alright with everything you put in that tube. If you ever want to to post a type of content that some of your followers explicitly want to never see, you have nowhere to put it. Brand is totalizing. Everyone has to compress themselves down to one legible brand before the network can thrive.

Users should be encouraged to have more than one side to them. The situation could be helped if twitter were more encouraging of the use of alt accounts. In a way, the system I'm about to propose is a way of streamlining that sort of mode of use.

As it currently stands, we can conceptualize Twitter as a kind of thick slow web of trust for the overly broad content category of good tweet. This web's quality is not truly self-recognizing; the endorsements do not represent a transitive relation, they do not conduct very far, if you travel just a few steps along through your follows of follows you will find mostly people you wouldn't want to follow. Only shitposts and the most general interest news propagates well, everything else propagates depressingly incompletely, there is no strong agreement in most networks about what is good to post, and where there is no strong agreement there is no truth about what is good to post. Nothing is good to post. We must simply log off.

What if, instead, we had many webs of trust that discuss and define the many different dimensions of interest that people can have, which users could choose to participate in or not. Most of these webs may have specific enough meanings that content could be automatically propagated fairly far through them with confidence that everyone in them would be interested in most of it. Some of these webs might be nebulous or subjective in meaning, which would have lower recommended automatic propagation constants, and those would work too.

It is important that users are not required to present as a category of information, and it is important that categories of information can grow larger than any one curator. A person should not be a brand, and a brand should not be a person.

Concept

The system consists mostly of these four types of thing:

To reiterate: presences apply tags to articles to organize them, filter them, and to alert interested parties of them. The webs of trust in which presences are organized speed and shape the propagation of updates about what articles have been tagged recently, and guide queries over the presences most worth visiting.

That's pretty much it. The rest of the document will give you a clearer picture of how many things those primitives will enable.

Some tags will have simple, objective meanings. music, for instance. A tag like this would be affiliated with the uses basic tags correctly web (meaning that basically everyone would be able to use it), it would be useful for confirming that an article is music, but it might not be an especially useful tag to most people for finding or promoting attentionworthy examples of music. Here's where things get interesting:

Consider a tag called good music. Its meaning would, of course, need to be subjective, and webs of trust can support that! You would find a good music taste web, Find someone you align with and trust them along the good music taste dimension, and you'll get their recommendations, and if they haven't recommended anything today you'll see the recommendations of the people they trust, and so on, and it will immediately function as a music recommendation system that you and the musicfriends have complete control over. You would wake up every morning and have your client essentially run a query like "time:today tag:good music from:my(good music taste) min_similarity:0.04" and it would all be great stuff, or if it's not, you can rearrange your endorsements and move towards a web where it is.

The crucial advantage this has over other recommender systems that use user similarity, is that it is fully transparent, accountable, and controllable. You can see how it works, you know where the recommendations are coming from, and you can fix it yourself when there is too much bad or not enough good being recommended. It is not a black box algorithm. You can trust it for a lot more, because it consists of people, who you can see.

A taxonomy of very good webs of trust that should arise under a healthy culture of usage

UX

I wish I could present a clear and complete design, but that will take some consideration. For now I'll just throw some thoughts out

Getting this made

This is not going to happen at all if you leave it to me alone.

If you come to believe that a system like this would be good, reach out, and we'll get organized, and then maybe it will happen.

I should mention up-front that I'm not very interested in doing it in a for-profit way. Systems like this should be managed by non-profits that are constitutionally obligated to steward responsibly over any global political discourses they might come to host. They should not be designed around enriching their founders, nor around self-preservation.

(That said, of course, a good thing must fight to grow faster than the bad things that are growing now.)


For a bit of additional writing about webs of trust and part of an idea for making them efficient to query, see Using neighborhood approximation to make trust queries more efficient

35 comments

Comments sorted by top scores.

comment by Vitor · 2020-09-06T12:02:03.515Z · LW(p) · GW(p)

I'm intrigued, but this is a bit vague. What kind of thing are you looking to build, concretely? The gestalt I'm getting is this: A social network with a transparent feed / recommendation algorithm that each user can explicitly tune, which as a side effect tags any piece of information with a trust score. This score is implicitly filtered through a particular lens / prior depending on who you trust. Looking at things through different lenses for different purposes is encouraged.

Two thoughts on this:

  • It seems to put a lot of administrative burden on users to keep their edges up to date. Can the system be made mostly automatic, e.g. alerting you to changes, suggesting manual review of certain nodes, adjusting weights over time based on your usage, etc? Basically, can you give a user-centric description of the idea, rather than a system-centric one?
  • What about strategic incentives? Sure, very blatant voting rings and such can be easily rooted out, but this system would give malicious actors a lot of information to embed themselves in a web in more subtle, insidious manners, e.g. sleeper accounts.
comment by MakoYass · 2020-09-07T00:40:33.189Z · LW(p) · GW(p)

Regarding Vagueness:

It's not vague, it's general! =). But also yes the UX is a bit vague and just incomplete. We could probably characterize it a bit more clearly by listing the kinds of queries/views/activities it supports. For some users, a thin frontend for learning and running various types of queries will be all they really want.

  • polling, fetching news: Show everything in tag from my presence in a web, that has been posted within date range
  • replying: view the replies to an article (and some of the replies to the replies) that are qualified by a particular web (this should enable every conceivable demographic to find a commentariate that they like and want to engage with, which would be pretty darn neat)
  • notifications: View recent replies to my articles (or articles I've subscribed to) from presences in the web reachable from my presence, or submission requests. Other things, probably.
  • chatting: (I didn't mention this at all) seeing a realtime view that is focused on one head of a reply chain and its most recent branches. Probably eventually offer an additional view that shows other active chats you might be interested based on their topic tags and the participants involved. There should not need to be a firm distinction between asynchronous discussion venues and chat venues and I believe we can open a channel between them!
  • processes and views for promoting the creation of new tags, the formation of new webs: Legitimately vague, I don't know how this should be done, I've mainly been asking how to enable good networks to exist and sustain themselves over time (the answers are: specificity of purpose, and accountably inheriting trust), the question of how to accelerate the formation or reshaping of the network might be a whole other component of the problem.
comment by MakoYass · 2020-09-07T00:57:53.648Z · LW(p) · GW(p)

Regarding Administrative Burden:

There are reasons to think that administrative burden might turn out to be very light, for a lot of webs:

  • If you trust just three people, and if they trust just three people, and so on, that could conceivably get you a very large userset with very little effort on the parts of each person. The question is, how do each of those people discover the others? How do you get into a network? Do you form a portfolio of submissions, proof of humanity, then issue join requests to the curators who know you the best? Yeah, that should probably be common pattern!
  • You don't need to maintain an active presence in a web in order to make use of it. Somewhere there is a small community of people who are obsessed with vacuum cleaner reviews. To get an extremely well curated set of vacuum reviews, all you need to do is find them and include one of their central figures in a query over them.
    • I propose governance communities (maybe funded by the project) like metacurators to aid people in finding those communities. As an experiment, I recently tried to find "train twitter", knowing that such a community almost certainly exists. I couldn't. There were actually lots of results for the search "train twitter", but all that and a whole hour weren't enough to find me to it. Measures will probably need to be taken.

adjusting weights over time based on your usage

I like that one, that could be one of the things the above mentioned, very simple like/dislike ("relevant"/"irrelevant") actions cause to happen.

It would be interesting to see what happens if you fully automate the formation of webs based just on users' liking/tagging interactions, whether we'd end up with a perfectly good automatic recommender system that's also perfectly accountable/controllable. It's not clear to me that we would need automation for the first version, or for the types of users who'd use a first version of anything.

comment by abramdemski · 2020-09-09T15:02:54.361Z · LW(p) · GW(p)

I have been thinking about this sort of thing too. I really like the idea of a social-network type thing with an emphasis on transparency and personal control rather than black-box feed curation.

I want to re-emphasize what I see as your main two points:

A) People are the center of their own webs of trust, meaning that they have complete control over the initial seeds of trust which are used to calculate extended-trust-families for them.

B) People are not forced to be uni-faceted, meaning (B1) there is not just a single dimension of trust, but rather many kinds of trust (EG represented by a tagging system); (B2) people's individual content is not automatically assumed to fall into the same type all the time -- for example, someone who is trusted by a large number of people for good musical analysis should be able to start writing about mushrooms and herbs without souring their existing trust.

I strongly expect attempted implementations of this sort of thing to drop one of these points, simply because it's a lot of complexity to manage (both on the back end and as a matter of UI).

I want to slightly re-work your "concept" sketch:

Presence/Article: As you have said.

Tag: Basically as you've said, but we can also consider quantitative judgements (like tag votes, or star ratings). This also allows for explicit downvoting.

Tag Trust: Just like a tag, but applied to presences instead of articles. The meaning is definitely not "this person produces this type of content" (see point B2); rather, it means I trust this person to tag this type of content (and I trust them to tag other people who tag this type of content, and so on recursively).

Important things about this:

  • Tag trust is about trusting a person as a curator, not inherently about trusting them as a producer of that type of content at all.
  • Tagging is a lot like "sharing" on facebook/twitter/etc.
  • When people produce content, they put some initial tags on it. They're self-curating (or self-sharing, if you will). This is what lets the musical analyst also talk about mushrooms and herbs, without creating an alt account. (I have nothing against creating alt accounts to do this, too, but tags seem more flexible, since you can tag content with multiple tags.)
    • There might also be a concept of following a presence. For example, things could be auto-tagged with usernames, so that you can follow a user's tag to see all their stuff.

I asserted that tag trust means two things:

  1. I trust this person to curate this type of content, IE, apply the tag well.
  2. I trust this person to apply the corresponding tag trust well, too.

Realistically, there could be a need to split this into two separate concepts. For example, some people might play a strong "filtering" role -- let's say someone reads political theory very broadly, but tags it very selectively. This means I don't trust their tag trust very much, because they apply it really broadly in order to get lots of reading material. However, I trust their actual tags on the subject, because they apply those very selectively.

Not sure how to handle that without getting real complicated, though.

comment by MakoYass · 2020-09-10T08:07:32.706Z · LW(p) · GW(p)

I really appreciate having someone else who gets it summarize the concept with their own emphases added. Extremely helpful for figuring out how to communicate the thing.

 

Mm, so the Tag Trust way of presenting things would boil down like... users would implicitly have a presence associated with each tag, that resides in a web implicitly associated with each tag. (This is what -taste webs were about, btw, but it hadn't occurred to me til now that the existence of presences in those should always be implicit.)

Maybe users should be introduced to those sorts of single-tag webs before being told that using a web to curate more than one tag at the same time is possible, to prevent web overloading from breaking out sooner than it needs to. If web overloading only came from intermediate users that would be really good. Subcultures only, no platform superculture.

There might also be a concept of following a presence.

It might be beneficial to implement following as just endorsing them, in some way, from one of your presences, as endorsements contribute structure that other people can use (if they want to). Even if they're not very wise endorsements, they might be useful for some things while the web is growing. It's a way of getting people to start building on the structure without even needing to explain how it works.

 

Distinguishing the personal quality itself from the ability to recognize the quality in others

It seems like it would be good to have a type of trust relation that ignore the endorsed's endorsements, stopping the query frontier from propagating beyond them. The person you describe is sort of using the platform incorrectly though, I'm not sure it would turn out to be necessary.

If they know that their outputs are higher quality than their inputs, they should separate them (we should make it easy for them to separate them). If they care enough to make sure they only tag the really good stuff, wouldn't they then care enough to tag them with a curation presence (that endorses a different set of presences (or nobody) to their research presence) so that people can just subscribe to that instead.

Webs of similar topics should generally spring up along a continuum from decreasing breadth to increasing quality (for example, game releases are taken by enthusiastic consumers to the web game recommendations. Most people would only pay attention to game recommendations).

We could properly define "Curators" as users who have active presences in at least two separate webs, where the webs have the same overall topic, but one is more discerning.

Maybe that should be part of the UI. If two webs are considered to be on the same refinement continuum, it should be made visible, and it should be made easy for curators to tag articles along their different presences in the same continuum with a single action.

Whenever you're browsing under a tag, posts would have a button that lets you agree with the tag, applying it using the presence you're looking at it through. Maybe if you're browsing through a curator input presence that button does an additional thing, tagging it not just with the presence you're browsing with, but also with its corresponding curation presence in the next refinement level, so it would be more "promote" or "escalate". (related: if you are one of the pesky users who insists on using the general taste web, that button would tag it on your general taste presence too)

comment by Alexei · 2020-09-06T22:28:35.722Z · LW(p) · GW(p)

My vision for this: https://www.lesswrong.com/posts/kAgJJa3HLSZxsuSrf/arbital-postmortem#Chapter_5__Arbital_2_0 [LW · GW] (Arbital 2.0 part)

comment by MakoYass · 2020-09-08T01:17:37.032Z · LW(p) · GW(p)

I guess the software would end up supporting that way of using it. A friend set would be a presence that trusts your friends at 0.9 then is queried with a min_similarity of 0.9. (meaning, anyone they trust at strength less than 1 [if they're good bayesians, they wont trust anyone at 1!] will not appear in the results).

Another thing you could do, that might lead the recommendation network to grow a lot faster than traditional friend networks: You could have a general good taste web, post all of your content to your presence in that web, and use it to curate all of the tags you were interested in. I'm inclined to say that would be lazy, suboptimal, and not encouraged, but you could do it, it would work admirably well as a recommender system.

It would have an advantage over the traditional you only see the specific channels you follow thing in that friends wouldn't always have to hear about or spend time appraising their friends' new channels, in order for them to get seen and supported as soon as they're created. If you're interested in politics, then if a friend makes a politics alt, you'd see it automatically. The disadvantage of that, of course, is that taste is only general to a certain extent, a person with taste in epistemology might have terrible taste in politics. Maybe you like politics, but not how your friend does it. You could block their politics channel. If that isn't enough; have a politics presence that directly trusts the politics channels you definitely like, then have it only weakly trust your friend web, so that the automatic friends' politics stuff only comes up once you run out of the other stuff.

We should probably give that culture of usage a name. Maybe "overloaded web". A lot of the time it would be a pathology. You would be able to distinguish their content, using tags, but you wouldn't be able to distinguish the different kinds of endorsements they make, there would only be the one. That sucks. It might help to, for instance, make it really easy to submit any post tagged politics to both your general good taste presence and your politics-specific presence automatically, to make it easier to maintain them both.

 

I burned out fairly recently too. I worked on a game for two years before realizing I couldn't motivate myself to finish it. I then made a tiny game in a week, that helped a lot. It was more art than entertainment. It reminded me that I could make games that I really considered to be interesting, that showed me things I didn't already know (it was a little evolution sim.)

I'm now making two small but potent games that I think the world might really need and I am a lot more motivated... I don't think it's about their objective importance. It's probably really about being able to convey passion for the design to friends, who then visibly reciprocate it. That's probably what's doing it.

I imagine that might have been difficult for Arbital. It might be difficult for the above proposal too, it's all very abstract. It might be a good idea for me to sit down and write a short document that narrows in on all of the ways I expect Tastenet to reduce catastrophic existential risk by enabling the spread of useful information and decreasing political conflict. "It Might Kill Twitter" probably isn't enough to keep me going. We don't need a better faster twitter, we need something qualitatively different.

comment by Alexei · 2020-09-08T03:31:27.781Z · LW(p) · GW(p)

That’s funny I used to make games professionally and as a hobby too. If you want to send me your games I’d be happy to take a look.

comment by MakoYass · 2020-09-11T04:02:35.775Z · LW(p) · GW(p)

Have you played The Witness? I've put your name on the beta list for crycog. I am looking for puzzle designers, but I should probably try bugging the friends I've already conscribed a few times before giving up on them. I have so far not tried bugging or in any way cajoling or hyping them so I should just see if it works at some point.

I'm wondering if there's much point in showing other people that game right now though. I'm not sure anyone believes there's going to be depth here but me and so there is no guarantee they'll be able to find it. This seems to be the case for most successful games. I hear the concept of something new and interesting and like, there will usually not be an intuition that says "ah yes I can see why that would work".

My intuition hates The Mind, for instance. I guess if someone asked me to contribute to a game like that though... maybe I'd say "okay this is for people with fewer tacit communication insights than me, I can do this condescendingly." That said, to be clear, I believe that I am right. I do earnestly believe I wouldn't be able to enjoy The Mind. You'd have to fight me to get me to try it.

 

The other game I'm developing is a tabletop game where basically... players have utility functions that act on an environment that they coexist in, violence is possible, they have to sort things out in such a way that it maximizes their own utility function. There is an emphasis on negotiation as a theory-heavy skill, as most games allow only one winner, every time the opponent gains you lose, there aren't very many games like this, and that's kind of shocking considering how normal in life this kind of situation is.

 

What sorts of stuff have you worked on? What sorts of things do you still want to create? (what are your absurd and unlikely design ambitions)

comment by migueltorrescosta · 2020-09-06T12:10:40.455Z · LW(p) · GW(p)

First of all thank you for your post, it’s very thorough :)

While I want to reread it in case I missed any arguments for this, the main issue I usually have with these trust webs is the propensity for the creation of echo chambers: by relying only on those you trust and who they trust, you might filter out others opinions not because they are less valid, but because you disagree on some fundamental axioms. Have you given any thought on how to avoid echo chambers in these webs of trust?

Best, Miguel

comment by MakoYass · 2020-09-07T04:04:21.626Z · LW(p) · GW(p)

Upvoted, because this is a thought a lot of people have, especially our sorts of people. I really ought to answer it. I have worried about accelerated community-formation exacerbating toxic tribalism for years, but I'm increasingly of the position that it's not a real problem at all. To the extent that it is, there are reasons to think that tools like this would not make it worse, and may help.

The one who wants to preach to their own choir influences no one. The political power that they seem to have is illusory. Even political parties in fully degenerated duocracies orient mostly around appealing to the median voter because those are the only ones whose minds are open to change. The one who doesn't seek out people who disagree with them learns very little, which weakens them in many ways. They wont have a very good time online, and the terrible things they try to do in the world wont work, because they wont know the world as it is. Eventually, most of them will realize on their own that they have to seek out people who believe strange and shocking things, if they want to see the interesting stuff.

In short, the people who build and engage in echo chambers are harmless, look more dangerous than they are, are ultimately probably not worth worrying about.

The intractable class of Facebook Boomers will soon literally die of old age. Exclusionary, hateful communities inevitably continuously alienate their own members and will be looked at by the rest of the world as a mistake.

There is an extent to which, tools for avoiding people we dislike, can make it possible for us to coexist with them. The people you wouldn't want to meet in a political venue, you may later meet on friendly terms somewhere else, and then maybe they'll have more of an interest in listening to you respectfully if politics ever comes up between you.

If you don't give people those tools, they might just leave the entire platform, (or exile the people they dislike) and build their own spaces, at which point there wont be barely any dialogue at all, and things will only get worse. I have a specific example in mind. When I meet the sorts of people who get pushed towards that place, it often feels like no adult has ever tried talking to them. They have been asking questions of people who didn't have the courage to answer them, they have been receiving no good answers and it has been driving them mad. I genuinely feel like under a system like what I've proposed, they would have found their way to us instead of the people who can only drive them mad, and when they asked their questions, instead of being given a load of hostility and conspiracy theories as answers, we would have given them the truth.

Could naming a formerly unnamed distinction (as naming territories in organically splitting webs would do) create conflict between them? I don't think this is the case. When a web splits, we don't have to frame this as a conflict, we can also frame it as the creation of a conceptual distinction between two content categories that were formerly being confused. When people think that they're disagreeing about one thing, that is a much worse state of conflict than when they have come to agree that they just want two different things. The conflict is not created by the split, it is revealed, it was there wreaking before we had words for the sides, knowing about it doesn't make it worse, common misconception.

Once the sides can describe what really differentiates them, once everyone's desires are out on the table, they can arrange terms, they can negotiate, and only then can they really figure out how to come back together, or whether they even should.

comment by ChristianKl · 2020-09-10T11:28:12.716Z · LW(p) · GW(p)

There aren't any great alternatives to the web for multiplatform UI development, afaik, and the site will need to be able to render a lot of things for the web anyway, for the sake of making it widely accessible. 

Flutter more and more becomes that platform. 

comment by MakoYass · 2020-09-11T04:08:49.087Z · LW(p) · GW(p)

Interested, could you recommend a desktop app made with flutter? Or something about what the rendering engine is made of on linux?

comment by ChristianKl · 2020-09-11T10:34:49.893Z · LW(p) · GW(p)

Canonical works on getting Flutter to run well on Linux: https://medium.com/flutter/announcing-flutter-linux-alpha-with-canonical-19eb824590a9

The rending engine should be Skia in a GTK+ shell. There's no intermediate product of HTML when you run Flutter on Linux. 

Windows and Linux support made this year into the main Flutter repo, so there aren't yet many examples but there's a lot of work going into making Flutter great on the desktop. 

When starting a new project like the one you are proposing I think there's a good chance that Flutter is the best platform even when the desktop support is still in it's early stages. 

https://www.reddit.com/r/FlutterDev/comments/iqnwo5/what_are_good_flutter_desktop_apps_that_currently/ gives a list of existing desktop apps with Flutter.

comment by Viliam · 2020-09-06T19:33:22.852Z · LW(p) · GW(p)

If an online space becomes successful, we can expect the real life to interfere with it. Self-censhorship, even compelled speech, on accounts that are publicly connected with your identify... unless you want to lose your job and make enemies among your neighbors.

I suppose the solution is to have one official persona (you call it "presence"), where the "official Viliam" would toe the party line, praise his boss and all company products, and tweet you-know-what three times a day just to be on the safe side. Then, a separate persona... ideally, one for each subculture or group I am a member of: family, friends in general, school, club, rationalist community, etc. Hopefully a good UI would allow me to navigate the horde of personas easily.

But sometimes there is an overlap (e.g. some of my colleagues are also my friends, some of my relatives are also rationalists). Also, different people will cut the social space in different ways; maybe some will not distinguish between their friends and the rationalist community; the least careful ones might even use one persona for everything. The connections would be between the personas: for example my "official" persona would publicly connect to my wife's "official" persona, and my "family" persona would connect to her "family" persona. If a colleague also happens to be my friend, and he only uses one account for everything, perhaps both my "official" and "friend" personas could connect to his only persona -- okay, this already poses some questions: should the UI show to my friend that "official Viliam" and "friend Viliam" are the same person? Should it show the information to my boss, who is connected to my colleague's only persona? (Preferred answer: it would show nothing by default; you can be connected to someone's two personas without knowing it is the same user. My colleague/friend would be allowed to add a private description "this is Viliam" to my unofficial persona, but this description would not be displayed to his contacts.)

comment by MakoYass · 2020-09-07T04:38:36.941Z · LW(p) · GW(p)

we can expect the real life to interfere with it. Self-censhorship, even compelled speech, on accounts that are publicly connected with your identify

I don't like it and wish it wasn't true.

If only we could go the simple way and just have basically everything be public while not acknowledging how insane that is (EG twitter).

But, I don't really see a reason to have personas be explicitly linked to the central persona. Hmm. Usually you'd want to give them a friend endorsement (proof of humanity), but if you had a friend who you trusted enough, maybe you could get them to do it, or maybe they'd go without. It occurs to me that it might be quite hard to go without, and of course, the friends you trust the most are going to end up visibly connected to you most of the time.

The question of whether privacy is a necessary thing in general is surprisingly complicated, imo [LW · GW]. I guess I've had some real world experience of this since writing that. On twitter, there is indeed a terrifying emerging monoculture that might be the ideological prudishness of totalizing transparency, but also, everyone cool increasingly openly hates it. Maybe a real solution to this wouldn't be to prevent abusive cultures of monitoring and censorship, but to instate measures that accelerate their inevitable trajectory towards open lies, obvious insanity and self-canibalization, so that they burn down before getting too large.

comment by abramdemski · 2020-09-09T14:30:13.856Z · LW(p) · GW(p)

But, I don't really see a reason to have personas be explicitly linked to the central persona. Hmm. Usually you'd want to give them a friend endorsement (proof of humanity), but if you had a friend who you trusted enough, maybe you could get them to do it, or maybe they'd go without. It occurs to me that it might be quite hard to go without, and of course, the friends you trust the most are going to end up visibly connected to you most of the time.

How it works on Twitter is that you make an alt, you follow a few people who you think might like your alt, you post good content, some people check their follows and (if they like your content) follow you back. This seems to work despite Twitter being one of the worst offenders in terms of people abusing this very system to try and get follows. Oh, also, you can interact with other's content and if your interactions are good they might check you out.

I think you're imagining that this couldn't work in your proposed system because you need at least some level of endorsement before your stuff is visible at all to anyone. But naturally, this depends on user settings, and user settings depend on the overall equilibrium. If there isn't too much abuse, people will have more relaxed settings and be open to totally anon (unendorsed) interactions. If there is too much abuse, they won't. So, by game-theory logic, things should probably land in an equilibrium somewhere in between where a totally unendorsed account can get a little bit of attention from humans, who will then verify that it doesn't look like a spambot.

comment by Viliam · 2020-09-07T18:14:03.107Z · LW(p) · GW(p)

I just realized that trust itself already slightly violates anonymity. If you say that person X is trustworthy, and if I trust your prudence at assigning trust, I can conclude that you had a lot of interaction with person X at some moment in your life.

If you gave me a network of anonymous personas, with data how much they trust each other, plus surveillance data about who met whom, I could probably connect many of those personas to the real people.

Maybe a real solution to this wouldn't be to prevent abusive cultures of monitoring and censorship, but to instate measures that accelerate their inevitable trajectory towards open lies, obvious insanity and self-canibalization, so that they burn down before getting too large.

A team of people who would infiltrate the toxic monocultures and encourage in-fighting, until the group becomes incapable of attacking non-members, because it will be consumed by internal conflict? Would be an interesting story, but it probably wouldn't work in real life.

My model of these things is co-centric circles. You have an online mob of 10000 people, among them 100 important ones. 30 of them also meet in a separate secret forum. 5 of those also meet in a separate even-more-secret forum. As an outsider you can't get into the inner circle (it probably requires living in the same city, maybe even knowing each other since high school). And whatever internal conflict you try to stir, the members of the inner circle will support each other. Character assassinations that work perfectly against people outside the inner circle (where the standard is "listen and believe") will fail against a person in the inner circle (when a few important people will vouch in their favor, and immediately launch a counter-attack).

comment by MakoYass · 2020-09-08T00:10:27.840Z · LW(p) · GW(p)

If there is a hierarchy of increasingly private spaces, IE, spaces where people who have great influence over the community can admit that they don't like the wreaking ouroboros consenses that are emerging and then decisively breach the consensus with a series of well aimed "calm down"s, that's the sort of community that wouldn't tend to have runaway repressive consensus problems unless those central people were letting them happen on purpose, and in what sorts of circumstance would they want to do that? My mind only goes to... well they did that in 1984, but of course that community of toxic surveillance was fictional and intuitively implausible in size and longevity.

comment by zby · 2020-09-09T19:57:02.425Z · LW(p) · GW(p)

Cool - I really want to use it :)

My own pet idea is to let users have full control over their feed algorithm with a scripting language or something plus a generic Publish Subscribe infrastructure. But your web of trust could be pretty close in all the use cases that I imagine.

Just to get things rolling - what business model do you see for it?

What would be a proof of concept for it? A bare bones system - what would it have to have so that we could test it?

And what do you mean by a 'browser app'?

comment by MakoYass · 2020-09-10T11:06:49.521Z · LW(p) · GW(p)

My own pet idea is to let users have full control over their feed algorithm with a scripting language or something plus a generic Publish Subscribe infrastructure

I think about that concept a lot. I've been trying to avoid looking at it during this because it would require designing and implementing a programming language and that seems harder than just doing this without it.

But one day I really want to make a social network that just consists of remote reactive permissioned datatypes. Like, a social online programming shell/IDE + stuff for visualizing shared data. It would all just be typed data and the very thin, easily inspectable views people make for working it.

It might end up giving rise to some very janky systems, but it would be extremely fun and probably extremely useful to anyone who frequently needs to make online ad-hoc stuff.

Just to get things rolling - what business model do you see for it?

Free to read articles (hm unless... [1]). A monthly fee plus excess expenses (we'll measure the computational expenditures of each user to reduce the DDOS attack surface. Not sure how common practice that is, but it seems like an important art to develop. If we're ever going to make a social online shell it's going to need to be able to measure computational expendature very precisely and always to attribute it to the one who's really to blame for it.) once a user wants to write, or to run queries that might be a little bit expensive.

If there will be obligations to investors, the obligations need to have an expiration date. It doesn't have to come soon, but there has to be a constitutional commitment for the organization to, in the long-term, answer only to the mission of stewarding a productive global discourse.

What would be a proof of concept for it?

A fairly modular UI consisting of a way of looking at your presences, browsing webs, and opening views over your saved queries, I think [LW(p) · GW(p)]

 

[1]: If we're taking a fee at all, it might make sense to support a thing where... some content is only made easily accessible to people who are paying a commons funding fee, which is kind of like subscribing to a platform like netflix only there is no central group deciding what your subscription fee is funding (unless there should be??), instead, you decide that. You're committed to funding the media ecosystem, but which parts you fund is up to you. This has a lot of benefits over traditional media funding models. It is more about gratitude than appeal. You pay after reading, not before. 

By default, it would just look at who you upvoted/applauded over the course of a month, and allocate your CFF in proportion to that, but you really ought to be able to divide it however you want.

Some amount of policing would be required to prevent the normalization of any process where a donee just paypals the cff they're allocated back to the users, which could be used by abusive users to access commons content without contributing anything to legitimate projects. (The more I think about this the less sure I am that there's any way to stop it. A ring of presences that post one (computer generated) haiku a month and send their income to exactly one user as long as they're receiving some. Outwardly following all the rules but inwardly complete crooked.)

Multiple payment levels of CFF might exist, with more and more exclusive content, although I'm not sure how elegantly that would ever work.

comment by MakoYass · 2020-10-02T23:32:48.806Z · LW(p) · GW(p)

Incentive problem: Separating one's output into neat categories is not always in a one's interests, and I may be naive to expect people to want to do it. The prospect of capitalizing on the audience you've built up by being on-brand by befouling your posts with unrelated political content/self-promotion is probably most of the point of using social media for most people.

I suppose in this case, it might be necessary to move away from promoting ideal social configurations then waiting for people to purely altruistically embody them, cause they wont, and focus more on promoting evolution over materially viable configurations. But of course if you foster a culture of relying on blind iteration you will end up stuck in a molochean equilibrium so there's going to need to be a balance.

comment by MakoYass · 2020-09-07T05:54:41.163Z · LW(p) · GW(p)

I've thought of another process it'll probably need. Moderation cases, generally requests that a presence be unendorsed by its endorsers, along with reasons why (a link to an offending article, for instance). For instance, a very straightforward case: If a presence is hacked and starts posting spam, anyone who saw that spam should make a moderation case which will be seen and dealt with by that presence's endorsers along the not a spambot web. If they fail to deal with a moderation order, they may be unendorsed themselves, as that would be the only way for the rest of the network to excise the offender, so they have pressure to be responsive.

  • These are stronger and more explicit than the dislike action. The everyday I don't think this person actually has good taste situations should just be communicated by accumulations of dislike signals. Perhaps there is a (client-side?) automatic process that notices those accumulations and produces a moderation order itself.
  • I've considered antiendorsements, but I don't think it would work neatly. Aside from complicating the properties of the web of trust data structure... there's an asymmetry where, an erroneous endorsement makes noise and screams to be fixed because you can see the bad articles that get into the web as a result of it, an erroneous anti-endorsement produces silence, it is unlikely to ever be fixed. A standard solution here is to have a time limit on blocks or mutes, but it might be better to just.. not have a feature that can lastingly screw someone over without having to explain why they were removed or ever come up for reconsideration.

As with everything else, anyone can make a moderation case about any presence's endorsement, but it will only be seen if the author (or the one who tagged it as moderation case) is in a web that the endorsers are listening to or respect.

comment by romeostevensit · 2020-09-06T08:52:12.660Z · LW(p) · GW(p)

On the web, the nature and ontology of the interaction is static within certain bounds. In real life, interaction might switch modes depending on the flux of the intention of those present to any particular interaction. Because we don't have a map of the modes of human interaction we also don't have a coherent design target for providing the affordances for people to have a variety of interaction modes that fulfill various needs. And such a map is very hard to make given that the moment that you try one out everyone modifies their behavior to try to meet their needs as best they can using what you've given them. If you base your own design, therefore, on what already exists on the basis that this is good evidence about what people want, you'll be in competition instead of invention for an already existing interaction modality.

I guess what I'm really trying to say is that I want omegle but for idea jamming with intelligent people. Tricky (imagine omegle but with an ELO ranking ladder). When I think about it a bit I think Tumblr was actually the website that most encouraged this sort of 'yes, and' improv.

comment by MakoYass · 2020-09-07T06:12:23.214Z · LW(p) · GW(p)

I could talk more about the unprecedented things I think would emerge, that don't resemble what already exists, but they might not believe me. What I can do is explain how it will compete well, if it must.

I guess what I'm really trying to say is that I want omegle but for idea jamming with intelligent people

Oh, I think my friend Demi Schanzel is working on something a lot like that. A project called "Solstice Cafe". It'll match you with random people on a recurring basis (if you seem to like each other) while trying to map out networks of compatibility. At least, that was a concept we discussed last time we got together. An example of the kind of thing they make, so that you can start getting excited.

We resolved that the system should probably name webs randomly. Those in the webs would quickly learn their meanings. As the webs mutate and diverge, the names would mutate and diverge too. The names would be used to tell you some basic things about the people you meet up front, so that you know what they'll be able to understand.

I think it will be absurdly powerful.

comment by hamnox · 2020-12-05T10:18:15.223Z · LW(p) · GW(p)

I am very excited to see someone else who has picked up on cblgh's trustnet work!

comment by zby · 2020-09-24T08:34:01.713Z · LW(p) · GW(p)

Speculative.

I think the road to a new wave of 'social networking' and 'tagging' systems is via better local capture of (marginal) knowledge - that is systems that facilitate adding notes and tags to online content and then searching it. We can do it manually - but it works only for stuff that we quickly recognize as important, it is much less efficient for stuff that grows on us slowly with marginal steps. It is kind of strange that after 25 years of the web bookmarks management is still so hard. After this is finally fixed - with systems like: https://github.com/WorldBrain/Memex/blob/develop/GETTING-STARTED.md, https://news.ycombinator.com/item?id=24572449 etc - then the next stage will be connecting these local knowledge repos.

comment by zby · 2020-09-21T10:37:04.847Z · LW(p) · GW(p)

Some technicalities:

  1. Forks: " If two groups disagree about what sorts of things should be posted in a fundamental tag like respectful discourse or safe content, they don't have to interact!" - how do you imagine such a fork happening?
  2. This might be marginal - but what if I have a friend that tags articles with for example 'good food' tag - and I trust that it is good food - but for me it is more 'indian good food'? Need the participants agree on a strict vocabulary to have any kind of information link?
comment by MakoYass · 2020-09-24T05:58:17.941Z · LW(p) · GW(p)

1: A continuous process of presences on each side endorsing their own side and unendorsing presences of the other side when they notice them posting incorrect things. An automated process may notice the split in the endorsement relations, and recommend naming uh, subtags (now starting to really doubt that calling them 'tags' instead of 'sets' was a good idea); tags with more specific meanings.

2: Maybe marginal yeah, someone else will have to apply the more specific indian food tag if they don't want to do it, which shouldn't end up being very much work. In exchange they get to take credit for the tagging and gain influence over the indian food genre.

comment by zby · 2020-09-12T07:18:12.888Z · LW(p) · GW(p)

Some more random thoughts.

What is a social network? It is something that gathers messages from a network and presents them as a feed - is that a good definition? It also needs to let the users generate the messages.

What would be the messages? Links with tags, comments, photos, video, ...

In a way a social network is a generalization of:

  • the traditional web log (now blog) where you post the links and comments (here it would be a 'presence' I guess)
  • social bookmarking (https://en.wikipedia.org/wiki/Social_bookmarking) - where you tag links (here the question would be how public that would be - could someone from outside browse the web of trust?)
  • with some additional features it can also be a discussion forum

What would be the primary usage mode for you? Personally I am thinking about moving my blog out from Medium. I think it is also a good start - because saving interesting links and commenting is something to do frequently - so you quickly get content and you can test ideas.

Personally I don't get twitter - it is too random for me.

But a better discussion forum would also be interesting.

It is crucial to start with something that is useful even without a big network - otherwise it would require lots of funds to reach the critical mass.

Some more random inspirations:

comment by Kenny · 2020-09-10T14:50:09.548Z · LW(p) · GW(p)

This reminds me very much of Google Reader. I can't remember what kind of tag features it had (if any), and they were certainly not as complex as your outline, but it did very much have an implicit/'emergent' web of trust that worked wonderfully for finding good content.

What are you thoughts on 'tag space'?

Can there, or should there, be possibilities for 'tag jokes', like how the 'trees' subreddit is for marijuana (and, of course, the 'marijuanaenthusiasts' sub is for trees)?

Will some tags be 'pre-created' by the system? Will others be generated statistically or via ML (or AI)?

Can tags have weights? Can users re-weigh tags others have added?

Can tags be merged? (Or split?) Tag 'remodeling'/'refactoring' seems necessary for this to work long-term.

I don't get (yet) how scholarly consensus can be protected from, e.g. vandalism, 'drift', plain inaccuracy. What's to stop it from becoming about anything else? 'Partisans' are going to want to seize this 'real estate' (like they already do IRL).

comment by MakoYass · 2020-09-11T01:08:19.745Z · LW(p) · GW(p)

I missed that era. Could you explain a bit more about webs of trust in google reader?

tag jokes

Wouldn't be tolerated, generally. Arborists would simply not have weed in their curation nets.

I'm sort of open to using subjective processes to assign tags their names. In this case, communities would tend to name their own tags, but outsiders, who find the name opaque or ambiguous, wouldn't have to put up with it. One thing that would enable is translating tags into different languages.

automatic generation of tags

I think how this will happen is, if a curation web splits, or forms an isolated component, some mostly automated ministry process will detect that, issue a recommendation to define a new tag or split a tag into more specific subgenres. Votes are taken, and the community decides whether they want to do that based on the results.

Weights

Meaning, degree of applicability? No. Tags would generally be predicates with clear meanings. Where different gradations of a quality need to be registered, multiple tags should be made along a continuum. I kind of want to write a lot about why taking the average of big crowds of error-ridden scores isn't usually (unless you're estimating the weight of a cow at a county fair) a great way of getting at an underlying truth about any real objective score they're supposed to reflect.

how tags are protected

When someone tags incorrectly, the people who endorsed them are supposed to unendorse them. If they fail to do that, their endorsers may unendorse them in turn.

There would emerge a few components in the scholarly consensus web that are dens of horseshit, but the presences in the (we hope) largest one will proactively disconnect themselves from those. The people who have real uses for a scholarly consensus clique would have little use for liars on the fringes, so once identified they'd mostly end up being ignored.

comment by Raemon · 2020-09-11T01:13:14.840Z · LW(p) · GW(p)

Wouldn't be tolerated, generally. Arborists would simply not have weed in their curation nets.

If you're intending this as a top down decree I could see it, but if you're making a prediction about how people would use an open-ended system I think you're wrong.

comment by MakoYass · 2020-09-11T04:06:16.122Z · LW(p) · GW(p)

To clarify, stoners would misuse the tree tag, people looking for actual tree content wouldn't see any of that because they would not be using the stoner web to sort results.

comment by Kenny · 2020-09-17T17:58:46.402Z · LW(p) · GW(p)

There were no explicit webs of trust in Google Reader. (I think that might be better, actually.) But 'following' someone else would give you access to everything they 'shared' (on Google Reader), including things shared by other people they followed (after which you could follow that third person), and so on recursively.

tag jokes

Wouldn't be tolerated, generally. Arborists would simply not have weed in their curation nets.

I'm sort of open to using subjective processes to assign tags their names. In this case, communities would tend to name their own tags, but outsiders, who find the name opaque or ambiguous, wouldn't have to put up with it. One thing that would enable is translating tags into different languages.

I can't tell if you're assuming/expecting 'arborists' will entirely volunteer their services or whether they'd be officially and explicitly recognized by your proposed system.

I think 'tag translation' would be very interesting – not just between languages ('with an army') but between jargon and plain language too.

automatic generation of tags

I think how this will happen is, if a curation web splits, or forms an isolated component, some mostly automated ministry process will detect that, issue a recommendation to define a new tag or split a tag into more specific subgenres. Votes are taken, and the community decides whether they want to do that based on the results.

Weights

Meaning, degree of applicability? No. Tags would generally be predicates with clear meanings. Where different gradations of a quality need to be registered, multiple tags should be made along a continuum. I kind of want to write a lot about why taking the average of big crowds of error-ridden scores isn't usually (unless you're estimating the weight of a cow at a county fair) a great way of getting at an underlying truth about any real objective score they're supposed to reflect.

how tags are protected

When someone tags incorrectly, the people who endorsed them are supposed to unendorse them. If they fail to do that, their endorsers may unendorse them in turn.

There would emerge a few components in the scholarly consensus web that are dens of horseshit, but the presences in the (we hope) largest one will proactively disconnect themselves from those. The people who have real uses for a scholarly consensus clique would have little use for liars on the fringes, so once identified they'd mostly end up being ignored.

I'm skeptical that this is feasible with tags intended to be "predicates with clear meanings". I just don't think that's generally how people use tags/words/concepts. I'd think it'd be both easier for you, or the system implementor, and the system's users, if tags were entirely 'open ended'. I think the killer feature of what you've outlined is the explicit 'web of trust/taste/curation/consensus'. I don't think trying to pin tags to fixed static meanings can work even over the 'medium term'.