In this article, I explore one of the ways you can use Articulate Storyline to make personalized learning that adapts to your learners. A lot of the same concepts can apply to Adobe Captivate or Lectora.

Earlier this year (July 18, 2016), I wrote in Learning Solutions Magazine about two different ways of personalizing eLearning. That article introduced the concepts behind those methods, and I will begin by summarizing them briefly here.

Way to personalize your content #1: The xAPI

The first way to personalize content is to use the Experience API (xAPI) to store a learner’s actions. This allows you to track what the learner is doing and learning. You can also use the history (the actions that you tracked) to adapt and adjust future courses. In this way, you can meet each learner’s specific needs based on individual history. For example, suppose you can see in someone’s learning record store (LRS) that he or she has looked at a lot of videos about “Topic 1” but not much about “Topic 2.” The learner has already reviewed a lot of content related to Topic 1. Given this, you could then adjust your course programmatically to serve up more on Topic 2 and less on Topic 1. However, today you cannot easily look into the LRS and see the learner’s history with standard eLearning tools. It does take some custom programming. The xAPI is a good option, but in order to adapt your course based on the information in the LRS, you must have the necessary development skills. So what other options are available?

Way to personalize your content #2: “Get to know you” quizzes

While I think we shouldn’t be afraid of learning code, I do recognize we don’t all know how to code. Another option is to modify your course based on information you are able to gather from the learner.

In my earlier article, I introduced a company called Consensus. This company caters to sales organizations that do a lot of software demos. Their tool automates and personalizes sales-demo videos to match what the user is looking for, freeing up the sales person’s time from having to do a lot of software demos.

How do they do this? They get to know the user. Before showing any demo, they ask learners to answer some questions: what they are looking for, what they already know, and some other information. Based on the responses, Consensus will serve up different sections of the demo to customize the experience to the specific user.

Now, the developer of the demos still has to create different versions of the demo: an in-depth video, a moderate version of the video, and a light, quick version of the video. Suppose one of the subjects or sections of the demo is on how to store a record. The program would ask about the learner’s interest in this. If the learner indicates only mild interest, then the program would serve up only the moderate video and not the in-depth portion or lighter version.

How does this apply to learning?

This works great for software demos, but how does it apply (or does it apply at all) for learning? If it applies, how do we develop our courses in this way?

Of course it applies to learning. In fact, in most authoring tools on the market, this is easily done. Before even presenting the users with any content, we can ask a few questions (or quiz them) on what they already know about the subject. Within the course, there could be in-depth, moderate, and light versions of each topic. Based on the user’s answers, the program could adapt or adjust the course.

There is something to be said for personalizing content to the user. I think end users would find the content more relevant and engaging if we avoid always doing a “one size fits all” kind of course, instead giving them only the information relevant to what they need to know.

Making this work in Articulate Storyline

There are a lot of different approaches you could take to this within any eLearning tool, but let me walk you through how I would do it using Articulate Storyline. The way to get the job done is to use variables and triggers inside of Storyline. If you are not familiar with variables and triggers, I recommend checking out the tutorials available online.

In the first part of the course I, as the developer, need to set up variables and a series of questions that will adjust those variables. I’ll begin by setting up a Storyline variable called “section1.” The program will use that variable to control which version of the video demonstration the learner will see for the first section of the course, based on how much the learner says he or she knows about the topic. Setting up the variable is simple: Just name it. (Figure 1.)

Figure 1: Setting up a variable in Storyline

Variables are like buckets or bins: They hold whatever data you program Storyline to put in them, specifically, true/false, numbers, or text. section1 is going to be a text variable. It will be a text variable because I want it to hold one of three possible values: “heavy,” “medium,” or “light.” Heavy stands for more in-depth content, medium for moderate content, and light for just a quick review of the content. All of this will be based on answers the learner gives to questions from the program.

Now, I’ll create a question page inside of an intro scene. (Figure 2.)

Figure 2: Creating a question page inside an intro scene in Storyline

I am not going to use this in the same way we use traditional quiz questions, so I am not actually going to select a correct answer. Instead, depending on what a user selects, I am going to adjust the section1 variable.

If the learner selects choice A, then the program sets variable section1 to “light” because the learner already knows a lot about the subject. If the learner selects choice C, then the program will adjust section1 to “heavy” because the learner knows very little about the subject and needs to get the more in-depth content.

Now that I have the variable and the question set up, I’ll set a trigger for each of the choices in Figure 2 to adjust the variable section1. (If there were a lot of questions, it would require a little more work than I’m showing in this example.)

Figure 3 shows how to use Storyline’s Trigger Wizard. In this figure, if the user selects choice C (“Nothing,” which is Radio Button 3 in Figure 2), then Storyline will adjust the variable section1 to “heavy.” Read the entries in Figure 3 from top to bottom to see how this works: Adjust variable section1 by assigning it the value “heavy” when the user clicks Radio Button 3.

Figure 3: Using the Trigger Wizard in Storyline to adjust the variable named “section1” 

In the same way, I would use the Trigger Wizard two more times to set triggers for the other options (“A lot” and “Some”: Radio Buttons 1 and 2). Once that is completed, the program could jump the learner to the “heavy” version of the video, the “light” version, or the “medium” version, depending on the user’s self-reported knowledge of the subject. Yes, this does require more development, but it gets us away from the one-size-fits-all course.

So in my story view (Figure 4), I created these three scenes for Section 1. From here I jump to the correct version of the scene based on the answers in the introduction section.

Figure 4: The story view of the course in Storyline

So the Next or Submit button in the introduction would jump to the scene based on the value of the variable. Figure 5 shows what that trigger might look like.

Figure 5: The trigger button causes a jump to the light video of the course in Storyline

So that trigger will only run if the variable of section1 is equal to light. Then I would need two more triggers, one jumping to the heavy section and one jumping to the medium section based on the value of the variable. From here, you would just need to set up more questions for the intro quiz and more sections, each with different versions of each section.

All this is just scratching the surface, but hopefully that gets you pointed in the right direction for how you could start creating adaptable or personalized learning for your students. As always, let me know your feedback or questions!