Hacker Newsnew | past | comments | ask | show | jobs | submit | chokolad's commentslogin

> split Soviet debt obligations, etc on a case by case basis.

What split of Soviet debt obligations? Russia took over all Soviet foreign debt, as well as all the foreign assets


> Your typical compact SUVs is in the upper $20k range.

Your typical base model compact SUVs start in upper $20K range. Your typical compact SUV usually lands somewhere in the 30s.


You're right. My prices were a few years off. Still, nowhere near the $50k mark.


spaces do not use relays. The sync protocol is pull from PDS. https://dholms.leaflet.pub/3mqtqvjidqs2p


So it's a central server and doesn't benefit from being ATP as it can be anything you want.


> Interesting, never heard 'Nikolasha' once

It's archaic, used in Peter I times. Modern one is Kolya


> It’s not more painful because there’s plenty of alternatives for activitypub instances, but only one bluesky.

No, there is not. There is blacksky, northsky, eurosky. They all display the data from your PDS.


I'm already running my own RSS reader, Matrix server, Mastodon instance, etc. How do I run my own appview? They surely have a git repo, docker images and helm chart, right? And if I can't self-host it, surely every local computer club should be able to, as they are with all the other protocols?


You can trivially host an appview for your atproto app on your own. I have a hobby atproto app, and I host an appview for it. I mean — an “appview” literally just means “a server with a database that ingests stuff from the network”. It’s not some mysterious thing or some concrete distribution. It just means you’re aggregating stuff into your database.

It’s just as cheap as hosting any webapp.

But what you’re asking is not that. You seem to be saying “I want to host my own Bluesky appview”. That’s resource-intensive for the same reason “I want to host my own Twitter backend” is expensive. It has nothing to do with the protocol! If you want to host a database application server that stores gigabytes of data from millions of users forever, you’re gonna have to pay for that. This isn’t some kind of gotcha with the protocol, it’s just common sense.

That’s the “instance brain” from my article. You’re used to the shape where the only thing you can host is a “isolated copy of the same app that only deals with a few users”. But that’s not the atproto topology! What atproto lets you host is the real thing. Like a second real Twitter app that “just works” with all existing users. That’s the value proposition here. Or — if you’re not actually in the mood to host a product with millions of users — you can make your own app that has nothing to do with Bluesky. And of course your own app aggregating its own data would be cheap to host because it won’t be aggregating millions of records.

Do you see the disconnect? Atproto allows competition at big scale — actually forking real products — which AP doesn’t do in principle. But you’re using this ability as a knock again atproto. Atproto scales arbitrarily up, so you take the highest scaled up example you can think of (Bluesky app with all its users and posts) and compare it to the cost of running the most scaled down version of AP (an isolated app for some people).

To make the comparison fair, we’d need to scale atproto down in your example. You can definitely achieve scale identical to Mastodon (and thus identical in costs) by taking the Bluesky app server and adding custom logic which ignores all events that aren’t relevant to some hardcoded lists of users (your “member list”) or people they follow. That would be an accurate comparison, and yes, you could totally host that.

People don’t do that because it’s kinda niche. Maybe it would be nice if there were ready-to-go distributions of Bluesky appview that do this kind of filtering. But also — it’s just kind of a non-goal for most developers on the platform. Most developers create their own different apps, rather than host alternate projections of the Bluesky content of the whole world.


Say bluesky is applying content moderation techniques I disagree with.

What steps do I have to follow to get the majority of users to see my content?

Another example. Let's define decentralisation in terms of bus factor:

How many companies could go bust today before most users would notice?

> To make the comparison fair

Okay, so let's build that, then we can actually talk about building a decentralized network on atproto.

How do I build a relay that fetched all content from people I follow, plus all replies to those posts (no matter who sent them), plus automated backfilling if I click on the profile of someone who I'm not following yet?

From what I understand, in bluesky the PDS does not know about replies to a post. So I'd need to scrape the entire network anyway, no matter what, even if I only store some of it.

And every blue-stodon instance would have to scrape every single PDS. So it's a much much worse O(n²) issue, isn't it?


> And every blue-stodon instance would have to scrape every single PDS. So it's a much much worse O(n²) issue, isn't it?

They could rely on some relays to build their AppViews. The flexibility is already there.


I feel like you're missing the point of a decentralized protocol if at every step you suggest to use centralized services instead.


You can self host every component in the stack. You can create a new one for your use case.


And then once you've self-hosted ever component in the stack, you have one (1) Mastodon instance equivalent :)


Yes and no, it could scale to the whole ATProto user base.


Scaling is not useful if that's not your goal


A mastodon instance is not useful if that's not your goal lol


Why lol? If you only want to scale to a few dozen or a few hundred or even a few thousand folks, a Mastodon instance is fine. You don't have to scale to the whole world.


> What steps do I have to follow to get the majority of users to see my content?

