I love Mastodon and ActivityPub. But I think Nostr is going to win. Here's why.

Mastodon is a great platform. I have an account there, and I have been using it as a twitter replacement for several months. I have been using nostr for around two months. I have also read fairly deeply into how Mastodon and Nostr work. I think nostr is better. Here’s why.

Background:

Mastodon and Nostr offer basically the same thing: a federated/decentralized replacement to twitter. They share the same basic features: tweeting, following people, a public square w/ trending notes and hashtags moderated by instance rules, DMs.

Mastodon/Lemmy/Kbin all federate through an underlying protocol called ActivityPub. You create an account at an instance which you use to interact with these sites. Your instance can push/pull data to other instances via the AP protocol.

Nostr is an underlying protocol, like ActivityPub. The main service is hosts currently, called Nostr, is a twitter clone, but there’s other stuff like a video streaming platform. They all federate with each other just like Mastodon/Lemmy/Kbin. There is no reddit clone on nostr yet, but I imagine it’s only a matter of time.

Instead of “instances”, nostr has “relays”. The app or site you connect to nostr through will usually connect to multiple relays (just like your mastodon instance will connect to multiple other instances). Relays, like instances, have their own moderation policies and can choose what kind of content they allow.

Here’s why I think nostr simply works better:

  • In mastodon your identity is tied to your instance, in nostr it’s not. If your instance decides to close up? You have to make a new account somewhere else. You lose all your followers, the list of who you follow, your tweets, your DMs, etc. This sucks. This happened to me early in my mastodon experience. It was annoying, but it would be way more annoying if I had spent five years building up that account.
  • In mastodon, your instance can stop you from seeing content from other instances and ban users from other instances. It can stop you from following them or being followed by them. While this moderation might be nice sometimes, I’d rather it be opt-in than mandatory. Nostr relays don’t have this power. Nostr doesn’t allow this because you are usually connected to multiple relays. While a single relay can do this (as each relay sets its own policies), as long as one relay you are connected to lets the data flow, you are good to go.
  • In mastodon, admins can read your DMs. If you DM somebody on another instance, that’s two instances that can read your DMs, and so can anybody who breaks into their server. In nostr, all DMs are encrypted by default and can only be read by the intended recipient.
  • If mastodon and fediverse’s goals are to create a P2P or federated network of instances, having users tied to instances is not good. It incentivizes users to pick bigger, more stable instances which will lead to centralization over time.

A question of funding

One question that fediverse needs to solve is: how are we going to fund hosting costs for instances and more broadly, development?

There are many valid options such as: ads on instances, selling “badges” or awards like reddit, subscriptions for extra features, etc. What is not a sustainable plan, imo, is just hoping users donate enough to keep things afloat. Open source and free software projects have a long history of being underfunded leading to them closing up shop or not reaching their full potential. Nostr at least has a potential answer for this, while AP/fedi don’t really seem to yet.

Nostr has an optional built-in tipping functionality where you can leave tips for users whose content you like. You can tip a fraction of a penny or $100. And users can tip you. This has a few effects. For one, it incentivizes people to use nostr. Non-profit orgs, for example, can use it to fundraise.

Secondly, it provides a sustainable funding mechanisms for relays and development. When you make a tip, it goes through your “tip pool” and you can select people or entities to give a % of every tip to. So, for example, you can leave a 10c tip on a tweet and 1c automatically goes to the relay operator.

Where Mastodon/AP is better:

  • Mastodon has more people I want to follow. There is a greater user base and diversity.
  • Mastodon has a more consistent interface. Pretty much every mastodon site looks the same. Nostr has a dizzying array of apps and web portals. That’s great for user choice, not great for user onboarding.
  • While nostr relays in theory can filter content and cultivate public squares with specific sets of values, I’ve found in practice this hasn’t been done as much, most relays seem the same. I think in time as the user base grows this will happen organically, there’s just little reason to separate them out now.
  • Password recovery/account loss. With nostr, your identity is a private key generated by your client. This means your identity isn’t tied to an instance (yay!). But, if you lose the private key, you lose your identity and have to make a new one. Likewise, if somebody steals your key, they can post as you. And there is no real password recovery functionality since nobody else has your password. There are good technical solutions for this like social account recovery and key revocation certificates but they aren’t currently implemented. I imagine they will be with time.
  • Mastodon/Lemmy/Kbin/etc can all talk to each other through ActivityPub. While Nostr’s underlying protocol supports this kind of federation, the twitter clone is the main platform with users on it and it doesn’t have a reddit clone etc.
  • The AP username format of username@website.com is much better than nostrs long public keys. There are some nostr protocol proposals to make this better, some of which are out there and working, but it’s not really standardized yet.

