User interface case study: iOS Garageband

Apple has long made a practice of giving away cool software with their computers. One of the coolest such freebies is Garageband. It’s a stripped down version of Logic aimed at beginners, and it’s a surprisingly robust tool. The software instruments and loops sound terrific, the interface is approachable, and it’s generally a great scratchpad. However, Garageband isn’t a good way to learn about music. It gives you a lot of nice sounds, but offers no indication whatsoever as to what you’re supposed to do with them. To get a decent-sounding track, you need to come pre-equipped with a fair bit of musical knowledge.

A young guitar student of mine is a good example. After only his third lesson, he jumped on Garageband and tried writing a song, mostly by throwing loops together. I admire his initiative, but the result was jagged and disjointed, lacking any kind of structural logic. It’s natural that a first effort would be a mess, but I felt a missed opportunity. At no point did the program ever suggest that the kid’s loops would sound best in groups of two, four, eight or sixteen. It didn’t suggest he organize his track into sections with symmetrical lengths. And it didn’t suggest any connection between one chord and another. Seeing enough other beginners struggle with Garageband makes me think that it isn’t really for novices after all. It seems to be pitched more toward dads in cover bands, who have some half-remembered knowledge of chord progressions and song forms and who just need a minimum of prodding to start putting together tracks on the computer.

The iPad version of Garageband is a much better experiential learning tool. Its new touch-specific interfaces encourage the playful exploration at the heart of music-making. The program isn’t trying to be particularly pedagogical, but its presets and defaults nevertheless implicitly give valuable guidance to the budding producer or songwrter. And while it’s quite a bit more limited than the desktop version, those limitations are strengths for beginner purposes.

The Garageband guitar interface is wonderful. You can tap out notes on the actual fretboard, complete with string bends. I showed it to a profoundly non-musical friend, and he took to it immediately, doing huge multistring bends that would be impossible on a real guitar (and that it therefore wouldn’t have occurred to me to try.)

Even better is Scales mode. You select a scale, blues or Mixolydian mode or whatever, and then those will be the only notes available to you on the fretboard. With no wrong notes possible, you’re free to explore melodic ideas, or just run up and down.

The default view of the guitar is chord strumming, and here the touch interface gets truly magical. Brushing your fingertip across the strings feels very much like strumming a pick, except that all of the notes are automatically correct. For whatever key you have selected, Garageband will give you an assortment of chords that are either diatonic or part of common rock/pop/blues practice. There’s one slot reserved for you to choose your own chord, and the options are surprisingly varied, including lots of far-out jazz chords. Too bad you can only customize one chord, but I guess they don’t want to frighten the novices. Anyway, here’s the beauty: once you’ve strummed your chord, you can go into the MIDI piano roll and edit individual notes. Suddenly the harmonic possibilities expand dramatically.

In C, one of the default chords is B diminished, which inspired me to do a track using only the B diminished scale. If you’d like to hear it, get in touch.

The keyboards work like the guitar. You can play individual notes on a regular keyboard, or you can use the equivalent of strumming mode, where moving your fingertip on a vertical strip moves you up and down arpeggios or simple patterns. In addition to the usual piano and synths, there’s a particularly tasty clav with auto-wah, and a pretty solid soul organ complete with drawbars. The prefab patterns are on the corny side, but they’re easily customized in the MIDI editor.

There are three different ways to handle drums. You can play directly with your fingertips on a drum kit or machine, using the metronome and quantization to keep things lined up.

You can also use the various included loops. Or you can use the really fun method, which is the automatic drum pattern generator. You place your kick, snare, cymbals and so forth on a grid. The left-right axis is simple-complex, and up-down runs from soft to loud. Just by moving the instruments around the grid by trial and error, it’s easy to combine the built-in patterns into something tasty. The program will also randomly place stuff on the grid for you as a starting point.

There are a couple of flaws with this instrument — recording your pattern isn’t as easy as you’d think, and I inadvertently deleted some nice grooves before I figured it out. Also, you can’t edit the patterns via MIDI. That seems like a trivial fix; hopefully they’ll address it in a future update.

Garageband also features a delightful sampling keyboard. There’s a little onscreen editor with most of the key features you’d want in a sampling keyboard, and then you can play your stuff back, Ferris Bueller style.

Garageband’s upright bass interface is especially tasty, with satisfying microtonal slides and vibrato.

From a pedagogical standpoint, the best aspect of iOS Garageband is the way it handles song structure. By default, song sections are eight bars long. You’re free to use any length, but if, like me, you’re lazy and stick to defaults, all of your sections will be eight bars. Also, duplicating a section is effortless, which encourages song structure. I find myself only breaking symmetry if I need to tack a few extra bars onto the last section to let the last note decay. There’s a fade out option that gives you no choice at all as to how long the fade should be or where it should start. It just does it for you. This isn’t something you’d want in a grownup production environment but for beginners it makes good sense.

I could wish for some improvements. The scales mode is so useful in the instruments; it would be cool if you could use it in the MIDI editor too. Beginners would benefit from being locked into a single scale globally by default — they could always switch scale mode off if they needed some chromaticism. Also, it would be nice if the program organized the scales and gave descriptions of how they sound and what they’re useful for. The word “mixolydian” is meaningless to plenty of experienced musicians; forget about beginners. It would be better to say, “this scale sounds really cool in rock, blues, country, and all manner of world musics.” Similarly, it would be cool if the chords gave some indication of their function.

In a perfect world, all of the loops would be grouped into key centers. Within each one, there’d be columns: diatonic, blues, parallel minor. Each chord could be expanded to show secondary dominants. If you strung a bunch of chords together, the program could voice lead them automatically, always offering the user the option to monkey around with the pitches in the MIDI editor. I guess I’ll just have to write this program.

2 thoughts on “User interface case study: iOS Garageband

  1. Pingback: My songs online | Tim Griffiths' Guitar Blog

  2. Pingback: Quora

Comments are closed.