Discussion: Solid vs. ActivityPub

I don’t really like linked data signatures, because someone could take a private message and publicly publish it, and it would be proven that the sender sent this message. This would lead to a number of abuses that is currently not possible with HTTP signatures (or much more difficult). This is also why I dislike using append-only storage like IPFS.

1 Like

Cross-posting this link from SocialHub (see link above) of another combined Solid / AP (planned, see roadmap) project:

1 Like

Following up to @divoplade in Solid scope and ecosystem

Do you mean collapsed text reasons, where a short snippet of free text indicates what’s within that region? Like e.g. “uspol” or “rant, need coffee”? I don’t have much problem with those. There is a lot in my timeline, so I may skip opening the text region and move on, or the summary text piques my interest.

That is an over-generalization. Most people on the fediverse do not need to know. There are just fediverse users. The users on the two main forums SocialHub and Feneas know very well, especially the ones involved with furthering the standard and compatibility.

But there are many individual developers and projects where they indeed do not see the benefits of linked data. The ActivityPub specification was written such that there is compliance with JSON-LD, but also compatibility with plain JSON. Anyone doing the latter will find that their app will just integrate nicely with the fediverse. Very nice for initial adoption, but if the trend continues it becomes ever harder to add the linked data special sauce.

Well, there is an acknowledge need for some of them, like politics, some forms of violence, or food. I am not sure “rant, need coffee” qualifies :thinking:

There are definitely some people that need them. We cannot create a social web without listening to their needs, in my opinion. I rarely read criticism of mastodon on the fediverse, except for the content warning problem. Even the lack of rich text support does not come close to that.

As for the over-generalization, I tried to make a sentence that made sense, but I could not. So, that’s the best I came up with, sorry.

No problem :slight_smile:

If we are indeed talking about the same… it’s a free text, so you can write anything. You could restrict that and add support for some sort of a tagging system, to categorize the hidden section. But adoption hinges on current implementers to support that feature extension.

Another ActivityPub / Solid initiative

2 Likes

What I would expect, would be that each community has its own set of keywords that map to linked data resources. So when you type a keyword, it translates to a new piece of metadata that can be understood by all the communities. There would be mandatory annotations. For instance, if you belong to a community where tagging texts about food is mandatory, failing to do so would get you signalled. This is not to punish you, but to guarantee the best communication between communities that consider food to need a content warning.

Content warnings would not hide the text by default, but each community would have a list of all the metadata that would hide text.

I may be over-generalizing again, but I think that this is not possible without linked data.

The difference between mastodon and an implementation on solid would be that on solid you could belong to many communities, and still abide by the rules of each of them (you can add all the metadata you want, this is an open world!).

What do you mean by a community in this context?

I would say, a group of people that have a stronger or more specialized relationship with each other.

This could be an association, for instance.

Do you remember the beginnings of the fediverse, where there were “instances” with special purposes (photography, music, …)? This arguably failed, because their members would belong to different communities at the same time.

On solid, a community might be a simple list of people, alongside “moderation” rules, that could create a specialized timeline. The timeline would include some posts from its members, hide others, and put specialized content warnings. By “moderation” rules, I mean a simple resource that lists included concepts, with associated policies (show, hide, warn content), as well as some moderators that would ensure that people on the list respect the tagging requirements of the community.

I think this could be a healthy direction for a social web.

This is very interesting. Note that both SocialHub and Solid are looking into implementing Groups:

Interestingly @aveltens is already using ActivityStreams Announce Activity type here, so that is almost compatible with the fediverse.

I am very interested in this. For my use case I want this to go further, more generalized. There could be moderation policies, governance policies (organization, member roles), decision-making policies, etc.

Edit: I just added a summary of how SocialHub approaches Groups in ActivityPub in Solid Groups App (comment).

4 Likes

Agreed, we’re definitely keen to add more apps to the front page, and we try to cover the widest possible range of use cases. Which is why the last 3 apps added were PixelFed, PeerTube, and FunkWhale, as soon as they federated with instances other than their own. Lemmy is another one we’re tracking closely, for similar reasons. Our prime directive is to be a guide for beginners, so we try to feature the most mature, user-friendly apps, and avoid listing anything bleeding edge on the front page. But there is another page with a more complete list of end user apps in development, and a new page is being rolled out for developer tools (federations libraries, relays etc).

1 Like

Hi ActivityPubists, and more @strypey and @aschrijver
Playing with Agora, I would like to have your advice to know if that kind of Solid data could be send to an Antivitypub server inbox
https://agora.solid.community/public/agora/inbox/83a0fc55-94c0-4ac8-acb3-210337e6bc1b.ttl#this

Or https://agora.solid.community/public/agora/inbox/3d2a8386-f410-4463-a170-e36928aa7f06.ttl#this

Which are representative of a ‘Create’ action that has a Link to an Activity with an Object that have a content.

Here is how it looks like :

Those are posts made with [Agora](https://github.com/scenaristeur/agora) app

That is a bit hard for me to judge. It is best to communicate by showing the JSON-LD messages that would be sent over the wire. On first glance it seems most AP props are present and you should be able to communicate. I guess in your case you want to set up a federation with other AP instances (i.e. server-to-server). It can help to look at the code of other projects on the AP watchlist, read the aforementioned AP implementers guide, there are some implementers blogposts on Mastodon and more if you DDG on them.

For S2S auth. you probably need HTTP Signatures, but JSON-LD signatures could also be an option (I don’t know how widely these are implemented though). For federation of twitter-style messaging Mastodon and Pleroma are the leading projects to be compatible with. They have added a bunch of extension props, not all of which are needed to be implemented. You can view JSON msg format by adding .json to the url’s.

Lemmy is an interesting project to watch, as it provides Reddit-style community communication. They are working on federation between Lemmy instances, but do not federate to Mastodon/Pleroma yet.

I would not hesitate to ask questions on SocialHub, but the screenshots can be confusing, so show data snippets. Also you could approach @dansup either on SocialHub or the fediverse and see if you can participate in the private beta for fedidb.org because that will be a really helpful tool for implementers.