Preview slide from my talk. (Video of the talk will be available online in a month or two, I'll post a link when it's up.)

@darius I've been trying to think of ways that legislation could force decentralisation, but haven't figured it out. Any ideas?

@darius @Wolf480pl I considered for example, could we require that all messaging services/social networks document and publish their APIs for everyone to use but really that wouldn't be enough. It's hard to just say "you have to interoperate"

@ZacharyHerold @darius "you have to interoperate" wouldn't be enough. Gmail interoperates.

@Wolf480pl @darius Far from perfect, but beyond what the legislation I am suggesting would fix. Facebook and co. are the real enemies


I was working to move play by email games to XMPP when Gtalk came and went. Anything that can be centralized, will, and at the worst possible moment

I'm a big fan of using Dat to replace the S3 type storage built into most fediverse server software and thinking of ways to use AP and SSB together provides more joy than "open hardware strawberry milkshake cannon," so please hook me up if you find anyone wanting to talk architecture in that space

@yaaps yes! exactly. would love to talk dat as s3 replacement

Here's the first draft of my architecture document:

This would be much easier to build in Node.js (which I hate for purely subjective reasons) and the existence of such a beast would reduce the user-facing requirements of my Lua version




We have mutuals, so you should be able to see that by surfing from a reference to %i1oMG7guOnWHjVdl4JNdoTzvCz+M1do5uo9cXzG+X4Y=.sha256 in your own food or browsing the #activitypub channel


Umm, feed. Blame autocorrect even though i posted that from the web


why would node.js reduce the user-facing requirements of your Lua version? What am I missing?

See also which has floated by here a few times...


@bhaugen @darius
A Node version of my stack would have access to well maintained libraries for OAuth2 and other ancillary protocols important for interaction with the rest of the fediverse as well as the native libraries for Dat and SSB. If that existed, I'd continue work on YAAPS with more emphasis on backend tooling

And that announcement is *great* news for the Node community. I'm interested in following what they do because package distribution is part of my macro plan

@bhaugen @yaaps @darius just ended up watching that entire talk on my phone. wow that scream for federation at the end was impressive!

@bhaugen @yaaps I believe the beast being referenced is using dat instead of s3, so users don't need to set up s3

@darius "uncentralizable" is such a powerful and important word. which I assume is why the computer is always putting that bold red squiggle beneath it

@aparrish @darius spell check: highlighting your best ideas since 1987

@Transflux something that makes no economic sense to centralize. the example I give is I do a 1 to 3 hour video call with new users on my server

Sign in to participate in the conversation
Friend Camp

The decentralized web is about trust. You should only join Friend Camp if you personally trust Darius Kazemi with your social media data. You probably only have that level of trust if we are IRL friends or have been internet friends for a long time. Generally speaking this is a small, closed community. In the end, Darius is the arbiter of what is allowed here. If you don't have a good idea of the kind of behavior that flies with Darius, again, you probably shouldn't join this instance. In the interest of specificity, we do have a code of conduct and privacy policy which you should read.

Friend Camp features several modifications that were requested by our users.

  • you can log in via any subdomain, which means you can log in to multiple accounts in the same browser session (for example, log in once on and then as another user on
  • they are no longer called "toots", they are now "posts"
  • if you have a locked account and you get a follow request, a reminder appears under your "post" button (on normal Mastodon mobile it is otherwise buried in a sub-menu and you might not see it for a long time)
  • the emoji dropdown is a neutral smiley face instead of the cry-laughing smiley
  • @mentions are rendered as "@user" for a Friend Camp user and "@user@domain" for remote users. This helps clear up when you follow two people who have the same username on different servers.
  • there is a "never ask me again" checkbox on the confirmation for clearing your notifications -- more info here
  • images in a CW'ed post are collapsed behind the CW. When you expand the CW, you can see the whole image immediately. more info here
  • When an mp3 link is in a post, we also embed an inline mp3 player. git commit here
  • 500 characters of profile text git commit here, requested by @deerful

Important Bit from the Privacy Docs

If you want decent privacy (the info doesn't leave this server), the only way to do that is to set your account to private, only accept friend requests from other users, and only ever @ mention other users. Once you start talking to people on other servers, all bets are off. Any private message you send to someone on another server could be looked at by the admin of a different server. This is kind of like email: if you are on a private email server, and you send an unencrypted email to a gmail account, congrats, Google now has the content of that email. But also, you do this every day, so, hey. The internet!

Our beautiful icon is based on photo3idea_studio from, licensed CC 3.0 BY. It has been modified by!