I’ve refined the process a bit in the last couple of weeks, and am becoming relatively happy with the overall output. For those interested, below is the general process/workflow I’m using:
- As I read a website, I use a browser extension (there’s also a bookmarklet available) linked to my Reading.am account to indicate that I’m currently reading a particular article.
- I have an IFTTT.com applet that scrapes the RSS feed of my Reading account for new entries (in near real-time) and this creates a new WordPress draft post on my blog. I did have to change my IFTTT.com settings not to use their custom URL shortener to make things easier and to prevent future potential link-rot.
- Shortly after I’m done reading, I receive a notification of the creation of the draft post to remind me to (optionally) post my comments/thoughts to the draft post. If necessary, I make any additional modifications or add tags to the post.
- I publish the post; and
- Optionally, I send POSSE copies to other silos like Facebook, Twitter, or Google+ to engage with other parts of my network.
Status updates of this type also have a pre-included O-embed with a synopsis of the content if the bookmarked site supports it, otherwise, a blockquoted synopsis stripped from the site’s meta-data is included.
Other near-term improvements may include custom coding something via the available Reading.am hooks to directly integrate with the WordPress Post Kinds plugin to use the URL post pattern http://www.yoursite.com/wp-admin/post-new.php?kind=read&kindurl=@url
to shorten the workflow even further. Post Kinds automatically handles the wrapping of the post data in the appropriate microformats automatically. I also want to add a tidbit so that when I make my post I ping the Internet archive with the URL of the article I read so that it will be archived for future potential reference (hat tip to Jeremy Kieth for giving me the idea at IndieWebCamp LA a few weeks ago.)
I had originally played around with using the Post Kinds bookmarklet method directly, but this got in the way of the immediacy of reading the particular article for me. Using a PESOS method allows me to read and process the article a bit first before writing commentary or other details. I may also integrate a Hypothes.is based workflow into this process in which I use the hypothes.is browser etension to highlight and annotate the article and then use the Hypothes.is Aggregator Plugin to embed those thoughts into the post via shortcodes. The following post serves as a rough example of this, though the CSS for it could stand a bit of work: Chris Aldrich is reading WordPress Without Shame.
I was a bit surprised that Reading.am didn’t already natively support a WordPress pathway though it has a custom set up for Tumblr as well as a half a dozen other silos. Perhaps they’ll support WordPress in the future?
These new read post types can be found at the following URL: http://boffosocko.com/kind/read/?type=status?type=link.
Hi Chris, do you know wether there is a post type alike “I have read this book” for CMS Known? It´s only because of journaling. There is no need of a current status like “just reading”, “done” etc.
Andreas, The best way I’m aware of to do read posts with #WithKnown currently is to post a status update to the effect. I’ve been considering doing a plugin similar to Jonathan LaCour’s Watching https://github.com/cleverdevil/Known-Watching but for books. In fact, other than some cut and paste work and changing the microformats, it should be a simple thing. I’d almost feel guilty for “stealing” it.
I’ve started hacking away at a Read plugin similar to the bookmark or like functionalities that simply bookmarks articles which I’ve read online, but it’s got some quirky upstream issues that need to be solved before I can finish it. Ultimately it’s really for online content more so than books (or even magazines) though. I may circle back around to it sometime toward the end of the summer as I’m trying to finish up some last pieces on my Reading workflows for WordPress.
Notes, as much for my own memory as for anyone following along, on a couple of recent tweaks
Reading
I read a lot, on and offline, and forget almost as much, so I have various places where I try to save bookmarks, notes and what have you. Then I noticed that someone whose footsteps I have been dogging uses a thing called Reading. The premise is “Not what you like. Not what you find interesting. Just what you’re reading,” with an emphasis on not censoring yourself. I confess I’m not fully on board with that. There are some things that I start reading and then discover that they just are not what I am looking for. No point marking those. There’s a social element, in that you can build up a little community and comment on what you’re reading. It is also super-easy to read what you and your community are Reading, IYSWIM, because there are RSS feeds for it all. Also, it is easy to share to other places like Instapaper and Pinboard — which has a handy “reading.am” tag. I haven’t yet tried the other sharing options.
At this point, I am consuming my community’s RSS and using my own RSS to feed the sidebar here. So no permanent storage yet. It would be an interesting project to see whether I could automate something from my RSS feed to, say, my stream on Known.
Coding 1
Sticking stuff from reading.am into the sidebar was easy enough, thanks to the superb Twigfeeds plugin for Grav, but through no fault of the plugin, there was an awful lot of guff, to whit Jeremy Cherfas is reading in front of every entry. To begin with I thought of going through a few loops to get rid of that, but then I had a little eureka moment. You can use filters to do all sorts of things to Twig variables in Grav. A few minutes later, I stuck this
{{ item.title | regex_replace(['/Jeremy Cherfas is reading /'],['']) }}
in the Feeds section of
sidebar.html.twig
and all was good. I was quite happy with that.Coding and commenting
Having managed to get webmentions and comments working here a couple of things needed fixing. One is the ability to moderate comments. If a human being is taking the trouble to make a comment, I don’t want to bother them with having to prove that they’re a human being, so there are things in place to deter bots (I hope) but not people. Alas, this means that anyone who can be bothered is free to spam me, and as yet the plugin that does comments in Grav has no way to deal with individual comments. I have to go to the web server, find a particular file and edit it. Not, so far, a huge problem, but it seems to me that automating this process could be another useful learning exercise.
More generally, there’s been a renewed discussion of the value or otherwise of comments. In general, I’m all for civilised discussion. ADN had that, but not integration with other sites. 10C has it, and is integrated with its own blogging platform, but not much else. Micro.blog seems to be making it easier and easier. Responding on your own site almost certainly promotes civilised discussion, and webmentions make it relatively easy to ensure that the other members of the conversation are aware of the whole discussion. But there was one piece missing in my own implementation: a way for people without webmentions to let me know that they had mentioned a post of mine.
At first I thought it would be really difficult and involve a script on my web pages, something entirely new to me. However, chums in the IndieWeb IRC assured me that it gould be done with a simple POST form. That I almost understand. So I went off, plagiarised a couple of forms that I saw on other people’s sites, tweaked sources and targets to suit my own, and ended up with something that, to my amazement, actually works. And it really wasn’t that difficult.
If you’re running a blog on Grav and want to let people ping you with their responses, this is the snippet you need.
<form id="webmention-form" action="https://webmention.herokuapp.com/api/webmention" method="post">
<p>
<label for="webmention-source">If you write something on your own site that links to this post, send me a <a href="http://indieweb.org/webmention">Webmention</a> by putting your post's URL in here:</label>
<input id="webmention-source" type="url" name="source" placeholder="URL/Permalink of your article">
</p>
<p>
<input style="background-color: #22ff9b; text-align: center; width: 6rem;" id="webmention-submit" type="submit" name="submit" value="Do it!">
</p>
<input id="webmention-target" type="hidden" name="target" value="{{ page.permalink }}" >
</form>
If I were to be hypercritical I’d complain that the styling is clunky and not the same as the other form, but it is definitely good enough.