#social 2017-06-01

2017-06-01 UTC
#
@kennyma
ActivityPub: decentralized social networking protocol based upon the ActivityStreams 2.0 data format https://www.w3.org/TR/activitypub/ cc @lobster1234
(twitter.com/_/status/870063852041494528)
#
saranix
There was much talk about use-case. I have to wonder, is github/gitlab even the right use-case? We are talking about just the issues tab, yes? Discussion of issues? Seems like github being used in this way is already quite a kludge. Is there anything special accomplished by treating these posts as "issues"?
#
saranix
Since discourse was seriously considered as an alternative, and someone mentioned that mailinglist is bad alternative due to lack of "labels" (tags) and searchability. What is it exactly we are trying to accomplish? I'm thinking in terms of what it would take to write a custom solution for the job...
jankusanagi_ joined the channel
#
jaywink
astronouth7303: "so i don't think interoperability is real high on the list" <-- gitlab can be self hosted. Interoperability can also be a target between nodes of the same software stack. I'm sure that would be valuable to gitlab to be able to create a networtk of gitlabs. Just like nextcloud is enabling to be done in their sphere
#
jaywink
saranix: personally just babling about decentralized github in general, not relating to "what we need in this group" :)
#
saranix
I was referring to the whole conversation we all had earlier
timbl, KevinMarks, ajordan and KevinMarks_ joined the channel
#
@fostercharles
Micropub is now a W3C Recommendation. Is this the beginning of the end for Facebook and Twitter? http://www.w3.org/TR/micropub/
(twitter.com/_/status/870228861967007744)
#
astronouth7303
jaywink: yes, just like diaspora. It's not really interoperable if no competing software implements the protocols.
#
saranix
Zing! lol
#
saranix
to be fair, friendica and hubzilla both implement diaspora. It's diaspora that doesn't implement the other more featureful zot and dfrn
#
jaywink
astronouth7303: that seems like a slightly unfair comment that almost sounds very personal :)
#
jaywink
how is gitlab implementing activitypub anything liike diaspora anyway?
#
jaywink
doesn't represent diaspora, just wondering
#
jaywink
and as saranix said - other software stacks *do* implement the diaspora protocol. friendica, hubzilla and two WIP stacks my Socialhome and a Go language server called Ganggo
#
astronouth7303
As2 doesn't cover software development, so additional vocabulary it's required
#
astronouth7303
Which might be generic, or might be tied to git or gitlab's ideas
#
jaywink
50/50 for generic sounds good enough for me ;)
#
astronouth7303
I mean, yeah, ideally
fkleedorfer and KevinMarks joined the channel
#
cwebber2
omg congrats rhiaro and csarven (and timbl and some others apparently!) https://rhiaro.co.uk/2017/06/finally
#
cwebber2
awesome work
#
astronouth7303
nice!
#
rhiaro
yeaaahhh LDN hits the academic community pow pow
timbl and KevinMarks joined the channel
#
astronouth7303
... ldn sounds like it overlaps significantly with several social specs?
#
cwebber2
astronouth7303: in fact it overlaps heavily with activitypub, and we even use the same inbox endpoint! :)
#
astronouth7303
o
#
astronouth7303
well, that's good
#
cwebber2
should probably give that a better fragment
#
astronouth7303
reading between the lines, activitypub push is a subset of ldn?
#
cwebber2
astronouth7303: or LDN is a subset of activitypub :)
#
cwebber2
there's definitely a venn diagram
#
cwebber2
it depends on how you look at it:
#
rhiaro
Part of AP is a specialisation of LDN
#
rhiaro
the s2s part, minus side effects
#
cwebber2
that's the right way to put it rhiaro
#
astronouth7303
the note is appreciated, but it doesn't give concrete insight for implementers on how the two specs relate?
#
astronouth7303
or it feels more vague than i'd like it to be
#
cwebber2
astronouth7303: the Social Web Protocols document is designed for that
#
Loqi
[Amy Guy] Social Web Protocols
#
astronouth7303
needs to read through everything again..
#
rhiaro
Improvements and clarifications to SWP welcome until the bitter end
#
rhiaro
can't believe it's june now
#
cwebber2
this year is flying by :(
KevinMarks, timbl_, JanKusanagi and jankusanagi_ joined the channel
#
cwebber2
I think this is a pretty serious attack against friendica if I'm understanding this thread right but maybe I'm not understanding... https://github.com/swicg/general/issues/1#issuecomment-305586330
#
Loqi
[cwebber] @jaywink I may be misunderstanding! But let's say that https://pirati.ca/display/735a2029205920ea17dbae8771484681 was the original post, right? Now let's say we have the friendica-compatible https://newbie.example/. Now, that server hasn't federat...
JanKusanagi joined the channel
#
astronouth7303
i agree with you on that reading
#
astronouth7303
friendica just uses a UUID-like system and prays?
#
aaronpk
wow, if that's true, that's terrible
#
cwebber2
that's what it's sounding like based on this thread
#
cwebber2
sadly it sounds like this may only have one of the points on zooko's triangle then
#
astronouth7303
indeed
#
astronouth7303
URLs kinda break that, though?
#
astronouth7303
depending on how you define human-meaningful and the amount of stuff needing identifiers
#
cwebber2
astronouth7303: if it were using URLs, at least it woud be secure and human-meaningful (excepting some dns attacks, but you have to do dns attacks *plus* CA attacks)
#
cwebber2
astronouth7303: but per this, it looks like all friendica nodes *actually* rely on the guid
#
cwebber2
and just assume first come first serve
#
astronouth7303
"There is still only one, unique and specific entity to which a name resolves." URLs do that
#
astronouth7303
if that's true, *twitch twitch*
#
astronouth7303
YOU GUYS KNOW THAT BAD ACTORS EXIST, RIGHT????
#
jaywink
let's rewrite friendica :P
#
astronouth7303
s/ActivityPub/Friendica2/
#
cwebber2
I think the Friendica people are pretty smart in general, but I was just pretty shocked to hear this.
#
jaywink
shocking
#
jaywink
I love you added "in general" :)
#
cwebber2
well, Friendica is the only place to have implemented like, everything :)
#
jaywink
... at least it has adoption ;)
#
jaywink
but I don't get it. who proposed to use guids to do mirgation?
#
jaywink
that isn't a proposal. it is explaining how friendica does it
#
jaywink
do you see michael proposing anything?
#
cwebber2
I mean, annando and Michael are both weighing in pretty heavily on the thread saying Friendica has a solution to it
#
jaywink
annando is michael ;)
#
cwebber2
annando is michael, but zotlabs is mike? :)
#
cwebber2
or are they the same person??
#
cwebber2
okay :)
#
jaywink
I don't see any proposal, just discussion. I think you're reading things that are not there.
#
cwebber2
maybe michael and mike aren't saying "use our solution", but this is a thread about "are there solutions", and they seemed to weigh in with "yes we have a solution"
#
cwebber2
I mean, what was the point of the posts on the thread if not that :)
#
jaywink
discussion is bad?
MMN-o joined the channel
#
cwebber2
I'm not saying discussion is bad!
#
cwebber2
discussion is great :)
#
cwebber2
I'm also not saying I'm upset by them weighing in!
#
jaywink
I gave my solution too in that thread, should I delete it? I wasn't proposing anything ;)
#
astronouth7303
the problem being that URL-based identifiers need servers to resolve them, and nobody wants to have a warm shutdown like that
#
jaywink
guids wouldn't work in the activitypub world anyway
#
astronouth7303
urn:guid:....?
#
astronouth7303
well, you still need to resolve them with someone
#
cwebber2
jaywink: but that isn't under the activitypub tracker anywya
#
astronouth7303
can't have just a URI, need an actual URL
#
cwebber2
it's under the swicg (or I guess, should now be socialcg) tracker
#
cwebber2
which is talking more about general solutions since the SocialCG doesn't take an official stance on which protocol is "the right thing"
#
astronouth7303
i figured the solution would be that the user would go to a new service, "import" their data, and leave an "is-also" pointer at the old ID
#
astronouth7303
but that doesn't help the long-term, does it?
#
cwebber2
astronouth7303: some proposals similar to that have appeared on that thread
#
astronouth7303
i think under a non-redundant, URL-based system, service death is just going to have to be something we live with
#
cwebber2
well https url based system anyway
#
astronouth7303
you were the first to say it's not specific to HTTP :P
#
cwebber2
yeah but you could possibly get around *this* problem with something like CAS based uris... though
#
cwebber2
it would totally break Update ;)
#
astronouth7303
CAS has too many meanings for you to pull it out of nowhere
#
cwebber2
I guess given that current activitypub stuff is pretty damn mutable what I just said doesn't make sense ;)
#
cwebber2
Content Addressed Storage
#
cwebber2
eg where you hash the contents, and the hash is your identifier
#
cwebber2
like git, etc
#
astronouth7303
ah
#
astronouth7303
problem is that you'd need an actual distributed store to resolve it
#
astronouth7303
also, i don't even want to know how many bits you'd need to guarantee no collisions ever
#
cwebber2
it's a little bit too speculative fiction admittedly ;)
#
nightpool
I dunno, IPFS does pretty well
#
astronouth7303
if i were to implement that, i would be looking at BitTorrent
MMN-o joined the channel
#
astronouth7303
and possibly some of the anonymized internet stuff
#
nightpool
they're a really good example of a modern content addressed storage system
#
nightpool
I think ipfs would make a really good "static server" backend for asset storage
#
astronouth7303
but i suspect that's hard to implement, and i'm not sure how "production-ready" any of them are
#
nightpool
the problem we ran into considering it for mastodon was that people got kinda squicked out by the immutability of content addressed storage systems
#
astronouth7303
craaaaaaaaaap
#
astronouth7303
that's a thing
#
cwebber2
nightpool: you mean, people want to be able to remove and modify their own content?
#
astronouth7303
so i think we're back to "services may die; deal with it"
#
nightpool
I think that it's not really a huge failure case because things are distributed without metadata
#
astronouth7303
which means providers have to maintain their cache forever
#
nightpool
cwebber2: "if I toot this image, and then delete my toot, will people still be able to see my image"
#
nightpool
is an answer which has an unambigous "yes" in any content-addressed system
#
cwebber2
nightpool: right
#
nightpool
or at least, it *definitely* does in ipfs
#
cwebber2
though, of course there's no guarantee in any distribution system that requests to modify or delete will ever be respected in *any* federated network
#
nightpool
yeah
#
nightpool
but that's a tractable social problem
#
cwebber2
but at least you can ask politely over the protocol ;)
#
cwebber2
there's also the flip side of this
#
cwebber2
and those who were around back in the days when identi.ca was bick
#
cwebber2
will remember the famous "denticide" event
#
astronouth7303
not familiar
#
nightpool
can you elaborate?
#
cwebber2
so, in the late-aughts, especially around 2008-2009 when identi.ca was the second largest twitter-like social network site
#
cwebber2
there were a lot of conversations about FOSS legal and community things, and they made heavy use of statusnet's threaded communication system
#
cwebber2
honestly it's probably how I survived my job at creative commons, learning all that stuff from those conversations
#
cwebber2
so it was great, but
#
cwebber2
the biggest two participants were Bradley Kuhn and Richard Fontana
#
cwebber2
and at one point, Richard Fontana announced, for both their own personal reasons and as kind of a public performance art
#
cwebber2
that they were going to commit "denticide"
#
cwebber2
and they gave a time window before they would delete all their posts
#
cwebber2
I know Bradley at least scrambled to back it up
#
cwebber2
but then Fontana ran a script, and it went through and deleted post after post
#
cwebber2
and even people not on identi.ca
#
cwebber2
on their own sites
#
cwebber2
were upset
#
cwebber2
because it destroyed the threading interface
#
cwebber2
and made the threads impossible to follow
#
cwebber2
with one of the biggest participants suddenly removing a ton of the most relevant content
#
cwebber2
and even if you "hosted your own" on the data
#
cwebber2
it was like as if someone reached into your email inbox and deleted all the mail they had previously sent you that you really valued
#
nightpool
yeah
#
nightpool
social networks are weird, man
#
cwebber2
so, that's the flip side to the mutability on social networking
#
nightpool
I think that user-level archiving is a huge feature that very few social platforms have taken on yet
#
cwebber2
even if done by the person who posted initially, at least the denticide performance art demonstrated that that too can be pretty damaging
#
nightpool
One of the most popular XKit addons for tumblr is PostArchive, which saves local copies of posts you want to come back to.
#
nightpool
I think there's a sense in which a huge part of giving end users control over their own data means giving them ways to export (and view!) data that they see
#
nightpool
stuff like ctrl-s works sometimes, but it's often super brittle.
#
cwebber2
it's also a reason why git turns out to be very popular
#
nightpool
stuff like archive.org is public, which means that you can be seen as a bad actor if you put stuff there
#
cwebber2
but to flip around again
#
cwebber2
the immutability of git also upsets some people too
#
cwebber2
and for good reason
#
aaronpk
I think this demonstrates the fragility of a single implementation more than anything
#
cwebber2
I know a number of trans hackers who would like to have their old content associated under their present name
#
cwebber2
but all the old content refers to their deadname
#
cwebber2
and there's no good way to update it
#
aaronpk
if there were a bunch of implementations, chances are at least one of them would great seeing a "delete" activity as "hide from public but keep an archive" instead of actually deleting it
#
cwebber2
personally, in general I think content addressed storage plus immutable type things are great but
#
nightpool
yeah, that's a huge thing.
#
astronouth7303
and there's a number of trans folk who would rather _not_ be found by their deadname
#
nightpool
with my own repositories, I can use git filter-author, but I'm not going to ask other projects to do that
#
astronouth7303
going back through other people's content and editing the name?
#
nightpool
going back through my own content and editing the name?
#
astronouth7303
i mean, is the suggestion that all content refering to you should be edited in the event of a name change?
#
nightpool
I don't know.
#
cwebber2
one way things could be mitigated would to be have the content point to something that's some identifier owned by the committer
#
cwebber2
which *would* mutate in some way
#
cwebber2
so you could open up some limited mutation
#
astronouth7303
that sounds like a markup thing
#
nightpool
yeah
#
cwebber2
I mean, instead of "Foo User <foo@example.org>" you'd do
#
cwebber2
or something.
#
cwebber2
now you're solving the immutability problem with mutability ;)
#
astronouth7303
cwebber2: are you talking git or social web?
#
cwebber2
astronouth7303: git
#
nightpool
you're also just pushing it off by assuming people want to change names but not identifiers
#
cwebber2
as a metaphor for how to deal with the ipfs and other immutable systems stuff
#
astronouth7303
ah, ok
#
cwebber2
it could be slightly better with a bit branch style approach, where you have immutable objects
#
cwebber2
nightpool: I think you might have a pretty impossible solution if you want identifiers to change without some sort of breadcrumb
#
nightpool
Yeah, anyway, the IPFS stuff I was looking at as strictly a block-storage thing, like a S3 replacement.
#
cwebber2
on a distributed system
#
nightpool
Sure, I'm just saying. Real life people are messy.
#
cwebber2
I agree there :)
#
nightpool
If there's one thing I've learned from being on tumblr for as long as I have, it's that any user-customizable identifier will get used as a name/identity. and people change identities all the time
#
nightpool
Trying to track down old tumblr posts, *even when they're still accessible* is a headache and a half.
#
cwebber2
identities and currency are related like that; they're given meaning by social constructs and conventions
#
cwebber2
and trying to prevent something from becoming a "real identity" or "real money" is pretty impossible
#
cwebber2
see every MMORPG currency turning into a black market ever
#
astronouth7303
hahahahaha yup
#
Loqi
rofl
#
astronouth7303
about the only thing you can do is use opaque URLs
#
nightpool
well, the other thing is that people often don't want the things they say they want.
#
nightpool
Like, I want to make a clean break on my old identity, in a meaningful way, so super transparent breadcrumbs would make me want to do something to break them. But at the same time, I don't want to ruin my previous history forever--i'll want to come back to it at some point
#
nightpool
so there are lots of shades of grey about what kind of behaviors people want out of a system
#
astronouth7303
that's pretty easy, though? Just make a new account with no affiliations and don't delete the old one?
#
nightpool
but then what would I do with my social graph? :P
#
astronouth7303
pray everyone friends you?
#
astronouth7303
i think encouraging the principle of least surprise is a good thing in this case
#
cwebber2
at least everyone can agree it's hard stuff I hope
#
cwebber2
unless you've got a not-obvious easy answer for everything in which case please chime in ;)
#
ben_thatmustbeme
i think posting on an old account if you want everyone to friend a new account, or direct messaging at least a good portion of your graph to inform of the new account has worked for most people in practice
#
nightpool
we go back to writing letters?
#
cwebber2
nightpool: pretty sure letter writing doesn't solve these identity problems, it just makes them much slower to propagate
JanKusanagi, jankusanagi_ and aaronpk joined the channel