@BeAware Oh I know they will be Fediverse features, that's why I mentioned them. They clearly come from the idea of content discovery and account portability which are ATProto features.
Whitewind, Smoke Signals, Deck Blue, etc. are a good start but we should see more (and more polished) options soon. Right now you can spin up your own PDS, your own Appview, and if you really want to, your own Event Log services. It's moving really fast. It's not just Bluesky anymore.
I agree 100% that the harassment suffered by so many developers is a disgrace. It's mostly the Mastodon culture that is doing a lot of damage to AP. It's the main thing that has been driving me away from ActivityPub recently. I'm at the point where I'll probably go all in on atproto. Doing some proof of concept kind of stuff right now.
Posts
-
I’m now convinced that it’s a good thing that we have both #ActivityPub and #ATProto. -
I’m now convinced that it’s a good thing that we have both #ActivityPub and #ATProto.I’m now convinced that it’s a good thing that we have both #ActivityPub and #ATProto. Competition and cross-pollination will make both better and bridges are essential. Mastodon’s Fediscovery and W3C LOLA portability are clear examples.
-
I compared the architectures of AT Protocol (Bluesky) and ActivityPub (Mastodon, etc.)You can see the tradeoffs between complexity and: - The ability to get a global view of the network.I’m now convinced that it’s a good thing that we have both #ActivityPub and #ATProto. Competition and cross-pollination will make both better and bridges are essential. Mastodon’s Fediscovery and W3C LOLA portability are clear examples.
-
I compared the architectures of AT Protocol (Bluesky) and ActivityPub (Mastodon, etc.)You can see the tradeoffs between complexity and: - The ability to get a global view of the network.@JustinH @mackuba @boris they're two different things. In AP the instance is both your Appview and your data repo. If you lose one you lose the other e.g. your instance has a catastrophic failure and you can't recover the database (it's happened to many Mastodon admins).
In atproto the Appview and the data repo are two different things, possibly hosted by different parties, including yourself. This decoupling has many advantages, already covered in this thread. For more info please refer to the documentation on each protocol and for a deeper dive feel free to consult the existing literature on Kappa architecture. -
I compared the architectures of AT Protocol (Bluesky) and ActivityPub (Mastodon, etc.)You can see the tradeoffs between complexity and: - The ability to get a global view of the network.@JustinH @mackuba @boris no, Mastodon doesn’t work that way. If your instance shuts down or suspends your account then your account is gone. If you use Bluesky with your own PDS and Bluesky shuts down you still have your account and data. Also, you don’t need to host your own App View to host your own PDS.
-
I compared the architectures of AT Protocol (Bluesky) and ActivityPub (Mastodon, etc.)You can see the tradeoffs between complexity and: - The ability to get a global view of the network.@JustinH @mackuba @boris something really cool is that if you keep a local copy of your data along with your private recovery key and the PDS you use shuts down or suspends you, you can set up your own PDS and use your recovery key to update the DID registry to point to your new PDS in addition to uploading your data to it. No cooperation from your old PDS needed.
-
I compared the architectures of AT Protocol (Bluesky) and ActivityPub (Mastodon, etc.)You can see the tradeoffs between complexity and: - The ability to get a global view of the network.@JustinH @mackuba @boris in the diagram you can find a good summary of what you get out of having your own PDS: All your data (including your private signing key) is there, under your control. No instance can decide to nuke your account by banning you or shutting down unexpectedly. This benefit applies even if you use someone else's PDS, of course. It comes with the fact that it's decoupled from any App View.
-
I compared the architectures of AT Protocol (Bluesky) and ActivityPub (Mastodon, etc.)You can see the tradeoffs between complexity and: - The ability to get a global view of the network. -
I compared the architectures of AT Protocol (Bluesky) and ActivityPub (Mastodon, etc.)You can see the tradeoffs between complexity and: - The ability to get a global view of the network.@JustinH @boris @mackuba you can moderate the content you host.
github.com/bluesky-social/atproto/blob/main/packages/api/docs/moderation.md -
I compared the architectures of AT Protocol (Bluesky) and ActivityPub (Mastodon, etc.)You can see the tradeoffs between complexity and: - The ability to get a global view of the network.And it now looks like Mastodon wants to build something similar to the atproto crawlers. This is good news.
www.fediscovery.org
We might also eventually get some form of account portability on AP
swicg.github.io/activitypub-data-portability/lola.html -
I compared the architectures of AT Protocol (Bluesky) and ActivityPub (Mastodon, etc.)You can see the tradeoffs between complexity and: - The ability to get a global view of the network.@JustinH I'm not aware of any other major implementations of the App View or PDS. But you can make your own today by forking Bluesky (github.com/bluesky-social/social-app) and/or deploying your own PDS (github.com/bluesky-social/pds).
Other tools including what looks like an implementation for event management are listed at docs.bsky.app/showcase -
I compared the architectures of AT Protocol (Bluesky) and ActivityPub (Mastodon, etc.)You can see the tradeoffs between complexity and: - The ability to get a global view of the network.@JustinH happy to. Moderation is not centrally managed. Each of the boxes on the diagram, including moderation services and feed generators, is a service that can be offered by anyone.
As for the benefits of the design:
- Your data is not tied to your server. You can move your identity, social graph, and posts to a different server even if the server shuts down without notice.
- Your identity is not tied to your App View. It's managed by your personal data server (PDS) and you can even move to a different PDS without the server's involvement because you have a recovery key and (optionally) a local cache of your data.
- Scalability - The event log services and aggregators gather activity from the servers instead of flooding small servers with traffic.
- You can use your domain as your handle.
- You can design your feed by choosing algorithms and moderation services offered by anyone. -
I compared the architectures of AT Protocol (Bluesky) and ActivityPub (Mastodon, etc.)You can see the tradeoffs between complexity and: - The ability to get a global view of the network.I compared the architectures of AT Protocol (Bluesky) and ActivityPub (Mastodon, etc.)
You can see the tradeoffs between complexity and:
- The ability to get a global view of the network.
- Having nothing tied to your server: your identity, moderation, and feeds being independent from your instance.
- Avoiding individual servers being flooded with traffic.
As always, all benefits have a cost and nothing is free. Which protocol is better depends on your goals. I'm really excited for both.
#ActivityPub #atproto #bluesky #mastodon #pixelfed #fediverse -
To cure my hatred of frontend development I forced myself to build a demo for a dashboard web app:- Supports login with Mastodon, Google and a few others.To cure my hatred of frontend development I forced myself to build a demo for a dashboard web app:
- Supports login with Mastodon, Google and a few others. Public and private pages.
- Looks great on desktop and mobile.
- Also built an external API with public and protected endpoints consumed by the web app using the OIDC/OAuth tokens.
If you're going to learn TypeScript to build a GUI you might as well use the same language for the web API.
#WebDev #Mastodon #OIDC #OAuth -
@bagel I see there's a Podman Desktop flatpak on Flathub that supports both aarch64 and x86_64. I haven't used Podman before but I might check it out later!@bagel I see there's a Podman Desktop flatpak on Flathub that supports both aarch64 and x86_64. I haven't used Podman before but I might check it out later!
-
OK Bluesky recently published this and it's exactly what I was looking for.OK Bluesky recently published this and it's exactly what I was looking for. This is what every solutions architect wants to see.
The first time I looked at Bluesky there was basically zero documentation, no architecture diagrams, and nothing made sense. But it's moving really fast. It's not just a data format and specification documents for its transmission. It's a storage and streaming architecture built for scale and a reference implementation. I'm impressed.
atproto.com/articles/atproto-for-distsys-engineers -
I forgot this instance has a firefish dead emoji :firefish_dead:I forgot this instance has a firefish dead emoji :firefish_dead:
-
So, assuming I'm not interested in answers like "neither!@gulfkiwi although I'm more interested in ActivityPub because it's a W3C standard and is more mature. We'll see where ATProto goes.
-
So, assuming I'm not interested in answers like "neither!@gulfkiwi Bluesky offered a familiar experience (no need to know what an "instance" is) and is easy to use. Like Threads, it's aimed at the general population but has customizable feeds unlike Threads which only has one option: pure engagement bait.
Mastodon specifically, has a history of mass harassment campaigns that go into literal crimes against the infidels who deviate from the One True Way of building on ActivityPub (the Mastodon way). It keeps a lot of people away from the fediverse in general. See wedistribute.org/2024/03/contentnation-mastodons-toxicity/ -
I would have expected all major companies who offer an OAuth 2.0 provider to also implement OIDC but Instagram and GitHub do not, AKAIK. Some of th ones who do are Apple, Facebook, Gitlab, and Google.Fun fact, GitLab claims to offer #OIDC when you select the
openid
scope in your app settings but it doesn't work. You still get anoauth
token instead of a validoidc
JWT.