Open Indie

Writing about open & equitable product development

A year ago in Feed Overload I wrote:

99% of all microblog (and chat) content is ephemeral by design, meant for a specific moment in time. But the 1% that should endure past the 24hr cycle doesn't have good ways to do so in the current paradigm.

Reddit/Lemmy has a simple Top sorting mechanism for viewing highly rated content in the past Day / Week / Month / Year / All Time. This is a great way to surface evergreen knowledge artifacts in places like r/AMA and r/todayilearned. It's also a very helpful way to get oriented in a new space.

The same could be done for hashtags on the fediverse. Treating hashtags as not just timelines of the present moment but also containers of institutional knowledge could lead to all sorts of innovations in knowledge management on the fediverse.

I explored some tangents along that trail in Follow Anyone and Sense-making on the fediverse. Today I’m continuing down this path, refocusing on the notion of content gardens, spurred on by two new developments.

First, a new type of links-curation app was announced: Introducing linkblocks, the Federated Bookmark Manager.

Then yesterday a developer I follow on the fediverse mused about a knowledge-sharing app in the same vein:

I'm thinking about working on a new platform for reading stuff on the web. To launch, I want a RSS reader (like miniflux; feedly) and a bookmark manager (like pinboard; pocket) with tight integration between the two and opt-in community features. I will eventually extend to stuff like annotation.

I’m particularly interested in the Pinboard-like experience. Prior to all of the all of my blog posts linked above, I wrote an experimental piece called Netizenship from first principles wherein I try to imagine a safe on-ramp to the internet for my 7yr old nephew.

I think I’ll rewrite it one day as I never felt like it fully arrived at its intended destination, but it presents a trio of magical applications that I still consider to be a great foundation for sense-making on the web:

  • 🪪 an ID card you can never lose, to safely make your self known on the web.
  • 👜 a bottomless Bag of Knowledge, for storing and synthesizing the wealth information you come across on your journey.
  • 🌐 a telepathic Study Group, to connect with other learners and exchange resources as part of a knowledge-gardening collective.

There’s more than one application catering to each of these archetypes. They’re not necessarily divided in three either, but personally I prefer that delineation.

For my purposes, Weird will cover the 🪪ID card and Omnivore already covers the 👜Bag of Knowledge. The missing piece is the 🌐Study Group, and that’s where Linkblocks comes in.

Social knowledge network

I think Linkblocks is still figuring out its identity and I don’t intend to direct it one way or the other, so what I’ll be talking about here is how I personally imagine and want a web application like Linkblocks to behave.

The social bookmarking app archetype has been around for decades, popularized by Delicious and carried as more of an indieweb phenomenon by the likes of Pinboard.

It bears a striking resemblance to Reddit, which is no accident. Reddit, like its forebearer Digg, was a subsequent iteration on the links-aggregator concept, but with one crucial difference: Rather than leaning into the timelessness of social bookmarking, the Reddits and Diggs of the world were social news websites, which are different beasts entirely.

Reddit is all about the *now*; viral trends of the day. Pinboard’s quiet indie success has been in the *timeless*, the evergreen nature of content without an expiration date. It’s not about *when* links are added, it’s all about how many people have the same link in common, and what tags-of-meaning they’ve applied to them. Commenting is also entirely optional in the links garden, instead endorsing a digital form of parallel play.

What all of these apps do have in common is the function of a links aggregator. It is therefore conceivable that what Linkblocks is doing could just as well be accomplished with the similarly Rust-based Lemmy for instance. In a world of more architecturally modular applications I think that would be quite possible, but as things are I think the DNA of Lemmy as a Reddit-like is too deeply embedded for the notion of timelessness to fully take root and thrive there to its fullest.

Newspapers and books are made of the same exact stuff – paper, ink and words – yet their distinct form factors make all the difference in how we treat them as either ephemeral or long-term stores of knowledge.

Reading vs sharing

Having talked about the different types of link aggregators, let's now draw a line between the two categories of read-it-later apps, also commonly known as bookmark managers.

As I see it, the difference lies between applications for reading and sharing. A secondary separator can be gleaned between private vs public.

  • Omnivore, Wallabag, Shiori, Linkwarden: Optimizes for the reading experience, practiced almost exclusively in private.
  • Pinboard, Linkblocks, Linkding: Primarily enables a sharing experience, practiced partially or fully in public.

For the latter bunch the app-makers themselves might disagree with me, but I think their capability for public sharing puts them in a distinctly different category than the former bunch. The combination of social-sharing and publicly readable content makes those applications more closely related to the links aggregators of the ‘social media’ variety. And yet, not quite that either.

Here’s a live example of Linkding as a public listing of links on someone’s personal webpage.

That app is a mature example of what Linkblocks might grow up to be, though given its ambitions as a federated bookmarks manager my hope is that linkblocks will more fully embrace the magic of sociality.

Considering what the read-centric applications already do well, linkblocks would be wise to focus its efforts on sharing:

With linkblocks, you can do three things: You can bookmark what you find on the web, you can structure your bookmarks, and you can exchange bookmarks with other people.

It’s only that last thing that I currently lack a good tool for. A narrow focus on the public exchange of links lends itself well to a series of other novel features, like collections:

Curated collections

I’d like the ability to create curated lists of roughly the same kind as what you’ll find on IMDB:

One way to do it would be to allow lists based on tag combinations, e.g.:

burnout + open-source






The key difference from having a bunch of articles with a certain tag is that a Collection can optionally have an order added, to say “read this before that”. That way you’ll have an additional data point that can be used to arrive at a global list of the top3/top5/etc. #burnout+#opensource articles.

I’ve started this feature discussion on the linkblocks repo.

Automated collections

I run two chat spaces for my Spicy Lobster and Commune projects. Both of these spaces have accumulated hundreds of links at this point.

We can imagine an automated collection of ‘Commune links’ by simply passing any link added in that chat onwards to Linkblocks, already tagged with whichever channel it was posted to. Additional tags and ordering can be added from there, for example by tagging some links as “essential” and others as “advanced”.

New paradigm

Social bookmarking is a novel use case for ActivityPub and I’m super excited about it. I heckin’ love links and lists. I wanna use them for everything.

Things like Bookwyrm are cool, but it’s not what I want. I just wanna link the thing. Books, films, podcasts, articles, songs.., they’re all just resource recommendations which can be encapsulated by links. Good Stuff, as Linkblock’s Rafael puts it.

I don’t wanna write reviews and rate with stars. I hardly even wanna do a search. I just wanna know who else in my network is interested in the same stuff, and have new stuff recommended to me that way. A local-first, relatively old-fashioned recommendation engine, subtly supercharged with online connectivity.

It's been a year since I wrote about Weird web pages as a prospective catalyst for the reclamation of my digital identity. There's been significant progress towards that end – more spread out among individual efforts than I initially envisioned, but ultimately for the better.

In this time a lot of necessary groundwork has been completed, some of which I didn't even realize was needed until I learned about it. Continuing from where I left off a year ago, let's go a few levels deeper into the vision of Weird, and the more clear-sighted vantage point we're looking out from today.

Starting with the self

Around a month ago I edited Assembling Community OS to reflect an emerging piece of technology which greatly helped crystallize my idea of Weird's most elementary purpose as a product. We'll come back to the shiny tech later; here's what we wanna do with it:

