Email or username:

Password:

Forgot your password?
Fabio Manganiello

The only question I have after a shallow read of the #ATProtocol (the "specs" behind #Bluesky) is: why?

Why an entirely different protocol? Why not just an extension on top of #ActivityPub?

They wanted a bit more centralized control on top of a decentralized network - not a bunch of geeks running their own servers in the bedroom, but a "marketplace of companies", whatever that means, in charge of distribution and moderation? Fair enough, they are businesses that needs to make money after all.

But then why didn't they go for an extension that simply supports self-certifying data (signed using whatever centralized chain of certificates they want) on top of ActivityPub? The Fediverse and Twitter (or whatever they are going to call whatever they're trying to build now) could have immediately tapped into one another. They could have simply shown posts not certified by their chain as "unauthenticated", and we would have had almost 100% compatibility from day one.

Why a whole new protocol? Why build a new ActivityPub that does the same things as ActivityPub, but just with a layer of self-certification on top? Why call things differently and break compatibility, instead of extending the open standards?

It takes time and resources to build a new protocol, validate it, get developers to adopt it and build stuff on top of it, and add yet more layers of bridges and mappers to/from what exists already. And yes, I know that the alternative approach that I am promoting is exactly that "embrace+extend" that we all know how it ends up. And I'm also aware that are valid arguments to keep the streams separate. But I'm not sure if the best alternative is to let the rest of the world build their own brand of our open protocols (R&D these two balls: these guys are simply repackaging a decade of work on open standards and they are trying to profit from it), while we either keep digging our niches or play a catch-up game with bridges and mappers to the outside world.

atproto.com/docs

5 comments
Juan Luis

@blacklight After reading #ATProto yesterday, and despite it has a looooot of moving parts (some of which are still in its infancy), I think it adds some interesting concepts. For example:

- the use of decentralized IDs + a cryptographically secure mechanism to migrate instances,
- stronger schemas and guarantees for server-to-server communications,
- separation of "small world" and "big world" networking,
- separation of the "speech layer" from the "reach layer"

Juan Luis

@blacklight Whether or not this could have been an extension of #ActivityPub, I have no idea. But I think #ATProto goes well beyond.

It's still yet to see if it's an impossible to implement, overcomplicated mess, or an actual good idea. But dismissing it because it's not an extension of #ActivityPub is short-sighted in my opinion. New ideas also need room for experimentation, and backward compatibility concerns are a drag.

Kat M. Moss

@blacklight dang. I was wondering the same thing when I read through that as of last night. I hope that an AP developer ends up joining the fray over there, because then there might be a chance that the AT Protocol will support AP, or at least be able to communicate with it.

Alexey Skobkin

@blacklight
I didn't read the spec, but from what I heard from first opinions, they want to make user own their identity. In ActivityPub your identity belongs to server you're using. So when you're migrating between the nodes, you're dependent on the will of both servers to say "yeah, that's still him".

Currently Fediverse is like using custodial Bitcoin wallets without having ability to store your keys yourself. You can move from one service to another, but you can't really be sure that your identity is yours.

And it's a problem I saw in the Fediverse long before I heard about BlueSky.
Don't misunderstand me. I'm not very sympathetic to what they're doing. But from what I heard (and I could've hear wrong) they solved one of most important AP problems.

@blacklight
I didn't read the spec, but from what I heard from first opinions, they want to make user own their identity. In ActivityPub your identity belongs to server you're using. So when you're migrating between the nodes, you're dependent on the will of both servers to say "yeah, that's still him".

Go Up