"What is your 'ideal' feature set for an aggregator (feed reader, RSS reader)?" I was asked this recently by someone who works on an aggregator. I suspect this list will be colored by my thinking today. I did something similar a year ago. Ask me in six months, and I'll come up with a different list.
The primary thing an aggregator needs to do is enable me to read any feed I want to read. It needs to stay out of my way, so that I can spend as much or little time reading as I want. And I need to be able to read when I am not connected to the network.
Beyond that, there are many features and many ways to creates those features. Here is one set (very long) set of ideas. If you are a developer, I am more than happy to talk to you about these. But you should also take into account Getting Real: Forget feature requests from Jason at 37signals.
- Don't make me feel guilty when I've been away for a few days. It's an information tool - it needs to stay out of my way when I am not using it. FYI, this hints at moving away from a Read/Unread metaphor to something like "new since last time." I'm using Lektora lately, which is probably influencing this thinking.
- Create some way of combining and handling similar or related articles across multiple blogs. Threading is just a beginning for this. Here are some kinds of things this might allow.
- When I have read articles in one place, don't show them to me again as "unread" in another place.
- Personal knowledge aggregation idea of combining articles with a smart tool that can find new content based on those articles and my current feed space.
- Integrate well with search feeds, so that when I've read the original, the aggregator doesn't give it to me again in the search feed results. And do the reverse, if I've read it in a search feed first. This applies to more than just search feeds, since there are places like Topic Exchange that repost articles.
- Let me highlight a specific set of articles, based on phrases, categories, and feeds.
- Let me ignore a given set of articles today, or forever. I'm not really interested in articles about the Xbox, for example, even though I may read a feed that happens to talk about them frequently.
- Be smart about dealing with clicking links when I am off-line. I know I'm off-line, but I still want to read the content in question at some point. I've used "mark for later" or other flagging mechanisms, but they haven't been wholly satisfactory. I'm currently letting my browser tell me that it can't find the link, and leaving the window open with the URL in it. When I reconnect, I just reload the URL. This isn't terribly satisfactory either. I realize that this has as much to do with how web browsers work as it does the aggregator.
- Integrate with desktop search tools.
- Figure out a way to pull in full content from a website for feeds that are only excerpts. As far as I know, the only aggregator that can do this is Newsgator with the Fetchlinks plugin.
- I should be able to view all feeds, grouped feeds or a single feed.
- Make it easy to subscribe (auto discovery / drag and drop / click on the feed url / add feed capability). Tell me if I've already subscribed to the feed in question, and give me enough information so I can find it. (Is it in my "no longer reading" group? Is the feed being read correctly?)
- Provide a mechanism to use the keyboard to scroll / skip through the list of items. Typically, this is with the space bar.
- In fact, provide keyboard shortcuts to most reading / navigating functions.
- Provide both newspaper and individual article views. I have lately been operating in newspaper mode, though I see the value of both.
- In a newspaper mode, I need to see the context for the article I'm reading. This means that I need to see the feed name not just at the top of the entries from that person, but (optionally) in the description of each entry.
- Let me see previously-read articles easily. Let me see all articles from a given feed or grouping, whether they've been read or not.
- Open the item in its original location. If the aggregator is not embedded in the browser, there should be (easy) options for opening in the aggregator application or the browser itself.
- Let me jump to the website of the whole blog, not just individual posts.
- Make it easy to skip over whole feeds when reading, particularly in newspaper mode. (There goes Jack again, ranting about aggregators, skip down.)
- Let me group and set the order of feeds as I please. Make this work for people who have only a few feeds, and for those who have hundreds of feeds.
- Let me import and export an OPML file of all my subscriptions. The process should retain grouping, if possible. This feature is a must for testing aggregators.
- Understand all forms of web feeds, even the slightly broken ones. I don't particularly want to contact the authors to tell them to fix their date format or other minor problems.
- Provide a reasonable set of options, but don't overwhelm me. How important is the option? What does it mean? If it falls into multiple categories, let me set it from multiple places. (This is a rant on all software.)
- Handle secure feeds (passwords, etc).
- Let me do useful things with an individual post from the primary display.
- I'd like to be able to reply directly to the author as email (using whatever email or name information is embedded in the feed - sometimes I'll have to supplement).
- I'd like to be able to "forward" the item to someone else with the full text of the article embedded along with formatting and url's. Even better - I could select certain text and forward.
- Mark the article for future purposes: future blogging, easier reference to "interesting" pieces, etc. Maybe this is a good place for tags.
- Let me annotate a feed beyond tags? This would be a great place to add notes about where I met the blogger or why I decided to stop reading the blog.
- I would like easy integration with my blogging tool, so I can paint relevant sections and post them with my comments to my blog. I am aware that this is heavily dependent on the blogging tool / editor, but the aggregator should be open enough to permit this kind of thing. For aggregators that operate within the web browser, this issue partially goes away with opening a new window / tab with the entry of interest. It would be nice for it to be smart enough that I don't have to open the separate window / tab.
- Link to blog tracking tool(s) of my choice to find out if anyone else is talking about this post (Technorati, etc.).
- Provide a mechanism for managing my feeds: rename, change their order, delete, see their status (errors, last post), update frequency, change the feed location. For example, I'd love to "turn off" a feed to tell the aggregator to stop visiting the feed, but leave it in my list. Why? I want to remember that I've explicitly decided to stop reading a feed.
- Let me know about feed errors, but do it unobtrusively. I may need this for feed maintenance, but I don't want to know in my daily operation. This is probably a screen within the feed management function.
- Let me share my feeds (or a subset of them), if I choose. Possibly integrate with a blogroll on my own weblog.
- Tags (categories). These are more general ideas, since I haven't explored deeply those aggregators that use tags.
- Instead of grouping feeds into folders, I might prefer to feeds into multiple categories (tags, anyone). I could then read the same feed in a number of places. I suspect this would be more valuable in digging through the archives than in my regular reading habit. And I can see that this would conflict with some of the expected behaviors around grouping and sorting feeds.
- I'd like to do something to mark individual articles for future reference. In the past this has been implemented as flagging or "save for later," but I could see doing this with tags as well. Tags could give me a more faceted way of scanning my archives.
- I have not heavily used the newer readers that allow for social tagging (seeing how others tag entries), and I have not felt a particular urge to know what others think about an article. If they think it is interesting enough, they will blog it too.
- What about letting me read and group articles by how the authors tag them? This information should be in the feeds, and in combination with my own tagging (and maybe social tags) could provide a different view of the blogosphere. For example, it would be great to simply "subscribe" to the Conference2005 tag and have those articles collected in one place, rather than having to go look for them.
- If the system uses tags, it should be nice about informing me what tags I've used and possibly what others have used, like del.icio.us does.
- I'm not sure I am interested in rating feeds or individual articles. It's an interesting idea, though it changes the way I would approach reading.
- Similarly, I am not sure about tools that watch what I read and provide recommendations or suggestions as a result. I see how this could be interesting, I just wonder how it would compare to a feed search on specific topics. And in newspaper mode, the aggregator wouldn't know which articles I've explicitly read as opposed to skimming. That said, maybe something that worked in conjunction with a tagging mechanism could add value: find other articles like those tagged with "XYZ." This would be a place for integration with other services, since the aggregator is probably not a place for complex semantic analysis of articles.
- I think it could be useful to have threading or some other indication of related content within the feeds I receive. SharpReader and RSS Bandit provide some mechanism for showing how articles are related to one another in a threaded format. These also show the read status of those related articles. Take your pick on defining "related" article: common url is possibly the best bet.
- Maybe this feature is more a cool thing than something useful. My current aggregator doesn't have threading, and I don't miss it as much as I thought I would. If I really need to know, I should probably check with Blogdigger.
- If there are trackbacks outside my set of feeds, show me the link to that referring article. I suspect the trackback information would need to be in the original feed, or the aggregator would have to request it. Probably too much work for the value.
- There should be some configurable purge-the-archives mechanism to save disk space.
- Search within the aggregator should cover those cases where I don't remember who said what, or when they said it.
- Provide a mechanism to display all the content in a feed. Atom feed frequently have both a summary and the full text - give people the option of selecting which they want to see on a feed-by-feed basis. If a feed lists "categories," then display them. If additional links are provided, display them, such as in Blogger feeds. If there is a link to the comments, display that. These are all fairly standard. I'd love to see an aggregator that could be made smart about unusual fluff in the feed.
- If an entry has a link to an entry-specific comments feed (wfw:commentRss and others), figure out a way to deal with that. This probably means adding the feed, when clicked.
- Links to podcasts or other multimedia content should be dealt with intelligently as well. Create a global setting and then allow for feed-by-feed exceptions.
- Maybe allow modification of how individual posts appear. For example, I may want the feed name listed in the "credits" at the bottom of a post when the author name isn't present. Some aggregators provide a template that sophisticated users can tweak. If you do provide such a beast, provide clear instructions on how to make changes.
Obvious (but need to be repeated)
- Put some thought into visual display and layout. I'm going to be looking at the tool a lot, so it needs to be functional and not terribly intrusive without being overwhelming or drab.
- Provide responsive support.
- Be fast when I display feeds, or move to a new "page" within the current feeds.
- Don't be a resource hog. Don't go looking for new articles every 60 minutes. If threading articles together eats a lot of resources, then do something to make it better. Let people tweak the parameters associated with the biggest resource consumption, and tell them why it matters.
- Don't die and force me to switch to a different aggregator when I am not prepared. Don't force me to switch - period.
- Don't lose data. Don't forget what I've read. Don't forget or rearrange my feed list.
Everyone acknowledges that software continues to evolve. This means I expect upgrades from time to time. However, when you post an upgrade, make sure it works! I dropped one aggregator because they never upgraded (one developer who had another life). I left another because they totally munged a much-anticipated upgrade. And this post is partially inspired by upgrade problems again. The aggregator is getting in the way of my work when these things happen.
I can't say that I am the final answer on these things, and I know many others have opinions about this too. Lilia has some interesting requirements, like the capability to show the thread of conversations that I mention.
Rather than looking at features, one could also think about how they use their aggregator. For example, see Ton Zijlstra's recent comments on his Information Strategy: My Routine, Inputs. Ton talks much more about process for using the technology, rather than the specific features it needs to have. Ton's series was inspired by Lee Lefever's article What's Your RSS Reading Strategy?, which I responded to in May, here and here. Along with the comments on Lee's article, look for other references.
I've used the following readers extensively, all of which have their pluses and minuses: Lektora, Newsgator, SharpReader, and Bloglines. And I've had a look at many others. For those who wonder what this has to do with knowledge management, it has more to do with personal knowledge management and the right combination of tools for me. At the same time, a good aggregator should enable me to find and distribute content that is interesting and valuable to my clients and colleagues.