Given that “Looking back to go forward” is the theme of the camp this year, I think I may have chosen the perfect topic. To some extent I’m going to look at how the nascent web has recently continued evolving from where it left off around 2006 before everyone abandoned it to let corporate silo services like Facebook and Twitter become responsible for how we use the web. We’ll talk about how WordPress can be leveraged to do a better job than “traditional” social media with much greater flexibility.
Here’s the outline:
The web is my social network: How I use WordPress to create the social platform I want (and you can too!)
Synopsis: Growing toxicity on Twitter, Facebook’s Cambridge Analytica scandal, algorithmic feeds, and a myriad of other problems have opened our eyes to the ever-growing costs of social media. Walled gardens have trapped us with the promise of “free” while addicting us to their products at the cost of our happiness, sense of self, sanity, and privacy. Can we take back our fractured online identities, data, and privacy to regain what we’ve lost?
I’ll talk about how I’ve used IndieWeb philosophies and related technologies in conjunction with WordPress as a replacement for my social presence while still allowing easy interaction with friends, family, and colleagues online. I’ll show how everyone can easily use simple web standards to make WordPress a user-controlled, first-class social platform that works across domains and even other CMSes.
Let’s democratize social media using WordPress and the open web, the last social network you’ll ever need to join.
Intended Audience: The material is introductory in nature and targeted at beginner and intermediate WordPressers, but will provide a crash course on a variety of bleeding edge W3C specs and tools for developers and designers who want to delve into them at a deeper level. Applications for the concepts can be of valuable to bloggers, content creators, businesses, and those who are looking to better own their online content and identities online without allowing corporate interests out-sized influence of their online presence.
I mention it because I was specifically intrigued by a small piece of excellent user interface and social graph data that Reading.am unearths for me. I’m including a quick screen capture to better illustrate the point. While the UI allows me to click yes/no (i.e. did I like it or not) or even share it to other networks, the thing I found most interesting was that it lists the other people using the service who have read the article as well. In this case it told me that my friend Jeremy Cherfas had read the article.1
The tougher follow up is: how could we create a decentralized method of doing this sort of workflow in a more IndieWeb way? It would be nice if my read posts on my site (and those of others) could be overlain on websites via a bookmarklet or other means as a social layer to create engaged discussion. Better would have been the ability to quickly surface his commentary, if any, on the piece as well–functionality which I think Reading.am also does, though I rarely ever see it. In some sense I would have come across Jeremy’s read post in his feed later this weekend, but it doesn’t provide the immediacy that this method did. I’ll also admit that I prefer having found out about his reading it only after I’d read it myself, but having his and others’ recommendations on a piece (by their explicit read posts) is a useful and worthwhile piece of data, particularly for pieces I might have otherwise passed over.
In some sense, some of this functionality isn’t too different from that provided by Hypothes.is, though that is hidden away within another browser extension layer and requires not only direct examination, but scanning for those whose identities I might recognize because Hypothes.is doesn’t have a specific following/follower social model to make my friends and colleagues a part of my social graph in that instance. The nice part of Hypothes.is’ browser extension is that it does add a small visual indicator to show that others have in fact read/annotated a particular site using the service.
I’ve also previously documented on the IndieWeb wiki how WordPress.com (and WordPress.org with JetPack functionality) facepiles likes on content (typically underneath the content itself). This method doesn’t take things as far as the Reading.am case because it only shows a small fraction of the data, is much less useful, and is far less likely to unearth those in your social graph to make it useful to you, the reader.
I seem to recall that Facebook has some similar functionality that is dependent upon how (and if) the publisher embeds Facebook into their site. I don’t think I’ve seen this sort of interface built into another service this way and certainly not front and center the way that Reading.am does it.
The closest thing I can think of to this type of functionality in the analog world was in my childhood when library card slips in books had the names of prior patrons on them when you signed your own name when checking out a book, though this also had the large world problem that WordPress likes have in that one typically wouldn’t have know many of the names of prior patrons necessarily. I suspect that the Robert Bork privacy incident along with the evolution of library databases and bar codes have caused this older system to disappear.
This general idea might make an interesting topic to explore at an upcoming IndieWebCamp if not before. The question is: how to add in the social graph aspect of reading to uncover this data? I’m also curious how it might or might not be worked into a feed reader or into microsub related technologies as well. Microsub clients or related browser extensions might make a great place to add this functionality as they would have the data about whom you’re already following (aka your social graph data) as well as access to their read/like/favorite posts. I know that some users have reported consuming feeds of friends’ reads, likes, favorites, and bookmarks as potential recommendations of things they might be interested in reading as well, so perhaps this would be an additional extension of that as well?
 I’ve certainly seen this functionality before, but most often the other readers are people I don’t know or know that well because the service isn’t huge and I’m not using it to follow a large number of other people.
 I knew he was generally interested already as I happen to be following this particular site at his prior recommendation, but the idea still illustrates the broader point.
People often ask why WordPress has both a Category and a Tag functionality, and to some extent it would seem to be just for this thing–differentiating between topics and objects–or at least it’s how I have used it and perceived others doing so as well. (Incidentally from a functionality perspective categories in the WordPress taxonomy also have a hierarchy while tags do not.) I find that I don’t always do a great job at differentiating between them nor do I do so cleanly every time. Typically it’s more apparent when I go searching for something and have a difficult time in finding it as a result. Usually the problem is getting back too many results instead of a smaller desired subset. In some sense I also look at categories as things which might be more interesting for others to subscribe to or follow via RSS from my site, though I also have RSS feeds for tags as well as for post types/kinds as well.
I also find that I have a subtle differentiation using singular versus plural tags which I think I’m generally using to differentiate between the idea of “mine” versus “others”. Thus the (singular) tag for “commonplace book” should be a reference to my particular commonplace book versus the (plural) tag “commonplace books” which I use to reference either the generic idea or the specific commonplace books of others. Sadly I don’t think I apply this “rule” consistently either, but hope to do so in the future.
I’ve also been playing around with some more technical tags like math.NT (standing for number theory), following the lead of arXiv.org. While I would generally have used a tag “number theory”, I’ve been toying around with the idea of using the math.XX format for more technical related research on my site and the more human readable “number theory” for the more generic popular press related material. I still have some more playing around with the idea to see what shakes out. I’ve noticed in passing that Terence Tao uses these same designations on his site, but he does them at the category level rather than the tag level.
Now that I’m several years into such a system, I should probably spend some time going back and broadening out the topic categories (I arbitrarily attempt to keep the list small–in part for public display/vanity reasons, but it’s relatively easy to limit what shows to the public in my category list view.) Then I ought to do a bit of clean up within the tags themselves which have gotten unwieldy and often have spelling mistakes which cause searches to potentially fail. I also find that some of my auto-tagging processes by importing tags from the original sources’ pages could be cleaned up as well, though those are generally stored in a different location on my website, so it’s not as big a deal to me.
Naturally I find myself also thinking about the ontogeny/phylogeny problems of how I do these things versus how others at large do them as well, so feel free to chime in with your ideas, especially if you take tags/categories for your commonplace book/website seriously. I’d like to ultimately circle back around on this with regard to the more generic tagging done from a web-standards perspective within the IndieWeb and Microformats communities. I notice almost immediately that the “tag” and “category” pages on the IndieWeb wiki redirect to the same page yet there are various microformats including u-tag-of and u-category which are related but have slightly different meanings on first blush. (There is in fact an example on the IndieWeb “tag” page which includes both of these classes neither of which seems to be counter-documented at the Microformats site.) I should also dig around to see what Kevin Marks or the crew at Technorati must surely have written a decade or more ago on the topic.
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!