I haven't come up with a solution
and you refuse to acknowledge that treating OP like dog shit isn't an appropriate reaction for a non-technical user complaining about the confusion behaviour of a poorly named feature.\
Uh... ok?
Treating OP like dogshit is bad.
I ... think that most people did their best to politely and cordially try to explain why their suggestion is silly, and then they, and also you as a white knight, kept persisting in not understanding or trusting the explanations given as to why it is a silly suggestion, and now you are apparently having a nervous breakdown from the idea that you and OP could be uninformed about something, and/or you seem to be more concerned with how your feelings have been hurt and how you do not feel validated.
If you and OP would have just listened to what me and others were saying initially, instead of being antagonistic and demanding and entitled about topics you do not understand, without offering any practically useful ideas, then you probably would not have annoyed as many people.
People are dragging OP for daring point out that the way "block" works here is confusing and feels bad to use.
I mean, its confusing if you're used to a different paradigm.
A centralized paradigm.
A corporate top down paradigm.
Feels bad to use?
I mean, subjective, but also user feedback is valuable, but also, a whole bunch of people explained all this rather politely, initially.
Even if it cannot be implemented, it is not unreasonable for a user to request it.
Yep, I agree, and this is why many people did their best to explain why this a request that is nigh impossible to implement.
Were some of those people kinda mean, after further being met with a dismissive or tone policing attitude?
Sure!
I guess you've never interacted with an actual developer before, who isn't also their own PR department.
You think having a conversation about software architecture is anxiety inducing?
Welcome to nearly every single meeting a senior dev is in almost every single day, often more than one.
Tends to make people a bit testy, when dealing with inexperienced people who waste their time and do not get to the point.
But hey, you have an actual idea this time, and I do genuinely appreciate that, so lets go through that.
In mastodon, if Alice from instance A follows Bob from instance B, then instance B will send Bob's posts to A. In addition to that, when B sends Bob's posts to A, it can also send new block requests.
These block requests are public, and it is up to the subscribing instance to honor them, but it's most of the way there, and instance admins can choose to defederate with instances that don't honor it (like they already do with malicious instances).
I... ok... so then you still run into this problem:
Alice blocks Bob.
Bob views Mastadon as a guest, or makes a new account, on either instance A or B.
Bob can now see everything Alice posts.
I believe you have already argued, or someone did, that throwing up ... that Bob would have to do that, this is a meaningful hinderence to at least prevent some users from doing so, that this existing is better than it not existing.
It is good to point out that Mastadon is doing this.
This does show that at least a technical implementation of an attempt at the desired feature with the desired effect exists, imperfect as it is.
I would argue though that this is nowhere near as effective as ... people seem to think it is, and really is just a palliative, a placebo, to make people feel as if they are in control of who can see their posts, when it is in actuality very trivial to bypass, and thus you would be doing more 'security theatre' than actual 'security'.
In that sense, I feel that such a 'Block' feature is actually morally bad, as it is a form of lying, providing false promises.
I would, and have argued that the only way to actually ensure that your posts, comments, whatever, are only seen by who you want them to be seen by... well, that requires something like a centralized, exclusionary paradigm:
No one can see anything on any ActPub based anything ... unless they are logged in, and they are logged in to some kind of an account that has been some kind of validated through some kind of validation system that is widely and at nearly universally adopted.
But, that is kind of antithetical to the concept of a public oriented platform.
Maybe another solution could be something like a customizable tiered permission system:
Most posts from Alice are 'public', others are reserved only for those following Alice, others are reserved for only those whom Alice has added to some kind of white list, somewhat analagous to a group chat, or... patreon posts you can only see if you are whatever tier of paid member.
With that kind of a paradigm, you would also have to do some kind of distribution of an encryption key system to go along with this, so that uh I guess Doug is in Alice's white listed or allow listed tier of close friends, and she has one half of the encryption key and Doug is given the other, and then also, whenever Alice removes I dunno, Erica from this group, this also prompts all of the encryptn keys to be remade and redistributed so that Doug gets a new key and Erica's key no longer works.
This... is ... maybe possible, to make work with ActPub, but would be a toooon of work to implement and test, at least speaking for myself and my own coding abilities, on my own.
Hence why I at one point said 'pay me $50 an hour'.
IIRC, this is closer to the concept that Google had for their failed social media network, Google+, where everything was....well, ultimately centralized on the backend, but the user experience was that of a bunch of people managing their personal existence within or without of a bunch of different 'circles'.
https://en.wikipedia.org/wiki/Google%2B
So there, there is an idea, of encrypted content only visible to a select group of users, and a whole system of disseminating encryption keys and encrypted messages, that is maybe actually compatible with ActPub, that could maybe be developed as an addon or the mainline lemmy code, that could maybe be a kind of middle ground between 'basically totally permissive and inclusionary' and 'basically totally exclusive and nonpermissive'.
This again though would be quite a significant undertaking, to do this in a way that would not be chalk full of exploitable flaws to defeat the encryption.
Yeah, this is starting to sound more like trying to make ActPub work more like Signal or Matrix, the more that I think about it....oi vei.
The key element here is that if you want to actually guarantee certain people cannot see some or all of your content, you have to have some kind of a white list / allow list system that by default blocks out anyone who is not specifically trusted.
Otherwise... its as simple as make a new or guest account.
This also is not perfect in that people get all kinds of their account credentials for all kinds of things stolen every single day, accounts do get hijacked, but it is something.
Aside from all that:
Mastadon is much closer to trying to be Facebook or MySpace or Instagram.
So, the culture norms are more oriented toward trying to be about more... stronger, more substantial, more intimate bonds between fewer people, basically, where people tend to connect their actual real world identities more closely, more directly, to their accounts.
Lemmy is different.
Lemmy is much closer to reddit, or old school message boards, or even 4chan, where the norm is closer that you are pseudonymous in a way that is much closer to anonymous, where what is being aimed for is many many more connections to many many more people, but generally in a much more ephemeral, less intimate way.
This is why I was saying if you are serious about this, you would either need to code this yourself, simply because most Lemmy users and devs don't care enough to develop this Mastadon/Insta style Block, or you would need a way to find a dev willing to do this, pay them, convince them to do it somehow, start a lemmy comm or instance dedicated to developing this conceptually, work out actual concrete development guidelines.
'Lemmings' will tend to be culturally different, so to speak, so it will take convincing, you would have to be able to 'sell' the concept to them, it would be a much harder 'sell' than to Mastadon users/devs.
Its just a practical fact, there needs to be a plan for achieving the goal, for maybe discussing what that solution will actually look like, and who is going to actually code it.
I can say that if you maybe want to throw the idea I above outlined at other devs, or some discussion circle or something, feel free, go for it, but I am currently doing physical therapy full time after a series of crippling injuries, and am in no state myself to try to do any serious dev work.