15:04:06 RRSAgent has joined #social 15:04:06 logging to http://www.w3.org/2017/06/28-social-irc 15:04:08 RRSAgent, make logs public 15:04:08 Zakim has joined #social 15:04:10 Zakim, this will be SOCL 15:04:10 ok, trackbot 15:04:11 Meeting: Social Web Working Group Teleconference 15:04:11 Date: 28 June 2017 15:04:18 present+ 15:04:19 present+ 15:04:23 present+ 15:04:52 present+ but will need a minute to finish connecting to Mumble 15:05:14 present+ 15:05:14 but irc 15:05:51 scribenick: puckipedia 15:06:49 cwebber2: we've been extended to the end of the year, the biggest update is the discussions about hashtag type and sensitive media stuff 15:08:30 cwebber2: about non-standard extensions: activitypub does extensions to activitystreams, but should it do this for hashtag types etc? conclusion is that it should only be done for protocol things, like inbox/outbox. sensitive media flag doesn't affect protocol 15:09:20 q? 15:09:55 cwebber2: the reason there is no hashtag type is unknown, AS2 is looking into the history of it not being there 15:12:10 sandro has joined #social 15:12:10 sandro said that the CG isn't the only group that is able to define extensions, but is the place for extending AS2 15:12:13 https://anticapitalist.party/users/HeckTheCistem/updates/52730 15:12:14 [Leah] I put it in my bio, but just wanted to put it out here, if you're sharing images, video, or audio of storms, could you please CW it? I have pretty bad astraphobia and it would really help me 15:12:20 's namespace 15:12:37 sandro clarified that they also think the bar for doing extensions / experiments are fairly low 15:13:39 ajordan: people should be encouraged to bring the extensions to the CG, because it helps improve, include more viewpoints 15:13:53 puckipedia++ 15:13:54 puckipedia has 3 karma 15:14:09 topic: IndieWeb/ActivityPub interop updates from IndieWeb Summit 15:14:15 https://imgur.com/QJFiTcu 15:14:38 https://indieweb.org/2017/ostatusbridge 15:15:25 ajordan: at indieweb summit I sat down with [some people from ???], we nailed down how to bridge IndieWeb with ActivityPub 15:15:48 s/???/the indieweb community 15:16:26 ajordan: we should be able to bridge micropub to activitypub, by translating it to a Create activity, so micropub clients can communicate with AS2 servers. The more complicated thing is everything else 15:16:50 sandro: was there a specific direction in which the bridge works? my guess is having existing indieweb sites communicate with AP sites when they are deployed 15:17:27 ajordan: it was both. one point of contention is "how much do we want to depend on different implementations?" 15:18:29 so AP site defines a webmention endpoint, can be hosted anywhere, makes sense, the bridge can handle converting webmention to AP 15:18:32 ajordan: on the left you have an indieweb site, right AP. the green arrow is an IW site mentioning an AP site. trying to make that interaction work with a bridge, two ways to do it: 1. the AP server adds a WebMention endpoint into the html (via config) 15:18:43 hey all, sorry i'm late 15:19:07 cwebber2: the endpoint isn't necessarily on the site, the activitypub server just .. points to the bridge? 15:19:52 q+ 15:19:59 q- 15:20:22 ajordan: yeah. we think that will be a low enough barrier. But you have to catch all implementations. alternatively, the indieweb site would have to prefix the activitypub url with the bridge 15:20:43 for the record: http://w3c-social.github.io/social-web-protocols/#delivery-interop 15:20:53 sandro: the unmodified activitypub endpoint would be hidden behind the bridge, and the bridge would make it look like a different site with indieweb protocols? 15:20:59 AP/LDN <-> webmention bridging ideas 15:21:07 q+ to discuss mf2 <-> as2 transformation and rhiaro's link 15:21:40 ajordan: the bridge would make the IW site look like an Actor to AP, and the other side will be translated to microformats2 15:22:31 ajordan: this doesn't handle an AP site mentioning an IW site. What we thought was: the IW site could host a static JSON file representing an actor, with inbox+outbox URLs, which would point to a third-party server bridging 15:22:32 q+ 15:23:01 ajordan: any AP server could be redirected to a 3rd party bridge which would do the right thing 15:23:03 with the static actor json, is there anything that is required on the AP end to support that? 15:23:23 It sounds really good and we should support it. 15:23:26 so basically AP in/out box links point to appropriate endpoints on the bridge (and some static json?). and AP site defines WM endpoint link 15:23:26 ack cwebber2 15:24:50 cwebber2: you mentioned the link, the challenge you mentioned is we would have to make a clear transformation between AS2 and MF2 vocab. we could do that, but we would have to spec out which properties would be translated bidirectionally. AP usually has a bit more finegrained types, but hopefully that's part of the post type discovery protocol 15:24:58 q+ 15:25:16 ack cwebber 15:25:16 cwebber, you wanted to discuss mf2 <-> as2 transformation and rhiaro's link 15:25:17 ack puckipedia 15:25:26 scribenick: cwebber2 15:25:58 i have experimented with AS2 -> mf2, there are some mismatches in several ways 15:26:14 puckipedia: so the thing with activitypub / indieweb site having a third party inbox link, I was thinking of that because a server could potentially have the inbox of another user... might not be the best mode, but wouldn't that be an issue with some servers pointing to the inbox on another server? 15:26:22 q+ to talk about PuSH hub mode (text only) 15:26:28 ajordan: to be clear, the endpoints would specifically be designed to be a bridge 15:26:46 puckipedia: yes but I could imagine that some servers could refuse to post to something that isn't posted on the same server 15:26:56 ajordan: that's a violation of a spec 15:27:00 yeah, thats specifically supposed to be allowed 15:27:02 sandro: could you rpeat? 15:27:09 s/rpeat/repeat 15:27:21 q? 15:27:37 puckipedia: it may be a security thing 15:27:43 puckipedia: but it's probably good enough 15:27:58 scribenick: puckipedia 15:28:18 q+ to bring up the jf2 json-ld context of yore 15:28:51 sandro: about the differnt kinds of bridging, one way you could get interoperability, the nicest way is everyone implementing the same protocol, short of that is everybody implements every protocol, or this kind of bridge 15:29:47 sandro: two kinds of bridging: cooperating and non-cooperating. Bridging right now does bridging to non-cooperating sites, like FB and Twitter, and that's what I've been thinking of recently. but a cooperating server that just requires a few changes seems like a nice thing 15:30:18 q- 15:30:19 yeah, that's a really good point. 15:30:26 sandro: question is also if users should be bridged. with cooperating that may not be such a problem. if you sign up with an AP service and don't expect it to appear on another thing, that could get weird 15:30:27 q+ to bring up the jf2 json-ld context of yore, and also mention posts that mention posts and rewriting 15:30:30 q+ to reply to sandro 15:30:35 cooperative/non-cooperative bridging is good frame to think about this in 15:30:37 ack sandro 15:30:39 ack nightpool 15:30:39 nightpool, you wanted to talk about PuSH hub mode (text only) 15:31:24 nightpool: PuSH does have static actors with links to different inbox/outbox, the way this would be implemented, would it need an extension, or would it be strictly in spec? 15:32:02 ajordan: strictly in spec. Something this protocol allows from begin is that an inbox/outbox on another server is allowed. But the question is if it's possibel to make an AS2 static object 15:32:44 nightpool: PuSH does have hub mode, not sure everyone uses it. some kind of [??] for too much moving parts. but one static server and one bridging server is nice 15:32:59 q? 15:33:01 thats the case NOW, and thats not at all true 15:33:14 ack ajordan 15:33:14 ajordan, you wanted to reply to sandro 15:33:16 nightpool: most people have PuSH integrated into the site, instead of separate hub 15:34:31 nightpool, what kind of citation do you have for that? 15:34:36 ajordan: how do we design bridging so that people aren't surprised? if your server is going to interoperate not sure we can do anythign about it. all we're doing is mapping semantics. it has the same privacy semantics. sandro, you have touched on a broader problem. even without bridging, some implementations can still do things differently 15:34:39 q? 15:34:48 sandro: it's just going to be a long process to get a handle on it 15:34:49 ben_thatmustbeme: you would know more about it then me, but my understanding was that nobody in the GNU social space uses hub servers anymore because they added too much complexity. 15:34:50 ack cwebber 15:34:50 cwebber, you wanted to bring up the jf2 json-ld context of yore, and also mention posts that mention posts and rewriting 15:35:23 jf2 has a json-ld context 15:35:39 not on audio 15:35:43 cwebber2: how JF2 might help: at one point we looked at JF2 having a @context, I did some experiments. it may help things, but maybe we still have to translate it 15:36:00 https://www.w3.org/TR/jf2/#JSON-LD 15:36:01 tantek has joined #social 15:36:38 cwebber2: one concern is, one challenge is if you have a lot of back-and-forth: AP server A connects to bridge B, and IW server I. A writes post, sent to I through B 15:37:02 cwebber2: since it wants to see things in MF, I will rewrite the URIs to its own URIs. is that correct, by design? 15:37:23 A is ActivityPub, I is IndieWeb, B is Bridge 15:37:27 do you mean how like bridgy turns tweets in to mf2? 15:37:39 nightpool, also, thats the other way around. we are talking about discovery of hubs, i don't know of any that don't support hubs being externally 15:37:50 "I is IndieWeb" sounds funny :) 15:37:51 (and I misspoke, it should be A->B->I, does B rewrite the ids / uris to the brudge url) 15:37:56 people can implement it inside their server, but thats entirely outside of the spec 15:38:10 ajordan: if IW server doesn't do anything to support bridging, the user on A can prefix their URl with the bridge URL, and that will take care of the translation. the bridge sends webmention, presents MF2 markup 15:38:45 no 15:38:47 q+ 15:38:58 cwebber2: imagine you have an ID at A server, the indieweb server sees it as B id, if I replies to the message, it sees it as B 15:39:12 we should totally look at how bridgy and indieweb sites who use bridgy deal with this 15:39:26 totally 15:39:30 because bridgy makes new uris for tweets and fb posts, and peopel reply to them and bridgy publish sends them forward.. 15:40:10 ajordan: a lot of AP servers support MF2, if the AP server's markup is good enough, just send a webmention *for* that canonical url. but that won't always happen 15:40:59 ben_thatmustbeme: this is the exact same way bridgy works, it works fine, can give the URL of the post as a different location. Sends webmention from bridge, the MF it generates will have the URL of the individual post as source URL 15:41:33 ben_thatmustbeme: when the IW server fetches the message from the bridge, it sees the original URL 15:41:54 send a webmention *for* that canonical url. but that won't always happen 15:41:57 oops, sorry 15:42:02 my terminal does that sometimes. 15:42:14 ben_thatmustbeme: if you look at my site, and the comments, you can see it's a facebook permalink. if I reply, it goes to a facebook url, the trick bridgy does is that it tells bridgy that I sent a reply 15:42:48 ben_thatmustbeme: if the AP site has webmention that's the bridge, I can send webmention to it fine, the bridge should be able to pul lthe MF2 from my site, and just generates the AP equivalent. that's tricky, but a bit easier than the other direction 15:43:29 ben_thatmustbeme: if the AP site has MF already marked up, super easy, just send the webmention. if not, the IW site has to do that [missed] the bridge. The trick the bridge would work, generating these microformats, experimenting gets complex, the systems are slightly different. I do have some sample code 15:43:44 ben_thatmustbeme: referencing the URLs in the origin should be fine. you shouldn't see the bridge as the permalink 15:44:11 cwebber2: you can mark the other URL in AS2 somewhat goofily, but I think it would break a threaded conversation that was using the IDs, but maybe that's not a big of a deal 15:44:42 cwebber2: the best thing would be if both ends implement both vocabularies. but the protocol could still be done by the bridge 15:44:44 q? 15:45:09 ack ben_thatmustbeme 15:45:09 ben_thatmustbeme: on the IW sites, back&forth would work fine. but not sure with ID versus URL, if the ID is used as bridge's 15:46:20 Mastodon has some problems with it, I know 15:46:22 ben_thatmustbeme: I did have one reply to PuSH hub brought up, external sites. there's lots of cases people implement hubs internally, but afaik subscribers don't support having a hub on an external url 15:47:22 q? 15:47:24 nightpool: mastodon does do host verification, e.g. to send private posts, it has to have one follower on that host. on GNU very few people have hub servers. I think this won't fall into the pitfalls having an external server would 15:47:38 s/GNU/GNU Social/ 15:48:21 ben_thatmustbeme++ that was super helpful 15:48:21 ben_thatmustbeme has 80 karma in this channel (242 overall) 15:48:30 cwebber2: I mentioned, nightpool, we have been discussing in the WG that protocol extensions make sense to happen in AP, but non-protocol extensions (vocab), e.g. sensitive media, hashtag, should be extensions handled by ideally this group 15:48:33 that's rel-canonical= right? 15:48:38 topic: More on the sensitive media stuff? 15:48:48 you don't need rel-canonical 15:49:02 its just the u-url of the h-entry 15:49:07 ahh okay 15:49:30 cwebber2: last week, having a sensitive boolean would be nice, diaspora has nsfw hashtag, and mastodon has it. I filed an issue and brought it over to the WG. the WG wasn't going to handle it, we're going to handle it as an extension outside the WG 15:49:49 cwebber2: there was concern about that route, and problems with, in mastodon the user who posts it sets the sensitive flag. 15:50:05 nightpool: yes. admins could change it later, if it's reported etc 15:50:57 Yeah, tumblr had more recent examples of this, yeah. 15:51:00 cwebber2: one of the concerns is, if the user does it it does fine. but large centralized sites would flag it itself. youtube started to mark anything with queer as their 'sensitive/NSFW' flag. children viewing any post about LGBT, they couldn't do it 15:51:15 ajordan, take a look at the source of this reply to aaron's post on FB https://brid-gy.appspot.com/post/facebook/11500459/1303177323082898 15:51:15 [KmikeyM] Thanks to Aaron for making this. I'm going to listen to it on repeat all night long. "Markets provide." https://scontent.xx.fbcdn.net/v/t15.0-10/s130x130/17237577_10103078144121416_6370340805332172800_n.jpg?oh=77c57f1744ac89a772334e16ff3c0343&oe=59C33D75 15:51:22 sandro: the queer label was tantek, the youtube thing was based on unknown things, they just did their own thing 15:51:53 q? 15:51:53 cwebber2: is handling things on a boolean thing for the entire post a good thing? it's not so bad if the user makes the decision, but it's worse if the hosting provider makes the decision 15:51:58 ohhh, got it ben_thatmustbeme 15:51:59 thanks 15:52:03 my point was that Twitter apparently started hiding tweets with the word "queer" with a "content warning" 15:52:04 q+ 15:52:09 ack nightpool 15:52:10 which is pretty messed up 15:52:30 nightpool: i wouldn't be supporting this if hosting providers woudl add it, users should do this and it should be opt-in 15:52:57 I suspect hosting providers will start abusing any such boolean flag 15:52:59 nightpool: tumblr did a thing recently, they added both a per-post and per-blog sensitive boolean, and then they restricted <18 people from seeing those blogs. caused initial turmoil, still has repercussions 15:53:06 marking things as "sensitive" even when the author has not done so 15:53:28 tantek++ 15:53:28 tantek has 63 karma in this channel (359 overall) 15:53:38 for that reason (inevitable abuse by those in power - in charge of hosting providers), I think this is a bad design / feature 15:53:38 nightpool: very soon they might restrict public access. we should make sure to indicate this is optional that users can support, and it should be done by the user, by the policies of their server 15:53:39 q+ 15:53:45 q? 15:53:47 nightpool: it shouldn't be automatically ascertained 15:53:48 it will be used for censorship 15:53:52 ack puckipedia 15:53:55 scribenick: cwebber2 15:54:10 even if the spec says not to, even if the spec says hosting providers shouldn't add it if authors have not done so explicitly 15:54:43 puckipedia: the thing is... I don't exactly see the sensitive boolean as just that boolean. for example, Mastodon also has a Content Warning label and the summary vs the content... so you'd not just have the sensitive warning, it would/n't also show the content of the post it was sensitive 15:54:52 puckipedia: I'm thinking of how this will apply in a federated context... hm... 15:54:56 q? 15:54:57 it'd show the summary 15:55:21 scribenick: puckipedia 15:55:24 we know from the debacle of rel-nofollow (another negative boolean as it were) that hosting providers are not to be trusted with negative annotations, and will inevitably abuse them for their own (perceived benefit) and claim they "have no choice" or "have to for SEO reasons", or "have to because spammers" or some other such claptrap 15:56:01 cwebber2: how would the group like to go forward with defining these things? 3 proposals. noone wants an automatic sensitive boolean. so having a non-automatically applied sensitive boolean, whether that would happen or not, would be one avenue to explore 15:56:01 tantek: are you able to briefly summarize that problem? 15:56:27 cwebber2: avenue 2 would be a summary-type content warning. Mastodon is doing it as just *the* summary property, and isn't making a differentiation. Gargron seems fine with that 15:56:35 ajordan which problem? 15:56:42 rel-nofollow 15:57:02 cwebber2: another avenue would be more granular filtering by specific tags, being separately flagged as being sensitive/content warning. but not the open-ended content warning text area 15:57:15 ok mumbling... 15:57:15 q+ to respond to tantek 15:57:25 q? 15:57:26 cwebber2: they all have their trade-offs, and the question is: how do we want to go forward, and does anyone want to take the initiative? 15:57:34 ack nightpool 15:57:34 nightpool, you wanted to respond to tantek 15:57:55 nightpool: there's been some discussion in chat 15:58:03 the third one is the most compatible with my current protocol. The other 2 I would have to lose fidelity somewhere 15:58:42 btw, my (likely outdated) code where i was experimenting with this 15:58:45 http://stream.thatmustbe.us/?url=https%3A%2F%2Fben.thatmustbe.me%2Fnote%2F2017%2F6%2F26%2F10&op=mf2-as2 15:58:47 t: ajordan summarised the problem was rel-nofollow, with the express purpose of placing on links of *third-party* content. people commenting on a blogpost hosted by a service provider. as deterrant for spam links 15:59:05 s/t:/tantek:/ 15:59:50 tantek: service providers put rel nofollow on second-party content. this is on all silos, large social media. all links you place will be rel-nofollow. and they don't take responsibility to remove spammers. it's effectively broken link weighting 16:00:29 tantek: the spec says one thing, and publishers have universally abused it. given that experience I expect publishers to abuse the feature 16:01:13 tantek: I would expect publishers to abuse the boolean. there is no way to prevent that from happening. I hope I'm wrong, but the rel-nofollow experience says publishers will abuse it, users be damned 16:02:36 nightpool: I think that's super true, the main way this could be abused is if providers restrict all access to sensitive media, for e.g. accounts under 18. if it's just a click-through, it's not that bad of an outcome, no inherent censorship. So I think to combat that we should courage the sensitive label to things that aren't just sexually explicit content 16:03:15 nightpool: we should say explicitly it's applicable to a wider variety of things, including things that you don't show to under 18s, or tell that it isn't for hiding, so we remove the loading of 'sensitive' terminology 16:03:26 dropping this example again of a (i think) sarcastic point https://anticapitalist.party/users/HeckTheCistem/updates/52730 16:03:28 [Leah] I put it in my bio, but just wanted to put it out here, if you're sharing images, video, or audio of storms, could you please CW it? I have pretty bad astraphobia and it would really help me 16:03:45 cwebber2: the way Mastodon has CW for e.g. politics, Steven Universe, if we add sensitive, we encourage people to use it very widely 16:04:13 q? 16:04:23 I kind of see this boolean as "will generate feels" 16:04:27 nightpool: the other example is, nearly every (flashing?) gif is marked sensitive, because it's distracting, such a broader use of 'sensitive'. or maybe another term instead of 'sensitive' 16:04:38 I have to go to another telcon 16:04:38 +1 16:04:42 -0 16:04:44 +1 16:04:47 +0 16:04:48 but y'all continue 16:04:50 actually +0 16:04:51 PROPOSED: go to 15 mins past the hour 16:04:52 +1 16:05:01 +1 16:05:17 thanks everyone! keep up the thoughtful discussion <3 16:05:20 cwebber2: what I'd like to push for, it's not going to take 10 minutes 16:05:34 tantek: thanks for being here :-) 16:05:46 cwebber2: we've got three outlined directinos, sensitive as broad flag, CW-style direction, and fine-grained sensitive tags 16:06:14 cwebber2: I would suggest, as this owuld be done as extension, or it's just fine to keep using the summary field without differentiation, it'd be a good idea if somebody took on responsibility of leading this 16:06:38 cwebber2: investigating a proper extension, etc. doesn't mean that it has to be done now, but I don't have the time personally. I would love to see if there's someone who feels to do that 16:07:00 nightpool: I would be down to take this on, with some guidance. Where should I be writing this, etc 16:07:38 cwebber2: we have an AP wiki page, the person who's organising it can decide where they do the organisation. maybe a good route would be or speccing this up on a wiki, or a github issue. what do you feel would be the best approach, nightpool? 16:07:45 nightpool: github issue 16:07:48 seeing as I can't edit the wiki :) 16:08:07 cwebber2: I would then suggest a github issue on the socialcg issue, and then add it to the wiki 16:08:09 just drop the link in here 16:08:17 q? 16:08:43 thanks all 16:08:52 puckipedia++ for a hard day of scribing! 16:08:54 If yall need any info about real-world examples, I have a few from testing my own implementation of this, which apparently is the most complex version of it in the wild 16:09:01 cwebber2: let's close it! productive meeting, thanks nightpool for taking this on, and thanks puckipedia for scribing 16:09:11 puckipedia++ 16:09:11 puckipedia has 4 karma 16:09:20 trackbot, end meeting 16:09:20 Zakim, list attendees 16:09:20 As of this point the attendees have been cwebber, puckipedia, tsyesika, but, will, need, a, minute, to, finish, connecting, Mumble, rhiaro 16:09:23 Re senstive media: Investigative reporting on how badly Facebook decides what is hate speech: https://www.propublica.org/article/facebook-hate-speech-censorship-internal-documents-algorithms 16:09:26 oh boy 16:09:27 hey I was present 16:09:28 RRSAgent, please draft minutes 16:09:28 I have made the request to generate http://www.w3.org/2017/06/28-social-minutes.html trackbot 16:09:29 RRSAgent, bye 16:09:29 I see no action items 16:09:31 present+ 16:10:55 RRSAgent has joined #social 16:10:55 logging to http://www.w3.org/2017/06/28-social-irc 16:11:05 the fuck is going on? 16:11:41 RRSAgent, make logs public 16:12:36 puckipedia++ 16:12:36 puckipedia has 5 karma 16:14:09 I can't load any of the specs, yikes 16:14:49 It's w3c geek week, I guess this is what happens 16:16:47 ben_thatmustbeme: I saw, got you but late (I was late too) 16:16:54 lol, ajordan 16:17:12 the dangers of present+ 18:25:56 wow 18:26:04 via sandro https://www.propublica.org/article/facebook-hate-speech-censorship-internal-documents-algorithms 18:50:11 Zakim has left #social 18:50:18 yeah who invited you anyway Zakim 19:30:41 [@martijnvdven] @randw With @W3C specs like #Micropub https://www.w3.org/TR/micropub/ building on them, not to mention… https://twitter.com/i/web/status/880145805973352448 (http://twtr.io/1TL9eAUoV0o) 19:55:30 ben_thatmustbeme: indeed 19:55:31 fml 19:56:03 w3.org seems to be back up 21:23:15 [@t] I work @Mozilla on @CSSWG & https://wiki.mozilla.org/CSS #OpenWeb https://wiki.mozilla.org/Standards @W3CAB @SocialWebWG @IndieWebCamp (ttk.me t4p52) (http://twtr.io/1TLL04EJsDu) 21:33:15 hm, Kroeg, my AP server, is slowly becoming a very generic thing, internally using AS2 22:22:46 JanKusanagi has joined #social 23:02:08 timbl has joined #social