πŸ“š node [[open protocols]]
β₯… node [[activitypub]] pulled by user

ActivityPub

Knowledge

A good explanation of how the protocol works.

Research

  1. host local servers, one tracking each service
  2. connect to these servers with a locally hosted mastodon client
  3. each server takes account information and mocks external accounts:
    • logs in through social media api
    • view posts, corresponding threads/comments sections
    • server publishes data form these services in real time to mastodon
    • server creates/tracks fake mastodon user from every other user
    • these users are visible with clever naming scheme and tolerated by server
    • interacting with these real servers from ur acct (must be hosted in same place) == ur account on that social media interacting with their real acct
    • likes, follows etc. also emulated – though have to check if current user is following them, has liked, has followed etc.
    • should port over images, videos, gifs etc from whatever proprietary twitter thing they use to sane default formats to display on mastodon (i guess these should be cached for some time period, then…)

Federated social media is the future.

P2P

[Assessment of the feasibility of p2p activitypub](https://octodon.social/@cwebber/99015530843597174 ) want to avoid static ip, ideally

  • run on home server, always-on computer kind of deal ie beaglebone
  • NAT TOR? Zooko's triangle – choosing between human readable, decentralized and unique is impossible. PetNames proposal may be useful
  • key upgrade, but all that is needed is tor .onion address support, truly

https://activitypub.rocks/: explanation of the activity pub prococol; how it works. Rotonde: cool idea for a distributed social network

The ActivityPub protocol is a decentralized social networking protocol based upon the [[ActivityStreams]] 2.0 data format. It provides a client to server API for creating, updating and deleting content, as well as a federated server to server API for delivering notifications and content.

It is a [[W3C]] standard as of January 2018 https://www.w3.org/TR/activitypub/, published by the [[W3C Social Web Working Group]].

The Fediverse SocialHub Discourse forum is where many different ActivityPub-compatible systems come together.

From the forum, How to become an ActivityPub user

From the forum, Introduction to ActivityPub

ActivityPub supports common social network activities like following, liking, announcing, adding, and blocking. For example, if you have an account on a [[Mastodon]] instance like mastodon.social, you can follow someone on a [[WriteFreely]] instance like Qua and receive updates whenever they have a new blog post.

Christopher Lemmer Webber, co-author of the ActivityPub standard:

Increasingly, much of our lives is mediated through social networks, and so network freedom in these spaces – and thus removing central control over them – is critical. One thing you may have noticed in the last decade is that many decentralized free software social networking applications have been written. Sadly, most of those applications can’t actually speak to each other – a fractured federation. I hope that with ActivityPub, we’ve improved that situation.

ActivityPub

Criticisms

My big issues with ActivityPub is that the protocol is very big and not very easy to decompose.

– indieweb chat

Unfortunately, we have come to realize that using ActivityPub is considerably harder than we expected:

  • Using JSON-LD as an RDF serialization is very complicated. It requires the usage of algorithms (e.g. the Expansion Algorithm or the Framing Algorithm) that are incomprehensible and just pure madness. JSON-LD maybe was really just not intended to be an RDF serialization and trying to use it as such is painful.

  • There are practically no implementations of the ActivityPub Client-to-Server protocol (C2S). This made developing and testing the client and server more time-consuming as we had to develop the protocol in lockstep on client and server. At the end we were still only compatible with our own software.

  • ActivityPub is not a complete specification and many additional protocols need to be implemented (e.g. WebFinger) in specific ways in order to be compatible with existing servers.

    – openEngiadina: From ActivityPub to XMPP β€” inqlab

β₯… node [[agora]] pulled by user

Welcome to [[boris mann]]'s section of the agora!

We're experimenting with [[Connecting to the Agora]], and what some of the configurations and conventions are. The [[Anagora]] page has my notes and feature requests.

Status

  • This document was mostly written in 2018. The Agora was then just a thought experiment. It has since grown to be a living project.
  • As late as 2020-10-17, the Agora barely existed as a concrete implementation -- it was not a single tool but rather many which you could use in tandem following a convention, which I provisionally named Agora Protocol.
  • As of 2022-01-02, a reference Agora is online on https://anagora.org . Using terminology gained and derived in the last three years (with the help of the Agora community!), I can now describe it as a [[knowledge commons]].

Regardless of implementation details, an Agora can be assembled out of off-the-shelf parts available on the internet, mostly for free:

  • Knowledge management tools used for the purpose of building a distributed knowledge graph, following the aforementioned convention based on lazily evaluated [[wikilinks]]. See https://anagora.org/agora-editor for a review of some of the tools in this space, or Roam Likes for an older take.
  • Social networks and the constructive bits of the internet as we have them, annotated and enriched using open tools and standards.
  • An explicit constructive social contract. For reference you can consult the anagora.org default.

If you are interested in collaborating on building Agoras or similar constructive spaces, please reach out or peruse the Git repository.

See also: https://flancia.org/go/agora-howto , https://threadreaderapp.com/thread/1322619094563258370.html.

Head

You can think of the Agora as a convention based social network; an optional, user-controlled annotation layer that can be applied over any internet platform which supports user-generated content.

I think one of the best possible uses for such a network would be to use it to pro-socially maintain a distributed knowledge graph tailored specifically to the goal of solving problems: those of its users and society at large.

Its users, as a cooperative group, could by default take a naive but rational approach to problem solving:

  • For each problem in the set P of all problems:
    • Describe it as thoroughly as possible.
    • Maintain a set of known or argued possible solutions, S(P).
  • For each solution in S(P):
    • Describe it as thoroughly as possible.
    • Maintain a set of resources (people, time, attention, money) needed to implement it, R(S).

Individual users could also declare their views on the state of the world explicitly: they define which subsets of P, S and R they agree with, in the sense that they believe they are feasible, true, interesting.

Users that agree on their defined subsets can then efficiently collaborate on solutions as they become available by pooling of resources.

We apply some good old recursivity and seed the Agora with the problem of how to build itself. That is, how to build a system that allows participating users and entities to collaborate optimally in the face of adversity (such as biases, irrationality and even actual ill intent)1.

The Agora should be built on a federated protocol to limit the harmfulness of diasporas. Groups might temporarily diverge in their views enough to want to run separate Agoras, but different Agoras should be able to cooperate on problems and solutions for which there is enough ideological alignment, and eventually merge.

Tail

I have a more focused and detailed unpublished document which will probably replace or complement this chapter soon.

I know the premise sounds almost like a joke: what the world needs is a new social network. The internet and social networks are technologies we are just barely learning to live with, and the recent cause of a lot of polarization and political escalation and Trump Being President2. It doesn't sound at first like we should add another stick to that particular dumpster fire. But hear me out.

We need a designated place in the internet where we can discuss ideas in a constructive way. In particular, where we can discuss possible strategies to face the problems that humanity is facing. This is already happening, for sure; but is it happening somewhere on the internet where everybody can contribute? I don't think so. If the Agora exists already, please point the way -- I'd like to get there, and building it from scratch would be hard. The network of universities and institutes are the closest we have and I love them, but the Agora should be fully open and available to all over the internet, so every participating individual can contribute work and thought. Of course the whole internet could be an Agora; but the internet as a whole is chaotic and disorganized and thus its implicit Agora is entangled with places that are not constructive and not safe. There must be a better way.

Nick Bostrom has a paper on existential risk where he talks about a kind of lottery of ideas; humanity is constantly playing this game, the metaphor goes, and drawing ideas out of big lottery wheels of Science and Technology and Culture. Some of the balls in this wheel are colored white; these are good ideas. They contribute to human good, and we're glad we found them.

There are also black balls, though. These are bad3. They are things that, on the whole, produce enough bad to be existential risks to humanity. Nuclear power seemed to be this for a while; perhaps mutually assured destruction could have resulted in an apocalypse. But it didn't! Aren't we lucky? If (and it's a big if) things stay this way, we got away with playing with something dangerous. Perhaps we can use the idea for whatever good it holds (cheap and relatively safe energy), or perhaps we decide to bury it underground in a big vault of ideas (this one doesn't have to ever spin again) that says Do Not Go There, Trust Us. For now, though, the idea might still turn out to be black; we could, perhaps, represent this situation as a grey ball of whatever shade we deem most likely.

We need a social network for discussing ideas. For talking about Bostrom's lottery urn, and what it has in it for us. In the Agora, we discuss ideas and their shades and merit; we discuss, first and foremost, ethics. We talk openly and clearly about how to best move forward as a society of humans, with the knowledge we've gotten and the resources we have.

What if social networks are grey? How dark is their shade? The high modernist in me wants to believe that the structured flow of information is more of a good thing than a bad thing. But we need to be cautious, and this is why I wrote this and you are reading it now.

I need your help.

In Flancia there is no poverty.

  1. To start with, discussion in the Agora should follow the tried and tested Principle of Charity.↩

  2. what if Twitter is already a decent Agora, and Trump just woke up to the fact that it's a superior meme transfer device sooner than others?↩

  3. White = good and black = bad is in the original paper. Now, an apology: I don't like the fact that our culture encodes bad things as black, it's associated with death, etc. I think associating black with badness is a bit trite in a world that puts so much stock on being a particular kind of yellow.↩

Agora

An agora, in its broadest sense, is a conceptual space where people attempt to bring an increased level of intentionality, explicitness, and mutual agreement to the principles and protocols for interacting in that space. A further aspect of the idea of an Agora is that it is a space which enables collaboration. In particular, it is a space that allows for collaboration guided by specific shared interests, without requiring the co-consitutients of the agora to be aligned more fully or generally in terms of their intentions, values, etc.

Some topics that the idea of an Agora is related to: [[transparency]] [[decentralized structures]] [[egalitarian principles]] [[judgement]] [[algorithms of interaction]] [[communication]] [[collaboration]] [[knowledge sharing]]

There are (infinitely) many possible variants of how this idea might be implemented in concrete, real-world situations. For example, an agora could be a space that is opened up inside a conversation between two people. Or it could be a collaborative project that is accompanied by specified rules. Or it could be a collective agreement about how to handle certain types of situations.

One variant of the idea of an Agora is a place where personal notes are shared, with the common goal of pooling information and sharing knowledge. One implementation of this idea is https://anagora.org . See also https://flancia.org/go/agora .

The term "Agora" and the basic idea come from [[Flancia]].

img side { lapin 77 {My visual take}}

Agora is a β€˜wiki like experimental social network and distributed knowledge graph’, so they said. I would say it's an aggregator of digital gardens and a community around it. Anagora is the first and biggest instance of it. [[Flancian]] was the one who created it and the software behind, but there were other good contributors. Thank you!

=> https://anagora.org

I'm part of it:. I also frequent the associated video conferences.

=> https://anagora.org/@melanocarpa | Melanocarpa in Agora => https://anagora.org/@bouncepaw-betula | My recent bookmarks in Agora

Agora makes a big emphasis on graphs and links. Their analogue of hyphae is called a node, nodes are generated from contents from multiple sites. There is also a cool notion of push/pull and go links!

//I was inspired by Agora's go links and implemented something very similar in [[Betula]].//

2022-01-18 I wrote the author an email about the possibilities of making Agora and [[Mycorrhiza]] compatible. 2022-03-06 Melanocarpa was added to Anagora, along with Mycorrhiza support. Furthermore, in 2023 proper support of [[Mycomarkup]] was added.

=> https://github.com/flancian/agora-server/commit/7783430aa33986186e9fd66ee858250b115e0d7e | Commit that adds Mycorrhiza support.

The Agorans also seem to be using [[git]]-based [[markdown]]-driven digital gardens mostly. It is the default choice for many, but luckily support for more formats was added. Mycorrhiza, for example, is supported! There is also [[Betula in Agora]].

= See also => Wiki => Social network => Digital garden => https://mycorrhiza.wiki/help/en/hypha => https://anagora.org/node => https://anagora.org/go => Flancia

You can't really talk about Agora without Flancia.

Agora

This looks like a really cool way of aggregating digital gardens into one place. To produce a community garden (or, an agora). Interesting to contrast with how a solely P2P way of connecting gardens might work, no central aggregator.

An Agora is a distributed, goal-oriented social network centered around a cooperatively built and maintained [[knowledge graph]]. The implementation you are currently looking at tries to assemble such a graph out of a collection of digital gardens.

– GitHub - flancian/agora

See also [[sister sites]].

See: [[What do I think about the Agora?]]

pull color="#b51f08"> <title>500 Internal Error wtf.
<link rel="stylesheet" href="https://doc.anagora.org/css/center.css"> <button class="pull-url" value="https://doc.anagora.org/css/center.css">">pull</button>
<div class="container-fluid text-center">
    <div class="vertical-center-row">
        <h1>500 Internal Error <small>wtf.</small></h1>
    </div>
</div>
β₯… node [[http]] pulled by user

HTTP is the main internet protocol, powering the web.

  • { A fun little exercise: kill HTTP

An even funnier exercise: try to bring HTTP back because the alternative is Lovecraftian

By the way, I'm fighting the urge to develop a new hypertext protocol with a focus on wikis (which are the true hypertext, by the way). It's another 5 year project, I can't afford it... β€” 2022-05-05 21:54 UTC}

= Links => https://shkspr.mobi/blog/2022/09/some-new-http-verbs/ | Some new HTTP verbs A concept.

β₯… node [[web]] pulled by user

Things about the web.

How do we design a "healthy" site?

What is a healthy site?

Chromium's Web Vitals is a Google initiative to log a variety of information about a website served over the internet, particularly to assess the website's behavior and efficiency in Google Chrome. The library offers an easy-to-use way to disseminate performance to a series of values, locally or in CI, that can then be tracked and reported.

Visions

Xanadu is Ted Nelson's dream of a hyperconnected world.

Interesting Specifications

Webmentions

Webmentions are ways to notify URLs when their sites are mentioned, helping construct a more social web; this notifies some publisher B when website A links their site, so that they can backlink to it!

Unfortunately, this protocol isn't standardized - but it's fun : ).

How To Create An IndieWeb Profile - Kev Quirk
getting started on the indieweb, a series of protocols constructed around the traditional web to promote greater interaction.

Do not

Use ads

Should I Block Ads?

web hostility

article "Facebook is at odds with the open web that I love and defend…" Netscape Navigator (small internet) -> big internet! The modern web is being destroyed – personalized content, growth hacking, social media activation, CMS and user experience. These websites are not built to appreciate the visitor – they are constructed to make the user a customer. Cookies bad! Small blogging good!

How do browsers work?

Good question! Here is a good article.

SEO

how seo is ruining the web Google's vaguely worded SEO advice handbook Can we reverse-engineer SEO with big data, lots of time, and search results? Is this just one neural network vs. another producing nondeterminism?

Alternatives

DNS

Beehive: CoDoNS is an alternative DNS server with a better distribution profile while offering backwards compatibility. Handshake - A Namespace For The Decentralized Web is an article pleading for an actual, decentralized namespace - the ICANN licensing system just isn't cutting it. Handshake uses a decentralized blockchain to register, track and resolve unique domain names with proof of work - this is not dissimilar to ENS.

Serving

Planktos allows users to serve content from users directly to other users by cacheing static files as a torrent. It's a cool peer-to-peer system that can cache both simple and complex static sites!

β₯… node [[web-annotations]] pulled by user
πŸ“– stoas
β₯± context