Back in December, I was thinking about html links and the functionality of sending notifications using webmentions. Within the IndieWeb, this is known as mentioning or potentially person-tagging someone (inline). By adding a link to a person’s website onto any mentions of their name in my posts, my website will automatically send them a notification that they were mentioned. They can then determine what they want to do or not do with that information.
While I want people that I mention in some of my posts to be aware that they’ve been mentioned by me, I don’t necessarily need to add to the visual cruft and clutter of the pages by intentionally calling out that link with the traditional color change and underline that <a> links in HTML often have. After all, I’m linking to them to send a notification to them, not necessarily to highlight them to everyone else. In some sense, I’m doing this because I’ve never quite liked that Twitter uses @names highlighted within posts. All the additional cruft in Twitter like the “@” and “#” prefixes, while adding useful functionality, have always dramatically decreased the readability and enjoyment of their interface for me. So why not just get rid of them?! I’m glad to have this power and ability to do so on my own website and hope others appreciate it.
In the past I’ve tried “blind notifying” (or bcc’ing via Webmention) people by adding invisible or hidden links in the page, but this has been confusing to some. This is why one of the general principles of the IndieWeb is to
Use & publish visible data for humans first, machines second.
Thus, I’ve added a tiny bit of CSS to those notification links so that they appear just like the rest of the text on the site. The notifications via Webmention will still work, and those who are mentioned will be able to see their names appear within the post.
For those interested, I’ve left in some hover UI so if you hover your mouse over these “hidden” links, they will still indicate there’s a link there and it will work as expected.
As an example of the functionality here within this particular post, I’ve hidden the link on the words “mentioning” and “person-tagging” in the first paragraph. Loqi, the IndieWeb chat bot, should pick up the mention of those wiki pages via WebSub and syndicate my post into the IndieWeb meta chat room, and those interested in the ideas can still hover over the word and click on it for more details. In practice, I’ll typically be doing this for less relevant links as well as for tagging other people solely to send them notifications.
I’m curious if there are any edge cases or ideas I’m missing in this sort of user interface? Sadly it won’t work in most feed readers, but perhaps there’s a standardizable way of indicating this? If you have ideas about improved presentation for this sort of functionality, I’d be thrilled to hear them in the comments below.
It may still be a while before I can make the leap I’d love to make to using Microsub related technology to replace my daily feed reader habits. I know that several people are working diligently on a Microsub server for WordPress and there are already a handful of reader interfaces available. I’m particularly interested in the fact that I can use a reader interface integrated with Micropub so that my reactions in the reader (likes, bookmarks, replies, etc.) are posted back to my own personal website which will then send notifications (via Webmention) to the mentioned websites. Of course it’s going to take some time before I’m using it and even more time after that for the set up to become common and easy to use for others. So until then, I and others will need some tools to use right now.
Toward this end I thought I’d double down on my use of Inoreader in my daily web consumption workflows. I wanted to make it easier to use my feed reader to post all these types of posts to my website which will still handle the notifications. In some sense, instead of relying on a feed reader supporting Micropub, I’ll use other (older) methods for making the relevant posts. As I see it, there are two potential possibilities using Inoreader:
(1) using a service like IFTTT (free) or Zapier (paid) to take the post intents and send them to my WordPress site, or
(2) using the custom posting interface in Inoreader in conjunction with post editor URL schemes with the Post Kinds plugin to create the posts. Using WordPress’ built-in Post This bookmarklet schemes could also be used to make these posts, but Post Kinds plugin offers a lot more metadata and flexibility.
If This Then That (IFTTT)
Below is a brief outline of some of the IFTTT recipes I’ve used to take data from posts I interact with in Inoreader and post them to my own website.
IFTTT has an explicit like functionality with a one click like button. There is an IFTTT recipe which allows taking this datum and adding it directly as a WordPress post with lots of rich data. The “then that” portion of IFTTT using WordPress allows some reasonable functionality for porting over data.
IFTTT also has explicit favorite functionality using a one click starred article button. There is an IFTTT recipe which allows adding this directly as a WordPress post.
Since the “starred” article isn’t defined specifically in Inoreader as a “favorite”, one could alternately use it to create “read” or “bookmark” posts on their WordPress websites. I’m tempted to try this for read posts as I probably wouldn’t often use it to create favorite posts on my own website. Ultimately one at least wants an easy-to-remember 1 to 1 mapping of pieces of functionality in Inoreader to their own website, so whatever I decide I’ll likely stick to it.
While there is no specific functionality for creating bookmarks in Inoreader (though starred articles could be used this way as previously mentioned), there is a “saved webpage” functionality that could be used here in addition to an IFTTT recipe to port over the data to WordPress.
While Inoreader has a common feed reader read/unread functionality, it is often not used tacitly and this is a means of reducing friction within the application. Not really wanting to muddle the meaning of the “starred” article to do it, I’ve opted to adding an explicit “read” tag on posts I’ve read.
IFTTT does have a “New tagged article” recipe that will allow me to take articles in Inoreader with my “read” tag and post them to my website. It’s pretty simple and easy.
For dealing with replies, there is an odd quirk within Inoreader. Confoundingly the feed reader has two similar, yet still very different commenting functionalities. One is explicitly named “comment”, but sadly there isn’t a related IFTTT trigger nor an RSS feed to take advantage of the data one puts into the comment functionality. Fortunately there is a separate “broadcast” functionality. There is an IFTTT recipe for “new broadcasted article” that will allow one to take the reply/comment and post it to one’s WordPress website.
Like many of the above there is a specific IFTTT recipe that will allow one to add subscriptions directly to WordPress as posts, so that any new subscriptions (or follows) within the Inoreader interface can create follow posts! I doubt many people may use this recipe, but it’s awesome that it exists. Currently anything added to my blogrolls (aka Following Page) gets ported over to Inoreader via OPML subscription, so I’m curious if them being added that way will create these follow posts? And if so, is there a good date/time stamp for these? I still have to do some experimenting to see exactly how this is going to work.
RSS feed-based functionality
In addition to the IFTTT recipe functionality described above, one could also use IFTTT RSS functionality to pipe RSS feeds which Inoreader provides (especially via tags) into a WordPress website. I don’t personally use this sort of set up, but thought I’d at least mention it in passing so that anyone who might like to create other post types to their website could.
Custom posting in Inoreader with Post Kinds Plugin
If using a third-party service like IFTTT isn’t your cup of tea, Inoreader also allows custom sharing options. (There are also many pre-built ones for Facebook, Twitter, etc. and they’re also re-orderable as well.) I thus used WordPress’ post editor URL schemes to send the data I’d like to have from the original post to my own website. Inoreader actually has suggestions in their UI for how to effectuate this generically on WordPress. While this is nice, I’m a major user of the Post Kinds Plugin which allows me a lot more flexibility to post likes, bookmarks, favorites, reads, replies, etc. with the appropriate microformats and much richer metadata. Post Kinds has some additional URL structures which I’ve used in addition to the standard WordPress ones to take advantage of this. This has allowed me to create custom buttons for reads, bookmarks, replies, likes, and listens. With social sharing functionality in Inoreader enabled, each article in Inoreader has a sharing functionality in the bottom right corner that has a configuration option which brings up the following interface:
Once made, these custom button icons appear at the bottom of every post in Inoreader, so, for example, if I want to reply to a post I’ve just read, I can click on the reply button which will open a new browser window for a new post on my website. The Post Kinds plugin on my site automatically pulls in the URL of the original post, parses that page and–where available–pulls in the title, synopsis, post date/time, the author, author URL, author photo, and a featured photo as well as automatically setting the specific post kind and post format. A lot of this data helps to create a useful reply context on my website. I can then type in my reply to the post and add any other categories, tags, or data I’d like in my admin interface. Finally I publish the post which sends notifications to the original post I read (via Webmention).
Conclusion and future
With either of the above set ups, there are a few quick and easy clicks to create my posts and I’m done. Could it be simpler? Yes, but it likely won’t be much more until I’ve got a fully functional Microsub server and reader up and working.
Of course, I also love Inoreader and its huge variety of features and great usability. While I’m patiently awaiting having my own WordPress Microsub server, I certainly wouldn’t mind it if Inoreader decided to add some IndieWeb functionality itself. Then perhaps I wouldn’t need to make the switch in the near future.
What would this look like? It could include the ability to allow me to log into Inoreader using my own website using IndieAuth protocol. It could also add Micropub functionality to allow me to post all these things directly and explicitly to my website in an easier manner. And finally, if they really wanted to go even further, they could make themselves a Microsub server that enables me to use any one of several Microsub clients to read content and post to my own website. And of course the benefit to Inoreader is that if they support these open internet specifications, then their application not only works with WordPress sites with the few appropriate plugins, but Inoreader will also work with a huge variety of other content management systems that support these specs as well.
Whether or not Inoreader supports these protocols, there is a coming wave of new social feed readers that will begin to close many of these functional gaps that made RSS difficult. I know things will slowly, but eventually get better, simpler, and easier to use. Soon posting to one’s website and doing two way communication on the internet via truly social readers will be a reality, and one that’s likely to make it far easier to eschew the toxicity and problems of social sites like Facebook and Twitter.
I’ve seen the five R’s used many times in reference to the OER space (Open Educational Resources). They include the ability to allow others to: Retain, Reuse, Revise, Remix and/or Redistribute content with the appropriate use of licenses. These are all some incredibly powerful building blocks, but I feel like one particularly important building block is missing–that of the ability to allow easy accretion of knowledge over time.
Some in the educational community may not be aware of some of the more technical communities that use the idea of version control for their daily work. The concept of version control is relatively simple and there are a multitude of platforms and software to effectuate it including Git, GitHub, GitLab, BitBucket, SVN, etc. In the old days of file and document maintenance one might save different versions of the same general file with increasingly different and complex names to their computer hard drive: Syllabus.doc, Syllabus_revised.doc, Syllabus_revisedagain.doc, Syllabus_Final.doc, Syllabus_Final_Final.doc, etc. and by using either the names or date and timestamps on the file one might try to puzzle out which one was the correct version of the file that they were working on.
For the better part of a decade now there is what is known as version control software to allow people to more easily maintain a single version of their particular document but with a timestamped list of changes kept internally to allow users to create new updates or roll back to older versions of work they’ve done. While the programs themselves are internally complicated, the user interfaces are typically relatively easy to use and in less than a day one can master most of their functionality. Most importantly, these version control systems allow many people to work on the same file or resource at a time! This means that 10 or more people can be working on a textbook, for example, at the same. They create a fork or clone of the particular project to their personal work space where they work on it and periodically save their changes. Then they can push their changes back to the original or master where they can be merged back in to make a better overall project. If there are conflicts between changes, these can be relatively easily settled without much loss of time. (For those looking for additional details, I’ve previously written Git and Version Control for Novelists, Screenwriters, Academics, and the General Public, which contains a variety of detail and resources.) Version control should be a basic tool of every educators’ digital literacy toolbox.
For the OER community, version control can add an additional level of power and capability to their particular resources. While some resources may be highly customized or single use resources, many of them, including documents like textbooks can benefit from the work of many hands in an accretive manner. If these resources are maintained in version controllable repositories then individuals can use the original 5 R’s to create their particular content.
But what if a teacher were to add several new and useful chapters to an open textbook? While it may be directly useful to their specific class, perhaps it’s also incredibly useful to the broader range of teachers and students who might use the original source in the future? If the teacher who forks the original source has a means of pushing their similarly licensed content back to the original in an easy manner, then not only will their specific class benefit from the change(s), but all future classes that might use the original source will have the benefit as well!
If you’re not sold on the value of version control, I’ll mention briefly that Microsoft spent $7.5 Billion over the summer to acquire GitHub, which is one of the most popular version control and collaboration tools on the market. Given Microsofts’ push into the open space over the past several years, this certainly bodes well for both open as well as version control for years to come.
A Math Text
As a simple example, lets say that one professor writes the bulk of a mathematics text, but twenty colleagues all contribute handfuls of particular examples or exercises over time. Instead of individually hosting those exercises on their own sites or within their individual LMSes where they’re unlikely to be easy to find for other adopters of the text, why not submit the changes back to the original to allow more options and flexibility to future teachers? Massive banks of problems will allow more flexibility for both teachers and students. Even if the additional problems aren’t maintained in the original text source, they’ll be easily accessible as adjunct materials for future adopters.
One of the most powerful examples of the value of accretion in this manner is Wikipedia. While it’s somewhat different in form than some of the version control systems mentioned above, Wikipedia (and most wikis for that matter) have built in history views that allow users to see and track the trail of updates and changes over time. The Wikipedia in use today is vastly larger and more valuable today than it was on its first birthday because it allows ongoing edits to be not only improved over time, but those improvements are logged and view-able in a version controlled manner.
This is another example of an extensible OER platform that allows simple accretion. With the correct settings on a document, one can host an original and allow it to be available to others who can save it to their own Google Drive or other spaces. Leaving the ability for guests to suggest changes or to edit a document allows it to potentially become better over time without decreasing the value of the original 5 Rs.
Webmentions for Update Notifications
As many open educational resources are hosted online for easy retention, reuse, revision, remixing, and/or redistribution, keeping them updated with potential changes can potentially be a difficult proposition. It may not always be the case that resources are maintained on a single platform like GitHub or that users of these resources will necessarily know how to use these platforms or their functionality. As a potential “fix” I can easily see a means of leveraging the W3C recommended specification for Webmention as a means of keeping a tally of changes to resources online.
Let’s say Robin keeps a copy of her OER textbook on her WordPress website where students and other educators can easily download and utilize it. More often than not, those using it are quite likely to host changed versions of it online as well. If their CMS supports the Webmention spec like WordPress does via a simple plugin, then by providing a simple URL link as a means of crediting the original source, which they’re very likely to do as required by the Creative Commons license anyway, their site will send a notification of the copy’s existence to the original. The original can then display the webmentions as traditional comments and thus provide links to the chain of branches of copies which both the original creator as well as future users can follow to find individual changes. If nothing else, the use of Webmention will provide some direct feedback to the original author(s) to indicate their materials are being used. Commonly used education facing platforms like WordPress, Drupal, WithKnown, Grav, and many others either support the Webmention spec natively or do so with very simple plugins.
One of the issues some may see with pushing updates back to an original surrounds potential resource bloat or lack of editorial oversight. This is a common question or issue on open source version control repositories already, so there is a long and broad history of for how these things are maintained or managed in cases where there is community disagreement, an original source’s maintainer dies, disappears, loses interest, or simply no longer maintains the original. In the end, as a community of educators we owe it to ourselves and future colleagues to make an attempt at better maintaining, archiving, and allowing our work to accrete value over time.
The 6th R: Request Update
In summation, I’d like to request that we all start talking about the 6 R’s which include the current 5 along with the addition of a Request update (or maybe pull Request, Recompile, or Report to keep it in the R family?) ability as well. OER is an incredibly powerful concept already, but could be even more so with the ability to push new updates or at least notifications of them back to the original. Having the ability to do this will make it far easier to spread and grow the value of the OER concept as well as to disrupt the education spaces OER was evolved to improve.
If it’s of interest, you or your colleagues at Automattic might want to take a look at it in terms of potentially adding a related Microsub reader interface as the other half of his Microsub server. Given your prior work on the beautiful WordPress.com feed reader, this may be relatively easy work which you could very quickly leverage to provide the WordPress ecosystem with an incredibly powerful feed reader interface through which users can interact directly with other sites using the W3C’s Micropub and Webmention specifications for which there are already pre-existing plugins within the repository.
For some reference I’ll include some helpful links below which might help you and others get a jump start if you wish:
While I understand most of the high level moving pieces, some of the technical specifics are beyond my coding abilities. Should you need help or assistance in cobbling together the front end, I’m positive that Jack, Aaron Parecki, David Shanske, and others in the IndieWeb chat (perhaps the #Dev or #WordPress channels–there are also bridges for using IRC, Slack, or Matrix if you prefer them) would be more than happy to lend a hand to get another implementation of a Microsub reader interface off the ground. I suspect your experience and design background could also help to shape the Microsub spec as well as potentially add things to it which others haven’t yet considered from a usability perspective.
In the erstwhile, I hope all is well with you. Warmest regards!
The researcher’s post can webmention an aggregating website similar to the way they would pre-print their research on a server like arXiv.org. The aggregating website can then parse the original and display the title, author(s), publication date, revision date(s), abstract, and even the full paper itself. This aggregator can act as a subscription hub (with WebSub technology) to which other researchers can use to find, discover, and read the original research.
Readers of the original research can then write about, highlight, annotate, and even reply to it on their own websites to effectuate peer-review which then gets sent to the original by way of Webmention technology as well. The work of the peer-reviewers stands in the public as potential work which could be used for possible evaluation for promotion and tenure.
Readers of original research can post metadata relating to it on their own website including bookmarks, reads, likes, replies, annotations, etc. and send webmentions not only to the original but to the aggregation sites which could aggregate these responses which could also be given point values based on interaction/engagement levels (i.e. bookmarking something as “want to read” is 1 point where as indicating one has read something is 2 points, or that one has replied to something is 4 points and other publications which officially cite it provide 5 points. Such a scoring system could be used to provide a better citation measure of the overall value of of a research article in a networked world. In general, Webmention could be used to provide a two way audit-able trail for citations in general and the citation trail can be used in combination with something like the Vouch protocol to prevent gaming the system with spam.
Government institutions (like Library of Congress), universities, academic institutions, libraries, and non-profits (like the Internet Archive) can also create and maintain an archival copy of digital and/or printed copies of research for future generations. This would be necessary to guard against the death of researchers and their sites disappearing from the internet so as to provide better longevity.