#social 2018-07-24
2018-07-24 UTC
cwebber2, jankusanagi_, JanKusanagi and saranix joined the channel
# dansup jaywink: I improved nodeinfo reporting for pixelfed, it now gives more accurate results (separates posts from replies and better user counts) https://the-federation.info/node/pixelfed.social
# dansup Its also cached for 1hr to reduce load
# dansup aaronpk: This is my implementation if it helps! https://github.com/dansup/pixelfed/blob/dev/app/Http/Controllers/FederationController.php#L80-L111
# dansup .well-known/nodeinfo
# dansup should list the url of the nodeinfo.json file
# dansup its like webfinger, heh
# dansup no
# dansup nice! and wow 41k posts lol
uw_fluxus joined the channel
# uw_fluxus saranix, federated: Yes, that too :)
# uw_fluxus Also, I think AP could do much the same through use of group actor daemons.
xmpp-social, fr33domlover, vasilakisfil and timbl joined the channel
# JasonRobinson[m] dansup: great \o/
# JasonRobinson[m] aaronpk: wooo webmention is now a protocol in the-federation.info :) unfortunately, it also makes your nodeinfo doc invalid, as webmention is not a protocol in the nodeinfo spec. IMHO, it's an awful choice they made to make it an enum, I tried telling it to them tens of times but the feedback was ignored. thus, any parser who strictly implements nodeinfo spec will not be able to parse your nodeinfo doc. The-federation info doesn't care, exactly
# JasonRobinson[m] for this reason ;)
# JasonRobinson[m] I made a less strict version https://github.com/jaywink/nodeinfo2 once, which socialhome implements (and the-federation info parses). would be nice to at some point maybe discuss this kind of metadata in the socialcg. it feels like nodeinfo is becoming a "standard" via count of implementations
# JasonRobinson[m] so there is certainly a need for something like this which nodeinfo brings, now that the amount of projects implementing federated social protocols is going through the roof
jankusanagi_, saranix, cwebber2 and JanKusanagi joined the channel
# kaniini i feel like aaronpk would be a huge believer in my litepub philosophy ;)
# saranix A glaring omission in the AP protocol is an authoritative actor (the actor of the software delivering the actor object/answering the request for the object), dangling on this actor could be the nodeinfo object.
# saranix really, the sharedinbox should be there too, and not a property on every actor
# saranix it's one thing to say FYN, no .well-known bs. It's entirely another to pretend the server software doesn't exist, and doesn't need to be accounted for
# vasilakisfil would activitypub + webrtc in terms of Voip make any sense ?
# pantherse cwebber2, could you confirm that there is no more active development for activipy?
# saranix vasilakisfil: I wish I could understand webrtc. It's convoluted as all hell
# saranix pretty sure I never got an answer
# pantherse I'm working on a project that I'm using it in. I'm willing to maintain it. I think it's a good foundation to continue building on top of.
# pantherse cwebber2, I'd like to hear your thoughts. I saw the "brain dump" comment/heredoc; but, I'd like to hear what else you have that's not there.
# vasilakisfil yeah it's a bit complex
# vasilakisfil I have in my mind a tiny project, that you have a simple WebRTC-based Voip client in your purchased domain, and do cross-domain calls. Of course you need a backend for that as well for signaling etc, but it would be cool I think.
# pantherse Can you give an example of the .m.foo() stuff?
timbl joined the channel
# pantherse cwebber2, before we get too far. Is there any administrative-related items that needs to be dealt with if I'm to take over activipy?
# pantherse I mean from W3C's perspective.
# cwebber2 the .m.foo() stuff refers to http://activipy.readthedocs.io/en/latest/tutorial.html#methods-for-our-madness
# pantherse Ah, so maybe push the functions from the env up to ASObj, and have a standardized set of methods that extension vocabulary classes should implement then?
# pantherse I know the environment section you linked talks about the save() method from dbm. I haven't had a chance to look at dbm's code; maybe, that's where I'm missing things regarding the environment system.
# cwebber2 I added an issue https://github.com/w3c-social/activipy/issues/8
# pantherse OK, I understand now. I think that would be a good idea. The challenge will be how far to take it.
# pantherse So, a Note object could implement functions for things like the create activity.
# pantherse cwebber2, would it work out better for you if I PM you my email? I don't want to take you away from anything that you need to take care of today.
# pantherse No worries. From what I've gathered on this channel you've been busy. Hence, offering to go via email if it helps.
# cwebber2 pantherse: https://github.com/w3c-social/activipy/issues/8 I added another example
# pantherse OK, the sample indeed looks much better than what I was thinking.
# pantherse cwebber2, I send you my email as a PM. I'll look into issue #8 some more. If you can email me how you wish to proceed with me being a maintainer when you get a chance, that would be great.
# donpdonp these aggregation sites being built around activiypub is interesting. http://lazymastodon.com/ all (*cough*) federation posts, ranked with hackernews algo. https://mastodon-tags-explorer.hcxp.co/tags Tag Explorer
# Gargron so what, is NodeInfo a de-facto standard now?
# Gargron i dont like this
# Gargron why isnt it json-ld like the rest of our protocols?
# Gargron inbound/outbound services with hardcoded values like "twitter"...
# JasonRobinson[m] Yeah, don't like it either, but lack of anything better it seems people are adopting it. Unfortunately it's a bit broken
# nightpool[m] i don't find nodeinfo particularly useful or interesting for federated systems, fwiw.
# nightpool[m] it's required for the diaspora protocol but i don't see it's value over a normal crawler.
# JasonRobinson[m] But I disagree about json-ld. Nodeinfo or any metadata like this should be protocol agnostic
# JasonRobinson[m] nightpool: its not required for Diaspora protocol
# JasonRobinson[m] It isn't even mentioned in the spec
# JasonRobinson[m] But it did originate from there
# Gargron after that blog post by the diaspora dev about how unfit activitypub is from their perspective i have a sour taste about any tech originating from the diaspora use case
# nightpool[m] Oh, that's my mistake then. I was conflating it with saranix's comment about "authoritative actors"
# nightpool[m] my understanding was that the diaspora protocol is a node-to-node federation protocol, not actor-based.
# Gargron no, if that was the case, they wouldnt need federation relays, and they do
# JasonRobinson[m] Yes, but the federation doesn't rely on nodeinfo
# JasonRobinson[m] Private messages is actor based
# Gargron protocol-agnostic or not, NodeInfo uses some kind of json-schema definition which seems like a competing standard to json-ld. so its the same thing but different
# JasonRobinson[m] Nodeinfo is much older than AS2 or Activitypub π
# Gargron besides inbound/outbound services being hardcoded and arbitrary values, they're not even the same between inbound and outbound...
# Gargron "users" to refer to local users, but "localPosts" :thinking:
# Gargron "activeHalfyear"
# JasonRobinson[m] Yeah, the enums are crazy
technomancy left the channel
# Gargron pleroma, write.as and funkwhale have adopted this for reasons unclear to me
# JasonRobinson[m] Would be nice if Mastodon gave active user stats for monthly and half year periods. Now I calculate them from weekly values a bit magically π¬
# JasonRobinson[m] For the-federation.info
# JasonRobinson[m] Gargron: because even if broken, its the best there is?
# Gargron well that's kind of the good thing. which time period you want stats for is very arbitrary. by providing weekly buckets its up to you to calculate anything you want
# Gargron if you get activeHalfyear, good luck figuring out the last 3 months or the first 3 months of that period
# nightpool[m] well, it doesn't let you distinguish between having 2000 users who visit every other week and 1000 users who visit every week
# nightpool[m] but i think tracking retention on anything less then a week is kind of pointless anywayβit's just to puff up numbers
# nightpool[m] sorry, *larger then a week
# JasonRobinson[m] Gargron: I must say I don't quite understand the weekly values from Mastodon. Like, when from are they? It seems different from server to server. Now I take - 1 week to be sure
# Gargron you cant really do cohorts like that unless you can query the internal database fully
# nightpool[m] Jason Robinson: i'm not sure what you mean by when from are they
# Gargron i think they mean the latest value changes but not instantly
# nightpool[m] they're from the timestamp that's the key of the object
# Gargron the latest value is the current week but its cached heavily
# Gargron other than that the weeks correspond to commercial weeks
# JasonRobinson[m] On mobile now, will try to explain later nightpool
# Gargron is my explanation not sufficient? taking -1 week from now is the right thing to do as it's "complete"
# JasonRobinson[m] Taking - 1 week produces a bit of a jagged graph since it doesn't move daily, need to fix it at some point
saranix, cwebber2 and cwebber joined the channel
# JasonRobinson[m] so, in the current AP implementations that anyone reading this knows about (like mastodon, pleroma, peertube, for example) - are fragment ID's ok for activities? I'm implementing AP for socialhome (finally!) and I'm hesitant to store the activities separately. fragment id's would solve this problem
# JasonRobinson[m] but I'm worried if no one accepts them, I'll have to hack the activities on later
# nightpool[m] mastodon uses fragment ids
# JasonRobinson[m] ok cool π tnx!
# nightpool[m] ah sorry Jason Robinson we actually removed fragment identifiers before shipping because there was controversy on what "dereferenceable" meant
# nightpool[m] honestly I think it should be fine but what we did end up doing was just adding a statuses/12301/activity route
# nightpool[m] that returns the activity instead of the object
# JasonRobinson[m] well it's kind of the same. in hindsight, it was kind of a silly question :) I'll do something similar
# nightpool[m] we use fragment identifiers for the public key object
# nightpool[m] and stuff like that
# JasonRobinson[m] yeah that I saw, #main-key
# JasonRobinson[m] this is going to be so much "fun", mashing up diaspora and activitypub protocols under one Python API π
cwebber2 joined the channel
# bonan saw the same thing on another network just now
cwebber2, ajordan and saranix joined the channel
cwebber2, schmarty[m], strk[m], nightpool[m], csarven[m], sandro, trackbot, zauberstuhl[m], cybrematrix, pantherse, JasonRobinson[m] and tuxether[m] joined the channel