Digital autonomy begets individual freedom begets fairness & equality.

The hopeful possibility of this moment lies in the open-social web protocols which make up the foundations of a comms & coordination ecosystem owned and operated by the general public.

We have yet to bring these components together into one cohesive communications product, wherein messages and knowledge artifacts can move seamlessly from one flow-mode to the next and your identity remains the same throughout. Yet this ideal is closer to becoming reified than you might think.

Here's how I intend to do it, with a lot of help from my friends.

Part 1: Weird Identity

Before I can interact with other netizens, I need an online persona to make my digital self presentable and increasingly trustworthy. That's what Weird is all about. Most basically it's an open source equivalent to Linktree, supercharged by self-sovereign identity.

Weird will aggregate your fragmented persona into a single unified view. Establish your little slice of home on the internet without getting stuck in the content-production imperative of a custom website or a blog.

Then, thanks to the commodification of ID-tech steered by the OIDC standard, Weird can grow up to become a full-fledged identity provider by standing on the sturdy shoulders of rauthy. Meaning, you can 'Login with Weird' and use it as a kind of Gravatar on steroids. This will enable seamless login to all of the additional services we want to plug into our community stack.

To free ourselves of our current predicament, we must simultaneously de-centralize and re-centralize identity.

By de-centralizing the ownership of identity away from platform monopolies and back to individuals, we can re-centralize the agency of personhood.

Once more for clarity:

  • Decentralize ownership.
  • Recentralize agency.

The central authority of ones digital identity must first and foremost be the individual themselves. That's how we regain our digital sovereignty.

Everything we're gonna build towards in this article is based on The Path to Self-Sovereign Identity by Christopher Allen, written in 2016.

Rather than just advocating that users be at the center of the identity process, self-sovereign identity requires that users be the rulers of their own identity.

This is a lot to take in, so let's unpack it with a practical example.

The unbearable monopolization of being

In order to easily sign up for a new internet service today, without doing the tired email-and-password dance, I use “social sign-in”. We're all familiar with the usual “Google / Facebook / Apple / Microsoft / etc.” options.

It's very convenient because in this glorious age (/s) of technofeudalism you will inevitably have been forced on to one or more of these platforms already. You may as well entrench your identity in their unchallenged dominion even further by accepting their superstructure as the parent authority of that smaller service, even though the two are completely unrelated.

Incidentally, in a fairer world, that small service would be an up-and-coming challenger to the dominance of the ruling platforms. But that game has been rigged for a long time.

The authors of the paper 'Coopting Disruption: Has Big Tech disrupted disruption itself?' propose a four-step program for the would-be Tech Baron hoping to defend their turf from disruption.

First, gather information about startups that might develop disruptive technologies and steer them away from competing with you, by investing in them or partnering with them.

Second, cut off any would-be competitor's supply of resources they need to develop a disruptive product that challenges your own.

Third, convince the government to pass regulations that big, established companies can comply with but that are business-killing challenges for small competitors.

Finally, buy up any company that resists your steering, succeeds despite your resource war, and escapes the compliance moats of regulation that favors incumbents.

Then: kill those companies.

The authors proceed to show that all four tactics are in play today. Big Tech companies operate their own VC funds, which means they get a look at every promising company in the field, even if they don't want to invest in them. Big Tech companies are also awash in money and their “rival” VCs know it, and so financial VCs and Big Tech collude to fund potential disruptors and then sell them to Big Tech companies as “aqui-hires” that see the disruption neutralized.

Identity feudalism is an invaluable weapon in a tech baron's anti-disruption arsenal. Not only does it provide them with a to-the-second ticker on emergent platform upstarts that show signs of exponential growth, but every smaller player that defers to the mega-platforms for their network effects is consequently helping the fiefdoms deepen their moats by foregoing any network strength of their own.

How corporate centralization begets identity fragmentation

Ironically, the more corporation-centralized our identities become, the more fragmented they actually get. That's because when each of these mega-monopolies are big enough, they consider themselves the ultimate, unparalleled authority of digital identity. You won't find a “Log in with Google” button on Facebook, Apple or Microsoft's account page.

And yet you'll invariably need more than one of these accounts because, much to their chagrin, none of these companies have achieved complete world dominion quite yet. But if we stay the course, it won't be long until we can all enjoy the supreme technoutopian state of Absolute Customer Convenience.

Chain me up and sign me in your lordship!

Additionally, niche-targeted services will ask you to log in via the comparatively smaller but still monopolistic overlords of their particular domain. A project management app for instance might provide social logins via Notion, Slack and GitHub.

The built-in social providers of the app development platform Supabase demonstrates how fragmented our digitial identities really are in the current landscape:

Supabase social login providers.

Decoupling identity

Weird attempts something that other platforms don’t dare to do: It presents identity as the main attraction of its platform offering.

All mainstream identity providers get you hooked into their ID-network by means of a tight coupling between a light identity layer plus a heavy service:

  • GitHub: ID + git
  • Discord: ID + chat
  • Gmail: ID + email

The indivisibility of this coupling weakens our digital sovereignty. Even if I stopped using Gmail for email, I still rely heavily on it for my authentication to hundreds of sites & services. It’s part of their lock-in scheme.

Gmail make identity confusing because they've made it appear necessarily coupled with an overarching complexity like email or a social network. But identity should stand on its own. In fact it is paramount that our identity is not owned by a personal-data-loving megacorp because there's nothing more valuable for them to keep locked up than the very essence of your digital self.

However, identity on its own just doesn't sell because we've become complacently accustomed to it as a byproduct of a headliner service, and usually a “free” one at that.

So Weird makes a compromise. We acknowledge that plain identity is somewhat lackluster, at least in the current landscape. To be competitive, we loosely pair your identity with what is arguably the other side of the identity coin anyhow: The personal webpage.

  • Weird: ID as dynamic API + ID as static page.

And a ‘linkspage’ is the lightest, most low-effort webpage there is, since it only requires you to add links to wherever your online identity is already fragmented to.

Identity tech

Time for the techy bits! The past year has brought a series of innovations that, if brought together into a cohesive product such as Weird and others, could truly rock the foundations of the identity oligopolies.

I desperately want to be set free from my Big ID dependence. Sadly that cannot happen overnight since most sites need to explicitly add additional login options. Yet, a lot can happen sooner rather than later in the IndieWeb and fediverse that I now spend most of my online hours in.

Most of those web apps don't provide any 'social' login at all, but they absolutely should for the sake of easier onboarding. They just need better options than the mega platforms they are actively trying to avoid.

This and more is becoming possible thanks to three loosely related developments that are maturing simultaneously:

  1. Commodified identity providers – OIDC libs

  2. Federated logins – Bring Your Own Identity Provider with FedCM

  3. Portability – Decentralized identity standards

As I map out these technologies, I'll also outline a rudimentary product plan for Weird as an identity provider for the IndieWeb. By the end it should be clear that Weird hopes to be one among many providers of such a service. That's how we collectively wrest back independent control of the web's identity infrastructure.

Commodified OIDC

It wasn't long ago that aspirations of being a root identity provider was reserved for large and mostly closed-source companies. Now this space is rife with open source solutions backed by single-vendor cloud companies or industry coalitions:

