Hacker Newsnew | past | comments | ask | show | jobs | submitlogin
Why isn't Bluesky a peer-to-peer network? (pfrazee.com)
204 points by jakebsky on Jan 22, 2024 | hide | past | favorite | 161 comments


I just love how Bluesky devs get hung up on technical details like this and nobody seems to be concerned in the slightest how to position Bluesky as an actual product in the current market let alone pay for it in the long run. The end user doesn't care if it's federated or peer-to-peer if you ultimately end up seeing Ads anyway and it's still controlled by a single group just like Twitter.


> slightest how to position Bluesky as an actual product in the current market

they kinda already did

through the initial media coverage and the people involved a lot of current still-somewhat X/Twitter user think of it as Twitter 2.0 and plan to go there ones it's more finalized/ready

mainly as far as I can tell there are a lot of people stuck on Twitter which do not like it anymore for various reasons but need something with decent discoverability which mastodon seems to not have so well

so if they manage to deliver in that area I would think they have a "not so small" user base already secured

but we will see


Maybe in June that was true, once Threads came out and got way more users and became a thing people think of as Twitter 2.0 I’d argue their position became much less secure. Nobody is waiting when Threads already exists.


I'd argue nobody is waiting at all. A tiny fraction of users split off to tiny communities on Mastodon with next to no traffic (probably exact what they wanted, to be fair), Threads would be dying if it wasn't propped up by Instagram, and everyone else remained happily on Twitter.

Or do we have a good reason to believe the active user counts posted by Elon and others are fake?


