One of my ongoing frustrations with modern, consumer-facing information organization and retrieval systems is the way in which functionality is often sacrificed in the name of simplicity.
Full functionality under the rubric of simplicity is a laudable goal, and I would agree that this is where we all eventually want to end up in the information systems, interfaces and algorithms that we are designing. Simplicity without full functionality, but with alternative complex interfaces for an advanced user to specify greater functionality is a satisfactory stepping stone along the path to this goal. But simplicity with obstructed or stunted functionality, with no possibility for the user to improve that functionality, is too often what we end up with.
Case in point: Apple’s iTunes/iPod. I use my iPod not only to listen to music, but to listen to a series of podcasts: Coverville, KQED’s Forum, IT Conversations, This American Life, NPR’s Planet Money, et cetera. Most of the time I listen to these podcasts while commuting to work. Therefore, for my normal work commute I set up a Smart Playlist. Because I don’ t like to flick through menus while I am driving, I combine all the podcasts into a single Smart Playlist instead of having a half-dozen different playlists. I set it to match any new episodes from the aforementioned podcasts. This is easily accomplished using the iTunes’ “Match Any” interface, essentially Boolean-OR:
- PodcastA OR PodcastB OR … OR PodcastN #contains all the episodes from Podcasts A through N
However, once a week my wife drive together for an hour to visit family. In that time, we listen to some episodes from these podcasts together. Specifically, the episodes that my wife enjoys are about gardening, renewable energy, sustainable agriculture, and so forth. These episodes are not limited to any one podcast series; they are scattered across multiple series. I often have to make sure, during the week, that I set those episodes aside so that my wife and I can listen to them together. So the Smart Playlist above doesn’t actually work right; I do not want every single episode from all podcasts to fit into this Smart Playlist. I want to be able to set some episodes aside, so that I don’t accidentally cycle through them (and mark them as “viewed” and thus removable from the iPod upon next iTunes sync) during the week. iTunes does not allow me to manually drag/remove single episodes from the Smart Playlist. But I’ve found another way around it: I can use Ratings as a discriminator. All the episodes that I want to listen to with my wife I mark with 5 stars. All the episodes that I will listen to on my own I mark with no stars. Then, I can set up a set of smart playlists of the following form, using iTunes “Match All” interface (Boolean AND):
- PodcastA AND Rating=0 #contains all the episodes from Podcast A that I will listen to alone
- PodcastA AND Rating=5 #contains all the episodes from Podcast A that I will listen to with my wife
- PodcastB AND Rating=0 #contains all the episodes from Podcast B that I will listen to alone
- PodcastB AND Rating=5 #contains all the episodes from Podcast B that I will listen to with my wife
- PodcastN AND Rating=0 #contains all the episodes from Podcast N that I will listen to alone
- PodcastN AND Rating=5 #contains all the episodes from Podcast N that I will listen to with my wife
While better, this workaround is still not exactly what I would like to have happen. See, now I have separate smart playlists for each podcast A, B, C, etc. There is a combinatorial explosion, with too many menus to flick through while driving. What I would rather do is something like this:
- ((PodcastA OR PodcastB OR … OR PodcastN) AND Rating=0) #contains all the episodes from Podcasts A through N, that I will listen to alone
- ((PodcastA OR PodcastB OR … OR PodcastN) AND Rating=5) #contains all the episodes from Podcasts A through N, that I will listen to with my wife
iTunes does not allow this functionality. There is absolutely no way of specifying a nested Boolean expression so that I can match a rating conjunction of podcast disjunctions. iTunes only lets me either “Match All” (flat conjunction) or “Match Any” (flat disjunction).
It is clear why iTunes does not expose this functionality in the naive interface: Most average users are confused by Boolean expressions, especially those involving nested parentheses or any sort of operator precedence. So I fully appreciate not wanting to overwhelm the user. But where iTunes falls short is that there is also no way of switching to “advanced” options, or “Smarter” Playlists. There is no attempt whatsoever to help the user formulate more complex playlist options, via for example graphical Boolean operator interfaces (see Chapter 10.5.4 of Marti Hearst’s Modern Information Retrieval book).
In short, the iTunes user is left with crippled functionality, with no way of specifying the desired Smart Playlist. By valuing Simplicity more than Functionality, Apple has crippled the information consumer’s ability to manage his or her digital life.