Keycloak has been around forever. In the Supabase-logins example above, Keycloak stands out as the only open source option in the whole bunch.

Weird aims to appear on such lists as well. We keep our stack as lean as possible though, which boiled our search down to the perfect match I mentioned at the top of this article: Rauthy.

A Rauthy deployment with the embedded SQLite, filled caches and a small set of clients and users configured typically only uses between 17 and 22 MB of memory!

Rauthy's tiny footprint means we can realistically offer Weird as a self-hosted product for anyone who doesn't want to rely on our cloud service. In this first section however we'll focus on Weird as a cloud platform.

Now let's imagine what it would take to have 'Login with Weird' show up as an alternative on a real production service. For example, I'm an avid user of the read-it-later app Omnivore. Their login page currently looks like this:

With any of the closed incumbents it's practically impossible to advocate for a new login option that isn't a “trustworthy” trillion dollar company. But Omnivore is open source, which opens up a vastly different possibility space.

Quite simply, our advocacy would start with a Pull Request that implements Weird Login. Maybe we'd start it off as a humble text-button above “Continue with Email”, and continue proving our merits as a first-tier login option from there. That's where the linksapp component comes in as a way to build trust by brand recognition.

Still, this is only a very partial solution to the problem before us.

Firstly, there's a significant burden involved, both upon us to send out a bunch of PRs to services we'd like to make friends with as well as the maintainers who need to review, merge & service said PRs.

Secondly, this type of integration doesn't work for self-hosters. You can't send a PR to Omnivore requesting that they add a dedicated button for 'Login with Andy's site' (for Andy's use only), alongside hundreds of others.

That brings us to the next piece of the puzzle..

Federated social logins

Two months ago, a developer put out a call-to-action regarding the emerging FedCM standard:

FedCM is a method that allows users to log into websites through federated identity services, such as “Sign in with…”, without sharing personal information with either the identity service or the website.

In short, FedCM makes it possible for the identity service of choice to be determined client-side in the browser, instead of that choice having already been made for you server-side, as with the examples of Supabase and Omnivore above.

It's 'Bring Your Own Identity Provider' (BYOIDP), meaning Andy can opt to 'Login with Andy's site' without Omnivore having any prior knowledge of Andy's site and its capability as an identity provider. Or, if Andy doesn't want to self-host their own provider, 'Login with Weird'.

However, true free-for-all user choice is only a tentative part of this WIP specification, and could get retracted in favor of a far more limited selection of The Usual Suspects if no practical example of the former is brought forth.

Fellow internet activist Julian Foad picked up on this movement and echoed the call with a more pointed reiteration of what's at stake. A challenge has been put to the open source community by the drafters of FedCM: Either implement a real-world example of the free-for-all method, or consider your inaction a vote for business as usual.

Three weeks ago one of the former editors of the spec completed the missing piece in the browser for the whole flow to be tested end-to-end.

Ok, I finally got this merged in chrome canaries, so I think we now have a complete prototype of this API in chrome canaries for you all to try.

We need developers to try this API in chrome canaries and give us validation that this is a problem worth solving (and that the proposal actually meets the requirements – or make a counter proposal), so that we can move into more stable channels (next step is an origin trial). Developers do that by writing prototypes that use the API.

If we don't hear from developers, we'll at some point delete the prototype: no specific deadline, just being transparent that the way to move this forward is for developers to build prototypes too (not blog posts, not manifestos: code, counter-proposals or questions).

Weeks passed without anyone apparently answering the call, so I finally decided to take what little action I could on my own. I reached out to sjud who had been experimenting with Rauthy in his personal projects for a bit, and he has graciously agreed to explore this work as part of a modest sponsorship arrangement.

Follow along here:

Once we have this working, that's a massive step towards re-centralizing identity around the individual. We're still one crucial step shy of making our identities properly self-sovereign however.

Portable Identities

Here's another excerpt from Christopher Allen's foundational article:

Self-sovereign identity is the next step beyond user-centric identity and that means it begins at the same place: the user must be central to the administration of identity. That requires not just the interoperability of a user’s identity across multiple locations, with the user’s consent, but also true user control of that digital identity, creating user autonomy. To accomplish this, a self-sovereign identity must be transportable; it can’t be locked down to one site or locale.

The Verge recently interviewed Bluesky CEO Jay Graber. When asked what distinguishes Bluesky's ATprotocol from prior art such as ActivityPub, Jay pointed to account portability as a major motivation for a whole new protocol:

Then another thing was we really wanted to get account portability. So, this ability to leave with your identity and your data and have fallbacks with the way that we’ve designed your repo, you can even back up all your posts on your phone or back it up on your server that you control, and then you don’t have to have any sort of friction when you want to move.

So, you can move between services in ActivityPub. But if… for example, recently, their .af domain was seized by Afghanistan, and then people were stuck because there was no warning, and then they have to rely on their old server to help forward their stuff over to a new place. So, we wanted to get around that problem and make sure people always had the ability to move.

They're building A Self-Authenticating Social Protocol, which comes with a form of portable identity.

Many people in the ActivityPub-based fediverse consider Bluesky an affront to their pre-existing community; a threat even. I'm not really on the Bluesky network in any meaningful capacity, but I'm glad to have them around because they present a live counterfactual to the ActivityPub story. I don’t think we’d be talking as much and pushing as hard for things like nomadic identity if it hadn’t been for Bluesky championing that feature as one of their key differentiators.

In spite of its largely volunteer-driven development team, the fediverse isn't far behind on The Path to Decentralized Identity in ActivityPub.

So where does Weird come into this? Well, even a portable identity needs a place to live. The self-hosting types will want sole custody of their identity keys, storing them locally on an encrypted drive.

That doesn't work for me. If I had ever gotten into crypto, I'd no doubt be the guy desperately looking for his lost hard drive in a junkyard. I'm messy; I do not trust myself to take proper care of something that will have irrevocable consequences if I lose it.

Bluesky recognizes this as well, which is why they are building a hybrid solution wherein a server host (like Bluesky themselves) and an end-user share non-exclusive custodianship of an identity key.

While I agree that there’s every reason to be cautious about Bluesky’s centralized approach, I think it’s worth noting that private-key identities solve two distinct problems:

  1. Instance-independent identity with credible exit

  2. Self-sovereign identity with no 3rd party authority

As already explained, personally I don’t actually want to be 100% responsible for the safeguarding of my private identity key, for the same reason I use a bank instead of storing my money in a safe at home.

I want to fully own my identity, but I don’t need exclusive custodianship over it. I have a much more urgent need for (1) than (2), so I’m okay with solving the former first as long as there’s a clear path from there to the latter.

Bluesky’s approach is in principle fine with me, provided the promise of credible exit can be substantiated. My main concern with Bluesky Inc. specifically is that they're a VC-funded ($8m seed) company with >30 employees and no concrete business plan. With that many people on the payroll the money is gonna go quick, so I'll be very surprised if they don't do another funding round in the next 6-12 months, thus sinking them even deeper into VC debt.

I'm not fundamentally against venture capital, but by now we have a lot of historical proof that the more of it you take on, the more compromised your original vision gets.

