Wednesday, January 27, 2010

Can't set the adlcp:scormtype in Reload Editor

Reload Editor is a fantastic and free SCORM packaging tool. One problem I ran into with it however is that I can't seem to set the resource attribute 'adlcp:scormtype'. Since an undefined adlcp:scormtype will default to asset, my LMS won't show any Navigation!

So for now I have to manually add adlcp:scormtype="sco" to my resource nodes as a solution.

It looks as though this problem was addressed on the development site for Reload (see issue 873054), however the only compiled release is Version 1, so unless you're savvy enough to get the most recent source code and compile it yourself, you're likely to run into this problem as well.

Anyways hope this tidbit reaches someone wondering why their Reload package is not working in their LMS - your poor little adlcp:scormtype might just need setting!

Monday, January 25, 2010

Browser Focus Issue with Quizmaker

Ran into an issue with Quizmaker in which the Quiz essentially removes focus from the browser (in this case IE 7) and makes it so users need to click twice on any link to get it to work - once to set focus back to the web page, and once to select the link.

I must admit, I don't have a lot of experience with setting Browser focus, and the reasons behind it, but I know that having users trying to click the LMS next button and it not working is a major usability issue!

There is two solutions to this problem, the first one is just to re-write quiz.html and do a standard flash object/embed, replacing the Articulate published script. Now, I don't actually know what all that Articulate script is there to handle, so there is another way to handle this problem without removing all the script.

1. Open quiz_content/quiz.js

2. Search for "player.focus();"

3. Delete that line of code, or comment it out.

I have yet to test this on a Quiz that uses LMS tracking, so I have no idea if the focus is important to the communication, but certainly on a simple knowledge check removing this line will fix the usability bug.

Friday, January 22, 2010

Append Webex presentations (FLV)


You have several different exported Webex presentations, and now you want to combine them all into one.


A Webex export will give you 5 files for a presentation - index.html, presentation.swf, screen.flv, voip.flv and recording.xml.

The presentation.swf is actually just the 'controller', it's the two flv files that make up the actually video and audio content.

Lets say we want to combine 3 different exported presentations into one, here's how we do it:

1. Rename and Copy the flv files from the 2nd and 3rd presentations and put those files into the 1st presentations folder. You should have 6 flv files in there now.

2. Open the recording.xml file.

Look for this code

<video timestamp="1" name="screen.flv" width="1080" height="824" start="0" duration="7076" keyinterval="10"/>

Note: the timestamp and duration numbers are in seconds

All you need to do is cut and paste that line for each additional video you wish to append and edit the name, timestamp and duration fields. it would look something like this:

<video timestamp="1" name="screen1.flv" width="1080" height="824" start="0" duration="7076" keyinterval="10"/><video timestamp="7076" name="screen2.flv" width="1080" height="824" start="0" duration="5000" keyinterval="10"/><video timestamp="12076" name="screen3.flv" width="1080" height="824" start="0" duration="6000" keyinterval="10"/>

Notice how the timestamp value is the length of the previous videos?

Note: To know the duration of each flv you may want to open up the other presentations recording.xml files and make a note of that value.

So that handles the video, now we do the same for the audio! look for:

<video timestamp="1" name="voip.flv" duration="7076" />

Cut and paste that line just like before editing the name, timestamp, duration fields.

Ok almost done,

3. At the top of the xml file look for:

<recording topic="" number="" ... duration="7076">

You want to edit that duration so that it is the new total length of your demo.

Bingo Bango, an appended presentation without any video editing software necessary!

Wednesday, January 13, 2010

Improving the Quizmaker Matching Drag and Drop question type


Articulate's Quizmaker only allows for Right to Left drag drop question types. Meaning the user must drag the rightmost items onto the leftmost. I personally have always felt that users are more comfortable and inclined to go the opposite direction.


Unfortunetly there is no magic option in Articulate to solve this for us. So we write our own Actionscript to insert into the question in the form of a SWF file, this SWF file goes into the Quizmaker code and sets things straight.

Directions: (I am not hosting the swf file as of yet so you're gonna need to create it, hopefully I can get it online soon)

1. Create a new SWF 550 by 400 pixels and using Actionscript 2.0

2. The Code: Put this on frame one layer one


function ddfindObject()

var checkObj = this._parent._parent._parent;

for(i in checkObj)
if(checkObj[i]._x == 30)
return checkObj[i];
return null;

function ddswitchObjects()
var cur:MovieClip = ddfindObject();
cur.mcScrollContentMask._width = 1000;
cur = cur.mcScrollContent;

for(var i in cur)
trace(i + " " + cur[i]._x);
if(cur[i]._x == 16)
cur[i]._x = 212;
else if(cur[i]._x >= 200)
cur[i]._x = 16;
cur[i].startingY = cur[i]._y;
cur[i].onEnterFrame = function()
if(this._x == 212){
this._x = 16;
this._y = this.startingY;

3. Publish your swf!

4. Create a new quiz and a new matching question type.

5. In form view (NOT slide view) select Media -> Flash Movie -> and insert your published swf.

6. Publish Quiz


Obviously there is a flicker problem, meaning when the question loads, first the options are all in their original Quizmaker position before being switched around by our code, this is because of how the Quiz loads the question before the external swf we make, still thinking of a way to fix this...

There is also limitations on the size of the text you can enter for now. My testing and developing has all been done with small words, and the location of the drag items are hardcoded in my code which means to hack the Quizmaker I look specifically for items in certain positions, meaning if the items were longer or bigger than Quizmaker's defaults this code would fail (although I'm working on improving this as well)

That's all, hope someone else uses this, cause i'm putting into a course today!

Thursday, January 7, 2010

Understanding a learners motivation and percieved importance of the content in designing course navigation.

A major discussion at the e-learning guild linkedin group has been around hiding a 'next' button with the intention of making the user complete some activity before being allowed to move on. The idea here is that users will be forced into focusing on the material rather than skipping through.

Lots of ideas for this have been brought up such as multiple choice questions, true / false, a timer, drag drop, and so on. Obviously whatever learning exercise that fits the content best will work in getting the user to stop for a second and take in the content. Do we need to do this? My opinion is that this technique should be used when we perceive our target learners motivation for the content to be low.

What situations fit this scenario:
  • Internal Training for new company policies.
  • Courses with no certification, or penalty for incompletion BUT the user is being forced to take.
  • Online courses with multiple attempts at assessments where a user is more likely to attempt trial and error to get the completion. (I call this the 'Mastermind Learner')
  • Courses with dry content that fail to engage the user

What situations do not fit:

  • Courses that the user has willingly enrolled in
  • Courses with a high cost/penalty to the user
  • Courses that have been written and developed to engage the user through audio, video, animation, and well written content.

Not all courses have exciting topics, not all courses will have users that wanted to take them, and not all courses will be full of multimedia. It is the development teams responsibility understand a learner's motivation and more importantly their "Perceived Importance of the Content", and then implement a navigation strategy that fits the users willingness to absorb the material.