Adding an edit about moderation since there is a lot of confusion about this:

Moderation abilities in AP and Nostr from an admin perspective are identical.

  • As a relay operator in nostr, you choose what kind of content your relay accepts. You can block users, filter content based on keywords, de-federate from other instances with weak moderation policies, etc. Same as being an instance admin on AP.
  • As a user, you can choose relays which provide you with a good “public square” experience free of bigots, NSFW, or other content you don’t want to see. It’s your choice, same as AP. Most users are connected to multiple relays. You can connect to only one in if you want.

The key difference in moderation is that in AP if your instance blocks a user or relay, it is blocked for all their users globally. This means you as a user can’t keep following or DMing somebody whose username or relay has been blocked unless you make a new account on a different instance and check it separately. On nostr, as a user, this is not a problem. If you disagree with that moderation decision you just add a different relay to your list, as long one relay in your list of relays connects to that user, the data will flow and you will get to see it. It will remain blocked on the relay which blocked them and for users connected to it (if they are only connected to that relay, or if all their other relays also block that user/defederate from that instance).

It’s the best of both worlds: relay operators can set their own moderation policies and vibes and choose which other relays they federate with, users have the freedom to use multiple relays to access the content they want and the freedom to choose which relays they use based on what kind of content they allow.

TORFdot0,

Nostr is really good at the one thing AP struggled with, which is identity portability.

That being said, I feel like the challenges that nostr has (the network effect, association with crypto bros, private key recovery and human readable account linking) are bigger hurdles than what AP has to overcome

I still think there is room for both to operate and a market niche for bridging services for those who want to follow people on both protocols

r00ty,
@r00ty@kbin.life avatar

Here's why I think activitypub is probably better.

Having multiple instances, hundreds or even thousands, spreads the load of the network. Smaller instances can curate the communities they want to subscribe to in order to limit traffic and storage. Communities can be hosted across the network too to reduce load on single instances.

This means that when things are done well, we could produce and serve reddit/twitter levels of content and availability on hobbyist level hosting options spread across the world.

makeasnek,
@makeasnek@lemmy.ml avatar

Nostr does all that too.

r00ty,
@r00ty@kbin.life avatar

But then what is a relay? See if a relay doesn't hold an account and cannot ban/moderate directly content they serve then what's exactly happening?

I also wonder if it's a bit of a legal minefield. See I'm running mbin here. I get content from many other mbin/kbin/lemmy instances. Usually they have pretty good moderation and content is removed on my instance too. But, if someone raises a legal complaint with me directly, I'm required to act on that and moderate on my own instance. Which I can do. It seems like you're suggesting that's not directly possible with nostr? So if the main instance chooses to allow it, then it's tough luck for me, I am required to host it?

cupcakezealot,
@cupcakezealot@lemmy.blahaj.zone avatar

bluesky has a much better chance nostr which most people don’t even know about

Nighed,
@Nighed@sffa.community avatar

Yeh, it’s all the network effect. Where people go will, generally be where they continue to go.

That’s why threads was dangerous (and may still be) to and more grassroots federated options

flamingos,
@flamingos@ukfli.uk avatar

This assumes platforms win based on technical details, which they don’t. Mastodon will probably ‘win’ (whatever that means) because of network effects and general culture.

Nostr has an optional built-in tipping functionality where you can leave tips for users whose content you like. You can tip a fraction of a penny or $100. And users can tip you. This has a few effects. For one, it incentivizes people to use nostr. Non-profit orgs, for example, can use it to fundraise.

