In the current world of silos dominating the social media space, people typically have to visit half a dozen websites or apps to see all the latest content from friends. At this point I'm sick of this "multiple inbox" model that I want to find an alternative as fast as possible.
Currently I open my usual social media sites (Instagram, Twitter and Facebook, in that order) and read the home timeline only as a last resort. Below is an attempt to document the primary ways I find things online so that I can consider how I want my IndieWeb reader to present content to me.
Twitter keyword search
I have a persistent streaming search from twitter.com running, looking for specific keywords. These tweets get sent to various IRC channels I am in. The keywords are usually words associated with specific projects.
For example "indieweb, indiewebcamp, indieauth, webmention" all get sent to the public #indiewebcamp IRC channel. A search for "aaronpk, aaronparecki.com, flickstagram, transportini" and a couple other terms (which I don't want to reveal, an important point that will have to be considered in the design of my reader) all go to a private IRC channel. One of the internal Esri channels has a search running for "esripdx, geotrigger, developers.arcgis.com" so we can see when people are talking about our projects.
When a particularly interesting tweet comes in, I may click it to see if anyone has replied to it and read the conversation thread.
Open tabs to follow specific threads
Occasionally I come across an article newly posted on Hackernews, or a tweet I think will lead to an interesting conversation, so I leave a browser tab open to the URL and come back to it periodically to see if anything is happening. I usually close these after a couple hours to a day, occasionally up to 2 days.
Twitter or Instagram searches
When I am at a specific event, or in some other temporary situation, I often search a specific hashtag or a keyword to see what other people are saying. After the event, I typically don't care to follow the search anymore.
Specific people
Along the lines of Tantek's people-focused communications, I often open Twitter or Facebook to a specific person's timeline, such as when I first meet someone, or when I want to get in touch with someone after a while and see what they've been up to. Sometimes this is people I am already following, but sometimes I do not want to follow them publicly or persistently, and just see what they have recently posted instead.
Swarm - who's nearby
On very rare occasions, I open the Swarm app to look at who is nearby. I would say for the most part this is not terribly useful or interesting information, so I would not prioritize this feature in an interface, as the majority of the time I use Swarm this information is not helpful.
Replacing my use of IRC
Currently, IRC is my primary "reader." Because I have so many Twitter searches running, I very rarely actually visit twitter.com and look at my stream.
I also have many other bits of information piped into IRC, such as notifications of webmentions of my various websites, debugging information from my website, notifications when someone calls my number on my apartment's call box, debug logs from other websites I run, etc.
In order to replace IRC as a generic notification platform for myself, I'll need a way to easily get arbitrary messages into my reader. Probably my best bet is to create a really simple blog that supports Micropub, so my various systems can quickly create posts on it. Then I can just subscribe to that blog in my reader.
IRC also sends push notifications to my phone for lines that match certain patterns, so I will need a similar mechanism to receive mobile push notifications about certain items that appear in my reader.
Existing Readers
There are many existing RSS readers, but most of them follow the same model of reader that has existed since the beginning of RSS readers. I tried extending Selfoss to support Microformats feeds, with mostly success. However I realized that this reader was fundamentally stuck in the RSS reader model of having an "inbox" of unread items, and reading specific feeds individually. I think we can do better than this now.
I've heard many rumblings that the fantastic IndieWeb publishing platform Known will be getting built-in reader functionality soon. I look forward to that for sure, since it will make IndieWeb-enabled readers accessilble to a lot of people.
Another fantastic IndieWeb reader is Woodwind, which is relatively new and Kyle has made great progress on it already! I've been using it already, reading several peoples' blogs from it and using it to post likes on my site. The only reason I'm building my own and not just building on that one is because it's written in Python and I don't know the first thing about making Python apps. If you're looking for a completely functional reader to use right now, I'd definitely recommend it.
Monocle
You can follow along with the development of Monocle, my IndieWeb reader, here: github.com/aaronpk/Monocle/issues
I am still in the design phase, but taking extensive notes as GitHub issues. Feel free to chime in with suggestions if you wish!
Similar to p3k, I will be writing as much of Monocle as separate libraries that can be re-used by other projects. To give you an idea of what this looks like, here is the list of separate modules I've written or contributed to that p3k uses.
- php-mf2 - a PHP Microformats 2 parser
- php-mf2-twitter-shim - Converts a single tweet to a microformats h-entry
- mention-client-php - A PHP client to send webmentions and pingbacks
- Timezone-API - An API to find the timezone at a latitude and longitude
- php-comments - Helper for parsing and presenting comments from external sites
- link-rel-parser-php - Parse HTTP Link headers into a structured format
- indieauth-client-php - Sample implementation and helper methods for an IndieAuth client
- date-formatter-php - Render dates and date ranges in a human-readable format, including proper microformats-2 markup
https://aaronparecki.com/2018/04/20/46/indieweb-reader-my-new-home-on-the-internet
and previously: https://aaronparecki.com/2015/03/05/18/designing-an-indieweb-reader
and: https://aaronparecki.com/2015/08/29/8/why-i-live-in-irc