not fakes (through I don't trust Musk to be non-deceptive)

but there is a huge difference between "active user who wants to use it" and "active user who wants to not use it but due to network effects can't"

It's kinda a similar situation like with Facebook (and just Facebook, not Meta in general).

- they have some loyal groups (e.g. Facebook people broadly around 60 and older)

- they lost any interest (and much goodwill) from many other groups

- but due the various network effects many of the "lost interest" people still have it and might still count as active users depending on definition of active (but in practice they are passive not active users, unwilling to spend money on it, unwilling to give it any information about themself and not necessary the best ad targets either as there is a risk of you company being associated with "that annoying thing they would which to just discard".

Just with the difference that with Twitter most of the "passive" users are still active because they haven't found an alternative to be active on YET


I submit it’s under-noted: many people want very different venues for generating an audience than for consuming information/content, a phenomena that’s gone some kind of parabolic since there started being serious money in being an influencer.

You see this in the way high-ish follower count folks are constantly pruning their follows to signal some kind of ratio. I guess that signal produces some outcome.

HN’s staying power as just about the best forum of remotely general interest might have a lot to do with there not being followers (along with a crack team of elite mods and other things). You can rack up karma but it’s a side quest, join date matters a bit on a boundary condition, but mostly there’s not really any raw fame factor outside a few hyper-famous folks.

I wonder if there’s any scalability past HN size on that.


idk. at least in my cycle no one uses Threads or cares about it, including the people I referred to which hope for a Twitter 2.0 somewhere

it doesn't help that Threads through their action already kinda made it clear that their compatibility with mastodon and co. falls in the "embrace extend extinguish" category

and just by the fact that Threads is from Meta it can't be Twitter 2.0, to many people refuse to use meta products of any kind as much as possible as they fundamentally do not trust Meta at all


Yeah but isn't threads basically dead now?

I think the core issue is that despite how stupid and shitty it's become and seems intent on continuing to become, Twitter is still Twitter and Twitter users don't want BlueSky or Threads, they want Twitter which is still Twitter despite Elon and co's best efforts.

Also the ability for users to fact-check ads is still hilarious and entertaining which almost offsets the amount of ads.


I'd argue Twitter is dying - DAU is dropping from its peak due to it's increasingly toxic environment and CEO who pushes conspiracy theories and extreme viewpoints and crucially, advertisers are leaving Twitter


I agree it seems to be dying monetary wise, the way Musk bought it put too much of a profit burden on a company which already had issues with profitability.

It also seem to be dying user wise outside of some communities, but I think it's will be like the death of Facebook. Slow, and due to network effects never complete. Through it has much less network effects then Facebook had (no family main communication, old now distant friend main communication etc.).


I don't use Facebook nor Threads so maybe I'm mistaken, but isn't Facebook Wall equivalent to Twitter timeline in the first place?


> I just love how Bluesky devs get hung up on technical details like this and nobody seems to be concerned in the slightest how to position Bluesky as an actual product in the current market

Well, this is a positioning of Bluesky in the market: they position Bluesky as an attractive product for users who are interested and knowledgable about technological topics. I guess if they have an initial user base of this group, and this group loves the product, they will take the next step and analyze how to grow from this to a larger group of (potential) users.


It's actually even less successful if that's the metric. The people who care about how it works are mostly on Masto. BlueSky has a dedicated user base, but it's not among protocol nerds.


> It's actually even less successful if that's the metric.

BlueSky was founded October 2021, while Mastadon exists since 2016. The latter thus had lot more time to get traction. :-)


idk, I find the protocol itself to be the most interesting aspect of BlueSky, it seems to be better designed than ActivityPub at this point.


I tried Bluesky for a few days though, and I was unable to find any technological content on the site. Literally 90% of what I could find was furry porn and rage-bait. If that's their goal, they've failed and need to start over.


>Literally 90% of what I could find was furry porn and rage-bait.

I feel like this is a recognizable genre of comment. I consider myself a big time Mastodon supporter and am proud to be an evangelist for it. One thing you would see in HN comment threads were these first time users claiming all the content was X where X was something very unusual, extreme, and the claims regarding what that extreme thing was would be completely all over the map. They would also be subjective, hard to prove or disprove, but also way out of line with my personal experience and the experience of others who had used Mastodon for anything beyond a trial period.

It looks like we're getting the same version of this type of comment now, except it's for Blue Sky. I've used the app on my phone and computer, followed a few people, followed a handful of discovery feeds. I can't really prove anything here, but I think whether it's Mastodon, whether it's Blue Sky, whether it's Lemmy, I feel like the most outrageous and unreliable comments have tended to be the genre of "skeptical new user sharing their first impression" style comments, which make broad brush claims as to what "most" of the content is on a given platform.

I'm not even a fan of Blue Sky for numerous reasons I won't get into here, but I've had an account for, perhaps a few months now, but, as I often find myself saying when it comes to new platforms, it is not at all my experience that I'm seeing furry porn and rage bait. If there's any one thing noticeably unique in my experience so far, it's the general lowered temperature you feel in your feed compared to Twitter.


I think that's because it's a hard to grow a new community. I don't think that makes it invalid. The primary reason people look for a new platform seems to be because their behavior wasn't accepted on more mainstream platforms.

Lemmy has some content problems, but I haven't ever noticed it nearly as bad. Mastodon is somewhere in between, but at least there's some good stuff there. Threads is definitely the chillest microblog platform but feels a bit too artificial at times. I would personally take Twitter, even at its current state, over Blue Sky all day long.


From what I can tell Bluesky doesn't have an algorithm. It just seems to show you the posts/reposts from the people you follow in chronological order.


A big selling point of Bluesky is algorithmic choice. There are three default feeds, one is "following" which is exactly what you said. If you swipe to the right you get "Discover" which is a lot like the "For You" Twitter feed. Finally there is "Popular With Friends" which is what it says on the tin.

If you don't like those, anyone can develop a feed algorithm and anyone can subscribe to it, so you can have topic based feeds like "Science" or you can have feeds that just change the way the feed behaves like "OnlyPosts", which is the following feed but with no reposts or replies.


I don't follow anyone though. I don't know anyone using Bluesky, and I have been unable to find anyone worth following in any feed.


so... what exactly IS Bluesky good at then?


It's good at showing you the posts from the people you follow. The quality of your feed is entirely up to you.


That's exactly what Twitter does. Why is this a differentiating feature?


Has this changed recently? When I was on Twitter a few years ago I often missed posts from my friends because the algorithm didn't show them to me. Same when I posted, often my friends didn't see it.


Fewer Nazis in your replies is the big one.


NSFW content is disabled by default and you can't ever see it unless you go out of your way to enable it.


I don't understand why it has to be a "product" with a "market". Mastodon (and old-school forums) have shown that as long as you can cover the hosting costs of an instance, you can have social media without the bad incentives that giant centralized networks have.

The lesson of the past 15 years is that creating a "global town hall" with hundreds of millions of daily users doesn't guarantee profitability. So why not decentralize and try to go small and local, like the phpBB forums that are still chugging along?


and that the linked post is a lengthy apologia for the network having an incredibly obvious unremovable central point of control even as they pretend it doesn't.

Centralisation is a feature in social networks: being able to find your friends is the very first thing. But don't then pretend you aren't.

Every now and then I post to Bluesky asking: so what's the loadout for Bluesky? How many servers does it take to run this thing? What would it take to run my own?

These questions never quite seem to get answered or documented that I could find.

A "PDS" is a reasonable Ubuntu box. They seem unable to admit what it takes to run the rest, though.


Sorry, can you explain what unremovable central point of control you're referring to?


Looking at the federation architecture[0] shows that the network is inherently reliant on using a relay (or BGS - basically it's a giant data gathering server that generates the "external timeline" for applications using ATproto) - it's not possible for two PDSes to directly connect with one another (since a PDS does not store data from external users, but a relay does), which means that if a large relay falls apart, the entire part of that network goes down with it.

Similarly, if a relay decides to nullroute you, you are functionally up on shitcreek, which because it's all handled by the relay is way worse than getting a Mastodon instance filtered.

If we use a torrent analogy, it's not possible to use Bluesky/ATproto with DHT/peer discovery, you're required to connect to a tracker who then decides who you can peer with.

(Relatedly, AcitivityPub also supports the use of relays for discovery, but doesn't require them. It's just not often used because they tend to be a moderation firehose.)

[0]: https://blueskyweb.xyz/blog/5-5-2023-federation-architecture


Relays aren't hard-coded and PDSes are encouraged to connect to as many relays as they want. They are essentially network busses that help reduce the combinatorial explosion of connections between nodes. It is entirely possible for PDSes to connect directly to each other if they're so inclined.


It's still a notable bit of centralization present in the protocol - from the documentation presented, it's obvious that moreso than any other "node" in the software, if the relay breaks, that entire chunk of the network stops working. A PDS, a labeler or a feed generator vanishing means very little for the network on the whole, while the relay vanishing causes everything to fall apart.

Similarly, the fact Bluesky is offering a PDS implementation for self-hosting[0] but not a relay[1] tells me that hosting a relay is more than a non-trivial matter, although I'd love to be proven wrong there.

[0]: https://github.com/bluesky-social/pds

[1]: Well, outside of literally deploying Blueskys own implementation - https://github.com/bluesky-social/indigo/tree/main/cmd/bigsk... .


FYI the person you're replying to is the author of the post and a Bluesky dev


I just noticed that, thanks! Adjusted the tone a slight amount to be a bit more direct.


> nobody seems to be concerned in the slightest how to position Bluesky as an actual product

I thought it was already positioned as a Twitter competitor with the aim to make it harder to censor. Its aim is to replace Twitter.


Harder to censor isn't exactly the goal. Harder to capture is. The point is to make social media providers replaceable so that users are able to express a choice. We do this already with the feed algorithms, which are predominantly third-party services within the community. As the rest of the protocol wraps, hosting and application services will be able to do the same.


> The point is to make social media providers replaceable

And how is that a sustainable business?


The same way that any healthy market with competition is. The companies providing good services are sustainable, while those unable or unwilling to compete aren't.


Any healthy market with competition builds a wall of vendor lock-in. The aim is always easy to adopt hard to walk away from.


Not paying close attention but I thought the problem being fixed was that twitter was a business and blustery is designed as a protocol.


"How could a business succeed without trapping its customers?"


> Twitter competitor with the aim to make it harder to censor

This problem has already been solved by Telegram.

You will never get censorship-free anything if there's money to be made by making it not so. Bluesky, Nostr, all these non-Twitter Twitters will also cater to advertiser needs as soon as VC money enters the picture.


[flagged]


Who?


Jack Dorsey. Isn't that when they were censoring news stories?


Jack Dorsey started BlueSky / the AT protocol, but has left to greener pastures: Nostr


Oh, I did not know.


[flagged]


To the best of my knowledge, and further evidenced from some of Elon's leaked texts from last year, Jack Dorsey has always been an adamant defender of free speech. Advertisers and the government were probably the two largest forces driving censorship at the company.


I think that's right. He did appoint people who were definitely very comfortable censoring things, but he might've not been aware. When I've seen him in interviews, he doesn't seem especially aware in general!


Code it and they will come!

But you're right however this is HN not WSJ.


Literally my first thought seeing this headline was "oh my god who cares".

Bluesky is dead as a product.


What I like about Bluesky is that your identity is a hostname.

So you can just use your own domain for example.

What I don't understand is why the bsky.social service (which holds most user accounts at the moment) doesn't redirect http requests to ones profile. Then you could just say "I'm https://gnod.bsky.social on bluesky". Instead of "I'm https://bsky.app/profile/gnod.bsky.social on bluesky".

Maybe they don't want to make bsky.social very convenient so people have more incentive to use their own domain. Or there is some other thought behind it. I don't know.


Oh no that's a solid idea. It's just on the TODOs.


Isn’t this the same thing classic OpenID did? And didn’t OpenID define delegation, so that you could give your own URL and still end up using a provider-specific login? Are they going to end up rediscovering all the problems and solutions OpenID did?


What problems did OpenID face. It definitely looks bit risky but I can't think of any concrete problem.


OpenID faced the problem of an underdefined spec, causing every OpenID provider to do things just different enough for them to not be portable with one another.

Which is why OID withered away in favor of just implementing the biggest social media login used by your audience (Google, Microsoft, Twitter, Facebook and if your audience includes gamers, Steam) and relying on that instead.


The problem I see with this idea is that if people using the default xxx.bsky.social starts to effectively use it as a direct HTTPS link to their profile, it will largely de-incentivize to use your own domain (and thus be able to easily switch provider) because you would lose this behavior since the domain you use is already your personal web page or blog or whatever, it won't be a direct link to your Bluesky profile.

A way around this issue would be for users to create a specific subdomain for their Bluesky handle (like @bsky.example.net instead of @example.net) but that defeats the purpose in term of "branding", shortness of the handle, etc.


FWIW, the people I've seen use xxxxx.com as their Bluesky handle are using bsky.xxxxx.com as their redirect. Bluesky supports redirects via CNAME records, so it's definitely a supported idea to redirect from your domain to Bluesky.

https://bsky.app/profile/jacob.gold/post/3kh6re46yd42k


Oh okay, that's nice! I just tried and indeed just by setting a CNAME record now https://bsky.p4bl0.net/ redirects to my Bluesky profile while my handle is still @p4bl0.net rather than @bsky.p4bl0.net. Neat trick.


Domains are a rare and expensive resource, that also happens to get hijacked by spammers all the time when somebody forgets to pay their bills. It's not even possible to buy a domain permanently. Meanwhile if you stick to just a hostname portion of a domain, you at the whim of whoever owns the domain, which is exactly the problem that has plagued the Internet for all its existence.

We should just stick to public keys and forget about the domain name system if we ever want to actually improve the situations instead of just reinventing Twitter and Facebook by another name. It's endlessly frustrating how long public keys have been around and how little use they still get. Finger crossed that Nostr gets some traction, since that so far sounds like the most sensible approach towards a social network that is under the controls of the users themselves and nobody else.


> Domains are a rare and expensive resource,

Compared to what? IPv4 addresses are more rare and more expensive, for comparison.

Besides, public keys are great for uniqueness, and that they're relatively cheap, but that also means they're hard to remember (compared to domains) and they're easy for spammers to get.

Basically, neither domains nor keys solve Zooko's Triangle by themselves, and probably the ideal solution uses both and more to enable something that is decentralized, easy to remember and also secure.


> but that also means they're hard to remember

Nobody remembers domain names either, that's what we have search engines for. The point of public keys is that they give the user something they own completely themselves and that their peers can verify. All the human-readable stuff can be implemented on top of that, e.g. if you wanna use domain names, put the public key into your DNS record. But you aren't forced to use domain names, you can send your keys around by mail if you prefer or put them in your Instgram bio.

The most important part here is that this works towards a "Web as data structure". Everything that is based around domain names will fall apart in a few months or years when those domain names expire, links go dead constantly. Everything that is build around crypto can last forever, as the storage location becomes irrelevant.

We already saw the benefits of this approach back with Usenet, where large parts of it could be reconstructed from random backup tapes, since everything was held together by globally unique message ids. Usenet didn't use crypto for this, but just depended on users behaving nicely, so that approach wouldn't work today, but it could be replicated with public key crypto in a very similar and more robust way.


Public keys are completely meaningless to an average user. They mean nothing and thus there's no reason to keep them consistent. Not to mention it's impossible to type or say them


> Then you could just say "I'm https://gnod.bsky.social on bluesky"

or simply gnod.bsky.social as https is the default protocol on browsers.


Interesting to see the footnote at the end about enterprise/consortium blockchain systems. I designed one of the more popular one of those. If you've got questions Paul feel free to email me.

Naturally I'm very biased, but I wouldn't say they were all developed merely so companies could have a blockchain strategy. Certainly just keeping up with the Joneses was a motivation for some of the middle/upper executives who sponsored some of the apps built on those platforms, just like it is for AI now, and was for XML back in the day. But there were also actual real business problems worked out in detail, with people who genuinely wanted to solve them and saw a chance to use blockchain hype as a Schelling point to coordinate large numbers of companies to collaborate better. And real apps have been developed and shipped on these, that provide at business value.

It'd probably be interesting to write about some of these systems from a purely technical perspective, as a decentralised database engine, because the underlying protocols and designs are pretty interesting and (at least in Corda's case) quite powerful too.


Yes! This would be a super interesting post.

Do you have a blog/twitter/bluesky (hah)/anything that I could use to get notified if you write anything on this topic?



NAT and firewalls, the trillion dollar hacks that break the Internet and require massive investments in central systems to do what endpoints could simply do if they networked together. (Trillion dollar because that’s probably what they really cost in lost efficiency, at least.)

Systems to defeat these exist: ICE/WebRTC, ZeroTier, Tailscale, dozens of other protocols I can’t recall, but they all add overhead and require coordination. There are also many of these systems which means there is no standard. There is no equivalent to TCP/IP that is universally available that works around the ugly hacks we have used to destroy the potential of the Internet.

It would be doable if everything were a desktop or a laptop, but most people use casual apps like Bluesky on phones. Phones have huge limits mostly around battery life. An always on P2P app on a phone will keep radios from sleeping and reduce battery life up to 50%. It’s also a problem for people who have crummy metered mobile plans. Firewalls require keepalive every 15 seconds or so or traversal must be done all over again, which means continuous chatter just to keep peer to peer links available.

If phones could just call each other without executing what amounts to a coordinated attack against middleboxes in the way, low power peer to peer might be feasible. You could do things like time synchronize so peers sync at designated times and the radios sleep the rest of the time. But we can’t have nice things.

All the heterogeneity and complexity in the Bluesky protocol exists to work around this. Without NAT and firewalls all you would need is maybe directory servers to find people and something to do the equivalent of dynamic DNS for when IPs change. That’s it.


Connection establishment is only a tiny portion of the blockers that stopped us from using P2P, as I discussed in the post


I don't think we necessarily need a single protocol to "win", but I will say the Bluesky/ATProto folks seem the most pragmatic when compared to the ActivityPub and nostr communities.


We need some of these things to evolve and interoperate. Nostr is nice but a bit stuck being a crypto block chain thingy for people who are really into that. It has no user base worth speaking off outside that crowd. Bluesky is mainly a thing that people talk about rather than join. And it has the Twitter founder backing it, which means it gets a lot of people at least a bit curious.

Mastodon is a bit like email. Not great but it works right now and is reasonably easy to get into and integrate with. The feddiverse is bigger than Mastodon. But it's mainly Mastodon. And Threads soon apparently. Millions of people daily active on it. Not quite critical mass yet but closer than most other things have gotten since Twitter started imploding. Good enough?

IMHO mastodon with signed content and per user key pairs would make a lot of sense and it should not be that hard to add it. Why is this not a thing? Just like using pgp makes a lot of sense for email. Except that never happened either. Already when I started using email in the mid nineties, some people were insisting on using pgp. That's thirty years ago and it was only some people. It remains very uncommon for people to use that. Key management is an obstacle. Techies get it. Everybody else doesn't.


> Nostr is nice but a bit stuck being a crypto block chain thingy for people who are really into that

Just to be clear, nostr doesn't directly require the blockchain for anything. It has a nice integration with lightning payments, but that's optional.

> Bluesky is mainly a thing that people talk about rather than join. And it has the Twitter founder backing it

Pretty sure that's not really true anymore. Jack Dorsey has apparently moved on to nostr, interestingly enough.

> IMHO mastodon with signed content and per user key pairs would make a lot of sense and it should not be that hard to add it. Why is this not a thing?

There's some work in this area[0], but I agree it's surprising this wasn't baked into the protocol from the beginning. Same thing with signed requests. Things have de facto evolved in that directly, but we seem stuck at a local optima using a 5yo version of the HTTP signatures spec (see discussion here[1]), which is really confusing for new implementors as well.

Ultimately I think a lot has been learned from implementing ActivityPub in the wild, but I feel it badly needs a version 2.0, and even then I'm not convinced all the most important lessons have been learned yet. For example, it's very concerning to me that Mastodon still doesn't provide an easy way to bring your own domain to any instance.

[0]: https://codeberg.org/fediverse/fep/src/branch/main/fep/8b32/...

[1]: https://socialhub.activitypub.rocks/t/state-of-http-signatur...


> Mastodon is a bit like email. Not great but it works right now and is reasonably easy to get into and integrate with. The feddiverse is bigger than Mastodon. But it's mainly Mastodon. And Threads soon apparently. Millions of people daily active on it. Not quite critical mass yet but closer than most other things have gotten since Twitter started imploding. Good enough?

For what?


> Mastodon is a bit like email. Not great but it works right now and is reasonably easy to get into and integrate with.

I mean, that's basically the story of the internet as a whole; a teetering tower of "eh, not great, but it'll do for now", since the 80s.


Nostr is full of bitcoiners, who hate "crypto block chain" stuff more than the average person.

There are active efforts to bring other groups to nostr- check out nos.social for example.


I gather that bitcoin people are currently on a kind of PR campaign to differentiate themselves from 'crypto', but to be clear, to anyone outside that niche, bitcoin is crypto.


I understand that a given domain's nuances are often lost to those with no domain knowledge, yes.


I have a hard time seeing how Bluesky/ATProto is more pragmatic than Nostr. Can you elaborate?


Note that I specifically was comparing communities, not protocols. I actually think ActivityPub is pretty solid, though it's also the one I have the most experience with.

Two of my main grievances with the communities both have to do with identity:

ActivityPub as implemented in the wild doesn't make it easy to migrate your identity between instances. This has caused endless problems and drama with instances shutting down. You also have to use multiple accounts if you want to interact with different formats, ie Mastodon vs Lemmy vs PeerTube. As a user that seems pretty ridiculous. You're losing a huge portion of the advantages of federation. IMO a better model would be for you to create a single account on a universal ActivityPub server that supports all data types. Apps like Mastodon would act as clients, not servers. My reading of the specs makes me think this was the original intention (there is a client to server "C2S" protocol), but then Mastodon got big and no one ended up implementing the C2S protocol, treating Mastodon as the de facto C2S API.

Note there is some work to create these universal servers[0], but I wouldn't hold my breath on Mastodon/Lemmy/etc implementing the C2S protocol.

As for nostr, private key management is a complete non-starter for identity, barring some major new breakthrough. DNS is the pragmatic solution to identity.

[0]: https://codeberg.org/Vocata/vocata


I'm interested in this too. While I note the (slightly chaotic) plethora of NIPs[0], and many of them look blockchainy, NIP-01 looks ultra pragmatic, simple, and flexible for a bunch of possibilities, and is the only one that is required[1] to be implemented.

[0] https://github.com/nostr-protocol/nips#list

[1] https://nostr.com/the-protocol/nips


I had initially forgotten that I had registered for Bluesky and even had it installed on my phone. When I signed up, I was intrigued by the notion of something novel in this space. So the I launched the app the other day, only to find that it seemed like a less efficient and slower version of Twitter. I couldn't identify any hints or nods toward potential future product innovations or features that would justify my continued use of Bluesky...or anyone's for that matter. I'm likely overlooking some aspect of its functionality. Does anyone have more information or insights to share?


I think the main selling point is that it's a slower version of Twitter. I'm not sure what you mean by "less efficient" but I definitely know I don't want Twitter to do whatever it does more efficiently.


Haha well you might not want it to, but if you're a user of such a service, you probably do want it to do what you're there for efficiently


I will say that Mastodon actually does this quite well... they key challenge is lack of US adoption, which means whole US centric interest groups (like AI/LLMs) aren't on it. But if you're in, for instance, German hacker spaces, it's a perfectly passable Twitter alternative with actual working federation.


The challenge to Mastodon isn't adoption, its absense is a symptom of a deeper issue: it's a Very Bad Idea to trust random server operators with both your data and it's sovereignty.

You can take your data to another server only if the original server is up. When the admin forgets to pay the bill and ISP nukes the box and the backups admin said they had don't exist and the coadmin turns out to have no access at all, you lose everything. Ask me how I know.

Self hosting in theory should fix this but it doesn't: it's a resource intensive afterthought because the developers only really care about their Big Instance.


Why isn't ActivityPub more peer-to-peer? Like, it's all in a few dominant nodes (eg: mastodon). Shouldn't it be 1000s of little nodes (community) or individual publishers?


According to this page, there are 20k+ active nodes on the fediverse: https://fediverse.observer/stats


Thanks for this link! I wonder why France and Germany have 6 and 8 times as many servers as the UK.

Mind you, per capita France and Germany also have way more servers than the USA. Interesting.


For one, Mastodon's author is from Germany, but I don't think that has a lot of impact.

What definitely does is that the major European server providers tend to be located in one of those two countries (like OVH or Hetzner). Note that server location != user location, users could be anywhere in Europe without a noticeable latency.

Doesn't make any sense for me to pay for a server located in my country when I can find one in Germany with an order of magnitude better performance for the price.


Also, I think a couple of the major white-label Mastodon hosting services live on Hetzner and/or OVH.


I assume it’s a mix of cheap Hetzner/OVH, a bigger inclination for decentralisation and privacy, and an early adopter mindset.

They lead many tech stats per capita. Another example is the amount of French and German wikipedia pages, patents, research, internet penetration, renewable energy …

A shame that the focus on car manufacturing for so long cannibalised the software business. I think it could have been a software powerhouse, but was/is not focussing at all on it outside of some shining outliers.


I don't have the data to support it but I think Germans in general care a whole lot more about privacy than any other country


Hetzner is in Germany, not sure about France.


my guess is OVH


Maybe French and German users have lower standards for good UX.


So tired of this take. There are so many frontends, besides just the built-in interfaces for Mastodon, Misskey, Pleroma there's also web-based frontends like Elk and Enafore, and tons of different native apps on mobile.


From my perspective, the biggest barrier to entry for federated services right now is the fact that right up front, before you've ever even used the network, you have to make this massive decision with no real information to base the decision off of: namely which server to use.

That's the main reason I'm not on it personally: It feels lame to just join the biggest instance, but none of the smaller instances really seem to "click", and I'm not really so keen that I want to run my own instance.

Having One Obvious Choice to join to begin with is the best thing federated services can do to encourage wider adoption.


The Fediverse died when the largest instance in the world blocked the second && third largest mostly occupied by Japanese users, as well as the one created for American alt-right(the last of which being demanded by Apple/Google). The top 3 still holds 15% each of total Mastodon traffic.

Last I checked, the Western or European parts of Fediverse had since been trying hard to distance, obscure, dilute and fight Japanese anime content, without much success. I suspect that's where your felt barrier comes from.


> Last I checked, the Western or European parts of Fediverse had since been trying hard to distance, obscure, dilute and fight Japanese anime content, without much success.

For others reading this, numpad0 means pedophilic anime content.


Thanks for the clarification, was very confused on why people would feel so strongly about anime


This is also kind of how the conversation went, though. Each sides drew a line on the sand each and two crossed at a steep angle. The European side said that's impossible and the conversation ended.

It was also clear that the European parts were pretty upset, if not felt threatened, about the volume and growth of Japanese users. They came in numbers, they speak languages most don't understand, they post content most aren't interested in, they themselves aren't interested in following European laws -

well, that kind of sound like certain kinds of problem that happens IRL...

e: also, however anyone frames it, it won’t change the fact that they put a lot of effort to keep networks segragated and fractured, rather than the whole unified and distributed.


> you have to make this massive decision with no real information to base the decision off of: namely which server to use.

I think people exaggerate how massive a decision this is. When the news that Twitter might be bought by a naughty melon broke, I revived an old mastodon.online account that I'd created back during a _previous_ Twitter scandal, used that for a bit, then moved to mastodon.ie. Moving is, generally, reasonably easy. Now there are edge-cases; your instance might just _go away_, say. But generally you can't go too far wrong by initially selecting one of the big ones and then moving as and when.


> Now there are edge-cases; your instance might just _go away_, say.

That's only an "edge case" if you don't actually gaf about maintaining your account URI/content/social graph/etc. over time. "The Fediverse" is a bad joke.


If it's of huge concern to you, then go for either one of the big reliable instances, or your own instance, yeah.


I'm having trouble following, because the biggest instance would be the 'One Obvious Choice', but that choice seems lame to you? What could federated services do that would make the obvious choice not feel lame?

The decision isn't really that massive, a lot of users have alt accounts on different servers and it's not that difficult to migrate between them.


> it's not that difficult to migrate between them.

If you've never used the fediverse before, you don't really know that, do you? I've heard of the "move your account" functionality before, but I don't really think until today I had anyone say to me, "Look, don't worry too much about which server you choose to start out with -- just pick one, because it's super-easy to switch later if you want to try a different one."

> What could federated services do that would make the obvious choice not feel lame?

I admit this is an inconsistency on my part, and probably only limited to people a lot like me: on the one hand, the whole promise of federation is that you can avoid massive centralization; so joining the One Biggest Instance seems kind of pointless. On the other hand, I don't want to join a random small instance which may not be well-maintained; and I don't want to join an instance which is going to pigeon-hole me ("A mastodon instance for developers!" "A mastodon instance for Christians!").

There are different parts of my brain that all want different things, each of which vetoes any particular decision. But this is very much what the "paradox of choice" is about: in many cases, having more options makes you less happy.

I do think it was good that Mastodon embraced this in a way that earlier federated options didn't (e.g., I believe at some point diaspora stopped new sign-ups to their main instance to "encourage federation"; from my perspecitve it encouraged was people to go elsewhere.)

So "what could federated services do better" to solve the paradox of choice? Nothing as far as I can tell -- if you want more choice, you're going to have the paradox of choice; Mastodon at least has already done the only thing I can think of which mitigates it somewhat.


> I don't really think until today I had anyone say to me, "Look, don't worry too much about which server you choose to start out with -- just pick one, because it's super-easy to switch later if you want to try a different one."

I think that's fair, the resources around joining don't make this particularly clear. Part of the problem is that 'Mastodon' as an organization is not very invested in making this widely known, they would rather people stick with the easy choice because they run mastodon.social. For people who are already on the network it's pretty well understood.

It is listed on this page, at the very bottom (facepalm) - https://joinmastodon.org/servers

This is a better resource if you want more information on it - https://fedi.tips/transferring-your-mastodon-account-to-anot...

I do think there's a paradox of choice issue going on and I can understand why that makes it more intimidating to try it out. One thing that I wish was more widely known is that you can just create an account on multiple servers. If you're not sure you'll like the vibe of a server, create an account and try it, you can either migrate that account or delete it if you decide that server isn't for you. I hope this perspective might make people feel more curiosity and less decision paralysis, it's not a problem to have alt accounts.


>> I don't really think until today I had anyone say to me, "Look, don't worry too much about which server you choose to start out with -- just pick one, because it's super-easy to switch later if you want to try a different one."

> I think that's fair, the resources around joining don't make this particularly clear.

It's also not actually super-easy to switch later.


It's fairly easy, it could be better but it's like three steps. Switching away from any other social media in comparison is monumental.


Mastodon isn't a single node, it's a service that runs on many independently operated nodes.


And it sucks.


Activitypub does have many very small nodes, very few very large nodes, and few medium sized ones. A lot of this is people wanting to be on the same server that their friends are on (even if there aren't that many advantages to it), and just that structurally, running a largeish server is more cost- and time-effective per user.

It'll be interesting to (if that ever happens) see whether bluesky, once it actually becomes a decentralized system instead of a closed one, shakes out differently due to protocol differences, or broadly follows the same patterns.


> It'll be interesting to (if that ever happens) see whether bluesky, once it actually becomes a decentralized system instead of a closed one,

If*


What I’ve found from running my own mastodon server is that while self-hosting is a very nice idea to control your own account and manage your own timeline (specifically, choosing who to defederate with), there is a fundamental flaw with it.

Everything must be copied over to your server first. Let me say that again: You only see data that is stored on your local instance.

So likes, profiles, replies, etc are all very limited, since your server only stores them from people you follow (since you’re the only user).

Not only this, but this works in reverse aswell. Only servers that know of your existence will see your posts. If no one is following you, only people (and people on their server) you directly reply to will see your posts.

As such, being in a self-hosted instance or small community can be extremely isolating and make it hard to really network with other people outside of the circle that is already around you.


Running a node is a cost.


That's what I do, at least @MiguelX413@pleroma.miguelcr.me


Just to trot out the cynical devil's advocate for half a moment, a) because normies don't care and b) we want to own the namespacing.


Does bluesky even federate (or whatever they call it) yet?

Last i saw it still relied entirely on a single central relay.


No. And it probably never will.


We spent a lot of time delaying open release to finish building federation. If that doesn’t signal our commitment to it, I don’t know what will


Is there any plan for (or thinking about) an AT-ActivityPub bridge within Bluesky?


So, if I want to be uncharitable, you have PDS servers which are basically web servers with a signed Atom feed, and "Big Graph Servers" which are basically search engines indexing only those servers and giving their own algorithms, right ?

Couldn't we make this with existing tech ? Having your own user id as your own domain is easy when everyone is on Bluesky but can already be done today. What's missing ?


"The indie hacker spirit was strong in the NodeJS & Web community in 2014.

A couple of things then happened all at once:

DJB's NaCl became widely available, and, with it, more compact public keys"

NaCl was widely available in 2011. (Maybe as early as 2008 TBH.)

What came in 2013 was that someone took djb's concise presentation of the code and added some cruft to make it palatable to a wider audience.


I wish there was a version of this that stooped to a slightly lower technical level, or linked elsewhere to where I might learn more. Given that the tech is relatively novel, are there many other friendly writeups like this?


The actual specification (https://atproto.com/guides/overview) is relatively compact and quite readable.


What do you think of Keet?


I haven't checked in on them lately but it's by the crew I worked with on Dat and Beaker. I tried the early demo and thought they did a great job with the application, and I know they've continued to make break-throughs on the hole-punching tech (in fact they rebranded to Holepunch).

They're really talented folks so if you have any interested in p2p comms, I'd give them a look. https://keet.io


Would it be correct to call Bluesky a "federated multi-cloud"?


I'm really not sure. I talked a bit at the end of the post about my ambivalence about the term federation for the networking model.


No worries. We faced some of the the same choices when we were designing the Windows 10 Delivery Optimization service. We initially based it off the Bittorrent protocol with a modified BEP30. I think MSDN just says "Cloud Managed". ;)


What problem is Bluesky trying to solve?


It's what Reddit was to Digg.


More like Google+ to Facebook.


They literally don't know.


Trump being banned from Twitter. That was literally why Jack Dorsey seeded this thing and hired these particular ex-cryptocurrency guys. He wanted a network where people couldn't be completely banned.

(Since then the network attracted a userbase that laughed Jack off the site for vaccine denialism, so lol)


I can't speak to Jack's thinking, but none of that tracks with how the team thinks, or is motivated by, or has built. My current work focus is on a moderation system which we've been designing from the start, and which includes both moderation by the application providers and the community.

If you want to see my personal views on the matter, you can watch a talk I gave prior to joining the project: https://www.youtube.com/watch?v=ULFj714_Vvo


An additional thought-

The decentralization community has never been unified in its views, and a fair number of people have worked on these projects together with different personal motives. What tends to be the common denominator is a concern about unchecked power.

My perspective is that it's it's unavoidable to assign authority -- systems that claim to remove authority actually just obscure it -- and that it's more important to ensure the system has constrain power, creates transparency, and maintains the ability to reassign authority when the current operators lose trust. Ideally, this helps build trust in the people who do run a given system, while they're the ones with the job.


I mean, that seems in line with general free speech principles, really; you’re allowed say whatever you like, but also others are allowed point and say “that person is saying something stupid”. Part 2 here sometimes seems to upset some ‘free speech’ advocates, but it really is part and parcel of the whole thing.


Yeah no. I remember when the US "accidentally" bombed Al Jazeera. Think it was Afghanistan but it could be Iraq. Whatever the point stands:

Everyone loves free speech until somebody says something they don't like. Basic human behaviour.


I think that's basic social behavior these days but I don't know if its basic human behavior. Maybe I'm just an outlier, but I honestly can't think of a time when I wanted to silence someone because I disagreed with their opinion.

Say whatever you want, no one else should be able to stop that. And yes, unfortunately that opens the door for people to say things that a vast majority of us would disagree with to the point of thinking it dangerous. Unfortunately that's the price for free speech, drawing a line through a sea of gray area is an impossible task.


You are an outlier. I'm with you, but I think it's important to recognize that we are a very very tiny minority


Jack being bored.


The author compares this model to the web, but it also sounds something like GitHub, but with more cryptography. Users publish their own repositories, but you still need big, expensive services to index it all and help people find each other.

Currently the BlueSky search engine is pretty bad; it only goes back a few hours. If you don't post for a day, none of your posts will be found. Searching on obscure terms doesn't work very well.


Don't look at our search service as deeply correlated to the indexing model. That's not the point of the comparison, and our search service is quite subpar. We've only had time to put an ElasticSearch instance against the data, do some basic tuning, and then keep it online while we focus elsewhere.


> you still need big, expensive services to help people find each other

No, you really don't.


The BlueSky architecture takes it for granted that you do. That's why they split up "personal data servers" and relays (fka "big graph service")

If you have 10 million people all spread out across small servers, how do you suggest I find everyone posting a particular hashtag?


Links worked well enough for the web, Google just came along and painted a picture of being able to find whatever you want whenever you want it.

Social graphs can offer a similar discoverability without search. You see what those you follow post, comment on, like, share, etc. Following tags just like you follow a person also works well. Before assuming we must have to have massive indexing and searching services, ask yourself whether you really need to be able to discover anything that anyone around the world posts, regardless of whether you have any sort of connection to that person, their context, their society, or their culture.


Hmmm. I'm sympathetic to this perspective, I've sketched ideas for social media that was more "friends of friends" oriented (specifically I want to have a platform based around collections of media - I create a collection, upload some pdfs and videos and markdown files etc, and start serving those via torrent. Peers that happen to place the same file in their own collections suddenly become co-seeders. I want to see "what other collections does this file appear in" and make friends that way. I feel like limewire used to work like this, you find someone with a grateful dead bootleg and wonder, what other files are they serving? I also use ebay kinda like this, find an interesting item and look at "sellers others items")

Anyway, I agree that a social graph has the potential to offer human-scale and $5-VPS-scale discoverability. The problem is probably with user expectation and network effect. How do you get people to use the thing when no one is using it yet, to bootstrap to the point where you might actually bump into someone with the same niche interest as you. Still, it could start with small communities same way telegram group chats and discord servers do. You just have to bring the people to you instead of just trying to index the firehose of global content.


You or I might not on a given day depending on our particular limited purposes, but the greater world around us absolutely does.


I'm actually curious, what's a use case that really makes the broader system better by being able to discover content from anyone, anywhere?

The best I can come up with is a historical record. Beyond that I'm at a loss for a use case that is noticeably better with search compared to social graph-based discovery.


How do you propose to see all of this without downloading that info?


I'm not quite sure what you mean, sorry.

My point was that something like BlueSky can make content more discoverable by letting you build your own social graph and view content from those you're connected to.

Search is most useful for discovering content that you otherwise have no connection to at all. There is also the historical aspect and there really isn't a way around that, but in the original context of finding people actively talking about a specific topic it isn't a necessarily must-have feature.


Right my point is you’re basically describing a search engine and that requires constant downloads and storage for it. Any useful graph that comes close to current social media levels of discoverability is going to require lots of storage.

Otherwise you’re talking about a simple feed on someone else’s computer delivered to you and this defeats the purpose of federalization.


We must be talking about slightly different things here. Sure the data all has to be stored somewhere, but I'm not arguing for everyone to have a local copy of all of Twitter just so they can search it.

I wasn't pushing for federalization at all, and honestly its a bad fit for anything similar to social networks IMO. Federalization doesn't work well if the goal is universal reach, why federate the network graph when you still want to access all data on the network? The fediverse won't work at scale, the sheer amount of data duplication and network traffic would be insane. Even if we could somehow find a way to handle all the traffic, it sure seems like that would fly in the face of environmental efforts so many are onboard with (storage and bandwidth aren't cheap at that scale).


I appreciate the history because I've been through all of it.

But, I don't think you guys are right. You can have a distributed system that also has authenticated posts. It's been done before, and it will be done again.

And you can delete things. You just gotta trust nodes to also delete them and they probably won't.

And I'm totally willing to help you guys build it. I know, you don't want me to work for you guys because I work at California-based company at the mall. But I assure you, I can get you guys over this little obstacle you've discovered.

Call me! I'll answer 773-510-8601. Or the usual channels.


The distributed web works (worked?) because search engines had economic incentives to help users discover content, thanks to ads and they invested a lot of resources, which culminated in Google.

I still have to see a distributed social network which works well enough for end users. It's not simple if you're centralising everything, no wonder distributed alternatives are hard to come by.


Sounds like they’ve found a solution to this problem that they’re happy with. Why not do it the way they’re doing it?


Good point!


how are you doing peer discovery on bogbook? Do I have to find a contact's public key out-of-band before syncing their messages?


Correct. But it's possible to iterate over a set of messages and make thoughtful recommendations about who you may want to discover.


In the current version there are messages exchanged between currently connected users as well.




Guidelines | FAQ | Lists | API | Security | Legal | Apply to YC | Contact

Search: