Semmy: Social knowledge fabrics

Combining Fediverse and Wiki’s

In follow-up to discussion with Mike Hales, @bashrc and @bhaugen as well as Exploring semantic knowledge base solutions - Fediverse Futures - SocialHub some thoughts / brainstorm of what a wiki-like semantic knowledge base might offer that’d add value that existing tools don’t have. Just brainstorming and trying to stay away from the technical parts. Let’s imagine a federated app based on new concepts. called Semmy

What Semmy offers is a: Social Knowledge Fabric

Semmy should be a best-of-both-worlds combination of what makes Wiki’s great, and the social fabric offered by the Fediverse:

  • Wiki: Offers easy navigation through large bodies of information (hyperlinked content)
  • Fediverse: Offers easy social interaction between large amounts of people (federated messages)

(note: that’d be ‘easy’ from an end-user perspective i.e. people and their communities)

Semmy should not compete with Wikipedia, one of the most successful online collaborative projects:

  • Wikipedia: Is an online encyclopedia to document as accurately as possible common human knowledge.
  • Semmy: I imagine this is a social knowledge representation tool. And I want to explore what that means.

Semmy has a number of characteristics:

  • Personal: When I use the tool it represents my view of the world i.e. the stuff that I am most interested in.
  • Collective: My social network of family, friends, acquaintances relate to who I am, and my personal interests.
  • Collaborative: My worldview, my interests, my skills, my wisdom. They all evolve with help of others.
  • Social: The more people meet and anticipate each other’s needs the richer their interaction and ‘yield’.

Semmy is used in the following way:

  • As a personal tool that makes you part of a collective where you collaboratively deepen social bonds.

What you do with Semmy is ‘weaving information’ such that it adds value to your life and connects you to others.

Now I’ll look at some things I do, some needs I have, and problems I encounter …

  • I like the concept of Learning in public. And it is a practice that might benefit others. Life-long learning. Teach and be taught.
  • I practice “weaving in public”: making people aware of each other’s work and on topics that interest me. Encourage collab.
  • I practice “dreamwalking”: pursuing impossible-seeming life goals, but I am content with just progress, Nothing more needed.

As to what I need to make these 3 ever ongoing activities easier:

  • A way to keep track of the ‘fabric’ I’ve already woven, and all the areas where I want to weave some more.
  • Ideally this should be connected to my life goals and aspirations, both short and long-term, and I’d like to see where I am with that.

The most prominent problems I encounter, the hurdles I need to overcome to ease my quest and make more progress:

  • A gobsmacking amount of info overload. I walk a narrow “focus alley” collecting piles of “interest backlogs” along the way.
  • A shattered attention span by all the stimulus thrown at me, that makes reflection and doing deep work harder and harder.
  • A metric ton of wasted time and effort by endlessly copying information around from one channel to the next.

Lastly some observations on things I see around me …

  • The info overload, attention issues, wasted time on menial tasks are universal. Everyone suffers this to certain extent.
  • Numerous initiatives try to tackle this. Note-taking tools, knowledge bases, personal or shared, are popping up daily.

Hauling back to the first two bullets in this post, my feeling is that Wiki’s and Fediverse offer the perfect mix for supportive tools:

  • That are able to scale and include large amounts of people.
  • That are still able to be tailored to the needs of individuals.
  • That can be seamlessly integrated in a large amount of channels.
  • And that can be still intuitive to use on a day-by-day basis.

With all of the above from here I could drill down into more of a use case level. But I rather keep it higher-level for a bit …

  • Knowledge should start ‘reaching out to me’ based on my activities and my social network.
  • I can interact with the knowledge that ‘floats’ around other people in my network, and together we enrich it.
  • Based on my interest for new knowledge I will find new friends that become part of my network.
  • The tools themself don’t matter. They are selected based on personal preference.

As to delving into specific features and functionality it should be clear now that the concepts here open an endless space for all different kinds of tools to exist, and that can integrate and build on top of each other. Just like with the Fediverse in general (and I presume so too in the wiki world) it is the “substrate” that is below these apps that will be the enabler that unlocks all the potential.

So hence I won’t go into specific use cases, but leave it at this for now :hugs:

There is a related discussion in Lemmy Fediverse Futures, inspired by this topic…

→ Fediverse Futures: Sewing with Threads

Related ongoing experimental open source project, a wiki with AP support:

1 Like

I’m trying to figure out the difference between a federated wiki and just simply… the internet. From my knowledge, the World Wide Web originally was supposed to be a decentralised store of knowledge, hyperlinked together into a web (Web 1.0?). Is that federated enough?

If so, then what’s the difference? A wiki allows anyone to edit. But let’s say I have a webpage of… I don’t know, “Links to cool Mastodon instances below 5k users”. Should I let others edit my page? Does that not result in centralisation?