Despite their idealist manifesto and their Bill of Rights, I don’t believe they could ever truly be in partnership with their community once they were taking large amounts of venture funding. All of their ideals and big dreams were easily undone, even the legal restrictions they defined in their Public Benefit Corporation charter:

  1. Ello made money from selling ads to third parties;

  2. Ello made money selling their user data to a third party;

  3. Ello was sold, and the new owners didn’t comply with those terms.

I might only be willing to trust an external identity custodian if it was Mozilla or some other similarly established open-web institution.

Or, hear me out, maybe such a custodian wouldn't have to meet the high bar of longstanding open-internet staple as long as it is sufficiently lean, transparent and indie-oriented. Like, say, Weird!

Here's where another magic property of the OIDC standard (as implemented by Rauthy) comes into play: it provides a baseline of ID management for other, still experimental methods to plug into.

For instance, Rauthy already supports Solid OIDC, enabling interoperability with the Solid protocol as yet another alternative for decentralized identity, or just as a means of integrated key storage.

Bluesky is also working on OAuth support (with some talk of OIDC compatibility).

Bluesky wants to be “the last social identity you’ll ever have to create”. It's a nice sentiment, but I think it's a bit like trying to sell “the last jacket you'll ever wear”.

I think the real mark of a truly user-respecting identity provider is one that is equally happy to be your primary or secondary provider, and can operate as one or the other interchangeably.

Furthermore, ones identity can never be tied down to just one thing. In the timeless words of Walt Whitman, “I am large, I contain multitudes”.

Just so, an identity container made to last forever must be built to hold an ever changing number of multiple personas.

Let's try to make that shall we? Join us in #weird on Matrix.

Money, Money, Money by Uganda Lebre

Threads has entered the fediverse. There is so much to say about this, and I'm simply not ready to take a decisive stance on the matter as a whole yet.

Deciding to federate with Threads is analogous to doing trade with the United States of America. The USA has a contentious history to say the least, but it's a continent-sized nation containing multitudes.

It also commands such an overwhelming influence over the global order that shutting ones door to it can be likened to opting out of globalization altogether. That's not an innately good or bad, wise or unwise thing to do, but it's a choice with far-reaching consequences. It's also a choice that's weighted very differently depending on your standing in the world.

For some nations, there is no choice. Our globally connected and unevenly distributed world is such that not all nations can afford to close off their borders and trade routes to the US without ruinous consequences. Consider this before you chastise those who do not exercise their supposed liberties the same way you do by “doing what is right”.


I'm generally in favor of at least trying what hasn't been attempted before, and this breaking of bread between David and Goliath seems unprecedented. Some will argue that this is history repeating itself, but what's going on today is a very different story.

Unlike how Facebook and Google voluntarily adopted the XMPP chat standard as self-serving product strategy, Threads is not making today's interoperability play voluntarily. The EU forced their hand and the US finally beginning to hold their mega-corporations to account as well, so Meta is left with no option but to make the most of the hand they've been dealt.

There are anti-monopoly regulations hammering down on the internet behemoths from all angles now. Threads' adoption of the ActivityPub protocol is Meta's plea for goodwill from the multi-national regulators who are breathing down their necks.

I suspect the fedi-collective has more negotiating power in this moment than it realizes. We may as well make some asks, see how Meta responds, and they in turn will see how the public, the media and the regulators respond to them in this bold new era of pervasive Big Tech skepticism.

Money, please

From Meta’s decentralized social plans confirmed. Is Embrace-Extend-Extinguish of the Fediverse next?:

It does not help that the Fediverse today is chronically underfunded and has corresponding difficulty to compete at the same speed as somebody like Meta can. Actually, “unfunded” is a better term because the amounts are so small. There are many unpaid contributions, the Fediverse largely being open source and all, but I’d be surprised if more than $10m per year are spent in total on the entire Fediverse today, likely it’s far less. If Meta can burn more than $10b – that’s one entire annual fediverse spend every 8 hours! – on a very doubtful Metaverse project, they surely could find the same amount of money to protect their core business.

How can Meta extend a tangible gesture of good will towards the fediverse? Pitching in an extra $10M per year would be a good start! A bit of internet reparations.

The initial commitment could be far more modest though. How about a $600,000 trial run for the next six months? To make it more concrete, I propose three initial domains of funding specifically intended to mitigate oft-cited legitimate concerns of fedizens today:

'Threads will coopt the fediverse protocol'

Mitigation strategy: Make a comprehensive test suite to elevate ActivityPub from an implicit to an explicit set of standards.

$200,000 in additional funding for the ongoing ActivityPub Test Suite, reinforcing the efforts already backed by NLnet and Sovereign Tech Fund.

'Threads users will overburden fediverse moderators'

Mitigation strategy: Make moderation tooling that works at scale, in a federated model.

$200,000 in additional funding for the ongoing moderation tooling initiatives, such as IFTAS (sponsored by New Venture Fund) and FSEP (sponsored by Nivenly foundation).

'Threads will lock in users'

Mitigation strategy: Sponsor the development of Decentralized Identity in ActivityPub (Nomadic Identity).

$200,000 in additional funding for the ongoing SocialWeb Coöp's ongoing work on Portability Tools (scroll to bottom), Mike Macgirvin, silverpill as well as other complementary initiatives in this space.

I will gladly receive corrections/addendums to information about the initiatives and funding-orgs I've listed above; this is not an exhaustive overview.

It will take a lot more than money for Meta to change its dubious image in the eyes of the fedi-nations, but this preliminary act of generosity could still make a real difference.

If anyone at Meta or Threads reads this and wants to help move it along, you can reach out to me for some facilitation, or just directly contact the orgs above along with your existing contacts in the diaspora of fediverse leadership.

Incognito by Matt Dixon

I've noticed a worrying trend among many bloggers who use GenAI for the images of their posts: No credit is given. Not even so much as a shoutout to Stable Diffusion, Midjourney, DALL-E, nothing. As if the image appeared out of nowhere.

If you're one of these people, this post is addressed to you.

Using GenAI instead of promoting the work of a living artist is ethically suspect on its own, but I'll give you the benefit of the doubt: Generating “your own” image might be more satisfying than searching among prior art for that just right visual analogy to your written words.

But if you consider yourself a participant in the knowledge commons – as every self-respecting writer should – you have a responsibility to credit your fellow artists, human or otherwise.

It's bad enough that GenAI mashes together thousands of similar drawings and repaints them at your behest with the signatures of its contributors scrubbed out, their record of work erased. Don't add insult to injury by omitting any credit of the machine assistance whatsoever, as if this work was painted by your hand.

Whenever I see an uncredited image online, I assume foul play. It's the equivalent of copy-pasting another writer's article in full, without crediting them by name and source link. Every uncredited image is non-consensual exploitation of art, regardless of origin.

At the very least let us know which AI application you used to generate your image. If nothing else, that combined with the date of your posting will provide a snapshot of that particular AI model's capabilities at that point in time. Years down the line, that's useful data.

The far more artistically honest thing to do would be to include the full prompt you used to produce your image, thus providing an interesting frame of reference for future generations (double meaning intended) to measure the growth of our synthetic art students.

Best of all – short of simply utilizing the work of real artists – would be to accompany your service-credited and prompt-transparent illustration with a brief list of human-made works that closely resemble it.

From Big AI Commons:

