For the threadiverse in particular I'd add transferable user created Communities (between instances).
Fediverse
A community to talk about the Fediverse and all it's related services using ActivityPub (Mastodon, Lemmy, Mbin, etc).
If you wanted to get help with moderating your own community then head over to !moderators@lemmy.world!
Rules
- Posts must be on topic.
- Be respectful of others.
- Cite the sources used for graphs and other statistics.
- Follow the general Lemmy.world rules.
Learn more at these websites: Join The Fediverse Wiki, Fediverse.info, Wikipedia Page, The Federation Info (Stats), FediDB (Stats), Sub Rehab (Reddit Migration)
If Activpub does portable actors (a user is just an actor) communities are just actors so therefore portable users means u get portable communities for free
User sovereignty first design, where users individually control what instances they wish to block.
I agree with this. I think instance owners retaining ability to block other instances is still unfortunately necessary, if at least for administrative and legal reasons. But putting the onus on granular blocking controls on the user is a big achievement, as I prefer the user to retain that control.
That's not a universal want. Trans people and other vulnerable, targeted minorities face a real cost in having to play whack a mole with bigots. Sure, you can block them as they appear, but by that point, you've already seen their hate. And it means every trans person has to see and block that content. After which, the bigot just comes back with a new account, and does another round.
The blahaj instances offer aggressive, pre-emptive blocking of bigots and transphobes, at the instance level, with the goal of giving our users an experience of social media that isn't shaped by hate.
Of course, not all trans folk want that, and some absolutely do want the power to choose for themselves who gets blocked and are willing to face the hate in order to retain that ability. But that's the other power of the fediverse, because there are instances that cater to that approach as well.
tl;dr - Granular user control of blocking/federation is good, but it's not "better" than instance level blocking and defederation.
An easy middle ground is the ability to sync your block list with someone else. This gives the same capability you desire, but allows users freedom to do it on their own. Everyone's happy! What do you think?
It's a good idea, but still not an alternative to instance level blocking.
The downside is that if you're new to the fediverse, you have no way of knowing whose lists you should follow. So there needs to be some sort of instance/client level opt in recommendation to make it visible/useful to new users.
Beyond that though, on an instance like blahaj, it would be largely irrelevant, because there is no scenario where I let transphobes federate to the instance, whether or not individuals have the ability to block them from a subscription list.
The downside is that if you're new to the fediverse, you have no way of knowing whose lists you should follow.
Isn't the whole idea that you choose a trans-friendly instance and you naturally adopt the instance wide blocklist? Same thing here, except you choose the block list similar to choosing an instance in the old flow.
And if you disagree, this could still easily be mediated. For example, the instance could have a default block list. As long as one can opt out, that would respect user choice.
Or choosing the blocklists can be part of the account creation flow.
There's others ways to go about it.
Beyond that though, on an instance like blahaj, it would be largely irrelevant, because there is no scenario where I let transphobes federate to the instance
What I suggest isn't meant to take away the instance owner ability to defederate or moderate. But this makes it such that you don't have to modify your moderation strategy when your users can adopt different moderation in addition to what you have. (example: maybe a large group of your users want to block US-centric content, or political content, etc.) and people not on your instance could possibly adopt your moderation as well!
Yep, that would pretty much be the ideal scenario :)
Thank you for listening to my idea, and I'm glad you like it :)
I'm not saying that instances shouldn't have default blocklists, but that users should have the right to disable them granularly.
No way. Transphobia is not welcome on any instance I run for example. And that isn't something that a user should be able to change for themselves. That's a scenario where you would pick a difference instance
I think instance owners should retain the ability to make some blocks non-negotiable. They are responsible for the instance and legal implications after all.
you should look at the domain names of some of these blocked instances.
going live without a block list implemented upon start up is going to put you in a very serious legal quagmire where you are now responsible for your ISP having transmitted CASM.
That's precisely why I call it necessary, you're right!
Uh, I'd love someone to have a try at full-blown direct democracy. Most aspects being controlled (and ideally owned) by the very same people who use the platform. Not sure if that's good or feasible, though.
And what I always love is to see design principles that foster a nice, amicable atmosphere. Some online communities, games etc have aspects of that. It's somewhat more rare on modern social media. I sometimes wish hanging out on the internet was a bit less about politics, trolling and memes, getting agitated amongst random anonymous people. And a bit more like an evening at the Irish Pub with friends. Or getting to know new friends there.
We do things like that. I just think good platform design still has potential to achieve way more than we currently do.
What exactly would be controlled differently under this direct democracy?
I think the most obvious one is moderation. What gets deleted, who gets kicked out. Then for example community rules, what's the topic and rules of discussion. Every user/member could have a say in that. Maybe we could do some more structural and organizational decisions.
It gets a bit tricky with technology. Ideally we could do things like democratically decide to have a voice chat (if that's what people want) and somehow 3 months later the platform has a voice chat... But it's not that easy, software development doesn't work this way.
I do think that some direct democracy would be good, but there's a reason why Switzerland still has representatives too.
Having to vote on every single moderation action would be a pain to deal with. Not just in terms of fatigueing users and causing only few to actually participate, but also because it'll slow down the process and empower bad actors to cause more damage.
What should be a thing imo is what Switzerland has: the ability for regular users to propose new rules and then vote on approving them, and the ability to undo any moderation action through a democratic vote. Both of those being binding.
Also of course the ability to vote a mod out if they're abusing their power. That's something we're lacking IRL too.
Edit: On your other point:
It gets a bit tricky with technology. Ideally we could do things like democratically decide to have a voice chat (if that's what people want) and somehow 3 months later the platform has a voice chat... But it's not that easy, software development doesn't work this way.
I think one thing that's possible is to copy the GOG model. Have a wishlist of features that people can add to and vote on. The highest voted features you prioritize in development.
Tbh It sounds awesome
Radical interoperability. If I want to subscribe to this board via Gopher, or via Dialup modem, there should be an implemented way to do that.
1.- and I'm going to emphasize this a lot.
PAGING
(or at least some concept in the vein of "show only a finite amount of information at a time")
Lemmy does it well, but Mastodon sorely requires it for example. Anything that induces the pattern of autorefreshing, auto-filling, constantly changing timelines only empahsizes the addictions that antisocial media is working with already.
2.- More and better reactions than simply "upvote" and "downvote".
A upvote or a downvote can mean things in different categories, from "I don't like this" to "this is uninformative" to "this is misinformative!" to "enough Musk spam!". Condensing and factoring such results into how threads are found and sorted artificiates any or all of popularity, consensus and usefulness. So, being able to "react" (add a singular tag to a message without the need for a reply) to a message with more options than "upvote" and "downvote" would be useful. I'd count at least three axis (axeses? switchaxes?) that are useful to gauge: "agree - disagree", "informational - misinformational" and "verified - debunked".
3.- Global, or at least shareable and moveable, user identity. Won't comment on this more because others already cover it enough.
4.- Fucking decouple instance identity from DNS. DNS is the layer that big corpo will rein in next, depending on it to validate who an instance is is playing an eventually loser game.
I'm so far paging, and it's so annoying this isn't the default design on the fediverse.
On 4, I also agree, but what's the best alternative?
On 4, I also agree, but what’s the best alternative?
Fuck if I know, tbh. Whatever i2p and/or IPFS are doing, I guess? While removing a central authority is a good idea, I think the more pressing matter is to remove external authority. DNS registrars are not part of the fediverse in terms of being community or people, and thus are a notorious weak point.
Unified identity really needs a modification at the core of activpub. The issue at the moment is that a user is just an actor and an actor is just a url. What it needs to be is something like a did(distributed identity) which is what atproto (bluesky uses) does. And the did points to a list of actors that can be across multiple servers. The did has a private, public key pair and signs all activities by per server actors as ur user. What this means is u don't need to trust any server with login details or anything and u can do activities acting as any instance you want.
I do like this, but it does require responsibility from the user to maintain their keys. I think having it as an option is great, alongside the identity providers I speak about.
but it does require responsibility from the user to maintain their keys
Not necessarily? We can have did methods that do not rely on key ownership.
So did has different providers so atproto uses did:plc and did:web but their are many different options and its a standard so u can get comparability with so many things ie did:pgp, did:eth, and like a million other options
DID-based identity already exists in Fediverse: https://codeberg.org/fediverse/fep/src/branch/main/fep/ef61/fep-ef61.md
We currently use did:key but in theory any DID method can be used, someone even tried to use did:plc: https://github.com/bluesky-social/atproto/pull/3943
Allow people who fund the platform vote on features (that are pre approved ). who contribute more get more in return.
"time well spent". and maximizing the "average quality of content". maybe by allowing custom feeds. or feeds that are based only on the votes of trusted users. with governance models supporting how those feeds are managed like how KDE and GNOME nonprofits are managed. maybe vote on best post/comment of the day/week/year/decade with leaderboards for that.
Linus law of trail and error. allow people to easily extend the software .with plugins and ideally a store with reviews for addons like in firefox and chrome. making experimentation easier and safer (without risking adding a bad feature to all users of the software). vote on features implemented rating for example how satisfied you are on a scale of one to ten.
information over speculations . use A/B testing to see what works in practice. maybe use "counted statement" for example "this is useful" or "this is important" beyond lemmy and reddit upvotes and downvotes.
Right now a life changing post from world class expert and a funny cat picture with someone who spend too much time online are treated the same by the software. this should somehow change.
Fun and weird ways of using the internet socially. Fediverse has the unique opportunity that you can build anything and automatically reach people. I'd like to see people really push the idea of what a social platform looks and acts like.
Misskey?
I havent found an English misskey instance so I havent been able to really try it out. At a glance it seems similar to mastodon
Most of English instance are using Misskey-fork named Sharkey.
Misskey itself has tons of unique features that Mastodon don't have, like threaded discussion/reply, Misskey games (only two for now), custom interface, emoji reaction like Discord/Slack.
Can you give examples ? That's partly why I ask this question.
Ive got ideas in my mind but its hard to put them into realistic ideas of a site.
Embrace content sorting and filtering algorithms, but on the client side, with optional control by the user.
You can only filter and sort what was downloaded by the client. So that runs into resource constraints.
Standardize tags on all content. So many of the different ways different platforms classify or organize content can be implemented as tags, which increases interoperability between them.
I'm so with you. https://xkcd.com/927/
Transferable user identity (between instances)
User identity and authentication as separate service from social network instance
That's more the ATproto/Bluesky vision.
You can only filter and sort what was downloaded by the client. So that runs into resource constraints.
There shouldn't be resource constraint issues in downloading new content Metadata from all your subscriptions
tags
When I say "standardize tags on all content", what I mean is make it a standard to have the option of having tags on every type of content, and treat tags as a first class attribute of the content. The XKCD you reference is not relevant.
That's more the ATproto/Bluesky vision.
Sure, they use it. But it is compatible with activityPub as well.
You can only filter and sort what was downloaded by the client. So that runs into resource constraints.
In the client, you wouldn't need to be sorting and running extensive calculations on all data. You could, e.g, build the front-page by indexing/scoring posts and comments that have been created since your last visit with a hard cap on some time window (last 48h) or total data points (e.g, keep only the most recent 10k objects in a local hot database, freeze/archive everyhing else.)
I’m so with you. https://xkcd.com/927/
That's what RDF/JSON-LD gives us for free. There is no need to have us arguing over what each tag means, all that developers need to do is to learn how to use the different vocabularies.
That’s more the ATproto/Bluesky vision.
Doesn't mean that we can't adopt it.
In the client, you wouldn’t need to be sorting and running extensive calculations on all data. You could, e.g, build the front-page by indexing/scoring posts and comments that have been created since your last visit with a hard cap on some time window (last 48h) or total data points (e.g, keep only the most recent 10k objects in a local hot database, freeze/archive everyhing else.)
Absolutely. There's a lot you can do. The "For You" Feed on Bluesky is quite instructive. https://bsky.app/profile/spacecowboy17.bsky.social/post/3mb2r5qei322a
But when you're talking about sending a lot more data to clients, you really need to consider what that means for the internet bill of instance owners.
But when you’re talking about sending a lot more data to clients, you really need to consider what that means for the internet bill of instance owners.
I would argue the opposite, actually. A lot of this data could be distributed in a p2p manner and the client nodes would have to rely even less on the servers. The key part would be that this data would have to be self-authenticating, but we do have the mechanisms to do that (Linked Data Signatures)
Good pitch. You could also ask people to help out with the more expensive computations. Say, adding alt text.
If we're doing wishful thinking, I'd love an age and location mechanism.
Theres currently no way to do this with privacy and security in mind. Because it's just a clusterfuck of issues.
But, again - wishful thinking. It would be cool hell to be able to actually have spaces for specific ages, or specific locations.
All the eurocentric communities forcing the end user to be from europe. Imagine a community for only 40-60yos, or a real teenager community without the creepos.
My city has a forum for each generation (millennials, gen X, etc) and the conversations and chats are lightyears better than anything else. We have RL meetups and BBQs. It's a real community. Trolls quickly get booted and those who were assholes beg to come back after apologizing.
I think having instances or communities dedicated to that would be wonderful.
I think having separate identity providers would work well with this. Those identity providers could optionally verify age and location, and your instance can just trust them on that to make it exclusive to certain ages or locations.
I've been thinking about that a lot and plan to build something I'm more interested in:
- powerless instances where all you can do is create accounts and store stuff to be served but every logic and integrity is done by clients
- anonymous account creation so that everyone can participate -> freedom of speech ...
- follow-based interaction: if I don't follow you, you cannot send me anything -> ... not freedom of reach
- because instances are powerless they do not define community anymore. Communities are good old accounts, created, managed and animated by users directly
- because clients have all the power, they are the primary storage source
- Communities are the primary dissemination vector. If I don't follow you but we're both part of the same community and you post something to that community, I'll see it
- when I block someone, that block can be propagated to others so they can automatically block that same account. This works for communities as well.
Hopefully a design like this should empower users and communities by letting them focus on the social aspect of building the group, nurturing it, instead of the technical parts that constrain users into artificial uses
Some instances already implement this, but a hard anti-AI stance or at least requiring labeling of AI-generated content?
I need the ability to send someone over and lightly slap other users if their comment reaches enough downvotes