But user have to be technically minded enough, and willing, to set up a crypto wallet to do this.

In mastodon, admins can read your DMs. If you DM somebody on another instance, that’s two instances that can read your DMs, and so can anybody who breaks into their server. In nostr, all DMs are encrypted by default and can only be read by the intended recipient.

E2E encryption is possible with AP. Besides, if what you’re talking about needs to be unreadable to third parties, you should probably use something like Matrix or Signal, especially considering how bad Mastodon’s DMs actually are.

makeasnek,
@makeasnek@lemmy.ml avatar

But user have to be technically minded enough, and willing, to set up a crypto wallet to do this.

True. That would be true of any platform which allows tips, you’d have to connect to some source of money whether it be paypal or crypto. Paypal’s fees would be prohibitively expensive but it would be theoretically doable. Either way, it’s a <5 minute setup process if they care to do it.

Interesting I didn’t know AP supported E2E. I guess it’s Mastodon that doesn’t support that element of the AP protocol then?

flamingos,
@flamingos@ukfli.uk avatar

True. That would be true of any platform which allows tips, you’d have to connect to some source of money whether it be paypal or crypto. Paypal’s fees would be prohibitively expensive but it would be theoretically doable. Either way, it’s a <5 minute setup process if they care to do it.

But people already have Paypal and understand how to use it. Most people don’t understand cryptocurrency, and don’t want anything to do with it because of its association with scams.

Interesting I didn’t know AP supported E2E. I guess it’s Mastodon that doesn’t support that element of the AP protocol then?

Here’s the issue.

Also, I looked in to Nostr a bit for this and do you seriously think profile links like this will catch on with people?

primal.net/…/460c25e682fda7832b52d1f22d3d22b3176d…

Say what you want about AP, but usernames like <(at) makeasnek (at) lemmy.ml> are at least memorable. How am I suppose to tell someone IRL about my Nostr profile, say of a 64 bit string out loud?

halm,
@halm@leminal.space avatar

Most people don’t understand cryptocurrency, and don’t want anything to do with it because of its association with scams

This is exactly why I won’t touch Nostr or any blockchain project with a ten foot pole. The crypto Bros are really trying to legitimise the technology so one day they can use the Monopoly money they stashed away.

I’m sad that this connection is only mentioned in a third level comment, potential users should be aware what they’re getting into with Nostr.

Candelestine,

Sounds like a fantastic option for folks that don’t like any mandatorily enforced censorship.

They should all go there.

YurkshireLad,

They are, it’s full of crypto folk and not much else.

makeasnek,
@makeasnek@lemmy.ml avatar

The default setup for snort (most popular nostr portal) blocks all crypto-related discussion by default. The crypto bro problem was apparently worse back in the early launch days, but it’s gotten much better.

halm,
@halm@leminal.space avatar

Every time non-techies start adopting a blockchain project, the crypto bros win. Nobody else. The “crypto bro problem” is baked into Nostr, it’s called blockchain.

Draconic_NEO,
@Draconic_NEO@lemmy.world avatar

Don’t forget about the alt-right trolls and conspiracy theorists, they love it there because nobody can ban or censor them from there. On Nostr these people run wild.

YurkshireLad,

Yeah, you’re right. I completely forgot about the conspiracy theorists etc.

Interesting tech, shame about the content.

ada,
@ada@lemmy.blahaj.zone avatar

In mastodon, your instance can stop you from seeing content from other instances and ban users from other instances. While this moderation might be nice sometimes, I’d rather it be opt-in than mandatory. Nostr relays don’t have this power. Likewise, Mastodon instances can stop their followers from following you. Nostr doesn’t allow this.

This is exactly why I won’t use Nostr. What you’re describing here isn’t ideal for many folk that are part of marginalised groups. When each individual has to individually block every bigot only after being exposed to their bigotry, then the vulnerable folk don’t hang around. This is doubly the case when there is nothing stopping the bigots from just creating another account after burning their first one.

One question that fediverse needs to solve is: how are we going to fund hosting costs for instances and more broadly, development?

This is also something that activitypub communities do better, because they are communities not relays.

makeasnek,
@makeasnek@lemmy.ml avatar

