#dev 2018-06-06

2018-06-06 UTC
chimo, snarfed, [jgmac1106], eli_oat, tantek, [kevinmarks], renem and tantek_ joined the channel
#
tantek_
snarfed, looking into the 400 error messages (from Bridgy Publish to Github), I'm now not convinced that https://help.github.com/articles/restricting-access-to-your-organization-s-data/ is a useful place to link people - it feels too abstract
#
tantek_
and frankly starts with the wrong framing for what someone would need to fix the error!
#
tantek_
"Restricting access to your organization's data" ?!? sounds like the wrong page to be on to "help make Bridgy Publish work with a particular repo"
#
tantek_
here's a couple of (I think better) options (there may be more
#
tantek_
1. Hey publisher, please follow instructions at https://help.github.com/articles/requesting-organization-approval-for-oauth-apps/ to request permission from "org" for the OAuth App "Bridgy"
#
tantek_
and then ask someone at "org" to follow the instructions on https://help.github.com/articles/approving-oauth-apps-for-your-organization/ to review and grant access for Bridgy
#
tantek_
2. Create a new page on the IndieWeb wiki with the instructions in (1) and then link to that URL instead of https://help.github.com/articles/restricting-access-to-your-organization-s-data/
#
tantek_
and that (first have of 1.) doesn't work if you're not a member of the organization.
#
tantek_
so insertion to 1., parenthetical after OAuth App "Bridgy"
#
tantek_
(you need to be a member of "org" in order to request permission. if you're not a member, contact an owner of "org" and ask them to invite you to the "org")
#
tantek_
which is stopgap at best
#
tantek_
the problem is, why should you have to be a member of every org your want to file an issue or make a comment on?
#
tantek_
this (approval process for Bridgy Publish for Github) seems to be far too much work for the *common* case of commenting / filing an issue on a repo on an org that you are not a member of
#
tantek_
I mean, yes we should document the current state
#
tantek_
but what I'm saying is whatever API we are using that is forcing Bridgy Publish to have to jump through these hoops forcibly creates a bad UX
#
tantek_
thus Bridgy Publish should fallback to or perhaps instead call whatever API that silo.pub is using
#
tantek_
though I suppose that is the issue that snarfed asked me to file on Bridgy so this is the reasoning ^^^ and I'll try to capture that in the issue itself. in the meanwhile, Bridgy Publish to Github is going to be limited usefulness for folks who want to start actually owning their issues and comments.
#
tantek_
(I'm running into these roadblocks with just a few "simple" repos / orgs I seem to be interacting with)
eli_oat joined the channel
#
tantek_
til then, manual POSSE it is for repos in those orgs :/
tantek, eli_oat, KartikPrabhu1, KartikPrabhu, [miklb], cweiske, yoroy, swentel, iasai, jeremycherfas and [kevinmarks] joined the channel
swentel, jgmac1106, [deeden], jonnybarnes, [jgmac1106], barpthewire, [wiobyrne], yoroy, [kevinmarks], eli_oat, snarfed, cloud-maingo, tantek, gRegorLove, [schmarty] and [xavierroy] joined the channel
#
ancarda
So I'm reading through IndieMark Level 2 so I can improve my website. I don't really understand how https://indieweb.org/webactions works? What `<indie-action>` does. There's an example on tantek's website here: http://tantek.com/2014/175/t1/pdf14-why-need-indieweb-video-slides -- the Like/Repost/Reply buttons just open Twitter. What would they do if my browser understood (via a plugin) how to handle `<indie-action>`?
snarfed joined the channel
#
gRegorLove
ancarda, I think they're intended to work with /indie-config. The Twitter links are the fallbacks, but ideally someone would be able to open a reply interface on their own site or own micropub client based on the webaction
#
Loqi
gRegorLove: tantek left you a message 1 day, 16 hours ago: What do (features on your website) do you want to finish / launch / start using *before* IWS? Can you add to your entry in https://indieweb.org/2018/Guest_Book ? See mine for example: "Working: for IWS 2018(link)"
#
gRegorLove
and/or, if at some point browsers handled such links natively. I haven't looked at those two in a while, but that's my recollection.
[cleverdevil] joined the channel
#
[cleverdevil]
Huzzah! I got my serverless location tracking service working 🙂
#
[cleverdevil]
Overland -> Lambda -> S3
#
snarfed
[cleverdevil]++
#
Loqi
cleverdevil has 28 karma in this channel (89 overall)
#
[cleverdevil]
On a nightly basis, I have a scheduled Lambda that uses Athena to run SQL against the data, and generate a daily rollup and store that in S3.
#
[cleverdevil]
Its all accessible through an HTTP API
#
[cleverdevil]
Now, I need to actually *do* something with it.
#
ancarda
gRegorLove: Thanks, that makes sense. My general workflow for IndieWeb has been to write up posts, commit+push, and then have my server pull them down so they are visible. This works as I have a flat file structure for my blog. I might have to also allow my server write+commit+push if it's producing files for, e.g. likes
#
ancarda
A browser extension would be nice if you could just right-click any page and hit "Bookmark" and have that fire off a request to your site to publish a bookmark page, send a WebMention, and also archive it for you
#
gRegorLove
Omnibear can do the first part
#
gRegorLove
What is Omnibear?
#
Loqi
Omnibear is a browser extension for posting text notes, replies, and likes to your website using Micropub https://indieweb.org/Omnibear
#
ancarda
Oh cool, I'll have to check that out
tantek joined the channel
#
schmarty
Hmm. The more I built out micropub-powered sites the more I feel the pain of handling things like fetching reply context data on the server (endpoint) side of things.
#
schmarty
And although the Micropub spec suggests against nested objects in favor of URLs I keep thinking of cases where a client that can send nested h-cite info would allow the micropub server and site rendering to be simpler.
#
schmarty
Having the url-to-reply-context step on the micropub client would also allow users to preview (and potentially alter them) before posting.
#
sknebel
would it be easier to fetch the details in the client?
#
schmarty
E.g. the way Facebook allows you to select the representative image for a link on a post
#
schmarty
sknebel: I think the clients might be a better “domain knowledge” place for some kinds of sharing
#
schmarty
E.g. I want to track my listens with listen-of posts. That kind of client would be a reasonable place to have the logic for taking a URL from overcast.fm and extracting the useful episode info.
#
sknebel
ah. yes, such specific cases probably do make sense to handle client-side
#
schmarty
It feels reasonable to me but I also feel like it is directly against the advice of the Micropub spec.
#
tantek
whoa scrollback
#
tantek
schmarty: I agree with "Having the url-to-reply-context step on the micropub client would also allow users to preview"
#
tantek
schmarty, e.g. this is on my working on specifically: https://indieweb.org/Falcon#improve_replies_details
#
tantek
schmarty you can make a similar argument about letting a client handle syndication (POSSE) also, and then update a post with u-syndication URLs accordingly
#
schmarty
tantek: i find reply-context preview is a powerful feature! I really like it on Quill’s note interface, for example. But Quill doesn’t pass any of that preview information to the Micropub endpoint, so it’s only a faithful preview if my server can get/generate the same info
#
schmarty
tantek: I am actually working on a Micropub client to handle syndication 😳
#
schmarty
Using Micropub queries to fetch mp-syndicate-to properties, do the syndication, and Micropub update to add syndication properties (and remove the mp-syndicate-to)
KartikPrabhu and AngeloGladding joined the channel
#
[schmarty]
tantek: your replies details itch sounds very close to the UX i am thinking of.
[miklb] joined the channel
#
tantek
schmarty: hack day project at IWS!
#
[schmarty]
maybe even a pre-IWS project!
#
[schmarty]
ah, nice! i need to spend some time writing down all my fragmented projects and project ideas and pick some pre-IWS and IWS focus.
#
tantek
you have less than 3 weeks!
#
[schmarty]
totally isn't panicking. 😬
#
tantek
same same 😬
#
snarfed
noticeable impact on bridgy's load from turning off facebook backfeed: https://snarfed.org/bridgy_load_fb_backfeed.png
KartikPrabhu, tantek, [cleverdevil] and yoroy joined the channel
#
@jgmac1106
↩️ That’s just webmentions. There isn’t a difference between the #IndieWeb http://micro.blog community and the #IndieWeb #WordPress community. I am using Bridgy to syndicate my replies to your Tweets from my blogs and your replies are showing up as… https://jgregorymcverry.com/3290-2/
(twitter.com/_/status/1004423659530915841)
[jgmac1106] joined the channel
#
tantek
interesting post from the W3C # social channel re: alternatives to GitHub https://joeyh.name/blog/entry/the_single_most_important_criteria_when_replacing_Github/
#
tantek
in particular: "Consider all the data that's used to provide the value-added features on top of git. Issue tracking, wikis, notes in commits, lists of forks, pull requests, access controls, hooks, other configuration, etc."
#
tantek
(I disagree with "is it in a git repo" but that's just plumbing)
#
[cleverdevil]
Now, I've got current status information including WiFi connectivity, location, motion (walking, driving, stationary, etc.), and battery state on cleverdevil.io
#
tantek
this is why it makes sense to get indieweb /issue posts, /reacji /reply to issues, etc. work well
#
snarfed
[cleverdevil]: do you actually infer walking vs driving vs stationary? or just location, orientation, maybe velocity?
#
[cleverdevil]
Its actually passed via Overland, so you'll have to ask [aaronpk] how it figures it out.
#
snarfed
ah cool. maybe probably esri
tantek joined the channel
#
sknebel
(probably considering accelerometer etc too?)
#
jeremycherfas
!tell [cleverdevil] "Truffle" scented oil is an abomination.
#
Loqi
Ok, I'll tell them that when I see them next
jackjamieson joined the channel
[jgmac1106], gRegorLove, yoroy, snarfed, eli_oat, cloud-maingo and tantek joined the channel
#
aaronpk
yeah it's just part of iOS
#
aaronpk
Overland doesn't actually do much fancy stuff itself, it's mostly a wrapper around the iOS APIs
#
aaronpk
that's pretty cute [cleverdevil]!
tantek__ and tantek_ joined the channel
#
tantek_
Issue re: federating issues (how meta I realize) https://github.com/git-federation/gitpub/issues/11
#
tantek_
guess I should try to federate a thumbs up of it
#
Loqi
[yookoala] #11 Federated issue tracking
[cleverdevil] joined the channel
#
[cleverdevil]
I just finished a map overlay using Apple's new MapKitJS
#
[cleverdevil]
Thanks, [aaronpk]!
#
[cleverdevil]
Still very much a WIP.
leg and [grantcodes] joined the channel
#
[grantcodes]
How are you guys storing that location / personal data? In a separate database? I currently convert mine to microformats and store it with all my regular site content
#
[grantcodes]
But does mean 99.9% percent of my content is these automatic tracking posts
#
sknebel
[grantcodes]: [cleverdevil] told a bit about it yesterday: https://chat.indieweb.org/dev/2018-06-04#t1528128414692200
#
Loqi
[[cleverdevil]] For now, it just blindly stores each "location" in the array as a separate JSON file in S3.
#
Loqi
[aaronpk] Compass: Compass is a GPS tracking server that stores data in flat files.
#
aaronpk
yea, which stores each location update as a one-line JSON string (GeoJSON format), one file per day
#
[cleverdevil]
I am using S3 to store the data.
#
sknebel
hm... I thought we had a page about this....
#
[cleverdevil]
I was originally storing one object per location point, but it was insanely slow.
#
sknebel
what is location tracking?
#
Loqi
It looks like we don't have a page for "location tracking" yet. Would you like to create it? (Or just say "location tracking is ____", a sentence describing the term)
#
[cleverdevil]
Now, I store things in batches as they're delivered by Overland.
#
[cleverdevil]
Then, I use Amazon Athena to run SQL queries against the data, with a scheduled daily rollup.
#
aaronpk
I arrived at my data format after several years of doing this, and haven't changed the format in like 3 years now, so i'm pretty happy with it
#
aaronpk
i'm hoping to do a blog post probably next month with all sorts of details on this
#
aaronpk
it'll be my 10 year anniversary of tracking my location
#
sknebel
!tell ancarda want to document your person cards on https://indieweb.org/hovercard ?
#
Loqi
Ok, I'll tell them that when I see them next
#
[grantcodes]
Cool, kinda surprised I've not run into any issues with mongodb yet! Seems to handle it no problem for now, but maybe would make sense to store it elsewhere.
#
[grantcodes]
Although I do like that it is still the same format as everything else on my site
#
aaronpk
I have about 1gb/year of these JSON files, and at most 1 record per second, so I definitely don't want them in the same place as the rest of my content :)
#
[grantcodes]
Ha I think mine is a bit smaller than that
#
[grantcodes]
How do you query that then? Or do you just use the most recent one?
#
aaronpk
I pretty much only query by date, so I built a simple query API into Compass
#
aaronpk
since all the files are essentially sharded by date, it's really quick to find records
#
Loqi
[aaronpk] Compass: Compass is a GPS tracking server that stores data in flat files.
#
[grantcodes]
Ah ok so it stores all coordinates from a "trip" in one file. I just store the locations on their own
#
aaronpk
no, it doesn't store per trip
#
aaronpk
it stores one location record per line
#
[grantcodes]
I like the ability to generate a map for an entire year though. Not that I've ever managed to do it well...
#
[grantcodes]
Oh sorry, I was just looking at the response
#
aaronpk
the response is given a date range query
#
aaronpk
that's how my site queries the full list to generate the trip maps
#
aaronpk
hm I thought I documented that storage format somewhere
#
[grantcodes]
Hmm well I'll need to think about doing something smarter with my data at some point...
yoroy, KartikPrabhu and snarfed joined the channel
#
tantek__
sigh. this "OAuth App access restrictions" "feature" of GitHub has made OAuth even harder to use beyond per provider registration shenanigans
tantek joined the channel
#
snarfed
#hugacls
#
tantek
is that a channel, hashtag, or some other reference?
#
tantek
snarfed, if ACLs were the issue, then I wouldn't be able to post with GitHub's web UI either
#
tantek
that is, if it was just about ACLs, then given one way (web UI) for me to post to a repo / comment / react etc., then I would be able to use any other client to do so
#
tantek
either I'm on the ACL or not
#
aaronpk
Wait so there's a difference between what you can do via the web and what an all can do via the api?
#
snarfed
eh, different acl. github is distinguishing between you interactively vs bridgy
#
tantek
this is why this is such a mess
#
aaronpk
That sounds like a permissions bug
#
tantek
and totally broken design by github
#
tantek
snarfed, no, no different than using a different Twitter app to post to Twitter
#
snarfed
eh no, the security concern is valid. you've given me, the bridgy developer, an access token to let me act as you
#
snarfed
yup, which is a similar concern. twitter just chose not to distinguish
#
tantek
because making that distinction is bad UX
#
snarfed
but there is a meaningful difference, and it's reasonable for github to care more about the security concern
#
snarfed
from an enterprise security distinction, it can absolutely matter. UX vs security tradeoff, and sometimes UX loses
#
tantek
nah, still doesn't make sense. I can use any git client I like to do git operations with github
#
tantek
so same should be true with filing issues, comments, reactions
#
snarfed
that's a local program that doesn't share your creds with someone else
#
tantek
which are far *less* of a big deal than a pull request / commit etc.
#
snarfed
i can literally grab your token stored in bridgy and go do anything you can do on github right now
#
tantek
how can they tell what is "local"?
#
tantek
i could be running a git client from a server
#
tantek
which is exactly what people do with static sites that deploy from github
#
aaronpk
There's no OAuth API to push commits is why
#
snarfed
git and github apis totally are different protocols, with different acls
#
snarfed
git protocol doesn't let you eg *administer* anything inside github
#
aaronpk
You can't give snarfed permission to push code unles you actually give him your ssh key
#
tantek
snarfed, you can't "go do anything" obviously becauase I can't with that token!
#
snarfed
right, *because they thought of this* and prevented it
#
snarfed
which is inconvenient, but reasonable
#
tantek
or rather if that was true then Bridgy could post as me anywhere I could
#
snarfed
again, because they deliberately distinguish :P
#
tantek
it's a really bad limitation
#
tantek
which again encourages cookie based apps instead
#
snarfed
UX wise yes. security wise, totally reasonable. tradeoffs.
#
tantek
which is less secure than OAuth
#
aaronpk
I understand this distinction for private repos in orgs but for public stuff the restriction seems unnecessary
#
tantek
right, should not exist for public repos regardless of org
#
tantek
that's broken
#
snarfed
sure, agreed there
#
tantek
so basically I have to go ask every repo's org that I want to post an issue/comment/reaction to to 1. add me to the org, 2. I have to request Bridgy App Oauth permissions, 3. they have to approve Bridgy
#
tantek
massive pain and makes it far too high friciton to make any Github Oath App actually useful
#
snarfed
or just continue to posse to those orgs manually :/
#
sknebel
I wonder if there were problems with automated spam/harassment through the API?
#
tantek
I don't think they thought this through, or they dont' care about making Github Oauth Apps actually useful
#
sknebel
although then it'd be weird that it only applies to orgs...
#
tantek
sknebel: no then you just shut down the spammy account and revert
#
tantek
no matter what app you use, there's still an account that every post is *from*
#
snarfed
commenting and reacting from arbitrary users outside the org is a narrow slice functionality :P
#
snarfed
but i absolutely get that it's biting you here
#
tantek
not in open source
#
aaronpk
I think this is part of the larger trend of losing the concept of open APIs
#
tantek
interactions from people outside the org is a sign of open source *health*
#
snarfed
well, and again, via third party apps, which is the exception
#
tantek
and should be strongly desired by any open source project
#
snarfed
but yes
#
tantek
so instead yes I have to be the canary and go ask to be made a member of every single org just so I can request Bridgy permissions
#
aaronpk
Companies are less interested in Open APIs for the sake of Open APIs and more interested in specific use cases that drive their business
#
tantek
hopefully this means the *next* person attempting to post to one of those orgs doesn't have to go get permission for Bridgy
#
snarfed
it still strikes me as odd (and maybe just a github bug) that silo.pub can do this, presumably with a different API
#
snarfed
i'd happily switch to that API, but i have to expect they may eventually just fix that bug (if it is)
#
sknebel
heh. might be that you've been the first person to build a client-like thing (vs automation tools) using the new API?
#
tantek
nah they've made the sale to MSFT, no incentive to change something like that
#
tantek
new owners might eventually, but unlikely for at least 6 months if not years
#
tantek
I expect the API that silo.pub is using will keep working
#
tantek
I bet there's plenty of legacy tools / toolchains that depend on it
#
tantek
and they'll break lots of people if they do
#
tantek
including paying customers
#
snarfed
ongoing work at github won't stop for 6 mos to years. if they're discovering and fixing bugs now, they'll continue to
#
snarfed
eh. we're making all kinds of speculation and assumptions here
#
tantek
that's not my experience with post acquisition companies
#
tantek
usually there's a period of deep breaths and slacking
#
snarfed
it is mine :P
#
snarfed
oh sure, slowdown, but not stopping everything entirely
#
tantek
massive slowdown
#
tantek
as people consider exit dates, then minimum risk / energy necessary to reach those exit dates
#
snarfed
anyway. i'm happy to switch to another API, if someone else can point me to which one
#
snarfed
well, at least, if it's v3
#
aaronpk
Pretty sure silo.pub uses v3
#
snarfed
so we've definitely confirmed that silo.pub can do the exact same thing that bridgy is failing on right now?
#
aaronpk
What exactly?
#
aaronpk
I can go try the API wth my access token
#
tantek
aaronpk yes when I tried to reply to your comment
#
tantek
literally on the same issue
#
tantek
you succeeded with silo.pub POSSE
#
tantek
and I failed with Bridgy Publish POSSE
#
Loqi
[Aaron Parecki] What we really need is federated authentication, but that doesn't exist yet. This sounds like a great use case for IndieAuth. w3.org/TR/indieauth IndieAuth is an OAuth 2.0 extension, which avoids the centralized problems with existing OAuth soluti...
#
snarfed
cool. aaronpk if you can confirm silo.pub uses v3, i'll switch bridgy to use that
#
aaronpk
Okay so I should try to comment on an issue in someone else's org?
#
snarfed
nah sounds like you all already confirmed the functionality, i just meant checking the code for which api :P
#
aaronpk
oh yeah if it was demonstrated in that issue then yea. one sec
#
snarfed
thanks!
#
aaronpk
hm, seeing some people posting new issues on indieauth.com today... thinking I might need to add a notice to that repo that it's going to be deprecated
#
@mozilla
Coders, activists, educators, meme historians: #mozfest is a chance to supercharge your latest project and research. Plan and ponder alongside like-minded individuals from around the world. Submit your session ideas now: https://mzl.la/1UmFbaI https://pbs.twimg.com/media/De3-_7pWsAIdx78.jpg
(twitter.com/_/status/1003738668333436928)
#
loqi.me
created /MozFest (+230) "prompted by tantek__ and dfn added by tantek__"
(view diff)
#
kaja.sknebel.net
edited /MozFest (+1) "linkify ('x is y. <url>.' pattern)"
(view diff)
#
loqi.me
edited /MozFest (+116) "tantek__ added "https://mozillafestival.org/proposals - Call for proposals (deadline for submissions 2018-08-01)" to "See Also""
(view diff)
#
ancarda
sknebel: I would although maybe once I’ve cleaned up the code a bit and also added support for non-IndieWeb sites. I added some notes here: https://github.com/ancarda/website/issues/24
#
Loqi
ancarda: sknebel left you a message 1 hour, 40 minutes ago: want to document your person cards on https://indieweb.org/hovercard ?
#
Loqi
[ancarda] #24 Hover Cards for all URLs
#
ancarda
I’m going to see if there’s any way I can cleanup the code and separate it from my website enough that it could be packaged up into a library
#
ancarda
But yeah I’ll add it tomorrow. It’s just not so visible given it only works on 1 post. I haven’t linked to very many sites or written that many posts
[cleverdevil] joined the channel
#
aaronpk
niiice
#
aaronpk
oh man, the wifi symbol isa good idea
#
aaronpk
I forgot overland sends that
#
[cleverdevil]
I just changed it so it uses the hybrid satellite map by default.
#
[cleverdevil]
MapKitJS is pretty great.
#
[cleverdevil]
Unfortunately, Known includes too old of a version of font-awesome to have a good icon for walking 😛
[kevinmarks] joined the channel
#
[kevinmarks]
Good card layout discussion here for hovercards https://inclusive-components.design/cards/
[grantcodes] joined the channel
#
[grantcodes]
[cleverdevil] Nice!
#
[grantcodes]
I need to fix my equivalent of that sort of page 😛
#
[cleverdevil]
One day, I'll add something where I can browse through my travel over time, since I have all of the data.
#
[grantcodes]
That is another use case for micropub querying... Someone could make an app of some sort to query your endpoint for locations and display it as a map, then no need for everyone to program their own
#
[cleverdevil]
Good point.
#
[kevinmarks]
Can't you use N svg walking icon?
#
[cleverdevil]
Sure, it just would have been nice to use a bundled one 🙂
#
[kevinmarks]
🚶 Is an option
#
[grantcodes]
Also emoji: 🚶 🏃 🚗 📶
#
[grantcodes]
[kevinmarks] beat me
#
[cleverdevil]
Yeah, I thought about that too 🙂
#
[cleverdevil]
Just out of the style of the site.
#
[kevinmarks]
The trains here are so slow, Google Fit thinks I'm cycling.
#
[grantcodes]
Any recommendations what I should call my mf2 editor component thing? I am thinking it'll just be mf2-editor
#
[grantcodes]
Also what properties should it support by default? The list is pretty extensive
#
[kevinmarks]
That is a bit tricky - mf2 allows arbitrary properties. You may want to pick useful defaults per h- type
tantek_ joined the channel
#
tantek_
pretty sure we have emoji for most post types in /posts
#
[grantcodes]
Yeah, leaving that as extendable
#
[grantcodes]
The defaults I currently have are: published, name, summary, content (html or plaintext), like-of, bookmark-of, repost-of, in-reply-to, featured, photo, audio, video, location, mp-slug, visibility, post-status & mp-syndicate-to
#
[grantcodes]
Think that covers the vast majority of things.
#
KartikPrabhu
I don't recall visibility being a mf2 property
#
KartikPrabhu
or "post-status"
#
KartikPrabhu
these seem more like micropub things
#
[grantcodes]
Yes they are more micropub things: /Micropub-extensions#New_Properties
#
KartikPrabhu
so it is a micropub post editor not a mf2 editor
eli_oat joined the channel
#
[grantcodes]
Yeah pretty much, but the idea is it doesn't actually post anything. So is that micropub?