pages/assets/garden_digital-locality_index.md.C7lveJKO.js

1 line
14 KiB
JavaScript
Raw Blame History

This file contains invisible Unicode characters

This file contains invisible Unicode characters that are indistinguishable to humans but may be processed differently by a computer. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

import{d as i}from"./chunks/git.data.DXRlJPI8.js";import{M as o,q as r,Q as e,K as n,u as t,ag as s,p as l}from"./chunks/framework.Sr2_9k8k.js";const h=e("h1",{class:"p-name"},"Digital Locality",-1),d=["innerHTML"],c=s('<hr><details><summary>Referenced by:</summary><a href="/garden/filter-bubbles/index.md">Filter Bubbles</a><a href="/garden/social-media/index.md">Social Media</a></details><h2 id="the-problem-with-global-social-media" tabindex="-1">The Problem with Global Social Media <a class="header-anchor" href="#the-problem-with-global-social-media" aria-label="Permalink to &quot;The Problem with Global Social Media&quot;"></a></h2><p>Digital spaces (<a href="/garden/social-media/">Social Media</a>) lack locality. If you see a post or thread, you&#39;ll see comments and replies from all sorts of people from all across the world and across the ideological spectrum, and you won&#39;t recognize a single one. There are no neighbors in cyberspace. This leads to interactions feeling a bit impersonal, as both the interaction and the other person only matter for this brief period of time, and you&#39;ll likely never interact again.</p><p>The only exception to this are influencers and people who are highly active within specific communities, who will gain a reputation through their name recognition. However, for people who aren&#39;t influencers or aren&#39;t highly active, these will be one-sided relationships (parasocial). The systems have been designed, often intentionally, to elevate a handful of accounts to celebrity status, a form of class struggle in the attention economy.</p><p>The virality sought after by influencers can sometimes happen to &quot;normal&quot; users as well (essentially randomly and non-consensually). This results in the phenomomen of people having their posts &quot;blow up&quot;, reaching a much larger audience than intended and with it a lot more attention than intended. People who fall victim to this receive large amounts of negative attention that can seriously impact their mental well-being.</p><h2 id="networks-with-digital-locality" tabindex="-1">Networks with Digital Locality <a class="header-anchor" href="#networks-with-digital-locality" aria-label="Permalink to &quot;Networks with Digital Locality&quot;"></a></h2><p>I believe healthier communities should allow for a higher concentration of recognition, as that will lead to more meaningful relationships. This would mean a shift to smaller communities that aren&#39;t dominated by a couple personalities. Ones where you see the same people regularly. This would be in alignment with Dunbar&#39;s research on communities, which found there&#39;s a cognitive limit to how many people we can meaningfully &quot;know&quot;. He discusses his research and how it&#39;s held up over the years in <a href="https://theconversation.com/dunbars-number-why-my-theory-that-humans-can-only-maintain-150-friendships-has-withstood-30-years-of-scrutiny-160676" target="_blank" rel="noreferrer">this article</a>.</p><p>Discord creates an environment like I describe, at least within it&#39;s smaller servers, but introduces a new issue in doing so: Discord servers aren&#39;t porous. You&#39;re either in the server or not, and you can only reach outside a server by fully joining another. This means that it&#39;s more difficult to actually discover people with which to form these meaningful relationships.</p><p>A network based on digital locality should operate more similarly to neighborhoods in the real world - you&#39;re most likely to see those living closest to you, but you can still see others by just going a little further out. It&#39;s &quot;porous&quot; in the sense that you aren&#39;t limited to your immediate neighbors; It&#39;s a gradient, where more effort will always allow you to reach more people, rather than hitting a wall.</p><blockquote><p>Unfortunately, with car dependent society this analogy breaks down a bit, as now people are covering such a large physical area regularly that its still rare to see a familiar face while, for example, buying groceries.</p></blockquote><p>On a forums for discussing design of social spaces, <a href="https://discuss.coding.social/t/discuss-sx-anti-pattern-reply-sigh-aka-reply-guy/531/2" target="_blank" rel="noreferrer">this post</a> describes how a sense of locality could improve social interactions online, due to social media not having discrete concepts of &quot;living room&quot; discussion versus &quot;public square&quot; discussion. We&#39;re both getting at this idea of limiting the reach of posts, or at least making it more intentional to make a post to be shown to everyone.</p><h2 id="building-the-network" tabindex="-1">Building the Network <a class="header-anchor" href="#building-the-network" aria-label="Permalink to &quot;Building the Network&quot;"></a></h2><p>There are various values and principles to keep in mind when building this network.</p><h3 id="decentralization" tabindex="-1">Decentralization <a class="header-anchor" href="#decentralization" aria-label="Permalink to &quot;Decentralization&quot;"></a></h3><p>It should already be clear by how I&#39;ve described this network, but a lot of its design is specifically trying to limit the reach of individuals. Philosophically, this network is opposed to centralization. The same way no user should accumulate power and influence over other users, the network itself, and whoever runs/maintains it, shouldn&#39;t either. Centralized ownership and moderation over the network leaves it vulnerable to enshittification and <a href="https://www.rand.org/pubs/commentary/2023/01/the-digital-town-square-problem.html" target="_blank" rel="noreferrer">other problems</a>.</p><p>In practice, this likely means using something like the <a href="/garden/fedi-v2/">Agentic Fediverse</a> as a base. Either way, ensure servers are only useful as relays; replaceable and without authority. Also design the protocol so that it can be improved and built upon without the need for a central authority. This goes beyond the efforts of AcivityPub and AtProto, which enable federations of smaller centralized authorities, not full decentralization.</p><h3 id="moderation" tabindex="-1">Moderation <a class="header-anchor" href="#moderation" aria-label="Permalink to &quot;Moderation&quot;"></a></h3><p>Being decentralized does not mean it cannot be organized and moderated. Decentralization is not an excuse to not moderate, and stopping the spread of hateful content does shouldn&#39;t be objected to on the principles of free speech.</p><p>I discuss how to organize without introducing authoritarian hierarchies while exploring the philosophy behind <a href="/garden/anarchism/">Anarchism</a>. I explore decentralized moderation in my proposal for <a href="/garden/fedi-v2/">Fedi v2</a>. The network of vouches idea I describe in the moderation section is prototypical of the principles of locality describe here.</p><p>Moderation is pretty tricky though, and while I believe the above can be quite effective, particularly at eliminating spam, this is something that will need review and iterations. No social media has solved the moderation problem. As <a href="https://privacy.thenexus.today/blocklists-in-the-fediverse/#centralize-power" target="_blank" rel="noreferrer">this article</a> points out, it&#39;s easy for moderation to have unintended side effects, particularly for marginalized groups.</p><p>For specifically tackling the problem of keeping fascism out of a community, I recommend <a href="https://youtu.be/P55t6eryY3g" target="_blank" rel="noreferrer">this video</a> (and the whole series) by Innuendo Studios.</p><h3 id="avoiding-filter-bubbles-or-echo-chambers" tabindex="-1">Avoiding <a href="/garden/filter-bubbles/">Filter Bubbles</a> (or echo chambers) <a class="header-anchor" href="#avoiding-filter-bubbles-or-echo-chambers" aria-label="Permalink to &quot;Avoiding [Filter Bubbles](/garden/filter-bubbles/index.md) (or echo chambers)&quot;"></a></h3><p>The natural argument against what I&#39;m describing here is that it would encourage the creation of filter bubbles. But I&#39;d like to counter that argument by saying you&#39;re tackling the wrong issue, and that filter bubbles are typically innocuous and abolishing them would be actively harmful to marginalized communities. I&#39;ve written a lot about filter bubbles on their own page, so I recommend you check it out.</p><h2 id="related-concepts" tabindex="-1">Related Concepts <a class="header-anchor" href="#related-concepts" aria-label="Permalink to &quot;Related Concepts&quot;"></a></h2><h3 id="webrings" tabindex="-1">Webrings <a class="header-anchor" href="#webrings" aria-label="Permalink to &quot;Webrings&quot;"></a></h3><p>Erlend discusses a similar concept to locality in his blog post <a href="https://blog.muni.town/federated-webrings/" target="_blank" rel="noreferrer">Federated Webrings</a>, which describes how the old internet would make frequent use of webrings to connect similar sites. This would effectively create digital neighbors and make both the site owner and visitors connect with the owners and visitors of the other sites in the webring. Although I think these webrings become a bit too large and centralized. I would&#39;ve preferred to see them work more like cooperatives, with some form of democratic decision making.</p><p>Erlend&#39;s suggestion for bringing webrings back is through the use of communities using shared topic-specific rooms. For example, several rust game development libraries having a shared chatroom for discussing game development in general. This makes the communities more porous, so members can discover related people and communities.</p><p>I recommend reading through the rest of Erlend&#39;s writing and keeping up with their projects. They&#39;ve done a lot in this sphere, both while working at discourse and since, and are leading the charge for designing and implementing the agentic fediverse.</p><h3 id="indieweb" tabindex="-1"><a href="/garden/the-small-web/">IndieWeb</a> <a class="header-anchor" href="#indieweb" aria-label="Permalink to &quot;[IndieWeb](/garden/the-small-web/index.md)&quot;"></a></h3><p>Personal websites form a fully decentralized social network called the indie web, which focuses on data ownership. However, it&#39;s quite small due to the technical and financial barriers to creating a website. Due to the lack of centralization or algorithms, sites spread primarily by being linked to by others. That brings it close to what I&#39;m describing here, although without asynchronous chat I don&#39;t think it&#39;s quite what I&#39;m looking for.</p><h3 id="muds" tabindex="-1">MUDs <a class="header-anchor" href="#muds" aria-label="Permalink to &quot;MUDs&quot;"></a></h3><p>What I&#39;m describing is also a lot like a MUD, classic online games where players existed in a world of connected rooms, where they interacted via a command line interface, including local and global chat. If it were decentralized and people all had control over their own room, it would look a lot like what I am describing (but much nerdier and less modern). It&#39;s a big inspiration for a lot of these ideas.</p><h2 id="the-chromatic-lattice-experiment" tabindex="-1">The <a href="/garden/chromatic-lattice/">Chromatic Lattice</a> Experiment <a class="header-anchor" href="#the-chromatic-lattice-experiment" aria-label="Permalink to &quot;The [Chromatic Lattice](/garden/chromatic-lattice/index.md) Experiment&quot;"></a></h2><p>I&#39;ve been working on designing a game, chromatic lattice, that will involve social elements and be a &quot;living game&quot;. It would avoid issues with the network effect by justifying it&#39;s existence with it&#39;s gameplay, similar to how many MMOs work. This makes it a great testing grounds for some of the ideas discussed in this document, particularly with respect to a community with digital locality.</p><p>A person&#39;s board will act as their profile page, and will include a local chat room (as opposed to the global one), a description, a list of people actively on the page, and a friends list that can be broken down into categories. Cursors also appear on the board for all users, although those can be toggled off in settings.</p><p>The idea is that whenever someone isn&#39;t actively working on improving their design, they can be visiting other players and chatting. They should still be able to see their resource amounts and buy upgrades while &quot;abroad&quot;.</p><p>These chats will need some system for messages being reported, and users banned or silenced. No private chats - those will have to be taken to matrix, which every player will have.</p><p>The friend lists effectively work as the links between nodes, creating locality. Everyone has a link to their own board accessible at all times, and from there to their friends. All links would also show a count of how many people are on that board.</p><p>In addition to friends, you can jump to a players board or to wherever the player is by right clicking their name in global chat. You can also share links to your board off platform as well.</p><p>In theory, by making friends public and mutual, and showing the count of who is actively there, we should see clusters forming. My concern would be everyone just joining a single board, but hopefully stuff like wanting to discuss different topics can naturally prevent that from occurring.</p><p>I&#39;ll consider this experiment a success if people actually explore the network by jumping between boards, and if there are more messages sent in local chat than global chat. I&#39;d like the average amount of players in a non empty room to be close to log_2(active players).</p>',42),w=JSON.parse('{"title":"Digital Locality","description":"","frontmatter":{"public":"true","slug":"digital-locality","title":"Digital Locality","prev":false,"next":false},"headers":[],"relativePath":"garden/digital-locality/index.md","filePath":"garden/digital-locality/index.md"}'),u={name:"garden/digital-locality/index.md"},y=Object.assign(u,{setup(m){const a=o();return(p,g)=>(l(),r("div",null,[h,e("p",null,[n("1648 words, ~9 minute read. "),e("span",{innerHTML:t(i)[`site/${t(a).page.value.relativePath}`]},null,8,d)]),c]))}});export{w as __pageData,y as default};