Microsub is a proposed standard for creating a new generation of social readers that decouples the management of subscriptions to feeds and the parsing/delivering content from the user interface and presentation of the content. This popup IndieWebCamp session will focus on discussions to iterate and evolve the Microsub standard.
Tag: Microsub
https://boffosocko.com/2021/04/26/a-twitter-of-our-own-at-oerxdomains-2021-conference/
I heartily agree with @waxpancake that the open web needs some better discovery options.
Kevin, I understand a lot of the complications for attempting to set up an IndieWeb site for a static site generator like Evan. A lot of IndieWeb tech is harder to do with SSG’s since a lot of the functionality is anything but static—yet it still works. Hopefully the small handful of plugins for WordPress are much easier, particularly for someone as adept as you. I’ll admit there’s a microformats issue for dovetailing WordPress themes properly, but that should only get better with time. We could definitely use some developers and designers to help lighten the load to make it easier for everyone. Some platforms like WithKnown have it all out of the box while Drupal and WordPress have either one or a several plugins. Evan’s set up is about as complicated as they could come.
Since you mention some of your problems, a few things you might appreciate for making your own personal use easier for WordPress are the large number of Micropub clients you could be using to post to your website. They’re way easier than dealing with the Classic editor, Gutenberg, or the mobile interface. I really enjoy using Quill and Omnibear (a browser extension) myself, but for food you might enjoy Teacup and for memes there’s Kapowski. If you want a crash-course on micropub for a non-developer, I did a WordCamp session on it a while back. Since most of them are open source, I’d imagine with your experience, if necessary, you could modify them to suit your specific needs without a lot of work.
If you want to go a step further, you could set up a social reader for subscribing to and reading other sites as well as using their built in micropub functionality to reply to posts directly from your reader.
You’re right that the ecosystem does seem overly-complicated on first view, but it’s taken almost a decade of work by hundreds and thousands of people to attempt to make a set of standards that are as simple as possible for building into almost any platform out there. Further work will only serve to make things even easier and more usable over time.
Of course if one wants an easier solution (especially for the completely non-technical person who is looking for a Twitter-like replacement), there are a few IndieWeb as a Service platforms out there. One of the best I’ve seen so far is micro.blog. You can’t beat its clean interface or ease-of-use as a service and it has pretty much everything built in out of the box. As time goes by it’ll be great to see other services like this that offer the interoperability without the heartache that Evan has seen.
If you’ve got ideas about how the WordPress parts could be improved, do pass them along.
One thing I find myself wanting is a discovery-based follow button for Microsub that would allow me to input either my own following list or even my Twitter account which would then parse through my Twitter follows to allow me to quickly follow the personal websites that appear in people’s Twitter website and bio fields.
My sense is that RSS is having a mini resurgence. People are getting wary of the social media platforms and their rapacious appetite for data. We’re getting fatigued from notifications; our inboxes are overflowing. And people are saying that maybe, just maybe, RSS can help. So I’m seeing RSS being discussed more in 2020 than I have done for years. There are signs of life in the ecosystem.
Sadly the general concept presented here, while it sounds potentially useful, is far too little and misdirected. Hopefully better potential solutions are still not too late.
First, let’s step back a moment. The bigger problem with feeds was that website designers and developers spent far too long in the format wars between RSS and Atom while the social media giants focused on cleaner and easier UI. This allowed the social silos to dramatically close the gap in functionality and usability. While website owners were spending time on formats and writing long articles about what RSS was, how it worked, and how to use it, the public lost interest. We need something really dramatic to regain this ground and /feeds
just is not going to cut it.
The first problem I see with this is that on it’s face /feeds
both looks and sounds like code. No user really wants to interact with code if they don’t have to. Why not simply have a page or button called something much more user friendly like “subscribe” or “follow”? Almost every major social silo has a common pattern like this and has a simple “follow” button on every user’s page. A quick click and one is done with the transaction!
Instead the solution offered here is to have not only yet-another-page but one that needs to be maintained. (As good as the /now idea may seem, the fact that it needs to be regularly and manually updated makes it a failure out of the gate. I’ll bet that less than half the /now pages out there have been updated in the last 6 months. I know mine hasn’t.) Worse, suppose I click over to a /feeds
page, as an average person I’m still stuck with the additional burden of knowing or learning about what a feed reader is, why I’d need or want one, and then knowing what RSS is and how I might use that. I might see a one click option for Twitter or Mastodon, but then I’m a mile away from your website and unlikely to see you again in the noise of my Twitter feed which has many other lurking problems.
One of the best solutions I’ve seen in the past few years is that posited by SubToMe.com which provides a single, customizable, and universal follow button. One click and it automatically finds the feeds hidden in the page’s code and presents me with one or more options for following it in a feed reader. Once I’ve chosen a reader, it remembers my choice and makes the following pattern easier in future transactions. This is a far superior option over /feeds
because it takes away a huge amount of cognitive burden for the user. As a developer, I’ve got a browser bookmarklet that provides this functionality for sites that don’t provide it for me. How nice would it be if browsers went back and offered such a one button collection mechanism?
Want to give this a try? I’ve got a “Follow Me” button in the side bar of my website. And if that doesn’t float your boat, I’ve tinkered with other methods of subscribing to my content that you can find at my subscribe page. Some developers might not be too scared of what’s on my subscribe page (a /feed
page by a slightly friendlier name), but less technically minded people are sure to have a dramatically different perspective.
The other piece here that I might take umbrage with is the offering to provide feeds to subscriptions to alternate services like Twitter and Mastodon. (This doesn’t take into any account that RSS feeds of social services are positively atrocious, not to mention that attempting to access Marcus’ Twitter feed in RSS Box returns the interminable error message: “There was a problem talking to Twitter. Please try again in a moment.”)
Ideally I see a future in which every person has the ability to own both their own domain name and their content in a simple manner. If this happens and it’s easier to subscribe to the sites of my friends, then I don’t need corporate social media to intermediate the transactions on my behalf. I also don’t need them to intermediate what I’m actually seeing with their blackbox algorithmic feeds either. Friends, family, and colleagues could simply come to my website and subscribe to all or portions of my content in which they’re interested. While I still presently syndicate some of my content to silos like Twitter and Mastodon for the ease of friends or family who don’t know about the technical side of potential solutions, I post everything on my website first where one can subscribe in a feed reader or by email. Subscriptions in Twitter or Mastodon, while nice to have, are just a poor simulacrum of the real things being served by my site in better ways with more context and a design that better reflects what I’d like to portray online. A /feed
page is going to be a failure from the start if you’re going to cede all the subsequent power directly to Twitter, Mastodon, and others anyway.
While I like the volume of the reactions to the post (indicating that there’s not only a readership, but a desire for this sort of functionality), I’m disheartened that so many designers and developers think that the idea of /feeds
is “enough” to stem the tide.
For those who might be truly interested in designing our way out of this problem, I’d recommend looking at some of the design and development work of the IndieWeb community which is trying (slowly, but surely) to improve these sorts of technical hurdles. Their wiki has large number of examples of things that do and don’t work, discussion of where problems lie, and a community conversing about how to potentially make them better through actual examples of things that are currently working on peoples’ websites.
A good example of this is the increasing improvement of social readers that allow one to subscribe to a variety of sources in a reader which also allows one to respond to posts in-line and then own that content on one’s website. If I can subscribe to almost anything out there in one interface and sort and filter it in any way I’d like, that’s far better than having twenty different feed readers named Facebook, Twitter, LinkedIn, Instagram, Soundcloud, etc. which I have to separately and independent manage and check. Now I’ve yet to see an IndieWeb reader with a one click SubToMe-type of solution for adding feeds to it, but I don’t think it will be very long before that’s a reality. The slowly improving Microsub spec that splits some of the heavy lifting needed to build and design a stand alone feed reader is certainly helping to make some massive headway on these issues.
Maybe we’ll soon have an easy way for people to post who they’re following on their own websites, and their readers will be able to read or parse those pages and aggregate those followed posts directly into a nice reading interface? Maybe someone will figure out a way to redesign or re-imagine the old blogroll? Maybe we’ll leverage the idea of OPML subscriptions so that a personal blogroll (maybe we rename this something friendlier like a following page or personal recommendations, subscriptions, etc.) can feed a person’s subscriptions into their social reader? There are certainly a lot of solid ideas being experimented on and in actual use out there.
We obviously still have a long way to go to make things better and more usable, not only for ourselves as designers and developers, but for the coding averse. I feel like there’s already a flourishing space out there doing this that’s miles ahead of solutions like /feeds
. Why don’t we start at that point and then move forward?
Some of these new W3C specs include Webmention, Micropub, WebSub, IndieAuth, and Microsub. Today I’ll talk abut Webmentions which are simply site-to-site @mentions or notifications which don’t involve corporate social media silos.
For those who’d like more information about webmentions and how they could be used, I’ve written a primer for A List Apart entitled Webmentions: Enabling Better Communication on the Internet.
Own Your Followers: Redirecting Feeds on the Web
A lot of the changes seem to be related to people who are shifting from one shiny toy or project to another. They all seem to say something like:
Hey Mom! Look at my fancy new static site that builds in 0.001 seconds!
Can you believe what Drupal supports in the IndieWeb now? See ya!
I’ve moved back to good ol’ WordPress. Ahhh…
Micro.blog is awesome and requires such little maintenance. I migrated… while on vacation… in the wilderness… from my cell phone!!!
Wheee!
They’re often redirecting all their old URLs to the new site, but the one URL they commonly neglect is to create a redirect for their primary RSS, Atom, JSON or other feeds to their new feed structure. This means that the feed goes dead, and I (and others) have to notice it, then revive it. For some who simply have h-feed
structures on their home page things may continue apace, particularly for the Microsub readers out there, though I haven’t been using those for as long to see as many issues.
Why are you doing all that work and making your followers do the extra manual work to go back and resubscribe?! Over the past four or five years there have been fifty or more people I’ve seen do this dance (some multiple times and even a few every 4 months or so). I totally get why they do it (because why not?!) But there should be a better way of keeping track of our major URLs and redirecting them properly.
From a continuity or even business perspective, this could be an even bigger thing as sites will likely spend a lot of time building an audience and could potentially throw it all away with the flip of a switch. I’ll be the first to admit that most of these people may not have a lot of people following them via RSS or similar means, but still?! It seems like at least once a week there’s some big newspaper, magazine, or corporate site I want to follow and I have to complain about finding their feeds. Why would you want to start all over again?
If a social media framing is easier for some, it’s the equivalent of changing your Twitter handle for your account with a hundred thousand followers to something new with no followers instead of creating a dummy account and swapping the usernames so you can have the new name, but keep all your followers.
There are also a few serial bloggers/writers who will start up a project for 3-6 months and build a following only to shut things down though they’ll keep the domain name. Why not redirect that primary domain to one of their other or newer projects and redirect those feeds as well? You’ve spent the time building an audience, why wouldn’t you want to keep it? Am I missing something fundamental here?
We often say, own your online identity, own your domain, and own your data. Perhaps we need to remember to also “own” our friends, family, followers, our community, or more broadly our audience?
Until then, I’m still flailing away out here. Manually changing your feeds in my reader…
I’m enamored of Aaron Parecki‘s Monocle reader. I can subscribe to almost anything I want, read it without interfering algorithms, and reply to posts directly in the reader, which uses Micropub to post those directly on my site, which has Webmentions to send notifications to those sites in turn.
I’m similarly in love with an app version called Indigenous for Android.
But really, who can have just one favorite?!? I also love:
They’ve not only got interesting sites, but they’re always doing cool things that are worth following.
And if you want some other interesting ones to take a peek at, I have longer list (with RSS/OPML) at https://boffosocko.com/about/following/
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!
Microsub reader clients and unread entries
While they all do a fantastic job of keeping track of what I’ve read or left unread, many of them are missing the ability to explicitly ask for just the unread items in particular channels. Invariably, I’ll find one or two pieces that I want to leave unread to revisit later, but then finding them in a stream of hundreds later becomes an impossible task.
Aaron Parecki‘s model version in Monocle has a handy menu item to request just the unread items in a channel.
Either it’s missing or I’m not able to easily find the same functionality in Kristof De Jaeger‘s Indigenous for Android or Grant Richmond‘s Together. (I’ve yet to have time to try out some of the others.)
I suppose I should simply start bookmarking those pieces I still want to read later and rely on my site for the memory. Of course this also then makes me itch for having private feeds in these readers to find my unpublished bookmarks for reading via my favorite Microsub clients on a future date.
I’ve noticed that Indigenous for Android does have the ability to create an additional channel for all unread items. This seems useful while I’ve only got a few dozen feeds and a handful of channels, but I don’t expect it to be quite as useful when I’ve moved over several dozen channels with hundreds of feeds. The benefit is that it does replicate the sort of functionality that most social silos like Facebook and Twitter have of an unending stream of unread posts.
Indigenous also allows one to either manually mark items as read individually or automatically mark them read a page at a time. The page at a time seems to clear out the entire channel rather than marking things read as they’re scrolled, so it’s a bit too broad for my taste. Monocle does a much better job at this marking read while scrolling functionality. Indigenous also says it has a “Mark all read” button per channel, but somehow I’m not seeing it in the UI despite the many ways I toggle the options.
Indigenous also has the ability to set a Read later channel, which seems useful. There is another setting for “Move items” that indicates one can move posts from one channel to another, but when choosing individual posts to move, the UI reads “Select channel to add the feed to”. I was leery at first because I didn’t want to move my entire feed to the new channel, but after trying it there’s a pop up that said “Post moved to channel X”. Perhaps Kristof might change the word “feed” to “post” in that part of the interface? Sadly though, I have to report that looking at my Unread items channel doesn’t actually show the things that were to have been moved.
In addition to all of this, since you’re a coder, you might also appreciate some of the more advanced feed discovery code David has written into the Yarns Microsub Server for WordPress (code on Github). You may be able to build some of the discovery bits into some of your syndication hubs/planets in the future.
Of course, like FeedWordPress and the relatively similar PressForward plugin, you might also be able to bend Yarns into an aggregator in similar ways.