(Publishing this way will require Microformats: Your theme will need the proper microformats support to use this method, but again other methods are available.)
Tag: microformats
My favorite solution to this problem and a few related others (like updating my bio and where you can find me on social media) is the meta data route using something like Microformats. Since I provide an h-card
on my website’s homepage, it should be relatively easy for any service to take my URL as my identity (rather than one of my thousands of email addresses) parse my page and find my name, photo, bio, etc. and display them.
Nearly every social silo on the planet wants all of these details, so why should I need to incessantly have to input them manually much less keep them up to date? And I’ve yet to see a social service in the wild that hasn’t asked for my URL, so it’s obviously pretty universal.
Jeremy Keith‘s Huffduffer is a great example of something that already uses this data nicely. It doesn’t pull in my photo (though I think at one time he did have a set up that would poll Flickr avatars?) or my bio, but the “Elsewhere” section of my Huffduffer account lists where you can find me on dozens of social media accounts as well as my own websites. Huffduffer can do this because I gave it my domain name and the service parses my page looking for the rel="me"
tags on my homepage. It could easily pull in my other provided data.
Incidentally Kevin Marks has also proposed a distributed verification system (remember the problem that Twitter had of attempting this?) that uses the rel="me"
idea.
I’ll note that my own website will parse yours to pull in the author name, URL, and avatar to display a reply context for this response on my website! So hooray for microformats! (Though I’ll note that I did modify them a tad for my own idiosyncrasies.) My site does this with David Shanske‘s excellent Post Kinds plugin uses Parse This, which parses for microformats, JSON-LD, and then, if nothing is found it falls back to Open Graph Protocol. He’s been extending it lately to cover a handful of the bigger snowflake services like YouTube, IMDb, etc. to cover some additional edge cases that don’t have good mark up. Incidentally Aaron Parecki has a version of something like this called X-ray, which he uses for various things including microsub readers, not to mention the variety of other parsers available.
I’m sure there may be other versions of this in the wild, but it would be cool to see more social services provide functionality like this.
Noting Google's continued support for Microformats as a metadata format.
Hey.
Hey you.
Want a new Microformat type you never asked for? About Pokemon?
No?
Too bad.
Well, okay, I’ll make a deal. I get to ramble about my niche nerd hobby, and you get to see an example of how Microformats can be extended to do whatever you want! Enter Pokemon
Great write up Jamie. Some interesting things to think about and lots of useful examples.
I suspect that for most personal websites the idea of fair use will give people enough protection for reply contexts. Of course it will depend on their jurisdiction as fair use can vary by country or potentially even within countries in terms of how it is applied.
I would almost have to think that barring particular legislation and precedent that people/companies who are explicitly providing Open Graph Protocol or similar meta data on their websites are explicitly granting a license to use that content as the only use for that data on most systems is to provide it for creating contexts on services like Facebook, Twitter, etc. Facebook likely created OGP as a proprietary format to give itself broad legal protection for just such use cases, though I suspect they parse pages and take titles or other snippets when OGP doesn’t exist. Naturally some large systems like WordPress may push OGP into code without the site’s owners being aware of what they’re potentially giving away, so the area is really murky at best. It would be beneficial to consult an attorney to see what their best advice might be or if there are precedents with respect to these areas.
For future reference, here is the relevant section for Fair Use from Title 17 of the Copyright Law of the United States:
107. Limitations on exclusive rights: Fair use40
Notwithstanding the provisions of sections 106 and 106A, the fair use of a copyrighted work, including such use by reproduction in copies or phonorecords or by any other means specified by that section, for purposes such as criticism, comment, news reporting, teaching (including multiple copies for classroom use), scholarship, or research, is not an infringement of copyright. In determining whether the use made of a work in any particular case is a fair use the factors to be considered shall include—
(1) the purpose and character of the use, including whether such use is of a commercial nature or is for nonprofit educational purposes;
(2) the nature of the copyrighted work;
(3) the amount and substantiality of the portion used in relation to the copyrighted work as a whole; and
(4) the effect of the use upon the potential market for or value of the copyrighted work.
The fact that a work is unpublished shall not itself bar a finding of fair use if such finding is made upon consideration of all the above factors.
Exploring Pine.blog
I’d noticed Pine.blog before at a previous IndieWebCamp, but not had time to delve into it very deeply. Seeing some of what Brian Schrader has been working on while following IndieWebCamp Austin remotely this weekend has reminded about the project. As a result, I’ve been spending some time tonight to check out some of the functionality that it’s offering. In part, I’m curious how similar, or not, it is to what Micro.blog is offering specifically with respect to the idea of IndieWeb as a Service which I’ve recently begun documenting. It’s always great to see the growing diversity and plurality of solutions in the space.
My brief prior experience with the platform was simply adding my website to their discovery service. Tonight I’ve found that Pine.blog has got a very pretty little feed reader experience with some fun discovery functionality. You can apparently create multiple timelines to follow content, but one needs a paid account for more than one timeline. It allows both following sites as well as recommending them to others. It also appears that Brian is supporting the rel=”payment” microformat as I see at least one feed that has a “$ Support” button in the Pine.blog interface to allow me to go to the site’s payment page to support it. I think this may be one of the first times I’ve seen this functionality in an app in the wild outside of the Overcast podcast app which added it a couple of years ago.
It has webmention support, so I can “like” things within the reader and notify others. Without a paid account I don’t see the ability to reply to or mention other sites though. It also looks like it allows for import/export of OPML too, though I haven’t tried it out yet–I can only test drive so many feed readers at a time and Indigenous is taking up all of my bandwidth at present.
I do wonder a bit about potentially importing/exporting my content if I were to go all-in on Pine.blog. I’d bet the idea is on the product map, but that’s a huge bit of work to build without a paid user base to support it. I’d personally want at least an export function if I were to change over, though I’m more likely to want to dovetail my own site with it much the way I’m currently doing with Micro.blog.
It looks like it should be able to post to my website, but I’m finding the “publish” and “preview” buttons don’t work–perhaps I need a paid account for this functionality? Of course, I only see UI to provide pine.blog with my URL and my account name, but it hasn’t authenticated using a password or other method, so perhaps that portion isn’t finished? I’ll circle back around to it later when I do a free trial. I do notice that Brian, the developer of the project, has an account on pine.blog which is mirrored on one of his subdomains running WordPress. Quirkily I’ve noticed that the header on his main website changes to alternately serve the pine.blog version and the WordPress version!
More to come as I continue exploring… Later on I’ll take a look at some of their paid functionality, but for now, it’s a pretty compelling set of features and some well-laid out user interface to start. I look forward to seeing how it continues to evolve.
Learn microformats by fixing micro.blog was a session at IndieWebCamp Austin 2020.
This is definitely an area I’m actively hacking in lately.
lol @zachleat what happened here? pic.twitter.com/7E6UtOyCLM
— Dave Rupert (@davatron5000) February 20, 2020
wait so… a bot/spammer reposts article as reply to the article… then zach’s sentiment analysis flags his own words as negative (!?) and renders them as “clown yelling”… but oops microformats, so google indexes w/ the clown-yelling instead of the post? https://t.co/reMcoc8KpC
— Eric Portis (@etportis) February 20, 2020
Stop giving away your work to people who don't care about it. Host it yourself. Distribute it via methods you control. Build your audience deliberately and on your own terms.
Be in charge of the relationship with your audience.
Deliver value and then ask for money. Avoid unnecessary middlemen.
Reminds me a bit of Kevin Marks’ experiment Decaying Silos as Dead Malls, though I’ll have to see if this site went to the extremes that Kevin did.
Makes me think I should do something similar when I syndicate my content to social silos? Hmmm….
My first use of the read post functionality was a tad confusing because I wasn’t aware that either the WordPress Micropub client or Post Kinds supported the read-status set up that IndieBookClub.biz had pioneered.
The vast majority of my read posts are for online articles which are relatively short in nature and so don’t use the read-status features and are simply marked up with read-of
. When I originally suggested that Indigenous support read posts, I only expected the read-of
support and didn’t imagine the additional read-status
support for “to-read”, “reading”, or “finished” to be included. These are highly experimental and have thus far only been supported by IndieBookClub which focuses on much longer book-length content that can take better advantage of the ideas of the idea of a bookmark to read, ongoing reading, and finished reading markers. Even with this support gRegor still thinks that it may be better to use the addition of p-category
or u-category
microformats instead of the read-status tags. The WordPress Micropub server is the only other software that supports these additional read-statuses besides gRegor’s own website.
Given that:
- an exceedingly small number of sites have support for read-status;
- the
read-of
microformat has somewhat better support (though it is still an experimental microformat itself); - the majority of posts that Indigenous users are likely to use for creating read posts will be articles (as opposed to either smaller posts like notes, likes, favorites, checkins, RSVPs, etc. or book length material),
I would recommend that you have a default setting in Indigenous for just read-of without a specific read-status (the UI could either indicate “none” or “read” without a read-status value). However for the occasional longer form usages leaving the other options in would be useful. I can easily imagine myself using the option for “to-read” over the simpler bookmark functionality now that it exists!
Thanks again for all your work!
Read Posts with Read Status via PESOS using GoodReads and Micropub
read-status
values of “to-read”, “reading”, and “finished”. I’ve managed to tweak my with Goodreads.com to also include these experimental pieces using the following additional snippets of code appended to the “Body” fields I’ve described before:
&read-status=to-read
&read-status=reading
&read-status=finished
I’ve added one of the three snippets to the appropriate IFTTT.com recipes for Goodreads feeds to create the appropriate output. Here’s the first post I’ve made using the new recipe for bookmarking a book I’d like to read: https://boffosocko.com/2020/02/15/meditations-marcus-aurelius/.
Previously I’ve been using simple notes to create read posts for books and just adding a “read” category to give me more control over the data in the posts. (I only used read posts previously for online articles.) Now that I’ve got the ability to provide some better differentiation for my progress, I think I’ll switch to using read posts for all my reading (books and articles).
Incidentally following IndieBookClub.biz and Indigenous for Android which added support for these earlier today, my method may be the third to use these microformats in the wild. Thanks to gRegor Morrill, Kristof De Jaeger, David Shanske, Ryan Barrett, and Charlotte Allen for their prior work, experimentation, code, and examples for allowing me to get this working on my website.
The issue of finding feeds to subscribe is a challenge that I have explored in my attempts to implement code in support of the Yarns Microsub Server. I want to publish feeds in a way that others can find them, not just users, but automated systems that present them to users. So, let’s start with t...
I hacked together some tweaks to add the following:
- Improved support in my theme for time related microformats including
dt-published
anddt-updated
- Because I post so frequently, I added a visible timestamp next to the date so it’s easier to follow my timeline of posts.
- I removed the data for my location, weather, and syndication links from
the_body
of my posts and appended it to my post meta data. This should prevent it from showing up in Webmentions to others’ websites or in syndicated copies, but still be available to parsers to attach that data to my posts in readers and other services. - I modified my CSS so that the text in the Simple Location and Syndication Links plugins matches that of the rest in its section.
- I added a cute little bullhorn icon in front of my Syndication Links so that it has some parallelism with the rest of the meta data on my site.
- I’d always liked the idea of adding in related posts data on my site, but didn’t like how it had worked in the past. Things were even worse with replying to other people’s posts as my markup (and far too many others I’ve seen in the WordPress world) was hacky and caused the related posts data to show up in their Webmentions sent to other sites. I looked through some of Jetpack’s documentation and figured out how to remove their Related Posts functionality from
the_body
, where it defaults, and append it instead to the post meta section of my posts. It’s not perfect yet, but it’s much closer to how I’d like it. Best of all, that data shouldn’t show up in my replies to other sites now either! I had disabled the functionality ages ago because it made me feel like a rude-IndieWebber.
With IndieWebCamp Online 2020 coming up this weekend, I hope to fix a few outstanding issues and roll these changes up into my open sourced IndieWeb Twenty Fifteen WordPress theme as my hackday project. If you’re using it on your own site, do let me know. Not that I can promise to fix it if it’s broken in places, but I’d at least like to know how it’s working out for you or where it could be improved.
Things left over to fix:
- Simple Location data still needs some CSS help to display the way I want it to.
- I need to target the Simple Location icon so I can have its color match that of the other icons.
- Because so many of my posts don’t have titles, I’ll need to tweak something there so that the Jetpack related posts will pick up better meta data as a pseudo-title instead of displaying the relatively context-less commentary that appears in
the_body
. - It may take a day or two for the related posts to populate properly, but I should make sure that it’s putting out relevant/interesting results.
- Is it worth adding a default featured photo for the related posts that don’t have one? Could I pull one from other meta fields for some classes of posts?