Saturday, January 24 2004

GarageBand: adventures in UI design

GarageBand only allows you to have one project open at a time. This is not an obvious or necessary feature of a music program, but at first glance, it’s defensible in the context of Apple’s iLife package. For a bunch of more-or-less free tools designed for light use by non-professionals, allowing multiple documents adds the risk of clutter and confusion (not to mention memory management and engineering effort). iTunes, iMovie, iPhoto, and iDVD all work the same way, right?

Well, no, they don’t. iTunes and iPhoto simply don’t have the concept of multiple projects. Something is either in your library or it isn’t. iMovie and iDVD are single-project-based, but the projects generally have a much larger scope. I’m sure a lot of iMovie users wish they had an iPhoto-like clip library to store their favorite video elements in, but for the most part, few people are going to want to edit more than one movie at a time.

This is not the case for music, especially in an application that encourages experimentation. One of the very first questions I saw on the various GB forums was “how do I make my own reusable loops”. Tied with it was “how do I import MIDI tracks”.

The answer right now is “through painful workarounds.” To make your own loops, you export your performance to iTunes, find the AIFF file on disk, load it into the SoundTrack Loop Editor that’s part of Apple’s free AppleLoops SDK, manually mark it up, drag the tagged file into GB’s loop browser window, and then wait while the complete index of available loops is rebuilt. To import MIDI files, you download two third-party freeware packages and string them together to fool GB into thinking that you’re playing the music on a keyboard.

Even the simple act of cutting and pasting between songs is made difficult by the single-project design. You can do it, but only within the same session, because GB clears its private clipboard on exit. And it exits whenever you close a project. So, if your goal is “copy my cool bass track from RockDude into BluesDude,” the order of operations must be Cut, Open, Paste. Anything else will wipe the clipboard and force you to start over.

Sure, after you’ve done it a few times, you’ll adjust your behavior to match GB’s expectations, but isn’t that precisely the problem that consumer-friendly creative applications are supposed to avoid?