Thursday, July 12, 2007

Digg and iPhone filtering interfaces

One of the first iPhone applications was a Digg interface developed by David Cann. I really enjoyed using the app. Yesterday Digg released an official iPhone version of Digg. The two versions of Digg on the iPhone give opportunity to discuss an iPhone specific design decision.

When you open up David Cann's version of Digg (we'll call it "Canned Digg") you are presented a list of the Digg topics. Press a topic to see all the latest and greatest stories under that topic. The official Digg (we'll call it DIGG) uses a different approach. When you open up DIGG you are presented a list of the stories from all topics. But on the top there is a header that allows you to either log in (to Digg stories) or choose a specific topic.

What approach is best for the iPhone? This is something I've had to think about making my iPhone apps. Is it better to show users the topics and then drill down until you get to the content (much like the typical iPod interface) or is it better to show the general content and let the user narrow down from there. At this point I am in favor of the latter approach. Especially over a slow EDGE connection, users are going to want value on the first page of the site. With only one filter though, I think both versions work pretty well. But the DIGG approach begins to make a lot more sense when you have more than one kind of filter. Say Digg decided to allow users to filter based on their top level sections (News, Videos, and Podcasts), their topics, their sub-topics, and their "Popular Stories" and "Upcoming" sections. That would be a lot of screens to go through before getting to valuable content. Using the Canned Digg approach to such a problem would not only be slower but it would be frustrating for the user because the user is forced to filter to a certain level that he may not want to filter to. For example, say a user wanted to look at the latest podcasts; using a Canned Digg approach he would have to go to podcasts->topic:all->popular stories. The user may not even know what the difference between "popular stories" and "upcoming stories" is but he would have to make a choice any way. This could be frustrating. This approach makes users think. We, as developers, do not want to make users think. They are not "thinkers", they are "users. All they should need to do is "use".

The downside to using the DIGG approach is that if one was to be looking for something very specific, it would take longer than the Canned Digg approach because he would have to first open the "filters", press the first filter, select the item, press the next filter, press the item, etc.

I would love to hear other peoples thoughts on these two approaches to iPhone filtering interfaces