This is exactly why I won’t use Nostr. What you’re describing here isn’t ideal for many folk that are part of marginalised groups. When each individual has to individually block every bigot only after being exposed to their bigotry, then the vulnerable folk don’t hang around. This is doubly the case when there is nothing stopping the bigots from just creating another account after burning their first one.

In Nostr, each relay can set its own policies. Relays can and do establish policies for acceptable behaviours. If you want a strict content policy, connect to relays with strict policies. You won’t have to individually block any users or relays/instances. This is essentially the same as mastodon. The difference with nostr is that you normally connect to multiple relays, so a single relay, where your identity is tied to, cannot block you from following who you want and seeing whatever content you choose. Let’s say Relay A blocks a user you want to follow. No problem, you are connected to relay B and C that don’t. And, of course, if for some reason you only want to connect to a single relay, you can.

This is also something that activitypub communities do better, because they are communities not relays.

“Hope our commmunity of users donate” didn’t work out well for the previous iteration of P2P discussion spaces: forums. The fact is, hosting online discussion forums gets costly quickly, especially if you want them to be reliable. Hell, even IRC servers which serve only text can get expensive to host. I’m not saying there’s no way to convince users to donate to valuable instances, just saying that as a general strategy for FOSS it hasn’t worked particularly well.

ada,
@ada@lemmy.blahaj.zone avatar

In Nostr, each relay can set its own policies. Relays can and do establish policies for acceptable behaviours.

Sure, but it’s still each relay admin playing whack a mole with bigots as they pop up with new accounts.

On AP, because identities are tied to instances, the instance admin can kick the bigot and they’re gone for everyone, before many folk ever see it. And if there is an instance with admins that don’t deal with bigots, the admins can defederate from the entire instance.

Nostr doesn’t give you any of those options. An instance is just a generic relay. No community, no differentiation, no protection for vulnerable folk. Which is fine if your goal is “free speech” but not so good if you’re a member of a vulnerable minority just trying to connect with people/communities without having to be super on guard.

I left twitter to get away from an environment like that. I’m not going to head back to a federated version of the same thing

The fact is, hosting online discussion forums gets costly quickly, especially if you want them to be reliable.

Absolutely. I admin several AP instances, including the one I’m posting from now. We have crowd funding to help, but we are still out of pocket running it, but that’s fine, because the reason we run it is for the whole community aspect I’ve been talking about.

I have zero interest in paying out of pocket to run a generic relay that will probably end up being used by the very people I’m trying to avoid.

makeasnek,
@makeasnek@lemmy.ml avatar

On AP, because identities are tied to instances, the instance admin can kick the bigot and they’re gone for everyone, before many folk ever see it. And if there is an instance with admins that don’t deal with bigots, the admins can defederate from the entire instance.

Same with Nostr. Relay admins can ban users and relays who don’t have good moderation. The difference is, if you don’t agree with that ban, as a user you can: connect to other relays and route around it (so you can still follow/be followed by/DM your person/relay of choice) AND keep using that original relay because you like the content on it (if they banned another user, not if they banned you). And there’s no need to make a whole new account at another instance, login to it separately, etc.

In Nostr, your relay gets to make and enforce it’s own content policies just as easily as it does on AP. They are literally the same in this regard.

ada,
@ada@lemmy.blahaj.zone avatar

In Nostr, your relay gets to make and enforce it’s own content policies just as easily as it does on AP

And yet they don’t.

If you as a user can connect to multiple relays, then most people will do that, making the act of an admin banning a bigot on one relay pointless, because the bigot will still get through on other relays, and once they’re blocked on enough relays, they’ll just make another throw away account. Which means most admins won’t bother acting except in the most egregious cases, leaving it up to the users to deal with their own blocks.

I agree, there needs to be an answer here that lets people keep their identities tied to them rather than an instance, but the nostr approach isn’t it. It just leads to everyone for themselves, which is fine for some people, but it’s exactly what many other folk were trying to escape by coming to the fediverse in the first place.

  • All
  • Subscribed
  • Moderated
  • Favorites
  • fediverse@lemmy.world
  • fightinggames
  • All magazines