Foo Infusion

A periodic infusion of foo from the world of a junior developer

Friday, February 09, 2007

All Hail Keyboard Modifiers!

I LOVE keyboard modifiers. A lot of people don't like them, and I think it's because they want to use their computer with one hand only, while I almost exclusively use the computer with two hands full time. So if I move my hand to the mouse, my other hand will usually still be up on the keyboard waiting to press the required modifier.

Actually this is probably why I prefer one mouse button while others insist on multiple buttons.

And actually now that I'm thinking about it in this context, multiple mouse buttons might slightly edge out keyboard modifiers in terms of usability when you consider multi/ambi-dexterous folks. (Though only slightly, as the inherent usability of the 'left' and 'right' buttons becomes useless when it's in the 'wrong' hand - and I say this speaking as someone who mouses with both hands. Keyboard modifiers are shitty when mousing with the 'wrong' hand too.)

ANYWAYS, all that aside, I had a little iTunes adventure this morning, and I'm glad to report the results here. First a little background:


I use Party Shuffle a LOT.

I listen to music all day long, and I don't want to be picking out an 8 hour playlist every morning, or constantly picking music to listen to as the day goes on. This is what I will refer to as "The WinAmp Way".

It would at first appear that the old "shuffle your entire library" trick would fulfill that requirement. But there are downsides to this as well, the biggest of which is that you 'lose' the shuffle every time you stop and start the play. So if you're listening to one song and you decide you want to listen to another song next, you have to:
  • find the track you do want to listen to
  • wait for the current song to end (destroying your fade in/out effect) (This is optional of course)
  • play the newly selected track
This of course resets the 'shuffle' and so you stand a much higher chance of listening to the same music over and over again (Maybe this aspect isn't such a big deal now that we all have multi-decagigabyte music libraries, but still). Also it takes a lot of personal attention and time. Not as much as "The WinAmp Way", but still a lot. I will refer to this as "The iTunes 1.0 Way".

Since iTunes 6 or so (maybe 5? 4? I can't remember) there's been a nifty feature included called Party Shuffle. It adds a separate source to your sources list, specifically designed to take care of this situation for you. It's a dynamically generated shuffler, which shuffles from any given source (ie: playlist), can do some selective randomizing (higher rated songs more often), offers all the benefits of shuffling your entire library ("The iTunes 1.0 Way"), without all the distracting attention requirements ("The WinAmp Way"), and without the transition-and-shuffle-resetting qualities.

You can dynamically add tracks to the end or the front of the track queue, you can inspect your queue before it gets played and adjust it, and you can also completely forget about it and allow the shuffler to take over, giving you a highly randomized and automatic queue. This is big stuff in jukebox software. This is big stuff in music enjoyment period.

In addition to all of this, while the random playlist listening thing was evolving, the iTunes Store (formerly the iTunes Music Store) came in to existence. To aid in navigating from your music library into the desired locations in the iTunes Store, little arrow-in-a-circle links were added next to each bit of metadata in the track view. There's a little link next to the track name, next to the artist name, and next to the album name. When you click on the link icon, iTunes takes you to the iTunes Store and does a search for that metadata, to help you find that particular item in the store and thus hopefully aid you in finding what you're looking for. (note: you can tun these little link icons off and so you might not see them - you can control this from the preferences pane)

Getting back to Party Shuffle - lately I've been finding myself being reminded by the music in my Party Shuffle of something else I want to listen to, and wanting to go find it in my Music Library. It occurred to me recently that this is an unnecessarily complicated process:
  • scroll up to the Music source in the sources list
  • select it
  • give focus to the search box in the upper right and search for the item
    - OR -
  • open the browse panes and scroll around until your find your music
Actually it isn't that complicated, it's just a lot MORE complicated than finding the music in the iTunes Store.

"Wouldn't it be great" I thought, " if I could click on a little link/icon like the ones for the iTunes Store, and have it show me that track or artist or album in MY OWN LIBRARY!". It would be great.

So I went to the feedback page at Apple.com and submitted a feature request, asking for this feature to be implemented.

Later on, while thinking about how someone might go about implementing this in the UI, I was thinking - "I wouldn't want another icon in there... there's no room", and also "If I was Apple, I don't think I'd want to change the behaviour of those icon/links to ALWAYS point into the local music library, and as a user I wouldn't want that anyway - sometimes I want to go to the store, sometimes to my library". Then it hit me - MODIFIER KEYS!

Wow, what great UI it would be, if I could just hold a key, like say CTRL, and press the icon/link and have it modify the behaviour to take me to my library. I did it just to see what it felt like, expecting either nothing to happen or to be taken to the iTunes Store (the icon/link having ignored my modifier key) when to my surprise IT DID EXACTLY WHAT I WANTED!!!

SHOUT IT FROM THE MOUNTAIN TOPS!!

The CTRL keyboard modifier links you into your own library!!

Those crafty UI guys at Apple think of everything!!

Enjoy!