#LoqiJekyll is Ruby software that helps you create "Simple, blog-aware, static sites" suitable for static domain hosting http://indiewebcamp.com/Jekyll
#gRegor`Davis will be replacing his WordPress site with Jekyll
#KartikPrabhu_Bret you don't need an annotation system to use marginalia.js make a comment form that takes a reference phrase as input and use the corresponding fragmetion as a data attribute and marginalia.js does stuff for you
gr0k, reedstrm, npdoty, fmarier, el3ctron, case1, RichardLitt, xxcoeurxx, lukebrooker, aaronpk_, jdp23 and chrissaad joined the channel
#reedstrm@sigh@ so tilde.club is "retro" web, basically nostalgia for "simpler times" copying the old look and tools, though w/ a non-corporate, community feel, while indieweb is reinvigorating the principles of the old web, not the look or technologies.
#gRegor`Or it's just a fun thing to play around with.
#reedstrmgRegor` no argument from me on if it's fun, and retro and "cool" - just, it's not "own your own data" just cause you used 'vi' to edit it. On someone else's server.
#kylewmput markdown in a Dropbox folder -> publish blog posts on their server
#kylewm"When the server went away (due to some poor planning and communication on my part) I lost the app, the database, and - even more frustratingly - the database backup."
#kylewmI don't think that one can be blamed on the database... :$
#danlykeReposted from #indiechat: Further thought on yesterday's IndieWebCamp wiki logins and multiple identities per indie-web domain thread: Just realized another use case (beyond married couples with a pre-nup concerning distribution of virtual assets) for multiple identities: I'm "Facebook friends" with a number of my friends' pets...
#danlykeThat seems to be a need for separate identities that isn't as separate as our online web identities sometimes are (ie: I'm a different "Dan Lyke" on LinkedIn than I am on Facebook, but pretty liberal about those two tying back together, I'm an entirely different name on MetaFilter and Sensible Erection...)
#kylewmlmorchard: yep i saw boxpub in your blog post comments, that's how i got started down that hole :)
#kylewmdanlyke: I think those two identities would be two different domain names, right? you wouldn't want to be me@danlyke.com for one and anonymous@danlyke.com for the other
#gRegor`danlyke: I haven't seen the conversation you're referencing, but you mean support for example.com/user1 and example.com/user2 when using indieauth?
#danlykekylewm: Exactly, those two identities for me are fairly diverse, but I would totally want www.flutterby.net/User:DanLyke and www.flutterby.net/User:MyCat (if I still had a cat)
#danlykegRegor` yes, this came up because my OpenID/IndieAuth/etc identity/login URL is http://www.flutterby.net/User:DanLyke in anticipation that my wife's will be http://www.flutterby.net/User:CharleneMarie when she needs one. Discussion yesterday was about how support for multiple users per domain was kind of an edge case, and several such domains had been blocked from indiewebcamp.com login.
#gRegor`(The "What's" trick is nice to avoid unintentional tanteking)
#kylewmanybody have a *.withknown.com? can you log in to the wiki with it?
#shanersI'm of two minds about subdomains for identity / login.
#danlykeAh: the "DNS cartel-oriented thinking" is the "Tie identity to an identifier that we lease from the DNS cartels" problem. Really, it's not a whole lot better than a example.com/~username identifier that we lease from an ISP.
#iccoQuestion: How are people dealing with posting content from their site to social networks? Manually? Synchronously? Or some nice asynchronous setup?
#iccoI'm trying to come up with a good way to do it asynchronously, but haven't got a good design yet
#danlykeiccio: I insert into a table for "statusupdates", and then record numbers from that table into "update_facebook", "update_twitter", "update_flutterby" etc., along with a timestamp and a delay factor. I then have a queue runner that runs every 5 minutes and attempts to push those various updates out, deleting the records from the update_* table as those posts succeed.
tfontaine joined the channel
#kylewmicco: i use the RedisQueue python library to send and receive webmentions and do POSSE stuff
#iccokylewm, interesting, so you just write into a queue when you save the post, and then read from the queue, create a short link and post?
#icco(that last post meaning share to other sites)
#snarfed1KevinMarks_: good request. definitely feel free to add to that issue or create a new one
#kylewmicco: not that exciting, i do basically the same thing danlyke described just using a queue worker and redis instead of a db table
#iccodanlyke, neat, do you use a short link or any sort of truncator on your content?
#iccokylewm, do you keep any historical record, or just clear the queue once the worker has come through?
#danlykeI used to, before Twitter started auto-shortening. I do a little bit of prep work, if it's longer than 140 characters and the Twitter shortener wouldn't make it shorter, I crop at the first space before 118 (or the https?://) and insert a link to the full entry on my site.
chrissaad joined the channel
#iccoah, twitter does autoshortening on API requests as well? I did not know that, assumed only did it on website posts for some reason
#danlykeI also explicitly extract links and send them to Facebook as a "FEEDLINK" rather than a "STATUS", so Facebook grabs the preview (makes posting pictures to Facebook actually work nicer for the end user than the native Facebook UI).
#danlykeyep. 22(?) characters (usually I'm conservative on this).
#iccoI had always heard 20, but I haven't tested in a while.
#danlykeI use the PHP utility "fbcmd" to do the Facebook posting. A bit of a PITA because Facebook is getting away from authorizing non web apps, so I have to re-auth regularly.
#danlykeTwitter's URL shortener used to be shorter, but then they went to https:// on everything. That added at least a char.
#iccoCool, thanks for the tips peoples. Gonna go give this all a try.
#snarfed1danlyke: agreed that fb's new(ish) 2mo token expiration is annoying for non-web apps. for bridgy, i actually ended up generating fb notifications so users know they need to re-auth. https://github.com/snarfed/bridgy/issues/59
snarfed joined the channel
#danlykeOh, and I use the separate tables for the update with the premature optimization notion that an index scan on a boolean value was probably less efficient than a separate table with "this needs attention".
#danlykesnarfed: Good idea. I've just been waiting 'til my posts don't show up, but I should set up a tool so my wife can easily re-auth her side of things... and this is how command-line tools and quick hacks become unmaintainable nightmares of interconnected little scripts strung across multiple servers.
thierrymarianne and snarfed joined the channel
#snarfeddanlyke: heh, yeah. also, usability and maintainability req'ts are much different if it's just you vs other users. for just yourself, something as minimal as a recurring calendar reminder may be enough as a reminder to re-auth
KevinMarks_ and KevinMarks__ joined the channel
#danlykesnarfed yeah, also fbcmd doesn't return an error code for unauthed, and I haven't written a wrapper to check yet, and...
#snarfeddanlyke: does your server send webmentions?
#snarfedif so, i obviously have a bridge to sell you :P
#danlykesnarfed, I have webmention meta tags for inbound, and I have some half-finished code for outbounds, but I'm still skeptical on the whole notion of webmentions (ie: Referer tracking v.3).
#danlykeI do, however, check all of the /irc-people links (and my opml file) for RSS feeds, and look for inbound links from them.
#danlykeerrr: meant to say "Referer(sic) tracking v.*4*"
#snarfeddanlyke: sure. i'm not religious about webmentions specifically, they just happen to be the trigger for bridgy publish, which warns you when its auth expires, in case you're interested in trying it
#danlykeYeah, meta-refresh seems like a bad idea. I've played with some of the real-time Node frameworks, but... Should probably learn those rather than hacking something together with http://meteorserver.org/
#ben_thatmustbemedanlyke, i want to work out doing it privately too, plus group messaging
#ben_thatmustbemetheres going to be several interesting pieces to it.
#ben_thatmustbemei think it should be easily accomplishable with micropub and a single site though
#tfontaineForgive me if this is ignorant, but why that over just self-hosting a ejabberd server or something?
#danlykeben_thatmustbeme of course the other thing I've thought about is: Why are we using HTTP for our sharing, rather than XMPP or RetroShare's protocol or BitTorrent Chat or something built for real-timeness.
#danlyketantek, I did have NNTP working for a while. Never got uptake on that...
#tantekdanlyke - great - did you have any permalinks that you can still point to?
#tantekdid that "DNS cartel" discussion result in any concrete alternatives that people proposed or better, actually use day to day?
#danlykeYep. All the Flutterby.com posts went out to NNTP, and comments came back. So, to your point, all the permalinks that still exist are HTTP (if I still had the server up, they'd also be available via Message-ID)
jet__ joined the channel
#tantekdanlyke - so that's my point. the permalinks work via HTTP. so why bother with a second protocol at that layer?
#tanteksame problem with all the JSON(-LD)/RSS/Atom advocates
#tantekthe permalinks that work do so via HTML served over HTTP, why waste the time duplicating in a secondary format / file / URL?
#tantek(nevermind making something more fragile, less visible etc.)
#danlykeBecause we're having this conversation over a channel that's not HTTP. I'd prefer it over email or NNTP, because both of those have local caches and permanent archives and are more easily searchable and organizable.
#danlykeAnd, because as of right now: There are about as many people in my social circles that I'd like to engage in conversation running any of these other hypothetical protocols as there are running WebMention.
#danlykeAnd a hell of a lot more of those folks are running RSS and Atom than microformats (which is why I'm scanning for inbound links from those feeds and haven't yet bothered to put microformats in my parser)
#shanerscomparing rss/atom to mf is apples an oranges
#shanersmf is a format used inside one of those media types
#danlykebut RSS, Atom and Microformats all extend HTML with additional semantic content. It's just that the former are carriers for HTML (and that's a "ugh" decision, but water under the dam), and the latter is the carrier.
tantek joined the channel
#danlykeIn a perfect world, I like Microformats better, but from a practical standpoint I need more infrastructure before I can take advantage of the advantages of Microformats over RSS and Atom.
#danlykeAnd I did not know that there is now a retroshare-nogui. The reason my use of it faded may have gone away...
#tantekso a) for what use-cases? and b) what infrastructure in particular?
#tanteka better world is one that makes it easier for publishers - which is what microformats do over RSS/Atom
#tantekor JSON(-LD) or whatever other sidefile/format/protocol that anyone else comes up with in the future
#danlykethe first application I've got is outbound (and why I've implemented it in my blog main page, and in the HTML feed of my personal status updates). That's a matter of putting an RSVP tag in some entries and sending Webmention pings.
lukebrooker joined the channel
#tantekdanlyke, re: "lot more of those folks are running RSS and Atom" - KevinMarks' "unmung" solves that already.
#tantekre: "we're having this conversation over a channel that's not HTTP." Good Point!
#danlykeUnmung goes the wrong way, though. I already have the infrastructure for RSS/Atom. That's easy and well supported. I need to write the Microformats parser yet.
#tantekyou don't need to write a microformats parser - they already exist
#danlykeI have to integrate them into my systems, then, it's roughly the same amount of code either way.
#gRegor`Just realized gRegor-phone is still connected even though I closed it last night.
Pierre-O and infpetal joined the channel
#danlykeSo how do I do the webactions <indie-action ...> tag thing without silos? I don't care if they can star it on Twitter, I'll see it there. I want them to be able to star/reply on their own site and put it under mine.
#danlykeTantek, you'd mentioned a mime-type or something similar that the browser could use to redirect the click to the user's site (and maybe default to my own local reply/like mechanism), what was that?
#danlykeBecause the existence of this capability on other people's site is a reason for me to get off my butt and get MF parsing integrated into my infrastructure.
#gRegor`A star/favorite on their own site would be a u-like-of on the link on their site, and they send you a regular webmention.
#danlykeOkay, so they're reading my site, and they discover that it's a WebMention endpoint by...?
#gRegor`I've used other people's too. I recently realized I'm not tracking use of that form, so it's on my list.
#kylewmdanlyke: I also use <indie-actions> if provided
#gRegor`I'm an exception to most in that I still have local blog comments in addition to webmention.
#gRegor`That could well go away at some point in the future, though
mlncn joined the channel
#danlykegRegor` yeah, me too. In fact given my experience with Referer/Trackback/Pingback, I'm guessing it's easier to manage spam with local blog comments. But Tantek is optimistic, so I'm willing to try...
#gRegor`There is a webmention logo, too. There was discussion a while ago about whether to advertise that on one's site, a la the RSS icon.
#gRegor`I think most are opposed to that idea though. Advertising plumbing, meaningless term to most people.
#gRegor`I don't know of anyone using it on their site, so it probably hasn't been captured in wiki text.
#danlykeAh, okay, so the main use case is publish to the silos, capture replies from the silos.
#gRegor`In theory you could run webmention contents through Akismet just like local blog comments.
#gRegor`I have had no webmention spam, but still get occasional local comment spam (site's been up since 2002 though).
#danlykegRegor` yeah, in practice just not having Wordpress input names has been enough that I've been able to manage the spam with the occasional DELETE FROM weblogcomments WHERE id=...;
#danlykeWebmention thus far is more obscure than my blog. I'm guessing every URL on my site gets several Pingback/Trackback spams a day, just as POSTs, without any discovery info in the HTML (I disabled those endpoints a decade ago)
#gRegor`I don't know if I'd say that's the main use case of webmention. It's a popular one, because there's so many more people on silos than have their own sites with webmention support. It's nice that I can respond to kylewm directly on his site though instead of going through twitter.
#danlyke(there was a period there where the spam bots actually loaded the HTML and used form names, but that only lasted a few years)
#kylewmseems like wordpress itself could mitigate that
#kylewmif just each blog had its own set of field names
#gRegor`Re-phrased: I'm personally more excited about being able to comment on other sites via webmention than I am pulling in backfeed from Twitter. I'll see the Twitter stuff anyway, and honestly who favorited a note is not going to be very important to me in 5 years. :)
#danlykekylewm For cross-site scripting protection purposes you should be putting a nonce in your forms anyway (confession: I haven't yet), so there's no reason to just generate nonsence form names for every page view.
#gRegor`Does WordPress not nonce their default comment form?
#danlykegRegor` yeah, I just haven't needed to scratch the "comment on a Webmention site" itch yet.
Gold joined the channel
#danlykegRegor` no idea on WordPress nonces, I'm just assuming that the field names my spam logger is catching are Wordpress names. (I log for a bit, find the major offenders, "ufw deny" them, traffic on the server drops dramatically)
#danlykeSo for real-time chat, we would need: A way for a user to discover that they can comment on a status update on my site. Them typing up a response and sending a Webmention to my site. My site getting that webmention, grabbing the appropriate h-whatever section of their HTML page, and incorporating it into the response stream, right?
#danlykeCurrently 1 (discovery) is "some text in the footer". 2, generating the response is up to them. The webmention/h-stuff is my responsibility. Seems like (barring my concerns about spam), we're kind of stuck at #1.
#gRegor`I don't understand the trouble with discovery
#danlyke"Copy and paste this link to your site to comment on this" is not a UI that anyone I know IRL would participate in.
fmarier joined the channel
#danlyke(I know a few people online who might, but they don't update their blogs any more and just live on Twitter and Facebook, so I may be overestimating their dedication to the cause)
#kylewm"Reply" link at the bottom of the status update. I click on it, it takes me to my site with the reply context alread filled in
gr0k joined the channel
#gRegor`For those who are on silos, if you're using /POSSE and /backfeed, they need no instructions at all. They just interact with the silo copy of your information.
#danlykeI guess I'm still skeptical about "people with a greasemonkey script can comment, everyone else gets sent to a silo". Maybe I need to implement local comments so that those examples don't seem like Silo traffic drivers.
#danlykeerrr... implement indie-action with local comments.
#gRegor`tantek had suggested to me at one point sending people to Twitter to reply instead of local blog comments. I didn't care for that and the local blog comments are still worth it to me over the small nuisance of spam, so I agree I'd rather not send people to a silo
#kylewmmaybe you could add a <indie-action> tag around the comment form
#danlykeSo all of the indie-action examples have <a href="...">. Does y'all's Greasemonkey script handle wrapping <form...>s?
#danlykegRegor` exactly. If people don't "own" their own comments, I'd much rather "own" them than Twitter.
#gRegor`If it's a note that I have syndicated to Twitter (the majority are), I'm not opposed to a "reply on Twitter" link (or RT, fave)
#danlykekylewm hooooookay :-) Guess I need to set up my Webmention thingie to do the "excerpt the remote content" bits, and when I'm reasonably certain I'm there ask one of y'all to test it.
#danlyke(right now it's just grabbing titles, 'cause it's the same thing as my inbound links from RSS feeds checker)
#danlykeStill don't have a good excerpter, probably need to harass the people who's RSS feeds I check for inbound links to put microformats in their pages so I can grab summary text rather than titles.
#snarfedcould complement disqus nicely, and you wouldn't have to implement either wm receiving or local commenting
#danlykeYeah, I run a database (grins, ducks & runs), so local commenting is pretty easy.
vanderwal joined the channel
#kylewmdanlyke: it looks like you wrapped with <indie> not <indie-action> ?
#kylewmand apparently you are supposed to call registerComponent("indie-action") ?
#danlykeAh. Thanks. My HTML template cleaner apparently uses \w+ for valid tag names....
#danlyke(Interestingly, I got it right for attribute names, and I allowed ":" for namespacing XML in that portion of the cleaner. Now I have this awful desire to go read specs and find out which HTML or XML version didn't allow '-' in element names.
#kylewmi believe hyphen is the new thing that allows you to define your own Web Components
#kylewmthe tag used to be <action> before adactio (I think) told us it needed a hyphen
#KevinMarks__Finding a feed with summary and content that are different is rare these days
jet__ joined the channel
#danlykeKevinMarks__ yeah, my backlinks structure doesn't have a body part yet. The semantics for what I should extract from the remote page for that are what I need to add...
gRegor` joined the channel
#danlykeOh ugh. I need to do HTML sanitization on that body, don't I? Okay, pretty sure I've got code that does that, but also pretty sure I haven't looked at it in close to a decade...