2018-01-05 UTC
# 00:00 [cleverdevil] So you can see title and the first little bit, and then expand it if you want.
# 00:01 GWG I am wondering if I should abandon an idea to steal ideas from XRay and incorporate some APIs into my Post Kinds parser
# 00:03 aaronpk how is that possible, I thought Together was JS only
# 00:05 grantcodes Hmm it is kinda js only. But may be to do with requests being made at the same time.
# 00:05 aaronpk oh is there like a server-side component for proxying requests?
# 00:06 grantcodes But it shouldn't store any keys or anything there, that's all frontend and passed to the server
# 00:06 aaronpk sounds like a global variable leak or something to me
# 00:07 grantcodes Self hosting will definitely avoid that issue, might have to change a variable or 2 though
# 00:07 aaronpk I remember having this problem with some old IRC bot stuff I was doing a long time ago
# 00:08 aaronpk gotta make sure all the variables are scoped inside the callback functions, otherwise stuff leaks because it's all asynchronous
# 00:09 grantcodes Yeah it'll likely be classes that are instanciated with one key and overwritten with another while waiting for the microsub response
# 00:12 grantcodes Don't know I'll have time to fix it in the next couple of days or not so may just take down that hosted version until I fix it.
# 00:13 aaronpk i'm gonna have to figure out how to install this huh
# 00:16 [kevinmarks] I had that problem with noterlive originally, you need to be careful with per user state
# 00:19 grantcodes I'm hoping it'll be as simple as moving some code from outside a route to inside a route, but can't remember off the top of my head
j12t_ joined the channel
# 00:20 aaronpk good thing my indieauth server issues limited-capability tokens! even if cleverdevil was able to get my access token from that response, he couldn't use it to create posts
# 00:22 grantcodes At the moment I think that would've been possible. I've been very lazy with the backend past getting it to a MVP state
# 00:23 Loqi MVP is an abbreviation for minimum viable product, the concept and methodology of designing, developing, and deploying the smallest/simplest possible variant of a product as a first step to shipping, getting real world feedback, and iterating from there https://indieweb.org/MVP
# 00:26 grantcodes Well gotta go to bed, will try and get it fixed and back online tomorrow. Just see this as incentive to install it locally and then you can contribute code 😉
# 00:26 sknebel considers trying again to install the dependencies
# 00:37 GWG aaronpk: Temperature doesn't have an experimental microformat on your site?
# 00:38 tantek GWG, want to stub an article about indieweb use of temperature? ^^^
# 00:39 sknebel [cleverdevil]: last I tried yarn did not want to play ball and I gave up after one hour of not even getting the dependencies installed since yarn failed random ones each try. not sure what was up with that
# 00:39 aaronpk GWG: I didn't add microformats markup to the output yet, although I am using experimental properties in my storage
# 00:52 grantcodes It might also run without yarn if you replace yarn with npm in all the commands. No guarantee though
# 01:32 tantek I forget how nice a mobile web app nextmuni.com is
# 01:32 tantek I am trying to replace as many "native" apps with web apps
# 01:33 aaronpk a good web app bookmarked to the home screen can be better than a native app
# 01:34 tantek problem is part of the native app "feature set" requires bookmarking individual pages in the web app
# 01:34 tantek which I think is an opportunity to build another web app on top of it (nextmuni.com)
# 01:34 tantek (keeping track of favorite stops / directions / lines)
# 01:36 tantek it makes itself a "standalone" web app when you bookmark it (add to homescreen) which then does not have any way of asking for Geolocation API permissions and just fails
# 01:36 tantek "Origina does not have permission to use Geolocation service"
# 01:37 tantek well, looks like after /contact and /pay I need to now build a /transit UI that is just a bunch of buttons of links to specific nextmuni.com prediction pages for routes / stops
# 01:37 tantek that way I can make that page itself open in Safari (rather than as its own process) and then tapping the links in it will get Geolocation inside Safari
# 01:37 GWG tantek: I'm missing something here
# 01:38 GWG What are you trying to do in transit?
# 01:39 tantek so when you "bookmark" it - it ends up bookmarking the home page
# 01:40 tantek instead, each prediction has a "Page to bookmark" link you have to click first lol
# 01:41 tantek I want to use the website instead of "Routesy" or any other transit "app"
# 01:41 GWG I get that. But what are you trying to do?
# 01:42 tantek reimplement a feature that is in Routesy but not nextmuni.com - "favorite / bookmarked stops / lines / directions"
# 01:42 GWG I look forward to seeing that. I enjoy transit as a concept
# 01:44 tantek wait does aaronpk not track bus / trimet rides?!?
# 01:44 aaronpk I need a way faster UI for that if i'm gonna do it
# 01:45 aaronpk occasionally anomalily checks me in to MAX lines on Swarm
# 01:45 aaronpk but that doesn't record the start/end location of the trip which is what I would want
# 01:45 tantek aaronpk - assuming you get checked into the start and end, that should be inferrable
# 01:48 tantek aaronpk I believe you tracked some trains you took in Germany as part of travel plans
# 01:48 GWG I read the APIs for local transit. I considered doing something with them
# 01:49 tantek GWG I am considering building a site that links to existing sites that use APIs for local transit
# 01:49 tantek rather than building that API calling support myself
# 01:50 GWG tantek: For now, I haven't built anything to display transit at all.
# 01:50 GWG In my mind, manual comes before automatic.
# 01:50 tantek transit is often short for mass transit which includes bus, light rail, and train [[travel ]] methods typically in and around urban areas
# 01:51 Loqi ok, I added "https://www.nextbus.com/ - SF MUNI route and stop prediction web app" to the "See Also" section of /transit
# 01:52 tantek transit << Routesy - [[iOS ]] app for SF route and stop prediction
# 01:52 Loqi ok, I added "Routesy - [[iOS ]] app for SF route and stop prediction" to the "See Also" section of /transit
j12t joined the channel
# 02:00 tantek yeah it only adds *one more* See Also section
# 02:00 tantek then it adds subsequent see alsos to that second See Also section
# 02:00 GWG I'm tempted to take some time away from IndieAuth and do weather. Trying to pick a project
# 02:00 GWG Considering I'm snowed in, weather seems appropriat
# 02:00 GWG tantek: I have many. But I'm trying to pick a smaller one to tackle
# 02:00 GWG tantek: I've been very productive of late
# 02:01 tantek I hear that. I was unable to even pick a smaller one for a 2018-01-01 challenge!
# 02:08 GWG tantek: I did the first major IndieAuth upgrade in 2 years.
# 02:16 aaronpk I just made a change that should even change the message in irc slightly
# 02:24 tantek aaronpk lol your train post shows a flight path
# 02:25 tantek aaronpk oh? I thought it showed a great circle path (thus roughly approximating longer haul filghts)
# 02:25 aaronpk nah that wouldn't actually look very curved between portland and SF
# 02:26 tantek train posts could show actual rail lines with little train segments like in Ticket to Ride ;)
# 02:29 tantek aaronpk need that for your 2017 year in summary post - map of all your routes traveled :)
# 02:29 tantek (would make a cool aggregate view for travel archives by month, year etc.)
# 02:29 aaronpk i'm due for a massive 10-year post this summer actually
# 02:31 GWG There has to be a service in this people want.
# 02:32 aaronpk it's gonna be a bit of a project to consolidate my 10 years of logs into a single place. it's a bit fragmented right now since I went through so many iterations of how I stored it
# 02:33 tantek aaronpk sharing that history (iterations) would be valuable too!
snarfed joined the channel
# 02:36 tantek ah, so if you wait long enough after the first See Also, then Loqi won't create the second one
# 02:40 tantek well the hack is to request a made up query like ?Loqi_time=unixseconds
# 02:41 aaronpk i'm just adding a secret param that will skip the cache
renem joined the channel
# 02:49 aaronpk "minor" edits if the change is made in this channel
# 02:50 GWG Anyone have a preferred weather API?
[eddie] joined the channel
# 02:54 [eddie] Although their snow info hasn’t been great so far this winter
# 02:55 GWG I have my own weather station as well.
# 02:59 bear i've always just used pyMETAR to query NOAA's api
krup joined the channel
eli_oat joined the channel
# 03:27 aaronpk I'm thinking about switching to dark sky but I use wunderground right now
tantek joined the channel
# 03:28 bear i'm wondering what data you get from those api's that a METAR report doesn't have
# 03:29 GWG Now I'm looking for svg weather icons before I've built something to show them
tantek, chrisaldrich and snarfed joined the channel
tantek joined the channel
cweiske, barpthewire, petermolnar, [kevinmarks], AngeloGladding, KartikPrabhu, leg, John___ and [keithjgrant] joined the channel
# 15:04 dgold that standardised date thing is utter bullcrap, just use standardised codes already
# 15:05 [keithjgrant] I don't even think it's possible to specify a time zone. I also can't figure out how to make it render a 12-hour time
# 15:10 dgold for a tz you use 03:04:05PM -0700, or whatever you need
# 15:14 dgold you could ask in the hugo forums (if its hugo)
# 15:15 [keithjgrant] But you just help me realize I had the wrong values in for my hour/minute, so that fixed my 12-hour issue. thanks 🙂
snarfed joined the channel
# 15:49 [keithjgrant] looks promising. I'll have to see if the templates support that. Only a tiny subset of the full language is avaliable 😞
# 15:53 dgold I added loads of additional parentheses to my script, and now I can repost & like posts via micropub on my site
# 15:54 dgold repost & like _twitter_ tweets, I mean. It syndicates the like/repost to twitter.com
[miklb] joined the channel
# 16:53 aaronpk !tell tantek, the ellipsize_to_word function seems to allow a trailing "(", is that an easy fix? Just noticed one of my notes was truncated as "Just pushed some updates to IndieNews! Notes like this one, (..."
# 16:53 Loqi Ok, I'll tell them that when I see them next
KartikPrabhu, bengo and tantek joined the channel
# 17:55 Loqi tantek: aaronpk left you a message 1 hour, 1 minute ago: ellipsize_to_word function seems to allow a trailing "(", is that an easy fix? Just noticed one of my notes was truncated as "Just pushed some updates to IndieNews! Notes like this one, (..."
# 17:56 tantek aaronpk pretty sure that was deliberate, to more strongly indicate that hey a whole parenthetical follows this!
# 17:57 tantek well if you find a CMOS rule that says NOT to do it, I could change it. I did try to research existing ellipsing rules (which were scant) to implement them along with reasoning for additional special cases per-punctuation
tantek, gRegorLove, chrisaldrich, raretrack, snarfed, [colinwalker] and [cleverdevil] joined the channel
[xavierroy] joined the channel
# 18:42 Zegnat aaronpk++ for closing another flew of IndieAuth spec issues :D
# 18:42 Loqi aaronpk has 100 karma in this channel (1524 overall)
[keithjgrant] joined the channel
# 18:51 [keithjgrant] Yay! I got my timezone issue sorted. Netlify let me set the TZ environ variable to EST
schmarty and leg joined the channel
# 19:14 Loqi The Open Graph protocol (OGP) is an open* standard developed by Facebook for annotating the primary subject of an HTML page via a set of custom <meta> tags in the document head for the purpose of Facebook showing link previews https://indieweb.org/ogp
# 19:15 tantek I think documenting that *minimum* would be very helpful in preventing people from wasting time over-adding all the crap
# 19:16 Loqi [Aaron Parecki] Rich Link Previews for my Website on Facebook and Twitter
John___ joined the channel
# 19:16 aaronpk the interesting part is twitter documents a minimal example of adding twitter tags using facebook's as a fallback
# 19:16 tantek of course, they want you to add their proprietary tags
# 19:16 aaronpk "When using Open Graph protocol to describe data on a page, it is easy to generate a Twitter card without duplicating tags and data."
# 19:22 tantek ok question, why do you need <meta property="og:title" content="Hello World" /> ? doesn't it get it from the <title> if you leave that out?
# 19:22 Loqi [mapkyca] php-ogp: Simple PHP Open Graph Protocol parser library
# 19:22 aaronpk tantek: my <title> contains more than what og:title contains
# 19:22 tantek second question, why do you need <meta property="og:url" content="http://example.com/post" /> ? doesn't it get it from the URL of the page that is being link-previewed?
# 19:22 aaronpk often sites will include the site name in <title> (mine included)
# 19:22 dgold had not realized that og: _requires_ an og:image for validation
# 19:22 aaronpk and facebook explicitly does not want the site name in the title of the page
# 19:24 tantek ok so that's an argument for og:title. but why og:url?
# 19:25 aaronpk it should be the canonical URL of the post, without all the tracking params and stuff that end up in posts shared
# 19:25 dgold og:url - The canonical URL of your object that will be used as its permanent ID in the graph
# 19:25 tantek why do extra work? send extra bytes? if the implementation doesn't need them
# 19:26 tantek also by "the spec" you are implying that the docs are the spec, whereas in practice, "what facebook.com implements" is the spec
# 19:26 aaronpk now I can't find where facebook said which tags were required
# 19:26 tantek because it's not an "open" spec per se (they control it)
# 19:26 tantek there you go, drop og:url and see what happens
# 19:26 tantek and if you really care, use the standard rel=canonical
# 19:26 aaronpk "The four required properties for every page are"
# 19:26 tantek aaronpk: yes you're citing a doc for a spec that has a single dominant implementation
# 19:27 tantek which means the implementation becomes the practical spec
# 19:27 aaronpk tbh i'm way less concerned with including something as easy as the page URL vs the work I had to do to make a summary that looks good
sebsel joined the channel
# 19:28 tantek otherwise you end up down the rathole of Dublin Coreing all the things etc. and before you know it your <head> is bigger than your <body> :P
# 19:28 schmarty weird. here on the matrix irc bridge i am not seeing everyone's updates. i don't see messages from tantek at the moment. :/
# 19:28 aaronpk also it's not just facebook that implemented these tags, Slack and Twitter did too
# 19:29 tantek also if the first image on the page is > 600x315 then you don't need og:image as that will automatically be picked up (I know this from my posts)
# 19:29 tantek Slack and Twitter will implement whatever FB implements, not the spec
# 19:29 aaronpk the logic required for me to tell whether the first image in the page is >600x315 is way more complicated than just including the meta tag
# 19:29 tantek then the documentation eventually will reflect FB.com
# 19:30 tantek the only use I can think of for og:image on a properly structured post is setting it to "" so nothing happens in cases where you don't want one
# 19:30 tantek e.g. a high-resolution profile image in your h-card
# 19:31 aaronpk I actually set the og:image of my review post to a totally separate image that is not in the main post which is a tiled composition of all the post's actual images
# 19:31 aaronpk because no single image in the post was representative of the whole post
# 19:31 tantek why not include that at the top of your post as a u-featured image?
# 19:32 dgold notes that og:image is a requirement, but og:author isn't even in the spec
# 19:33 tantek or is it possible we actually have a new use-case to document?
[colinwalker] joined the channel
# 19:34 tantek an image that may be a composite of various images in a blog post, suitable for use as a preview, but might not itself be visibly present in the full length blog post
# 19:40 dgold "These are globally defined objects that just don't fit into a vertical but yet are broadly used and agreed upon."
cweiske joined the channel
# 19:42 aaronpk better to stick to what facebook actually implements I think
# 19:50 tantek then schema came along and had to gunk it up even worse
# 19:51 aaronpk it seems like none of the fancy stuff in ogp ever got used. turns out the only thing that matters is if the tag can be used to enhance the display of it when people look at it
# 19:52 aaronpk don't need any of these complicated og:type stuff, since in the end they just show a featured image and title/description for everything
# 19:52 aaronpk twitter has gone a little farther with it and lets you make "player" cards that contain videos, but that's it
# 19:54 dgold aaronpk: sending 'like' to micro.blog - is that a webmention-sending operation?
# 19:59 dgold oh, I saw the slack conversation with you & manton - that your site sent a 'like' as a full repost
# 20:00 aaronpk oh yeah. that was because I favorited one of manton's micro.blog posts
# 20:01 aaronpk that sent a webmention from my favorite to micro.blog, and it pulled it in as a reply
# 20:06 gRegorLove I didn't know FB explicitly doesn't want site name in the ogp
# 20:12 gRegorLove Ah, it even follows the rel=canonical as a redirect before it does the scrape.
# 20:14 Loqi gregorlove has 38 karma in this channel (204 overall)
# 20:16 gRegorLove Annoying that they *ignore* your explicit og:image if it's under 200x200
# 20:16 Zegnat Ah, rel=canonical. I got annoyed by that one not too long ago because I couldn’t use it as my mf2 url property for the page.
# 20:16 gRegorLove So maybe I'll drop it altogether since that's the only tag I'm using :)
# 20:17 Loqi gregorlove has 39 karma in this channel (205 overall)
# 20:17 Zegnat Needed to move HTML around, since <link rel="canonical" class="u-url"> isn’t valid in mf2.
[eddie] joined the channel
# 20:17 [eddie] Wow I uploaded Jekyll on my server to a minor version upgrade for a new config setting that I didn't even end up using but it cut my rebuild time from 20 minutes to 7 minutes!!
# 20:18 Zegnat because mf2 hates hidden data, so u- does not accept href-attribute on link elements.
# 20:18 gRegorLove But I think if someone authors it, they should show it as-is.
tomasparks joined the channel
# 20:18 Zegnat I think I brought that up once before and was told that it was because of hidden data :P
# 20:18 tantek Zegnat hmm I thought I relented on that due to enough requests
# 20:19 Zegnat It just means you have to make the page link to itself with an <a> element and give that the rel.
# 20:19 Zegnat But I don’t always see a usecase for an actual clickable link to itself.
# 20:19 Loqi [Tantek Çelik] microformats2 parsing specification
# 20:19 [eddie] dgold: not sure how to check how many files because they are all in different folders
# 20:19 Zegnat So you can’t use it as the url property of e.g. the page's h-entry
# 20:20 Loqi [Tantek Çelik] microformats2 parsing specification
AngeloGladding joined the channel
# 20:21 gRegorLove tantek, what happens if og:image is under 600x315? Does it ignore those too?
# 20:21 aaronpk facebook claims it will just show up smaller if it's under 600x215
# 20:21 dgold [eddie]: for comparison (not being proselytizer)
# 20:22 dgold [eddie]: hugo does 1,400 pages on my site in .5s
# 20:22 Zegnat tantek, interesting. “RESOLVED at 2015-01-20 meetup. Make link consistent with a.” - but not in parsing spec?
# 20:23 [eddie] Wow, that does seem pretty good. I have considered potentially moving to hugo at some point. I can't decide whether to do dynamic page rendering in node.js or hugo rendering. 0.5s IS pretty good
# 20:23 tantek Zegnat this is why I thought it was already there
# 20:23 tantek but maybe my bad for failing to edit the spec accordingly!
# 20:24 tantek or I can categorize it as one of the sources of "Note: This specification is only marked as a "Draft Specification" because of pending edits from resolved issues before 2016-06-20. "
# 20:24 Loqi [Tantek Çelik] microformats2 parsing specification
# 20:24 [eddie] dgold: some of those are feed pages where it has to loop through all my posts and filter out which ones it wants)
# 20:24 Loqi [Tantek Çelik] microformats2 parsing specification
# 20:25 dgold [eddie]: each of my post-type pages has an individual atom feed
# 20:25 [eddie] so let's see if hugo does 0.5s for 1,400, 14,000 should take 5s that definitely would be an improvement
# 20:27 [eddie] dgold: are you doing full rebuilds or some type of incremental rebuild?
# 20:27 [eddie] oh wow that is good then. I'm doing full rebuilds as well but I've considered trying to switch to some type of incremental
# 20:28 [eddie] If hugo is that fast it probably doesn't need incremental lol
# 20:28 dgold [eddie]: as I say - not proselytizing, but 20m is insane
# 20:28 dgold I've seen those figures cited by some jekyll users in the past and thought they must have gigantic sites or something
# 20:28 [eddie] Oh, quick question. Is hugo running on your computer or server?
# 20:29 [eddie] Yeah, I definitely might have to look into it. I'll wait until schmarty does the dive and finds any issues for me 😉 haha
# 20:32 dgold [eddie]: if you need any details of my switch, i'd be happy to help
# 20:32 dgold i was on pelican, but aiui the issues people find are similar
# 20:35 [eddie] ohhhh. I guess by biggest question is on templates. I'm wondering if I'm going to have to change all my templates. Jekyll uses Liquid, not sure what Hugo uses
# 20:35 dgold [eddie]: sarah soueidan wrote up her experience recently:
# 20:35 dgold and there's a lot in there that I can empathise with in pelican->hugo
# 20:36 [eddie] Ahh Sara! Nailed it "waiting for the site to compile became a torturous, life-sucking process that I wanted to avoid at all costs."
# 20:36 [eddie] and " Jekyll became way, way too slow. “Too slow” is actually an understatement."
# 20:37 [eddie] Thanks for your statistics dgold, I'll definitely have to add looking into hugo as a next step for me
cweiske joined the channel
# 20:40 [eddie] Wow, there's a one line migration tool from jekyll to hugo. The real question.... will all my special jf2 properties kill it? 😆
# 20:49 dgold hey - remember I said not proselytising :-)
# 20:49 dgold I wrote a (mad awful very bad) script to reformat all my posts
# 20:50 [eddie] haha no worries 🙂 I just felt like I should try it if it was a one-liner
# 20:56 dansup Edmunds is shutting down their Open API :(
# 20:57 dansup was useful for decoding VINs and other vehicle information
# 21:36 Loqi [AJ Jordan] Announcing lazymention: elegant outbound Webmention for static sites
# 21:44 Loqi ok, I added "https://strugee.net/blog/2017/12/announcing-lazymention-elegant-outbound-webmention-for-static-sites" to the "See Also" section of /lazymention
# 21:44 Loqi [AJ Jordan] Announcing lazymention: elegant outbound Webmention for static sites
# 21:45 tantek anyone want to try improving that? it doesn't sound very useful
# 21:46 tantek like "display editor"? I always thought it was a text editor
bengo joined the channel
# 22:09 tantek gRegorLove thanks for noting you use meta description successfully. incorporated that into the update ^^^
[kevinmarks] joined the channel
# 22:13 Loqi The Open Graph protocol (OGP) is an open* standard developed and controlled by Facebook for expressing the primary subject of an HTML page in custom <meta> tags for the purpose of Facebook showing link previews; in practice only a couple are even sometimes necessary for that use-case, and you can use existing open standards instead https://indieweb.org/ogp
# 22:13 tantek gRegorLove: feel free to review my edits ^^^ pretty sure I captured what we discussed in the channel today
# 22:14 tantek yeah I didn't want a major update to go out that overstated how necessary FB controlled OGP was for even the FB linkpreview use-case
# 22:14 tantek might be worth a blog post just to debunk all the SEO garbage articles out there
# 22:15 Loqi [gRegor Morrill] IndieWeb WordPress Feedback
chrisaldrich joined the channel
# 22:17 gRegorLove So it would appear to be the first image that's > 200, if the error messages on the debugger is correct
bengo joined the channel
# 22:18 aaronpk I can't find a citation for facebook's use of rel=canonical
# 22:18 aaronpk "(which Facebook's own documentation states they support)" should be a link to that documentation
# 22:18 tantek aaronpk it was in the discussion above I thought
# 22:18 tantek that says they first follow rel=canonical before looking the og:
# 22:19 aaronpk I know you said that in chat, but I didn't see a link to docs
# 22:19 gRegorLove "To find the object, these are the redirects we had to follow ... The following will be treated as a redirect by the crawler:
# 22:19 gRegorLove The final URL, which we tried to extract metadata from is highlighted in bold"
# 22:19 tantek ah, then update to according to their own debugger
KartikPrabhu joined the channel
[eddie] and KartikPrabhu joined the channel
# 22:34 aaronpk nice I coudl not find that page for the life of me
tbbrown and Zegnat joined the channel
# 22:59 [kevinmarks] Hugo is very fast, and you can run it interactively locally while you are editing templates
# 23:00 [kevinmarks] I ported lifewithalacrity.com to it, which has a huge number of posts
gRegorLove and chrisaldrich joined the channel
[eddie] joined the channel