Having an architecture that locks communities to an instance is a problem. They should be distributed across the network with no notion of a home instance.
It would be different. The end-user would have to moderate their feeds, they’d have to find the same community provided by platform hosts who align with the users moderation values, or be ok with hiding content themselves.
PieFed (the non-tankie Lemmy alternative written in Python rather than Rust) allows for that. Atm it’s fairly primitive unless you make your own instance but ultimately it democratizes the moderation process to allow the end user what they want to see or not. Like instead of “remove” or “allow” content, it can automatically be “collapsed” with an option to uncollapse it whenever someone chooses. And/or labels can be placed next to usernames - like “<2 week old account” or “has 10x more downvotes than upvotes” - except it is actually icons that are used rather than such long phrases. You can put custom icons of any type next to any individual user that you want, for any reason - e.g. to help their comments stand out as you scroll, or to remind you to be careful replying, or whatever custom reason you chose to remind yourself of.
Edit: and all that I’ve said here is already available. So I guess it’s not so primitive after all, especially when keyword filters get added (new features appear all the time - it being in Python makes its development cycle FAST!), but what I meant is that even more is planned, to further reduce the manual burden of moderation efforts. Also, the entire sidebar appears below every single post, unlike in some apps where it it quite buried behind several clicks. It’s not fully ready for the masses yet but it’s coming along nicely, and already has several features that Lemmy lacks (and vice versa unfortunately).
Edit 2: based on db0’s comment, I should mention that PieFed also has Mastodon style tags too, on top of not only communities but on top of that too there are Categories of Communities. This is getting confusing to describe so just look at this example - the hierarchy above the post shows the Categories, the tags are below it, and the YouTube link is natively embedded in between.
Or are you saying that the code will be shittier as a result? I do wonder about that, but also if the errors can get made quickly enough and then resolved, the overall process could still end up being faster?:-P
Just joking since I’m not a fan of Python’s design choices, but I do worry that as development goes on the tech debt will pile up and will be more difficult to maintain.
Is that because Python breaks everything seemingly every time it updates? I don’t know Python well, that’s just what I seem to hear people saying often.
If so, would it really matter so much in this case, bc it’s not code running on clients so much as a handful of server machines, so couldn’t the specific library version used be mentioned and constrained to be used?
I don’t like indentation affecting which block code belongs to, its poor type safety (with type hints being a minor band-aid), awful multithreading capabilities (being able to disable the GIL now helps but introduces its own issues), and multiple design decisions which, although make Python flexible and dynamic, make it hard to optimize running Python code and so all the performant libraries are written in something else like C and then you’re stuck having that as a dependency.
They still to be attached to an instance at the protocol level. Or you have instances which are barely network components rather than communities, but that’s not what ActivityPub is about
Having an architecture that locks communities to an instance is a problem. They should be distributed across the network with no notion of a home instance.
Then you run into problems with instance admins disagreeing over moderation
That’s just mastodon tags
How would moderation work then?
It would be different. The end-user would have to moderate their feeds, they’d have to find the same community provided by platform hosts who align with the users moderation values, or be ok with hiding content themselves.
Ah yes, I love a feed where I have to view and delete the alt-right trolls and CSAM myself.
Isn’t that the way Nostr works, and thus if full of alt-right trolls escaping moderation?
PieFed (the non-tankie Lemmy alternative written in Python rather than Rust) allows for that. Atm it’s fairly primitive unless you make your own instance but ultimately it democratizes the moderation process to allow the end user what they want to see or not. Like instead of “remove” or “allow” content, it can automatically be “collapsed” with an option to uncollapse it whenever someone chooses. And/or labels can be placed next to usernames - like “<2 week old account” or “has 10x more downvotes than upvotes” - except it is actually icons that are used rather than such long phrases. You can put custom icons of any type next to any individual user that you want, for any reason - e.g. to help their comments stand out as you scroll, or to remind you to be careful replying, or whatever custom reason you chose to remind yourself of.
Edit: and all that I’ve said here is already available. So I guess it’s not so primitive after all, especially when keyword filters get added (new features appear all the time - it being in Python makes its development cycle FAST!), but what I meant is that even more is planned, to further reduce the manual burden of moderation efforts. Also, the entire sidebar appears below every single post, unlike in some apps where it it quite buried behind several clicks. It’s not fully ready for the masses yet but it’s coming along nicely, and already has several features that Lemmy lacks (and vice versa unfortunately).
Edit 2: based on db0’s comment, I should mention that PieFed also has Mastodon style tags too, on top of not only communities but on top of that too there are Categories of Communities. This is getting confusing to describe so just look at this example - the hierarchy above the post shows the Categories, the tags are below it, and the YouTube link is natively embedded in between.
Yeah but it’s written in Python.
Which will lead to faster development?
Or are you saying that the code will be shittier as a result? I do wonder about that, but also if the errors can get made quickly enough and then resolved, the overall process could still end up being faster?:-P
Just joking since I’m not a fan of Python’s design choices, but I do worry that as development goes on the tech debt will pile up and will be more difficult to maintain.
Is that because Python breaks everything seemingly every time it updates? I don’t know Python well, that’s just what I seem to hear people saying often.
If so, would it really matter so much in this case, bc it’s not code running on clients so much as a handful of server machines, so couldn’t the specific library version used be mentioned and constrained to be used?
I don’t like indentation affecting which block code belongs to, its poor type safety (with type hints being a minor band-aid), awful multithreading capabilities (being able to disable the GIL now helps but introduces its own issues), and multiple design decisions which, although make Python flexible and dynamic, make it hard to optimize running Python code and so all the performant libraries are written in something else like C and then you’re stuck having that as a dependency.
They still to be attached to an instance at the protocol level. Or you have instances which are barely network components rather than communities, but that’s not what ActivityPub is about