One side effect of my doing a PhD is I’m now a big user of Anki.

Anki is flash card software using spaced repetition. That means that the wait between each time you review a given flash card depends on

  1. how many times you’ve seen that card before, and
  2. how easy you tend to find the card.

At first you see new cards a lot, but as you learn them better and better, you see them less and less often.

Before Anki, I read a lot and never remembered any of it. Now, I read a lot and sometimes remember some of it. This is a huge improvement! But it’s not the main point of this blog post.

I used to flatter myself that I was an Anki power user. But then I was disabused of this notion by the Reddit posts of Anki savant SigmaX. As a musician, I was especially struck by his notion of using Anki not just to memorize atoms of information, but also to schedule the practice of skills. Inspired by these posts, I’ve been scheduling my jazz practice with Anki. That’s what this post is about.

The problem with practice routines

Say you have a specific exercise, technique, or piece that you work on regularly. Maybe every day, maybe every week, whatever. Such practice routines are great! Over the years I have invented or adopted many of them to hone one or another aspect of my musicianship.

But the problem with practice routines is that there are simply too many different things to work on. You can’t do them all every day, or even every week, or even really every month.

I find I often work hard on some particular challenge for a few days, or a few weeks, or a few months. I get good at it, or at least better. But once that happens, there’s less reason to keep up the hard work. On top of that, the challenge isn’t new anymore, and so it gets less exciting. So my work on the challenge tapers off. And after I stop working on it, I stop being good at it, leaving me back where I started.

Spaced repetition to the rescue

Spaced repetition helps with this problem in two ways.

The first way is simply that as I get better at something, it comes up less often, but it never stops coming up altogether.

As an example, suppose I want to learn to improvise bebop in parallel 10ths. (If “improvise bebop in parallel 10ths” doesn’t mean anything to you, just think “hard jazz thing.”) I’ll then make an Anki card for it.1

At first the “hard jazz thing” card comes up every day. But once I start clicking “easy”, it’ll come up less and less often. Eventually I’ll see the card every few weeks, then every few months, then every few years. If I ever find I’m having trouble with it, I can click “hard” and it’ll come up sooner next time. If I ever find I’m no good at it at all anymore, I can click “forget” and it behaves like a new card again. In theory, I should never fall into the failure mode where at first, I practice something a lot, but later, I stop practicing it altogether.

The second way that spaced repetition helps is closely related but perhaps less obvious.

Because the practice cards that are due today present me with a mix of tasks, and these tasks are a mix of older cards with cards that I added recently, my practice routine is more varied, meaning it feels a lot fresher and more engaging. By comparison, doing the same thing every day can start to feel like a slog pretty fast.

Putting combinatorial explosions to work

Everything above follows pretty closely SigmaX’s approach. But there’s one more thing I’ve been doing that I haven’t mentioned yet.

Structured jazz piano practice can vary along many dimensions. For example, there’s

  • the choice of tune
  • the way you’re accompanying yourself: walking bass, stride, shell voicings, rootless voicings. (If none of that means anything to you, just think “things you can do with your left hand.”) You can also play unaccompanied, of course.
  • there are a myriad of ways you can constrain yourself, which can force you to develop one or another aspect of your improvising. A simple example is to constrain your melody line to be constructed from only the root, third, and fifth of each chord. Or you could constrain yourself to play constant 8th notes, or triplets, or a repeated rhythmic motive that may or may not align with the bar lines.

Because these dimensions are independent of each other, I have a different deck for each one. Then, each time I practice, I select a card from each one. For example, I might select the following combination of cards:

  • tune deck: “The Shadow of Your Smile”
  • improv constraint deck: constant 8th-note triplets
  • accompaniment deck: stride-style LH

The result is a new exercise that I have most likely never played before. But each different dimension of the exercise is something that I’ve been working on. And the combination feels fresh and fun, because it is new.

I’ve only been using this approach for a couple months now. Maybe this sense of freshness and fun will wear off eventually. But I’m hoping it’ll wear off a little more slowly than it does with the more usual practice routines. And I frankly wish I had discovered this approach to practicing when I was younger (and actually doing a lot more practicing).

  1. In reality, I would more typically, make a few different Anki cards for variations on the task. For example, with and without metronome, at fast and at slow tempi, etc.