Designed for the betterment of society, an automated synthesizer would happily (there’s that anthropomorphic slip again) tell you about every single piece of information it has ingested. When outputting a synthesized information blob it may not be able to tell you the exact sources from which this output was derived (because that’s not how Synthetic Media Machines work), but it absolutely could do a reverse-search on its own corpus of data and tell you which articles / books / images / films are most similar to this “new” thing you now have in your possession.

I understand no one will ever bother to actually do this due diligence unassisted, but it's an interesting thought exercise nonetheless. And I wish to one day live in a world where I can click on an AI generated image and see “Similar works [by humans]” presented to me the same way I already can on Google Images. We already have the technology, we just lack the will.

The art of knowledge work is inherently relational and referential. The way we make sense of new information and transmute it into lasting wisdom is by following the trail left behind us by the knowledge workers of old. If that historical chain of attribution to prior art is severed and we lose sight of where our current state of knowledge comes from, we may as well start all over again from scratch, and we just don't have that kind of time.

I never seize to be amazed by how accepting we are of the exact same multinational corporations who under no uncertain terms spent the last few decades diminishing our personal agency, unraveling our communities and strangling our nascent democracies in the cradle.

The last trick the software oligarchs pulled on us was the idea of Big Data as something that magically appeared behind the fortified walls of their data centers, as if organically home-grown and lovingly tended to. And only they, with their unparalleled wits and computing power, were fit to manage all this data at scale.

Except the only thing that was special about these data troves was how much of them they’d been able to collect and trade amongst themselves without our explicit consent. That was the era of surveillance capitalism. With the emergence of so-called artificial intelligence, powered by non-consensual data mining, the corporations move on from the surveillance trade to straight up spycraft; the society-controller of choice for authoritarian regimes.

So up next is control capitalism, which is just fascism with the toothbrush mustache grown out for a more fun, twirly aesthetic.

We are regressing back to the ugliest kind of class divide, wherein the owner class commands your will not merely because they own things you do not, but because they own you. They’ve already laid claim to our collective land, labor and attention. With AI, they want to own our thoughts and the last shred of agency that comes with them. If we fail to defend our personal sovereignty at this juncture, a dark age of the corporate singularity awaits us.

This article, which turned out way different than I expected, was first ignited by Mike Masnick's reporting of AI critics employing copyright law as their weapon of choice against extractive data hoarders. As an open source advocate I wholeheartedly share Mike’s fear of IP maximalism. The problem this legal tactic is attempting to solve however is as real as it is harmful, so to refute the tactic begs the question: What, then?

Commons Maximalism

LLMs and their ilk, or what Emily M. Bender calls Synthetic Media Machines, are premised on large libraries of data. Without big data, they can’t function. Arguably their collection and mass-synthesis of this data is fair use, and I won’t dispute that.

The weird thing about these contraptions is that they aren’t libraries you can go to and ask for specific items to be retrieved according to some query, like ‘books on insects’. An SMM will be able to give you a list of books on this subject (with varying degrees of truthfulness), on the account of the SMM having actually consumed these books for its own edification.

But what it would much rather have you do is ask it to write something more specific about insects on its own accord, made for you and you alone. Thus, making you reliant on the synthesizing automaton as your primary source of knowledge. And to be clear, the contraption in question here has no will of its own. Its incentives and motivations are purely an extension of the corporate master that controls it.

Designed for the betterment of society, an automated synthesizer would happily (there’s that anthropomorphic slip again) tell you about every single piece of information it has ingested. When outputting a synthesized information blob it may not be able to tell you the exact sources from which this output was derived (because that’s not how SMMs work), but it absolutely could do a reverse-search on its own corpus of data and tell you which articles / books / images / films are most similar to this “new” thing you now have in your possession.

If this type of backwards looking similarity-search was standard practice, you would always learn of some original, human-made media that is remarkably similar to what has been machine-generated for you as if by magic. The truth of art making is that there is no such thing as a truly original creation. Every new thing is a remix of a prior.

(Steal Like An Artist makes that case beautifully.)

The infinite riches of media that we continue to share freely on the internet aren’t put there for the purpose of capture and capitalization. We share our art so yet more art can be made from it, under a social contract of mutual reciprocity.

Big Tech doesn’t reciprocate. Our public data isn’t for them to do with as they wish, especially not when their wish is to subordinate us into a brave new world of techno-feudalism. But ownership is tricky. I can claim some ownership over this article I’ve written, but I cannot possibly lay claim to the impression it has on its various readers, nor can I claim ownership of new art that only to a vague and partial degree is derived from it.

Our public data doesn’t belong to the corporations, but it doesn’t belong to us either. Not when it has been converted from data-contents to data-impressions. At that point, your ideas ‘live rent-free’ in any willing or even unwilling recipient’s mind. Like the air we breathe and the water we drink, freely available data doesn’t belong to anyone. What belongs to no one belongs to The Commons.

Attack their bigness

From a simplistic point of view, an SMM is just another thinking agent going around consuming content and forming its own impression thereof. If we try to combat the harms of AI companies from this vantage point, we’ll only end up harming individual creators. Attacking how the machines work is an aimless swing at their most ethereal form, destined to find no target to make contact with but our own sorry faces.

To land a real blow, look for where the machines are at their most materialized. Take aim at their massive bodies of data and strike there with conviction. The Large Language/media Models rose to prominence through their unfettered bigness, and that in turn shall be their downfall.

Pacify the profit incentive

Here then is my very simple policy proposal: Big Data AI is by definition a product of our global data commons, and as such any product derived from it should only be allowed for non-commercial purposes.

Commercial applicability should shrink relative to the size of data vaults. Much like a wealth tax on data, this aligns neatly with the EFF’s recommendation of a Privacy First approach to addressing online harms.

Regulators have an innate understanding of bigness and scale. Some AI regulation in the USA already stipulates special restrictions for AI operations that exceed a certain compute threshold. Regulating by data mass is probably an even more tangible metric to enforce by.

Furthermore, the doomers who are concerned with the rampant development of AGI should be very happy with this*, because a lack of commercial incentive would undoubtedly slow the unchecked pace of AI among the most unscrupulous for-profit actors, leaving academic researchers and CERN-like international collaborations to lead the way.

(*Unless, god forbid, they weren’t actually sincere in their ethical trepidation and were actually just angling for a competitive advantage.)

Our public libraries are shining examples of our social ingenuity. “Knowledge wants to be free” we said, and collected it all in these massive repositories made by the people, for the people. For a while, we did the same thing with the internet, at global scale. The AI renaissance could still turn out to be a good thing, but only if we reject its cooption by the already most powerful few.

The art of knowledge work is inherently relational and referential. The way we make sense of new information and transmute it into lasting wisdom is by following the trail left behind us by the knowledge workers of old. If that historical chain of attribution to prior art is severed and we lose sight of where our current state of knowledge comes from, we may as well start all over again from scratch, and we just don't have that kind of time.

Done right, AI assistants of the LLM variety ought to be like a library and a librarian fused together. And doing that right means we would have actual human librarians still in the loop to mediate between mortal knowledge seekers and the god-like but far from infallible super librarian.

Such an interaction would likely feel much less like being on the receiving end of a bullshitter’s behind, and more like making, eating and digesting your very own food for thought in the company of our peers, both past and present.

When you hook up your mind to a cloud-controlled Artificial Synthesizer (ASS), you plainly receive their fully digested discharge.