You can’t “get” the majority of the people to see anything, that’s not how anything works. Neither on centralized systems, nor on Mastodon, nor in real life.

On a centralized platform, if you get banned, there are no steps you can take. Your account is down — goodbye.

On a Mastodon instance, there are also no steps you can take. Your account is banned on the instance — your entire identity goes down with it.

On atproto, it depend on whether you’re banned at hosting or app level.

If you get banned at hosting level (usually something clearly illegal would trigger this), you’d have to find another hosting (assuming apps haven’t banned you too).

If you get banned at an app level, people will see you through different apps. You’re right that this presupposes that there are apps that (1) people use, that (2) haven’t banned you, (3) and that display the same type of content.

But, even if you’re looking from solely censorship resistance perspective, atproto at least enables competition in moderation space to happen. If enough people disagree with the lens, it is possible to build a an alternative lens over the network.

This isn’t theoretical — there was a situation like this where a person got banned at Bluesky app, but the Blacksky community wanted to reverse the decision. When Blacksky got an independent app database running, they overrode it. But yes, this does require investment and a subset of community being interested in alternative moderation / features / etc. You can’t “force” people to hear you but there’s a market for alternatives.

> How do I build a relay that fetched all content from people I follow, plus all replies to those posts (no matter who sent them), plus automated backfilling if I click on the profile of someone who I'm not following yet?

The realtime part is trivial. You just filter the stream of everything as it comes in.

Backfill would either require you to index the network yourself or to rely on existing indexes. You could use Constellation (https://constellation.microcosm.blue/) to fill up threads (query by thread root ID), and you’d hit the user’s PDS to fill up their profile page.

You could actually see that in practice now at https://reddwarf.whey.party/ which my article links to. It’s a Bluesky client that doesn’t have a server at all (and doesn’t hit Bluesky API). It’s lazily getting stuff on the client purely from PDS’s and from Constellation. It’s a bit slower than an appview-backed experience but it works fine.


> On a Mastodon instance, there are also no steps you can take. Your account is banned on the instance — your entire identity goes down with it.

> On atproto, it depend on whether you’re banned at hosting or app level.

> If you get banned at hosting level (usually something clearly illegal would trigger this), you’d have to find another hosting (assuming apps haven’t banned you too).

This isn't as different as you make it sound. Most people on AT Proto are using Bluesky, so "getting banned" is fundamentally the same for them as getting banned from a Mastodon instance. Conversely, you can just run your own Mastodon instance and the only thing you'd have to worry about is defederation (an "appview ban").


> On a Mastodon instance, there are also no steps you can take. Your account is banned on the instance — your entire identity goes down with it.

You're constantly looking at it from the wrong perspective. I don't care about the instance I'm on banning me because I am the one that hosts my instance.

What I care about is that I am able to connect with any of my friends without the data going through any central arbiter that can decide what we get to see or not.

And on mastodon, if one instance defederates from me, pretty much everyone else will still be able to interact with me anyway, it's not the end.


> So all the censor needs to do is cut off one host? And then you upload everything to different host and connect that?

Which host?


If that becomes a massive problem - host a relay with different moderation policy.


The scale-down floor for running an ATProto relay or appview is much, much higher than the floor for running a fediverse instance.


You can scale down as much as you want. You don't need to run full relay if you want to follow only a dozen of accounts. I bet you can run something like that on a raspberry pi or something similar. You will not get the search over all of the network, but that's something you don't get with your personal mastodon instances either.


Wouldn't you then not be able to see replies from anyone besides the dozen accounts your relay follows too? If I run a personal Mastodon instance and someone replies to one of my posts, their instance will send it directly to mine and I'll see it. My understanding of the ATProto architecture is that it doesn't support directed messaging like that.


The cost for consuming the firehose of the entire network is very low. So the actual cost that can blow up is storage and computation.

If you want to filter for events based on some heuristic (e.g. only from follows of server list), you can do that. You can then specialize that further. E.g. for ongoing threads that already pass your filter, you could add their IDs to an array, and accept all replies for those threads as well into your DB.

You already get a stream of everything so you can scale down what you write to DB to exactly the characteristics you need. Including keeping threads cohesive.


To refer back to the comment I was replying to: is that the sort of thing you could realistically run on a raspberry pi? At home?


Yeah! In fact some popular ecosystem services are (or at least have been) running on Raspberry Pi. See here: https://bsky.bad-example.com/can-atproto-scale-down/

Also the best algorithmic “For You” feed on the app runs off someone’s gaming computer at home


Since sync 1.1 last year, you can run a relay on a relatively small VPS


Why is that a problem if you can host relay for $50 per month as TFA mentions?


> Maybe because doing that would show that there are in fact "instances" in atproto, but who knows?

I wonder why you are vagueposting here instead of stating your position firmly. Maybe because you are afraid to be shown wrong, but who knows ?


you can add netclaw to your list


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

Search: