27 June 2010

Use Case 1 - Add URL Subscription

Current dialogue (Liferea 1.6.3)

Use Case Description
The user launches Liferea. The user clicks the “New Subscription...” button which results in the New Subscription dialogue being displayed. The user manually types in the feed subscription URL (e.g. http://planet.gnome.org/) (or pastes text from the clipboard) and clicks OK. A new feed item appears in the left-hand subscription tree directly below the last selected feed, at the same hierarchical level. Liferea processes the feed and displays the configured default number of unread items in the headline pane. Liferea fetches any applicable favicon icons for the site and replaces the default icon for the feed based on the feed type with the favicon. Liferea changes the name of the subscription from the initial value of “New Subscription” to the name provided by the feed. Liferea displays the headlines in the appropriate pane, as dictated by the current view.

Thoughts and Considerations

  1. When adding a feed there is no user feedback while updating the feed for the first time. There is some considerable lag time and it is not clear that anything is happening. The status bar indicates it is updating the subscription, but does not provide any moving indicator to let the user know the app has not frozen. Is it possible to somehow inform the user that an initial set of headlines is being downloaded, along with the other info (name, favicon, etc). Just some UI indication that Liferea is working. Ideal might be to have the icon of the feed not appear as a static default feed type but rather a progress indicator such as a spinner (like the browser tabs often have).
  2. Is it possible that the Advanced feed dialogue be changed into a disclosure triangle? For example I've simply merged the two dialogues into one in the mockup below, and made a few minor changes to spacing and wording. The one key value this affords the user is the ability to switch back to the basic dialogue without restarting the “Add ...” use case. It also reduces application complexity (2 different add subscription dialogues). The mockup below is just a first brush at creating the right unified dialogue. It is meant for discussion. Further refinement/polishing/HIG-ifying is possible if/when the direction is agreed upon.


Anonymous said...

1. I think the bigger problem here is that all feed updates have the potential to make Liferea unresponsive, not just updates of new feeds. The better solution, given this, would be to prevent all feed updates from lagging Liferea.

2. Sounds great.

Kirk said...

Anon: thanks for chiming in!

1. I agree that the slow update problem is visible here - that it exacerbates the problem I'm describing. However my specific point is that when adding a new feed there's no indication that Liferea is doing anything at all. If that takes a long time or not is the next thing to worry about in the use case. Ideally adding the feed would result in instantaneous favicon and feed title info. But that's a slightly larger change to Liferea, I'm thinking. For example Liferea could begin pulling this info from the source when text is entered and a valid URL exists. Much like typeahead. But I digress.

Since the performance here does partially depend on the source, which is beyond Liferea's control, feedback should be included in case the source is really slow.

Anonymous said...

This is only halfway related, but I just found out that on the current Ubuntu, Liferea doesn't change the default URL handler for feed: URLs (you can do it manually with the Gnome config editor). Which means that the nice shiny Chrome extension will subscribe your feeds to Rythmbox, rather than Liferea.

John M Lang said...

1. I really like the spinner idea, as long as it doesn't add a lot of overhead. We do have Tools > Update Monitor to check activity.

2. I like the idea of integrating the Advanced Options into the same dialog. However, in the mockup when Command or Local File are selected, the Feed Source entry above and the entry below will both be active. As drawn, at least a third radio button for URL will be needed to switch back to the default behavior. The disclosure triangle will only be useful if the Advanced Options augment, not replace the elements of the original dialog. This isn't trivial, but I think it's worth working on.

Thanks for tackling usability in this great piece of software. I expect that we'll see some great improvements both under and over the hood due to your efforts.

Kirk said...

Anon - I'm not sure if this a Liferea issue or if it is related to the Ubuntu package. We'd have to get someone more technically minded to look at it. Is there a bug we could file for the issue, probably in launchpad as it might be Ubuntu-specific?

John - Thanks for your thoughts. My mockup didn't go far enough, but my thought was that if the user chose one of the radio buttons for Local File or Command, that the feed entry widget at the top would be disabled, as it is not of use to the user and is, as you say, mutually exclusive. We don't want both active at the same time.

The mockup has further refinement to be done. It seems there's some interest in doing a little more discovery - I'll spend some time with it.

Callum said...

Kirk, welcome, I'm grateful you've chosen to spend time improving Liferea. :-)

Personally, I almost never use that dialogue. 99% of the time I click the feed icon from Firefox, and then having configured liferea-add-feed as my default handler, I click "Subscribe Now".

I think your proposed changes make sense. The spinner icon sounds good. Combining the two dialogues sounds sensible also.

I'm not sure how Liferea is mostly used, but I'd guess that reviewing and improving how feed urls reach liferea from other parts of the OS might be a high impact area.

On another topic, I'm a reasonably technical Ubuntu user, I'd be happy to look into the feed handler issue on Ubuntu if somebody can tell me what to look for. :-)

Kirk said...

Thanks Callum! I think what anon was complaining about is that when Liferea is installed in Ubuntu (it's not part of the default install I believe) the global "RSS Feed Handler" setting is not changed to point to liferea-add-feed.

I know Firefox handles it well as you can specify for Firefox via the dialogue. However it sounds like this person was wanting the package to set it globally, so Rhythmbox isn't called to handle any RSS feeds. Perhaps it's an issue with Chrome (don't use it so can't say), as Firefox seems to handle this fine?

That's all I've got, hopefully anon can chime in and clarify if they're looking for help.

Callum said...

@Kirk: I'm not sure how a global feed handler is set under Ubuntu / Debian. Is there some type of mime filetype system that points to handlers for different filetypes? If somebody can point me in the right direction there, I'll check out what's standard on Ubuntu and try to figure out how Liferea is linked to it.

Kirk said...

@Callum: Sorry, we've hit the point of the discussion where I can't really contribute meaningfully. Since Firefox does it OK in Ubuntu, but not chrome (apparently) then it might actually be easier to check out how packages can register handlers with Firefox. But I'm just throwing ideas around now - sorry.