You don’t get to see what happened further up in the synthetic digestive tract of the all-knowing ASS, where copious amounts of data grub were initially ingested and processed by a divine black-box entity.

You don’t have any insight into where and who those morsels of data came from, and you certainly don’t get any say in which of them the entity should or should not consume for processing and output, delivered to you through the ASS-as-a-Service.

All you’re supposed to do is open your mind’s mouth wide and say “please” and “thank you” for the grossly diluted information bits you’re about to receive.

As Commune edges closer to an early-access release, I've been musing on the concept of the cozy web vibes that we intend to cultivate in our app.

'Cozy Place' by MLeth

Internet friends

My first foray into the cozyverse was IRC. Short for Internet Relay Chat, it's the precursor to the largely unchanged group chats we use today. And much like today's chatroom clients, IRC wasn't really part of the web, since it was accessed via the desktop app of your choice rather than the web browser. (Web clients did arrive towards the end of the IRC era). But it was an intrinsic part of web culture, and an exceedingly cozy one as such.

As a shy pre-teen looking for my place in a world I often found too loud and hectic for my gentle sensibilities, IRC presented a different way of being, with behavioral norms that were more forgiving of quirkiness. Cold-opening a conversation with “ASL?” (age, sex (gender), living (nationality)) was a socially acceptable way to start an interaction, though it was equally acceptable to decline to answer and maintain anonymity. Or just lie, and say you're a dog.

In a time when connectivity was at a premium, asynchronous communication was the norm. That was a blessing for someone like me who thought far too many group conversations in daily life resembled a blitz competition of who could get a word in before a topic had concluded, and the points for best quips and anecdotes would be tallied together to declare a Winner of Discourse. By the time a cogent thought had fully formed for the quiet ones, the conversation would have already moved on.

IRC made me fluent in conversational English at an early age, connecting me with a global network of geeks from all walks of life. It showed me how deep connections could be made with faceless human beings whom I only knew by their written word. It opened a window to new localities, where people were living radically different lives from the little bubble of privilege I knew. And the prevalence of 1:1 discussions encouraged common understanding as opposed to competitive debate. Figuring out who the person on the other end was – what they were like; the shape of their thinking – was the whole game.

In retrospect, IRC helped me understand how introversion vs extroversion is fundamentally contextual; coasting on the currents of the interwebs, I'm a social butterfly, striking up conversations with people in ways I can't even imagine in 'real life' without a severe spike in heart rate.

Retreating to the cozy web

In the words of Maggie Appleton, the cozy web is..

gatekeeper-protected enclave communities, comprised of like-minded folks around niche interests. Run through chat streams like WhatsApp, Slack, Discord, Snapchat etc.

The general thesis of Maggie's article and Venkatesh Rao's The Extended Internet Universe is that the cozy web offers a retreat away from the increasingly enshittified public web, overrun by marketing fluff, data scavengers, advertisements and divisive trolls.

Sadly, no mainstream space is safe from the trickle-down-turned-shitstorm effects of end times capitalism. Twitter and Reddit – where semblances of a cozy web appeared at the fringes – have long since begun their descent into rapid degredation, somehow failing to pay off their VC debts even after years of exploiting the free labor and data of their users.

Discord, carrying on the IRC legacy as a gargantuan network of group-chat safe havens, won't be safe for much longer; they've taken on a staggering $1 BILLION in VC funding. It's only a matter of time until they reach the user-hostile stage of the ruthless enshittification cycle that haunts every over-leveraged platform baron following the monopoly playbook. Not that it was ever that safe to begin with as far as your data is concerned.

Open source, community-owned software like Commune and friends offers a remedy to the deep rooted issues of opaqueness and stakeholder imbalance in closed-source software, but it is not innately cozy. That is an added quality resulting from an intentional design towards that specific end. My intention as a product thinker has been vaguely pointed in that direction ever since I digitally set foot in an IRC channel twenty years ago, but only recently has designing for coziness become my north star.

That journey has just begun, but I've arrived at some tentative answers that all seem to point to the same place of cozy communion where tea and low-fi tunes await.

Lofi Girl

Cozy community software is..

Safe – moderated; incremental

It's impossible to be in a state of coziness if you don't feel safe in your environment. Safe spaces require excellent moderation tooling that empowers its dwellers to self-govern through bottom-up advancements of responsibility.

Taking on moderation duties cannot be something you apply for like a job, it should be something you're organically entrusted by your peers to do more of over time, like an older sibling.

Safe spaces must also grow incrementally, without haste, lest they lose control of their innate culture. Growing by invitation is a time-tested way to scale up with care. Discord exemplifies this with its invite-only spaces, but an invitational community doesn't necessarily have to be quite that restricted. Invites can also be used as calls to action in working groups or topics as opposed to a grant to entry.

Accessible – discoverable; user-friendly

I'd like most of my collaborative spaces to be publicly viewable so that they're easily discoverable and openly available to vibe-checks. Lurkers can take their sweet time deciding whether to engage with us directly.

