#social 2018-04-11

2018-04-11 UTC
#
@strugee2
↩️ our charter expired - that's just the way WGs work at the W3C :-) but a lot of the same people are active in the Social Community Group! https://www.w3.org/wiki/SocialCG
(twitter.com/_/status/983877369390862336)
xmpp-social and tantek joined the channel
#
tantek
ajordan++ good response
#
Loqi
ajordan has 25 karma in this channel (26 overall)
#
tantek
hmm seeing the profile property/value extensions discussion a bit late
#
tantek
I tend to agree with the first suggestion to use tags for this
#
tantek
"@type": "PropertyValue" --- is ugly and seemingly useless syntactic vinegar
#
tantek
BTW prior art here is Flickr's use of "machine tags", that is, "tags" to represent arbitrary property value pairs in a "prefix:property=value" syntax
#
@joeldrapper
🤔 What if Facebook was forced to implement ActivityPub? https://www.w3.org/TR/activitypub/
(twitter.com/_/status/984038991446949888)
#
aaronpk
good morning
eprodrom joined the channel
#
eprodrom
hi all
#
eprodrom
I'm on but silenced, just grabbing a conference room
#
aaronpk
there's just 3 of us so far, anyone else going to join?
eprodrom_ joined the channel
#
melody
i'm also only really half here, i'm really busy today and was planning on just listening in, but it seems mumble is being weird for me again
#
saranix
present IRC only as usual
RRSAgent joined the channel
evanp and trackbot joined the channel
#
aaronpk
trackbot, start meeting
#
trackbot
Sorry, but no Tracker is associated with this channel.
#
aaronpk
huh yeah
#
evanp
Huh
#
aaronpk
trackbot, we're starting without you
#
trackbot
Sorry, aaronpk, I don't understand 'trackbot, we're starting without you'. Please refer to <http://www.w3.org/2005/06/tracker/irc> for help.
#
aaronpk
TOPIC: OAuth 2
#
aaronpk
evanp: pump.io has been implementing OAuth 2
#
aaronpk
to get C2S and S2S working
#
aaronpk
getting a few tens of thousands more users on activitypub
#
puckipedia
oh woops
#
puckipedia
one sec
#
aaronpk
we did not have scopes in the previous api based on oauth 1.0
#
aaronpk
there were some questions around that from users
#
aaronpk
you either have the choice of giving total control or no control, which is a stark choice
#
aaronpk
for pump.io, with the existing api, there are 4 classes of clients that use the api
#
aaronpk
1) "normal" clients, android/ios, some web clients, that are giving you a full social networking experience
#
aaronpk
you read the inbox, post items, post text or files, etc, follow, unfollow, etc
#
aaronpk
the pump.io web UI is a client in that way, it requests authorization the same way any other client would
#
aaronpk
2) read-only clients like bridges, pushing your data out to other networks, doing analysis, etc.
#
aaronpk
3) a group of projects that operate on their own data, play a game and generate activities where all the data is related to that game
#
aaronpk
openfarmgame is the best example
#
aaronpk
4) web browser utilities, a "like" button in your web browser
#
aaronpk
focused on one kind of activity but operating across the web
#
aaronpk
that doesn't cover everything but those are the kinds we had
#
aaronpk
another that operates only on its own data, you can log into a pump.io site from another pump.io site and then follow people and comment and share
#
aaronpk
that remote pump.io site acts just like any other client
#
aaronpk
looking at OAuth 2.0 scopes for activitypub and thinking about what scopes we want to support, activitypub doesn't define scopes yet
#
aaronpk
which is kind of a bummer because people implementing clients, knowing a fixed group of scopes is useful
#
aaronpk
if I direct my android client at something that supports activitypub it would be nice if it understood when I askf or certain types of access
#
aaronpk
it seems there are two ways people do scopes
#
aaronpk
one is in super fine grained detail. other companies do this down to giving access to certain parts of your account, who you're following, post this kind of activity, etc
#
aaronpk
that gives a lot of control to the user, but also is a lot of overhead to the user
#
aaronpk
there is some cognitive load that has the unfortunate side effect that people just click through
#
aaronpk
the other path that other implementers take is a very minimal set of scopes.
#
aaronpk
after some discussion in #social with aaron, we worked on a first version of scopes, a fairly minimal set of scopes
#
aaronpk
we want to put these up and say hey everyone should implement these scopes
#
aaronpk
we took a look at our existing clients and came up with four scopes
#
aaronpk
1) login authorization. no read or write access, just identification
#
aaronpk
2) "read": gives full read access to your account
#
aaronpk
anything that the user can read the application can read
#
aaronpk
user profile, user social graph, user's inbox feed, and outbox feed
jankusanagi_ joined the channel
#
aaronpk
3) "writeown": the client can post activities that are related to the client's own server
#
aaronpk
so if it's a game, the targets of the activities are on the same domain as the game
#
aaronpk
so a game at openfarm.example, the IDs of the targets would be on openfarm.example otherwise refused
#
aaronpk
activitystreams objects are kind of complex, so we're imagining a little flexibility, but the general expectation is things like "reply to" "like" "follow" the activity would be closely related to the originating client
#
aaronpk
4) "writeall": for full-featured client applications, like an android client
#
aaronpk
that is implemented in pump.io right now
#
aaronpk
in the master branch
#
aaronpk
we'll be rolling out 5.2 version in the next few weeks
#
aaronpk
so we'll have that implementation available to start testing
#
aaronpk
the question is will clients say it's too much hassle to ask for certain types of scope and ask for maximum and expect people to click through
#
aaronpk
our hope is that the scopes will be useful for our clients
#
aaronpk
my goal is to write this up as a wiki page or note for the CG so as other folks are implementing C2S for activitypub they can use similar scopes
#
aaronpk
aaronpk: that sounds great. i'd love to see this documented on the wiki, and once there is one or more client implementations, publish as whatever report format the community group can publish
#
aaronpk
puckipedia: one question I had was how abusable this could be, like writing a reply to a post on that server... (unintelligible)
#
aaronpk
evanp: are you saying we have a hostile client that attempts to write posts in reply to IDs that it knows it has access to
#
aaronpk
... yeah that's a risk of the "writeown" is that there's a lot of flexibility for the third party client to fudge around
#
aaronpk
... I don't think it's an iron-clad security system, that's not the goal here, it's to set a scope for what's okay and not okay
#
aaronpk
puckipedia: it might also be possible to be able to pre-set some scope, like all the posts this client makes can be public or private, etc
#
aaronpk
... for example when you log in to an app on facebook you can choose whether the app can make public posts
#
aaronpk
oops we lost evan
#
evanp
Mumble kicked me off
#
evanp
I was saying, yes, we could go REALLY fine grained in scopes
#
evanp
Which gives much more end user control
#
aaronpk
aaronpk: that mechanism is different from scopes. scope is an agreement between clients and servers, and for that example you actually don't want the client to know that they've been limited so the posts are only visible to the user
#
evanp
At the cost of UI complexity
#
aaronpk
... my point is that a server can implement that limitation without scopes
#
evanp
Ah, that's fair!
#
evanp
So, for pump.io, we're going to go with a coarse-grained set of scopes out of the box, which reflects the actual use we've seen from third-party clients
#
evanp
And if the community goes more down the path of fine-grained scopes, we'll probably still support our high-level ones for developers who've come to depend on them
#
evanp
...or phase them out over time
#
aaronpk
aaronpk: has this been written up anywhere besides the pump.io docs yet?
#
aaronpk
evanp: not yet, i'll give myself a task to create a wiki page describing this before our next meeting
#
aaronpk
TOPIC: Activity Streams context
#
aaronpk
evanp: at our last meeting we had discussed updating the context to add some properties that hadn't been caught.
#
aaronpk
... I did an update to the doc and it's in the github repository and sent an email to sandro and amy
#
aaronpk
I haven't heard from either of them about it, I was hoping they'd be on the call, since it'd be useful to get that finished up
#
tantek
waves from Berlin
#
aaronpk
[end of meeting]
#
aaronpk
RRSAgent, end meeting
#
RRSAgent
I'm logging. I don't understand 'end meeting', aaronpk. Try /msg RRSAgent help
#
aaronpk
RRSAgent, create minutes
#
RRSAgent
I have made the request to generate https://www.w3.org/2018/04/11-social-minutes.html aaronpk
#
aaronpk
RRSAgent, bye
#
RRSAgent
I'm staying, aaronpk; no access has been specified for the meeting record
#
aaronpk
RRSAgent, make minutes public
#
RRSAgent
I'm logging. I don't understand 'make minutes public', aaronpk. Try /msg RRSAgent help
#
aaronpk
RRSAgent, make logs public
#
RRSAgent
I have made the request, aaronpk
#
aaronpk
RRSAgent, bye
#
RRSAgent
I see no action items
RRSAgent left the channel
JanKusanagi joined the channel
#
ajordan
hi all, so so sorry to have missed the meeting
#
ajordan
as I was just saying in #pump.io I'm waaaay behind this morning - got very little sleep last night
#
ajordan
I gotta go but I'll read the minutes later; looks like you didn't need me specifically which is good
#
ajordan
anyway
#
ajordan
is, in the manner of all college students everywhere, a mess ¯\_(ツ)_/¯
#
ajordan
aaronpk: https://www.w3.org/wiki/RRSAgent#MediaWiki_output I added a feature request for you
#
aaronpk
hahaha
#
Loqi
awesome
#
ajordan
according to https://chat.indieweb.org/social/2014-11-25#t1416942969211000 RRSAgent has a maintainer so I may contact Bert to see about getting it on GitHub or something
#
ajordan
it's annoying that it's so hard to patch
#
Loqi
[Arnaud] from what I understand Bert Bos is currently working on it, so anyone who wants to change it should probably reach out to him to coordinate
cwebber2 and phenethylamine joined the channel
#
@joeldrapper
It should also be forced to implement the ActivityPub federated server-to-server protocol so people aren’t locked-in to Facebook just because all of their friends are there. https://www.w3.org/TR/activitypub/
(twitter.com/_/status/984147379522887681)
fr33domlover, evanp, vasilakisfil and cwebber2 joined the channel