#social 2019-09-12

2019-09-12 UTC
dmitriz, Guest84, Guest84_, h_ll_k_n, xmpp-social and how joined the channel
#
jesopo
people have to declare affiliation, right?
#
jesopo
in which case, as individuals, we can chose to not interact with those affiliated with Gab
#
jesopo
of course people can lie about affiliation but that's not a huge concern. they'll likely be loud about it and it isn't a moral issue for me if i unwittingly support such a person
#
jesopo
just my two ¢s
#
jaywink[m]
I feel somewhat uncomfortable talking about Gab and developers working on proprietary code as the same people ;) That associates me and probably many of us with Gab like communities, which personally I couldn't despise more.
#
jaywink[m]
But would I be willing to exclude those people from a community forum based on their affiliation if they behave, don't break community rules and are just to participate in the community without bringing their hateful messages?
#
jaywink[m]
I can't really see justification for that from any angle.
#
jaywink[m]
Before socialhub is moved under activitypub.rocks it would be important to have a Code of Conduct in place for exactly this reason.
#
jaywink[m]
Currently AFAICT socialhub has no CoC last time I was there
#
jaywink[m]
I mean, in our personal streams we can block whoever we want and find abusive or uncomfortable to deal with (I certainly do)
#
jaywink[m]
But as a community we can't just go around blocking people from public spaces (a forum) without some rules or justification
#
jaywink[m]
imagine FOSDEM turning people at the door if they happen to run a Gab instance or work on proprietary code
#
jesopo
i agree that the community should be open to anyone respecting a CoC but then individuals should be permitted to not interact with people they perceive to be Bad
#
jaywink[m]
jesopo (IRC): yeah that is why tools have block/ignore etc inside them. Not sure discourse does tho 🤔
#
jesopo
worth baring in mind. i agree that lumping proprietary and gab together is absurd and nasty
#
jaywink[m]
but can you block an individual from a public place because a part of the community feels bad about them even though they're not breaking rules?
#
jesopo
no
#
jesopo
you cannot
#
jesopo
but theoretically every individual could chose to personally block/ignore them
#
jesopo
or some could chose not to. or whatever
#
cjd
I think that from a stratigic pov, they must be accepted at the meetings if they ask to, otherwise they can start a parallel standards process and claim that this one is a farce because implementors are not allowed to join
#
jaywink[m]
this space, and thus the meetings, is under W3C code of conduct I believe
#
cwebber
even if we block Gab explicitly, we can't force people to expose that they are secretly affiliated with Gab, so instead
#
cwebber
what we can say is we do not allow the advocacy of abusive content
#
cwebber
that includes promoting Gab
#
cwebber
this may mean that some people are quietly/secretly affiliated with alt-right content; there's not much we can do about that
#
jaywink[m]
you'll need to write that in the CoC pretty clearly to avoid random requests for blocking random people :)
#
jaywink[m]
since there will be Gab-like instances running on many platforms
#
cwebber
yes
#
jaywink[m]
like naturalnews and various non-organization based instances that just are set up by loonies
#
cwebber
I don't think we should write our own CoC; either the W3C one or Contributor Covenant are probably good enough (though there was some slight modification to the batter I don't remember)
#
cwebber
I don't know what that is
#
cwebber
we should scope the problem: we want to make sure this is a forum where people can coordinate the future of the federated social network and feel safe and comfortable doing so
#
cwebber
so the *reason* for not allowing the promotion of those sites is because of the above, not because we're particularly interested in individual condemnation as its own goal
#
cwebber
and jaywink[m] (if I'm reading what he says) is also right that it's the nature of decentralized systems that if we try to block based on individual sites, it won't be effective (we can *identify* some examples) because new sites can always be made
#
cwebber
and we don't want a long laundry list
#
jaywink[m]
but is a developer working on code for Gab promoting Gab, or a person using naturalnews promoting naturalnews? (just an example)
#
cwebber
jaywink[m]: I think exposing your affiliation with Gab is a sort of endorsement, but it's complicated because the W3C SocialCG policy requires exposing your affiliation
#
cwebber
I don't know how to untie that knot
#
cwebber
but I also am not going to try since I just woke up due to jetlag :)
#
jaywink[m]
I thought thou the Socialhub wouldn't be affiliated with W3C?
#
jaywink[m]
but the AP community
#
cwebber
jaywink[m]: it isn't, but I expect bidirectional collaboration
#
jaywink[m]
(maybe misunderstood in the call)
#
jaywink[m]
yeah sure
#
cwebber
I am also not going to be one of the socialhub moderators because I'm very overwhelmed already :)
#
jaywink[m]
but just saying requiring exposing affiliation doesn't have to be a requirement in the forum, just because it is for W3C :)
#
cwebber
yes that's true
#
cwebber
the reasons are different anyway
#
cwebber
time to shower
#
cwebber
I'll do the DNS thing today. I meant to yesterday but then I fell asleep earlier than I expected :)
#
cwebber
and I had nonstop calls between the socialcg and when I fell asleep
#
cwebber
I also have to prepare for a talk tomorrow at Friam!
#
cwebber
I will be explaining OcapPub to that community
#
cwebber
(ocap / actor model old-timers... an interesting group)
#
cwebber
I could use some downtime, maybe I should take some this weekend
#
jaywink[m]
take care to unwind cwebber (IRC) :)
#
cwebber
thx jaywink[m] :)
#
cjd
I think if someone says "I work on gab, I want to talk about standardizing groups" then trying to find a way to throw them out will lead to loss of credibility of the process
#
cjd
However, if anyone brings politics or religion to the standards process, that's where it's totally ok to draw a line
#
cjd
(contrast that with the operation of an instance like m.s or such, which is ostensibly for the enjoyment of its users and has no obligation to make reasonable efforts to allow everyone's voice to be heard and so can block instances for any reason or no reason)
#
cjd
Unfortunately, a person who has trauma and is unable to be in the room with certain people (even when they are acting polite) cannot participate in a process which has to be "open to everyone"
#
cjd
*cannot always
#
cjd
But fortunately, it's usually pretty quick to determine good faith from bad faith, because bad faith actors won't spend the effort to think about protocol design
#
jaywink[m]
Yep totally, I understand that. I have first hand experience in this and still have difficulty seeing messages from people who have caused abuse in the past. But it's difficult to say then "this person must be blocked for the whole community".
#
jaywink[m]
I wish discourse had a block/ignore but it I can't see it :(
#
jaywink[m]
only reporting
#
cjd
That's the difficulty, if a person acts polite and sensible, trying to exclude them exposes the entire process to risk
#
jaywink[m]
there are several people in this group I've blocked on a personal level, for example, but I have to accept that the community will not block them. just as an example.
#
cjd
And if they act slightly passive-aggressive, it's really difficult to apply a coc against them (which is why the old school method was to have no coc and to just have a dictator who most people trusted who would be able to "arbitrarily" eject people)
#
cjd
But then the dictator usually preferred abusive but prolific developers and so communities became insular, buuuut that's another story and not really something for a standards process
#
jaywink[m]
abusiveness also goes much beyond religion or the far-right. anyone can be abusive towards others, even if they were the most lgbt, left or the leader of a non-profit helping cure the world of cancer. we're so distinct as personalities, drawing lines into these kind of public spaces is very tricky.
#
cjd
indeed, hence why I've historically preferred the "act like a guest, don't upset the mods" coc, because you don't have to draw any strict lines
#
jaywink[m]
yeah that on top of a "pretty standard coc" as indicated by cwebber is imho the best too
#
cjd
*nod*
#
jaywink[m]
and if the mods become the people doing the abuse (through unwarranted blocks) - then as a community space it just fails :)
#
cjd
yup, dictator model... need a trustworthy (and cunning) dictator
#
cjd
And never ever fall for the "Don't block Jacob, he's so important to the community and he's been through a lot" trope, that one will kill you
BitBot joined the channel
#
jesopo
apropos of nothing (other than showing off):
#
jesopo
i present to you what I believe to be the only IRC bot that speaks S2S ActivityPub
#
jesopo
,fedi @jess@hellsite.site
#
BitBot
[Fedi] jess: hello fediverse friends! - http://bit.ly/32AOArc
#
jesopo
,config user fediverse jess@hellsite.site
#
BitBot
[Config] Config 'fediverse' set to @jess@hellsite.site
#
jesopo
,fedi
#
BitBot
[Fedi] jess: hello fediverse friends! - http://bit.ly/32AOArc
#
jaywink[m]
hah, nice!
#
jesopo
currently building a fediverse server in to it, too! but that's very much WIP.
#
jesopo
I'm new to the protocol overall but getting stuck in and really enjoying it :)
#
cwebber
jesopo: cool :)
#
cwebber
jesopo: welcome to the activitypub community then... nice to have you here :)
#
cwebber
and yay irc bot to ap bridge
#
jesopo
yeah I'm working on inbox stuff so the bot can announce Activities on IRC when they're published
#
jesopo
currently working on outwards federation, inwards after that
#
jesopo
i got a lottttt to learn first tho
#
cwebber
jesopo: very cool.
#
cjd
having an AP <-> matrix translator would be a really cool project
#
cjd
I would much rather run pleroma than synapse
#
cjslep[m]
Thanks for the ping cwebber. I will see if I can join for a next meeting.
#
cjslep[m]
Welcome jesopo to the AP community!
#
cwebber
cjslep[m]: cool
#
cjslep[m]
Thanks for all your hard work, at AP conf and your work on datashards
#
cjslep[m]
Even though I wasn't there I appreciate and want to recognize your hard effort.
#
jesopo
cjslep[m]: thanks :)
#
cwebber
cjslep[m]: :)
#
cwebber
cjslep[m]: though, I shouldn't take credit for apconf
#
cwebber
that was morgan lemmer-webber, sebastian lasse, tom marble, and deeann little
#
cwebber
I was just the most public face
#
cwebber
but I didn't make it happen
#
cwebber
and if it were left to me, I'm bad enough at such things that it wouldn't have ;)
hellekin joined the channel
#
melody
This isn't really about gab, but about whether we will bar participation based on behavior outside the forum -- which is something that some relatively standard CoCs do have allowances for -- it's not possible to run a space that is inclusive of "everyone" and then also give equal time and space to people running abuse and harassment networks because they've chosen to be outwardly polite
#
melody
That sort of compartmentalization tends to protect abusers, because they are the ones best positioned to play this compartmentalization game while the people they've harmed end up inevitably having to put a stake in the ground on participation
#
melody
So I think the question is more "is past & outside behavior going to be taken into account when choosing who is represented in this space", with Gab developers in my initial question as a relatively clear example of a case where we may need to think about this moreso than banning gab by name specifically
#
jesopo
can i ask some stupid federation questions
#
jesopo
if instances don't look at the outbox, how is my instance meant to show someone's old toots if there's no following/relay connection between my instance and their instance?
#
jesopo
sorry, s/toots/activities/
#
jesopo
because as far as I know it, the only way that activities transport between instances is through the instance that is the source of the activity pushing it in to someone's outbox
#
cwebber
dns, in theory, updated for socialhub.activitypub.rocks
#
cwebber
but expect a bit for it to propagate
#
cwebber
jesopo: you mean pushing it to someone's inbox I assume
#
jesopo
uh
#
jesopo
yes
#
jesopo
sorry
#
cwebber
np! just clarifying
#
jesopo
as far as i can see, a new account will never have any visible activities until someone follows it
#
jesopo
and even then - only that one person will see it
#
jesopo
i must be missing some things here
#
cwebber
jesopo: yeah that's why the outbox is GET'able
#
cwebber
so you can see what the latest stuff is if you aren't yet subscribed
#
jesopo
cwebber: so masto and pleroma will respect the content of an outbox?
#
cwebber
jesopo: I can't say for sure. I would think so
#
jesopo
masto GETs my outbox and doesn't display anything (might be an issue with my protocol understanding) but pleroma doesn't even GET it
#
jesopo
(masto also sends two GETs to my actor for some reason)
#
jesopo
I'll paste an example of my Actor and Outbox
#
jesopo
might be something wrong with it
#
jesopo
outbox is on there too
#
jesopo
well, ofc lol
#
nightpool[m]
mastodon does not backfill any activities for local viewing
#
jesopo
so my above concerns about new accounts are correct?
#
jesopo
just feels weird that new accounts will have no activities until someone on your instance follows them
#
cwebber
https://octodon.social/@fraggle/102780497181330552 keybase got stamps backwards ;)
#
jesopo
i just dont see how the fedi works how it does then. I've definitely gone to people's profiles on mastodon who are not followed by anyone on my instance
#
jesopo
yet mastodon still shows their toots
#
jesopo
and my instance doesn't belong to any relays i believe
#
melody
jesopo: in the case of mastodon, it might occasionally show toots if somebody on your instance has boosted or replied to them, and maybe if they are pinned, but otherwise mastodon will not show any toots that weren't actively delivered because somebody follows that user
#
melody
it's one of the reason single-user mastodon instances are painfully pointless
#
jesopo
melody: are they? it'd be the same issue for a poorly connected user on a many-user instance
#
jesopo
i create a new account. i toot. i ask people to follow my account and give my @. they see absolutely no toots
#
jesopo
even on mastodon.social this would be an issue
#
melody
nope, on a many-user instance, lots of stuff is filled in because other people on the instance have interacted generally, you can see content even if other people can't straightforwardly see yours (though other mastodon.social users will see your first toot, even if nobody was following you when you made it)
#
jesopo
i make a new mastodon.social instance and make some toots. people visit my @ and see no toots thus can't interact with toots such that they get federated
#
jesopo
not arguing btw, just confused
#
jesopo
just making sure i understand correctly etc
#
melody
other mastodon.social users will see your toots and can interact with them in such a way that they get federated elsewhere, to a degree, if somebody who can see them boosts you that will go to their followers on other instances as well, and that will make the toot show up on that instance's cached copy of your profile even if nobody is following you
#
jesopo
right but if none of those steps happen
#
jesopo
no one will ever see the toot
#
jesopo
?
#
jesopo
i assume by "first" you're talking about the outbox `first` key
#
jesopo
i assume this whole issue is the reason relays exist
#
jesopo
also, as for relays, are they effectively just psuedo actors that follow each other and boost/announce every activity from their instances?
#
jesopo
sorry for all the questions x.x
#
jesopo
all of this seems to be telling me that a priority is making following (both directions) work before anything else
#
jesopo
and then support for relays
#
melody
Sorry, let me try to contextualize this. If you're asking how you can get other software to see your actor's posts, then yes, you need to prioritize making following work, at least allowing your actor to be followed, so that you can perform delivery to somewhere
#
melody
mastodon will not fetch posts you already made from your actor when people try to find you
#
melody
the cases where you may have seen posts by an actor that nobody on your instance is following are related to quirks in other ways that post IDs may end up being cached by a given instance
#
jesopo
well the questions were more trying to see if I'd missed something about federation but you've definitely filled me in! :)
#
melody
and there are probably gaps, even if they aren't obvious
#
jesopo
nods
#
jesopo
I'll get to work
#
melody
I don't know the details of other software, and backfilling should be possible, it's just a pain in the neck for a bunch of nitty-gritty-detail reasons
#
jesopo
including some potentially malicious software reasons, I'd assumr
#
jesopo
assume*
#
melody
There's no "how federation works" in a more general sense, enough in activitypub is unspecified that the details come down to individual software behavior
#
jesopo
including huuuuge outboxes
#
jesopo
nods
#
jesopo
thank you very much!
#
melody
The basics are there w/r/t delivery to followers, but the practical experience is all software-specific -- in theory software could support fetching your outbox, in practice I don't know that any does, so you need to be followed to federate
#
jesopo
and everything else is somewhat of a quirk from unspecified behaviour
#
melody
I can't recall the specifics of how relays work, I believe the level of integration with them and the details are probably also at least somewhat software-specific, but they can make a small/poorly connected instance behave somewhat more like a large and well-connected one, but it's also a really homogenizing experience on the federated timeline and exposes you to new abuse vectors, it ends up being a pretty gnarly tradeoff
#
jesopo
right
#
jesopo
might see if i cant talk about it with kaniini of pleroma as they wrote a relay and are sometimes approachable
#
melody
Yeah, a lot of the details are quirks of the way software chose to handle unspecified behavior, some of which have been adopted more broadly because mastodon is the prehistoric elephant in the room and sorta set the general policy for how things will go forward
#
melody
pleroma instances all act as relays by default, those are actors that can be followed and essentially boost every post on the instance
#
melody
how posts are chosen for the relay and how subscribing to relays work is the part that's largely unspecified behavior/back down to software details
#
jesopo
whoa wait. pleroma acts as a relay in what sense? if they see an activity from you, they'll relay it to.... ?
#
melody
They will deliver your public posts to the relay actor's followers
#
melody
IIRC the relay actor is enabled by default
#
jesopo
oh, you mean pleroma has a relay actor by default
#
jesopo
i see i see
#
jesopo
that's interesting
#
melody
Yeah, so most pleroma instances have a relay actor that would allow you to subscribe to all public posts on that instance
#
melody
re: the software-specific behavior I was trying to talk about earlier -- the reason that a poorly connected user on a big instance is better off than a single-user instance is because that user both has more people who might see their posts (the large number of local users can see them even though they have not federated) and because they can see content on the local and federated timelines, including replies
#
melody
on a single-user instance, you can't see most replies in a thread, even when the original post is a user you're following
#
jesopo
oh I see, didn't even think about the inbound. was just thinking about my own stuff federating
#
jesopo
and actually i hadn't thought about the replies at all
#
melody
the reasons for that are complicated but essentially you can't read conversations on a single-user instance that isn't subscribed to a relay and even with relays it's...messy
#
cjd
is the discourse up ?
cwebber joined the channel
#
nightpool[m]
melody: hm? replies get forwarded through inbox forwarding, inboxes aren't necessary
#
nightpool[m]
*relays aren't necessary
#
jesopo
nightpool[m]: what's inbox forwarding
#
nightpool[m]
jesopo: you address things to the followers collections of other people, and then they can forward them on if they want
#
nightpool[m]
for example, when I reply to Gargrons post, he delivers the reply to his followers so they can see a full conversation