Coziness is also intrinsically linked to good UX. A deficient user experience feels cold and uninviting, like a poorly lit room in an unfamiliar place. Furthermore a baseline of usability is required to accommodate a true diversity of dwellers (i.e. regular folk who don't work with computers for a living). Monocultural, sterile places are the antithesis of cozy.

Casual – default asynchronous; at-your-leisure

Urgency is the cozy-killer. In most messaging software I’m frequently scared to mention someone at the wrong time, fearing they may not have a DND mode set and I’m gonna loudly ping them in the middle of the night.

This is one of Commune's key differentiators from Discord and the reigning status quo of comms tooling. Here's how we think it should work:

Upon sending a quiet-by-default mention, now the app may ask the mentioner if they want to boost this mention with additional forms of notification, to be sent now or later. Incremental Notifications.

Extol the virtues of fearless connectivity in a disruption-free environment.

Present – optionally synchronous; in-the-moment

While everything in a cozy place should be set up to work asynchronously, the option to connect with your peers in the present moment is an essential part of instilling a sense of belonging. Something special happens when we occupy both time and space together simultaneously.

I'm deeply fascinated by a new breed of cozy places being constructed in the fediverse with software like Mastodon and Lemmy. See for instance and

Running on community software modeled after Twitter and Reddit respectively, there's an inevitable tension to these places as they use broadcast-oriented machinery for the making safe spaces. They have to be extraordinarily judicious in choosing which communities they federate theirs together with.

How to square that circle is an open question, but a lot of it fell into place for me when I read an excellent article by Anil Dash about consent-based search on the fediverse.

With consent built mindfully into the content workflow, what starts as a private conversation between two individuals can be moved into a shared spaced when the window of vulnerability has passed, and within those confines its suitability for fully public broadcast can be gauged by trusted peers.

A version of this is exemplified by my Musings on death and loneliness. It started as a chat message meant only for my immediate project collaborators, but I've since elevated its visibility to a blog post (requiring only the consent of one: my own) when I needed to refer to it in a subsequent blogpost, Against Loneliness.

This worked out exactly as I'd hoped when my exercise in vulnerability inspired a friend and project-partner to share his own piece of lived experience.

In summary:

  • Safe – moderated; incremental
  • Accessible – discoverable; user-friendly
  • Casual – default asynchronous; at-your-leisure
  • Present – optionally synchronous; in-the-moment
  • Intimate – selectively private/public; closeness by consent
  • what did I miss?

Available soon in a Commune near you...


Groups as both a formal ActivityPub spec and general concept deeply invigorate me. I previously wrote about group-to-group following (FEP-d36d) as the missing glue layer to successfully transition /r/rust to the threadiverse.

Today I wanna talk about what a common implementation of Groups as defined in FEP-1b12 can do for the fediverse at large.

Groups in a nutshell

I recently wrote this post to share my brother's math projects:

A friendly fedizen told me that would be a great place to share this. But how do I share this project specifically to Mathstodon? Except for using the #math hashtag and hoping someone in their midst will see my post and share it on their local feed, there's really no way to do that. That's what groups are for.

If I have the right read on how groups are being implemented in the microblog-paradigm, they're gonna give the local content of an instance's network more structure and discoverability, on an opt-in basis. Threadiverse apps on the other hand specialize in fedi-scale frontpages that aggregate these groups.

Lemmy as a flagship

By far the most popular implementation of ActivityPub Groups to date is Lemmy. It's also unique in its strictly group (boards) centric design.

There is a prior history of groups in the fediverse, existing for a long time in the likes of Hubzilla, Friendica and Streams, all paving the way for what is on track to becoming a default part of the fediverse experience:

Because of its mainstream adoption, I believe Lemmy should be looked to as the canonical interoperability test of any new groups implementation. I say that with the utmost respect for all antecedents of Lemmy-groups. There's a lot of history here that I'm not privvy to; names deserving of much credit. I leave it to the fediverse to patch those gaps in my knowledge as we go, but go we must, and Lemmy is where the action is at.

I'm a big believer in building around where the people are already congregating. Sure, you can always go ahead on your own terms and 'build it and [maybe] they will come'. But a guaranteed way of achieving technical adoption is to go where the people are already at, and ask them what they'd like to see built.

That's what inadvertently happened with Lemmy, which modeled itself after Reddit, a place where lots of people were congregating. As Reddit started imploding, Lemmy happened to be the best idea lying around for digital migrants in search of a more trustworthy alternative to the platform that had betrayed their decade-long loyalty.

While still at the grassroots stage, Lemmy is now very much a place in its own right that you can go visit and decide for yourself if it's somewhere you'd like to stick around in.

I for one am finding myself increasingly at home in the threadiverse. That said, it feels unnecessarily separated from the fediverse which undergirds it.

Talk to your neighbors

One of the most important topics raised on the threadiverse in the past two weeks was titled “Lemmy/Kbin Reinvestment Phase and Recruiting from Mastodon” with distinct discussions on, and

It argues that with the initial migration waves of Twitter and Reddit behind us, the next upswell in community growth could come from within, by means of greater cross-fediverse interoperability.

TL;DR: What I’d like to particularly emphasize here is the focus on Mastodon user recruitment. They are far more likely to both improve the quality of discourse here and contribute to community building than your average reddit user. Not to mention they can already be active from their existing accounts. The barrier for entry is nil. I think a valid strat to go about this is to advertise existing specialized instances to their existing equivalent communities on the microblogging fediverse. This solves both the problems of growing the specialized instances from 0 and making their discourse substantially different enough to warrant specialized instances in the first place. Things like:

#bookstodon to #monsterdon to #climateemergency to #histodon to some equivalent of ask historians (This is probably the only way we’d get the experts needed) Any of the many art tags to

I fully support this growth strategy. However, the barrier to entry is quite a bit higher than nil.

There are pending integration issues on the side of Mastodon and Lemmy respectively. Especially on the Lemmy side there's an ongoing debate regarding the extent to which it should be Mastodon-compatible. I'm strongly in favor, because it strengthens the fediverse network as a whole when content can be doubly amplified. There's a big difference between being able to talk to Mastodon vs behaving like it.

Stubborn holdouts of the increasingly off-putting Twitter/X and Reddit commonly point out how their open source alternatives don't really offer any cool new features. You know what will never happen? Twitter and Reddit being in direct, seamless interaction with one another. Mastodon, Lemmy & friends are at the precipice of a brand new social networking experience defined by app symbiosis.

There's a lot more to be said about everything to be gained from group interop, but I won't belabor the point. I think the advent of groups in Mastodon & co. will inevitably push the status quo forward. In the meantime Kbin is doing an excellent job experimenting with possible interplay between the microblog and forum formats.

Unix-philosophy Everything-app

The ActivityPub protocol is uniquely well suited to realize the kind of “everything app” that WeChat popularized and Elon imagines his “X” to become. But unlike the monocultural borg-like approach of those identity proprietors, an ActivityPub-based everything-app will actually be made up of multiple apps operating in unison, joined together by Juicy Clients.

The convergence of groups across the fediverse is a monumental step closer to this next-gen reality of social network applications.

Friendship is the “killer feature” of the fediverse! 👯

Three months ago I submitted a post to the Rust sub-reddit called Building a better /r/rust together. It quickly rose to the top and garnered 230 comments before the sub went dark along with the bulk of mainline Reddit during the blackout protest.

My call-to-action hailed Lemmy as a fitting successor:

I really love the /r/rust community. As a community manager it's my main portal into the latest happenings of the Rust ecosystem from a high-level point of view primarily focused on project updates rather than technical discourse. This is the only Reddit community I engage directly with; my daily fix of the Reddit frontpage happens strictly via login-less browsing on Apollo, which will soon come to an abrupt end.

This moment in time presents a unique opportunity for this space to claim its independence as a wholly community-owned operation.

Soft-forking Lemmy (...) Given Lemmy's controversial culture, I think it's safest to approach it with a soft-fork mindset. But the degree to which any divergence will actually happen in the code comes down to how amenable the Lemmy team is to upstream changes. I'd love for this to be an exercise in building bridges rather than moats.

In the months since, Lemmy has grown immensely, both in scale and culture:

  • After Mastodon and Misskey, Lemmy has shot up to become the third most popular ActivityPub software in the fediverse:
  • The “threadiverse” (Lemmy + Kbin) counts 100k monthly active users.
  •, the canonical instance run by the Lemmy core devs, has become more diverse and less extreme on the fringes.
  • is by far the biggest instance, providing a healthy counter-balance in the cultural melting pot of the global Lemmy community.
  • The Lemmy devs have welcomed many new contributors on GitHub, demonstrating a highly collaborative disposition.
  • In a recent AMA (sort by Top or read this summary) the pair of core devs lead with openness and alluded to a fairly hands-off approach with regards to the Lemmy/threadiverse community & network at large.
  • Lemmy frontend alternatives are popping off. The excellent Photon recently reached full feature-parity with the official lemmy-ui.

I'm happy to report that a soft-forking initiative seems completely unwarranted at this time. The Lemmy ecosystem is thriving 🌈

From Age of Coordination:

A month after the Reddit exodus, Gizmodo boldly claimed “Reddit won”, because Reddit is still left standing. Similar stories have been written about Twitter vs Mastodon.

This type of analysis repeatedly fails to recognize two crucial factors:

  1. Platforms die with a whimper, not a bang. Digg, the precursor to Reddit, is still around today, it's just not relevant. You can even visit MySpace right now if you'd like, but you won't. Twitter/X may still be operational, but its status as the internet's public square has long since been lost (not that it ever deserved it).

  2. Twitter and Reddit may have only lost a few million users to Mastodon and Lemmy so far, but these are nation-sized numbers, comparable to what Scandinavia is to the United States of America. The incumbents have allowed the fediverse to reach critical mass. It's only gonna get bigger, but it already works well enough that I've no need for any other social network. It's nicer here.

Charting a path for a federated /rust

During the Reddit blackout, a handful of different alternatives to /r/rust gained traction:

So which one should Reddit migrants move to? This is a common predicament and was the 2nd most upvoted question in the aforementioned AMA. Also discussed recently in We should have something like federated communities.

The problem that needs solving was succinctly put in a discussion on Community Grouping:

As a user, I recently wanted to post to AskLemmy. Almost every single instance has their own separate AskLemmy implementation. Naturally, I'd tend to post to the one with the most users. But inherently, I'm missing the majority of users by only being able to post to one. I.E., I posted to (which had 3k users), but by doing that, I'm missing out on the users from, behaw, which in total are far more than 3k.

No one wants to individually subscribe to 5 different versions of AskLemmy, nor do they want to cross post 5 separate times.

This problem will intensify once Groups are supported in Mastodon, Pixelfed and FireFish.

Community Grouping Redux

There are several feature discussions about different forms of community grouping on the Lemmy GitHub. The problem is each discussion has diverged into talking about several distinctly different implementations, making consensus impossible.

To my eye there are three key proposals in play. They are not in opposition to one another and solve different problems.

Client-side group collections

This is the type of grouping Redditors will already be familiar with as 'multireddits'. It's simply a mashup of multiple subs into one stream, like so:

Useful for people who want to curate their own stream-combos, but it doesn't solve for a fragmented Rust stream.

Server-side group syndicates

There's no canonical proposal for this yet, but the general idea is to build some type of consensus mechanism for several subs of a similar flavor to opt into a shared hub. There's a proposal to group by tags, reminiscent of repo tags on GitHub. Another is Sibling Communities.

These are novel ideas worth exploring, but they all present major coordination challenges. The absence of coordination is what brought us to the current state of multiple “competing” Rust subs.

I've talked to some Lemmy-Rust admins and they are in fact eager to coordinate more, but anything that involves advanced administrative procedures is a non-starter.

Group-to-Group following 🌟

At long last, we've arrived at what I firmly believe is the solution for decentralized common-purpose communities like a /rust, /AskFedi or /montreal:

Let ActivityPub groups (Lemmy 'community' or Kbin 'magazine') follow other groups.

The idea appears to have been around for years, but we never had a mainstream use case for it until the threadiverse became a thing. Now we do, and it feels like we're finally about to make use of the untapped superpowers of the ActivityPub protocol! A centralized app like Reddit just couldn't do this.

If groups can opt to effectively federate directly with other groups, they abide by the same network dynamics as the fediverse at large, I.e. cross-network self-moderation by means of (de)federation. No consensus management needed beyond what different instances on the fediverse are already used to, just on a more granular level.

This feature been explained in detail here.

It also exists as a spec draft: FEP-d36d: Sharing Content Across Federated Forums.

And with that, we have a new call-to-action for any fedi-curious Rust developer out there: Implement FEP-d36d for Lemmy. If anyone wants to step up, I recommend centering the discussion about this in the FEP discussion forum where there's less ambiguity about the job to be done, and it'll also be easier to coordinate with parallel implementations in the likes of Kbin.

I can be found on the SocialHub forum, on Mastodon, or on the Discord we originally set up to coordinate 'better /r/rust'. Hopefully there's someone out there who shares my excitement for what can be made possible here!

P.S. Other impactful but less clearly defined Lemmy enhancements include:

If you are running a new open source project that's ready to start its social media presence, I urge you to do it on Mastodon, the default entryway into the fediverse.

Joining the fediverse is a lot like installing your first Linux distro. Nothing is quite as easy as what you're used to; seemingly simple tweaks lead you down deep rabbit holes of community-curated knowledge spread across unofficial wikis and old-school bulletin boards.

But somehow it doesn't feel all that laborious. That's because you didn't install Linux to save time. You entered the world of Linux (or WordPress, Node, Python etc.) because you got the sense that something is happening over there. People who are as annoying as they are clever never seem to shut up about it. And with every obscure new hack you add to your toolbelt, there's a thrilling sense of mastery.

As with the Linux community, when you poke your head into the fediverse you will find the others; your fellow geeks and misfits. Sure, you'll also run into dogma and ignorance like anywhere else, but on the fediverse the cultural status quo isn't determined by a gated top-level management, it's an open ticket labeled 'help wanted'.

Permeating the whole experience is the deeply reassuring certainty that you are considerably more in control of your digital experience than you ever were before you took the leap.

The bird sings a different tune now

It used to be that you had to use Twitter because of its network power and consequent reach. Not so much anymore:

The majority of large open source projects today are still on Twitter/X, but that's because they've already got their audience there and the platform works very hard to keep them locked in.

That's ultimately what it all boils down to: The fediverse isn't a private prison exploiting its inmates for free labor, it's an open landscape of interconnected villages, wherein its inhabitants are free to come and go as they please. Your follows-list is yours to keep forever. You are in control, not that guy.

Shaky first steps

Mastodon is easy and fun except when it isn’t. Just like joining any other open source community for the first time, there's a trial-by-fire to overcome at the beginning as you're implicitly challenged to choose your own adventure.

So why make the effort? Because the fediverse, like open source, is a movement. It runs on the same interoperable internet protocols that enable you to view this HTML document in a standards-based web browser.

Concerning reach, I could point to how networks of (invariably) 100 million users like Tumblr and Threads are committed to federating with the fedi-net (at least the instances that'll allow them to), but I will argue that the 10+ million people already on the fediverse are actually the exact group of nerdy open culture enthusiasts you wanna be reaching out to. As the common startup advice goes (which I can attest also holds true for community building), this is where you'll find the first 10-100 people who love your project.

Twitter might have 20x as many total users, but the number of open software techies on either network feels increasingly even and will keep shifting in favor of Mastodon & friends as the prison-platforms continue to enshittify.

Ride the mammut

The hardest part about entering the fediverse is (1) joining an instance and (2) finding people to follow.

In spite of what some might tell you, which instance you choose does matter. Crucially you do always have the ability to move, even though it's not pain-free. Like the whole ecosystem it's a work-in-progress, and will get easier.

As an open source practitioner I trust you know how to do your own research, but if the prospect of that arduous first step is preventing you from jumping on, just go ahead and join right now.

Operated by the Nivenly foundation, Hachyderm checks all the boxes most OSS folks should care about:

  • Strong track record of uptime and robust infrastructure.
  • Well-funded org with high degree of transparency (i.e. unlikely to go poof).
  • Diverse leadership and community.
  • Tech-leaning but open to all.
  • Highly safety-minded, as most recently evidenced by their Federation Safety Enhancement Project.

As for who to follow, there are a number of things you could do, but I will simply suggest the following: Browse through the #opensource tag and follow 50-100 people therein which you find remotely interesting. That should be enough to get you started. And by favoriting/boosting these people's posts, they'll be made aware of your existence as well. That's the empty timeline problem taken care of.

There's no time like the present; hop on!

§ Article Discussion