What is interleaving?

Student scheduling, and experience design.

Topics not too different. In same field. Not math and languages.

Works because:

  • Brings to mind contrasts between different topics.
  • Interleaving is what happens in the world, and in tests.

Interleaving in Skilling

You can use interleaving in lessons, and exercises. Remember that spacing and interleaving combine in practice.


Topic interleaving

Skilling has active components, like multiple-choice (MCQ), FiB (fill-in-the-blank), and reflection (open ended) questions. "Active" means students do something with them, like click an option in an MCQ.

Every MCQ and FiB is a separate learning object. You add them to lessons by typing in references. For example, you might have this MCQ:


When you make the MCQ, you give it an internal name:

Naming an MCQ

To add it to a lesson, you use the internal name:


They ke: you can add the same MCQ to as many lessons as you like. You can give students retrieval practice for the same fact throughout the course, not just immediately following the point at which the fact is introduced. You can have:

  • A lesson on topic A
  • A lesson on topic B.
  • Retrieval practice for topic A.
  • Retrieval practice for topic B.
  • Topic C.
  • Retrieval practice for topic A.
  • ...

This interleaves "studying" the topics.

As you would expect, if you edit the MCQ, maybe change one of the answer options, every instance of the MCQ would change. An extra bonus of this approach.


You can interleave in exercises, in a couple of different ways. The most obvious is that you can add exercises about a topic later in the course. For example:

  1. Lesson on topic A
  2. Exercise on topic A
  3. Lesson on topic B
  4. Exercise on topic B
  5. Exercise on topic A
  6. Lesson on topic C
  7. Exercise on topic C
  8. Exercise on topic B

There are two lessons on topic A (2 and 5), but topic B is between them. There are two exercises on topic B (4 and 8), but there's another exercise between them as well.

A less obvious way of interleaving is best shown by an example. In a business web apps course, I have roughly this sequence of lessons:

  • Accessing user data from the GET array (it's an input thing)
  • PHP if statements
  • Validating user input

For the third lesson, there's an exercise on computing mortgage payments, from principle, interest, and term. The main point of the exercise is parameter validation, and calculation. I added an additional requirement, however:

If the payments are less than $2,000, show the message "You should get two doggos." Otherwise, show "You should get a doggo."

This requirement has nothing to do with the main point of the exercise. However, it gives students more practice with basic if statements, something they learned earlier. So, rather than keeping exercises on ifs just after the main lesson on ifs, you can scatter extra if practice across later exercises.


I know you like to use whole tasks, following Ten Steps to Complex Learning, by van Merriƫnboer and Kirschner. That extra requirement isn't something you'd find on a real task is it?

Ooo! Good question, Adela. Actually, businesses have all sorts of idiosyncratic rules. So while a doggo test is strange, the idea of having extra random requirements is common.

Further, the whole-task approach isn't about full realism, necessarily. It's about a task creating a context that involves real-world concerns. For example, when the user types in an interest rate, would they type 3.1, or .031? What if they type "a lot" in the widget for the principal? Having to deal with these issues is what makes the task whole.