Perhaps for others to contribute, they can simply make their own web pages “More links to Mastodon instances below 10k users, because I think 5k is too low”, that link back to mine, which will automatically then create a link back to them. (Related: Wordpress pingbacks, Webmention).

Take note that here I’m bringing in the idea that consensus is hard, and division might be important in keeping the peace. (Related: Retribalisation[1])

This idea is not used.

Perhaps we can take a note out of Gitlab; forking and merging of pages. But once again, risk of centralisation (Related: overworked OSS maintainers).

One of the troubles of a fully P2P system like this is moderation, for example, there’s no way for me to “keep my door open” since spammers and vile content will quickly fill my site with malicious pingbacks. The way the Fediverse solves this is to essentially group together, in small instances, and share moderation (i.e. share the same banlist/blocklist/CoC).

In practice

  • A semi-private wiki open to editing to a group of friends, maybe up to 50 to 100 users (number taken from
  • Unlike a normal wiki, people here aren’t expected to collaborate on the same pages; they can collaborate by having different pages that link to each other. In fact, I’ll go as far as to say that you cannot edit a page made by someone else. Essentially, not a wiki at all.
  • Unlike a normal/site.js website, other websites can pingback to it. One way is by Webmentions. May be done with ActivityPub using document objects and replies; this should not leak into the UX! Normal users don’t need to know this.
  • Unlike an IndieWeb website, moderation of spammers and subjectively-vile content in Webmentions is shared between the aforementioned group of friends (and informally, blocklists may be shared between groups, but that’s their own choice). This looks a lot more like a small Mastodon instance, culture-wise.

Would love to hear your thoughts.


I am interested in how the above, bolded point will be carried out in your vision, in practice. :slight_smile: The other three unbolded points have a very good example – Wikipedia – but the bolded point, which is one of the main points of the Fediverse (peace in division, ignoring consensus [for example ignoring consensus on CWs]), is not so obvious.


[1] I apologise for the lack of hyperlinks.

1 Like

Yes. But it is a big bag of knowledge… all knowledge. You can crawl it, search it, wade in data all day long. But it isn’t uniquely tailored to your interests and that of your social surroundings.

There was / is also the notion of the Semantic Web, i.e. adding meaning to the otherwise meaningless hyperlink relationships. That may help make the crawling more effective and give power-tools that ‘understand’ the machine-readable data. Fediverse ActivityPub is based on Linked Data… same set of standards underlying the Semantic Web idea.

Question to ask is: Why do you need the abstraction of a Page? A page is handy for displaying stuff, and we are very used to them from the time we invented the printing press. But in your head, your memory, there aren’t pages.

If you have a Graph of linked data Concepts (need not be only Knowledge concepts either) and an additional Context, then you could use those to organize the information in a preferable presentation format. Pages being merely one of those.

Just imagining collective knowledge gardens “still able to be tailored to the needs of individuals.”…

I have a center of focus, where my interest are… this is my patch of the garden where I plant (information) vegetables to grow. I share my interests and form a social graph of friends around me with like-minded ideas and interests. They find information they know interest me, as they know me personally. We have shared interests. We can tend to garden plants collectively. I might say for my own sown plants how I want them to be pruned and how much water they need. I might check what you want to add in terms of nourishment, before you throw it in.

A TiddlyWiki expert on the fedi: Abraham ( - Tools For Thought Rocks!

Knowledge Organization and Federated Wikis

Ever since new tools in the productivity domain like Roam Research and Notion burst into the scene, there has been a wave of renewed interest in solving the problem of personal knowledge management (PKM) and knowledge organization in general for individuals and teams, and in the process, people have rediscovered certain well established design philosophies and principles that had already been in existence for a considerable period of time in this space.

Personal social networks and Folksonomies

HN is flooded with submissions about ChatGPT. Yet-another-disruptive-AI. Someone asked how to avoid the Web being flooded with fake generated content. You basically can’t. And in the thread there were also hints to future direction that would still work. Taking some specific nuggets from the comments:

  • “a focus on the creator’s individual personality, livestreams, etc. and a shift away from anonymous, generic sources of information. Individuals will become authority sources rather than search engines”
  • “a return to pre-technological social norms, except with the benefit of broadcasting to a wider audience”
  • “the place you will be able to escape this will be curated communities”
  • “people will value the knowledge they’re talking to a real person more”
  • “this opens up a place for smaller by-members-invite communities”

I think here we are at Fediverse levels, where people create “personal social networks” that intertwine into a Peopleverse. Also in a fedi thread I was reminded of the great paper by Jonny that has a ton of good stuff in it, like:

Instead can we imagine a properly human data infrastructure? One that preserves the seams and imperfections in our representational systems, that is designed to represent precisely the contingency of representation itself

And further on talks about “Folk Federation” where people create folksonomies. This basically corresponds to the forum idea of Semmy.

Distributed digital gardens

I found this topic Distributed digital gardens by Neil Mather. It exists on a digital garden and has many related links. On this topic saying:

Increasingly convinced that the distributed/federated digital garden approach is the way to go for knowledge commoning. I say this because I’ve been doing it for a while and it is working well in practice.

Plenty to crib from the ActivityPub model, I think - where you have local, global, and ‘those-you-follow’ timelines. Similarly, you could have local, ‘those-you-follow’, and global gardens. I’d in fact prefer it if this model worked more on some kind of liquid democracy style, where there’s some rippling out effect that lives between the following and global timelines. I guess perhaps there’s some repost/boost equivalent?

And as with ActivityPub, where it’s kind of absent, I’d want for there to be a ‘group’ concept that isn’t based on infrastructure, just on interest groups.

As with streams, my ideal is probably some middleground of Indieweb and ActivityPub approaches

@IgnisIncendio shared on chat this article:

And I responded:

Nice! I am big believer of this “serendipity”. It is also an organic, natural trait in the same domain as this “spontaneous emergence” of (value in) social networks. Wrt “discovery systems”… I would rank them: 1. Search, 2. Curation and 3. Social. Search is this large-scale WWW-wide thing everyone does, and it is very easy to find good content here, easier still to get info overload. The curation I see as not just done by biased curators, but by everyone that is in the nodes of your “personal social network”. This is digital gardening à la Semmy. Then that information to your social environment in all kinds of ways. It has gained appropriate value and meaning in the context of your social fabric.

(Copying this information here is an example of curation, though fully manual and hence time-consuming)

An Agora

Flancian created Agora:

An Agora is a distributed, goal-oriented social network operating on 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, but other data sources are coming.

And is running an instance of it that collects knowledge. It has a bridge to the Fediverse that comes in the form of An Agora bot. When you follow the bot, it follows back, and starts reading your timeline in order to auto-include hashtags and [[concept placeholders]] to its knowledge graph as nodes. Each node can be enriched with additional content via an integration of HedgeDoc and EtherPad.

Furthermore you can Join the agora with your own Knowledge Garden, but PR’ing to the sources.yaml in the repository. For instance here’s one of the joined gardens, done in Jekyll by Boris Mann on the topic of ActivityPub Servers.

1 Like

Thanks to Tim Chambers some references to fediverse-related integration ideas at Wikimedia:

Although a little risky, when writing up Self-hosting FSDL services elsewhere I was thinking about whether I should mess with databases.

Like, all those software write down into a database. Not all of them expose hooks to react on events (create, update, delete etc). Therefore in order to interlink between chunks of contents, I could look at the database and reflect changes from one software into another.

Yes, this is a hack. But it might be bandaid until a proper API is provided. It also poses the risk of breaking on updates of the software (which might require database migrations to add, update or drop columns or tables).

But I want to have a way to allow for different views on a thread while also keeping a thread in sync.

1 Like

Simon Grant Wiki

Simon Grant (fediverse, CV) maintains a wiki with lotsa interesting ideas around knowledge commons, like Ontological Commoning, connecting useful knowledge. A long-running passion project is CHOICE, an interesting idea on how people can find each other based on mutually shared interests.

1 Like

Wikimedia: Non-editing Participation

Selena Deckelmann, Chief Product & Technology Officer at Wikimedia Foundation mentions in this toot thread the Wikimedia project Journey transitions with several research findings by the product manager team.

Selena muses about “non-editing participation”, as there are many things people can do other than directly editing pages, in order to help improve the knowledge gathering and curation processes.

Quoting 2 of Selena’s toots:

“Non-editing participation would take this a step further, and identify ways to support without actually creating or changing the content of articles directly. Examples of this kind of participation could be things like flagging content that needs editing help, noting particularly helpful or well-written portions of articles.”

“There are so many interesting possibilities, and I’m really excited by this kind of work. Part of the challenge of working on Wikipedia and all Wikimedia projects is the vast scope and scale of contribution. We have an incredible opportunity to learn a lot more about human motivation to contribute to a global, public encyclopedia.”

Interesting the mention of “human motivation” fits tightly into the interest area of the Social Coding Movement and the major challenges the Fediverse faces, which are all social in nature. I responded in follow-up to Tim Chambers mentioning the Fediverse with a mention of this topic and:

“You mention “human motivation”, which I find very interesting as that is also a key aspect in grassroots movements that allows ‘spontaneous emergence’ of all kinds of initiatives where people collaborate. Many are hedonic motives, most likely. Understanding the incentive system that underlies this is instrumental to “oil the gears” of co-creation processes and keep them going. People’s personal interests are where motivations are naturally highest.”

For more background on hedonistic motivations, see also Alternative technology adoption models.

Other related ideas are being tracked here. Not elaborating here, but hinting at those in a toot:

The creative possibilities are indeed endless. Knowledge tends to be siloed, not just in community groups, but also in the tools they use.

Take e.g. SocialHub where ActivityPub protocol is discussed and evolved. Many discussions, a ton of knowledge.

A Discourse forum content structure may be turned into Linked Data. Content may be selected, sent off for aggregation similar to Murmurations Protocol.

That’s just considering one channel.

(Graphryder is a PoC project that turns a Discourse forum into a Neo4J property graph).

1 Like

Herold Jarche: Personal Knowledge Mastery

As part of discussion (see post above) Sampath Pāṇini mentions work of For instance in the blog post on Manual Sensemaking Herold makes some very interesting observations. The post features this diagram that comes very close to ideas expressed in this topic:

And applies the Cynefin framework with this.

Today this toot crossed my timeline:

with a link to

I brought it to @indieterminacy’s attention.

1 Like

Commune Content Gardens

Beyond link curation

On the Commune matrix channel #general I posted a follow-up on the power of links for knowledge management in federated/decentralized networks (and in response to this “All you need is links” article):

Yes. While links are powerful, I don’t think they’re enough. As mentioned in the links article, knowledge isn’t hierarchical. It is a graph. But here the article immediately delves into the unpractical low-level technical stuff of triples (a la RDF). I am a link curator on multiple sub-lists of Delightful Club, and even in this simple case the links have metadata. So then you get to like property graphs, for instance. The delightful-activitypub-development has metadata:

  • Title (required)
  • Repository URL (required)
  • Site URL (optional)
  • Fediverse account URL (optional)
  • Description (required)
  • License (required)
  • Programming language (required)
  • Active status (optional)

The list has a ton of backlog to be processed. Notice how I have that backlog in a separate channel? Could also have it in an issue tracker, such as delightful-funding backlog. In summary my curation tasks could be helped by a bit more intricate but intuitive UX and workflow. And one that crosses multiple channels.

I am also community facilitator of multiple communities with multiple projects, as well as inter-connections. And I weave in public. For all those, different channels and tools are used. Community work like that is kinda unthankful, unseen, yet time-consuming and often a chore.

Here we get to more elaborate use case beyond simple link curation. From all the text typed above in this chatroom, probably 99% is ephemeral. It will be lost. The thing you typed 3 days ago moves up into channel history, never to be referred to again. Yet it contains a ton of useful bits for you and others. Maybe not now but later. So you may type it again, and again, etc. And the poor community facilitator? They see in frustration that the information is best kept elsewhere. They ask, and ask “Hey, this should be on the forum / issue tracker / wiki / what-have-you”… AND THAT DOES NOT HAPPEN. Not consistently anyway, unless you manage to get a culture of high discipline in a channel (which is not easy). People simply use the most low-friction way of expressing in their communications. So then the copying/pasting happens, most of that done by the facilitator. Highly time-consuming. Create cross-references, attribution, etc.

So there’s a problem there. Imho, a BIG problem. Because all this amounts to community chores. And no one wants to do them, really. They happen when the community is healthy and vibrant, but they are also a failure condition that may see a community peter out and become a ghost town. Ways to avoid are by governance, so that tasks get delegated, and the active community members don’t burn out. And/or by making chores as easy to do as possible, with help of automation. Governance is tricky in itself. Automation must be set up, maintained, and often first created.

But here’s an interesting use case going further than link curation…

Suppose I have plugins to my community channels. A plugin to this matrix chatroom, for instance. I see you post something interesting, to be stored elsewhere. So I select that text, call up a UI dialog, select the appropriate channel, and add additional metadata for that channel. Then I fire that off… the info + metadata is sent into a queue to be processed. It may land automatically at some place, or it may go into a review workflow first. It doesn’t matter. A lot of things may happen. Here on this chatroom a nice formatted message is shown what I’ve done…

Erlend created #211 in

Title: Beyond link curation
Source: #general on matrix
Labels: idea, community, tools
Assigned to: Erlend
Description: Summarize post by for ideas website. Text: ‘Yes, while links are powerful, I don’t think they are enough […]’

Following up, after creating this post with:

And weaving in public, and in the tradition of copying/pasting, I added a “Beyond link curation” post to the ‘Semmy: Social Knowledge Fabrics’ ideation topic. Which might’ve been automated with another Discourse forum plugin on that end of the channel network/link. :wink:

NeoDB Social: Mark the things you love

NeoDB is a self-hosted server tracking what you read/watch/listen/play, powering a global distributed community federating via ActivityPub. And AGPL-licensed project and free service to help users manage, share and discover collections, reviews and ratings for culture products (e.g. books, movies, music, podcasts, games and performances) in Fediverse.

Implemented in Django python. The project account on fedi is Chinese. Added to this topic as a possible case study.