If you need them, you’re doing something wrong.
If users provide constructive feedback regarding problems navigating content, don’t start drafting up pages of help documentation and tutorial videos. Instead, identify what the problem is and if it can be solved through redesign.
Navigation should use conventional terms and icons, and behave the way it is expected to behave. If you’re using clear icons and language, users should not need instructions to progress through the content.
Side note: My biggest pet peeve is LMS Course Players that strip the browser window of navigation, we should be able to design course navigation that compliments the standard browser functionality. Especially when designing non-linear content, the browsers back button should not need to be re-invented. Flash media can and should integrate browser navigation.
For engaging media, the objective and interaction of the exercise should be clear, or can be described with a couple concise sentences. Something like “Fill in the blank” should be all that is required, if the user needs to click a button to submit their answer, the button name should be all the instruction needed, it should just make sense.
For more complicated activities, consider building the instructions directly into the flow of the interaction. Allow the user to complete small goals, learning functionality of the total engagement as they progress to the main activity. Don’t forget to provide a skip to main exercise option as well though for the savvy or returning users.
Friday, April 27, 2012
Thursday, April 5, 2012
Monday, April 2, 2012
Being Flexible
I’ve been playing around with Adobe Captivate’s Custom Widgets. While I can’t speak too highly about Captivate’s quizzing interface, I do think they’re doing it right when it comes to being flexible.
Allowing technical users to develop their own customized widgets for a Captivate project is a no-brainer. Not only does it allow users to develop beyond the restrictions of existing components, but with the developer sharing through Adobe Exchange, it actually grows their Captivate product line for free.
Articulate Quizmaker could learn from this model.
Want a fill in the blank question with more than one blanks? Nope, sorry.
Want matching question where items can match to the same responses? Nope, sorry.
Quizmaker is a fantastic tool, but its strength in being easy to use has a side effect of not allowing much customization. They needed to follow Adobe Captivate's lead and allow for Question Widgets through a Flash API.
I hear Articulate’s StoryLine is nearing finished, from what I hear it will be their first HTML5 centric tool. Here’s hoping they grow their product, develop a strong developer community, and allow for customization, all by being a little flexible.
Allowing technical users to develop their own customized widgets for a Captivate project is a no-brainer. Not only does it allow users to develop beyond the restrictions of existing components, but with the developer sharing through Adobe Exchange, it actually grows their Captivate product line for free.
Articulate Quizmaker could learn from this model.
Want a fill in the blank question with more than one blanks? Nope, sorry.
Want matching question where items can match to the same responses? Nope, sorry.
Quizmaker is a fantastic tool, but its strength in being easy to use has a side effect of not allowing much customization. They needed to follow Adobe Captivate's lead and allow for Question Widgets through a Flash API.
I hear Articulate’s StoryLine is nearing finished, from what I hear it will be their first HTML5 centric tool. Here’s hoping they grow their product, develop a strong developer community, and allow for customization, all by being a little flexible.
Thursday, December 1, 2011
Add a simple pause in the middle of a slide in Adobe Presenter
This seemingly simple request turned into a frustrating search for an answer.
Adobe's Support recommends you add "Pause after each animation" from the publish advanced settings, or I alternatively you could select "Advance by User" from the Slide Manager menu.
But these don't help for inserting a simple pause in the middle of a slide, and it wasn't until I stumbled on page 18 of a PDF from the University of Calgary that I felt very silly for not knowing how to do this before.
In the AUDIO edit of all places, we can right click the time line and choose "Insert Command" to add a Wait for User pause in the middle of a slide.
Adobe's Support recommends you add "Pause after each animation" from the publish advanced settings, or I alternatively you could select "Advance by User" from the Slide Manager menu.
But these don't help for inserting a simple pause in the middle of a slide, and it wasn't until I stumbled on page 18 of a PDF from the University of Calgary that I felt very silly for not knowing how to do this before.
In the AUDIO edit of all places, we can right click the time line and choose "Insert Command" to add a Wait for User pause in the middle of a slide.
Thursday, November 17, 2011
Goodbye *.swf hello student cheating
Adobe's business shift to focusing on producing development tools for HTML5 is fantastic. I believe there are a lot of champions and promoters of HTML5, but few realize for something like this to be fully applied and improved we need leaders like Adobe to provide us with the development environments where we can create our media without being concerned with something like writing Javascript Canvas Code.
There's just one small thing that's been on my mind however, something we've taken for granted. The SWF File format provided us with a 'reasonable' amount of security in terms of hiding answers to questions. It's far from secure, all you need is the ability to download the file, decompile it, and root through the source. However, this process for students is more cumbersome than actually just learning the material, not to mention technology that they're probably not familiar with.
As we move towards a Javascript, XML, HTML system for providing Assessments, we may find that increasingly web sophisticated students will find it easier to access answers to questions. You may not realize how quickly a determined student could root through your client side code, but any web familiar individual looking for a quick grade will find it quite easy to exploit your unsecured method of storing answers.
Tools like Quizmaker, or Captivate have provided us a fantastic way to create portable Learning Objects. Now, for reasons of security we may be forced into using our Learning Management System's proprietary Assessment Engine, limiting the shelf life and portability of our content.
There's just one small thing that's been on my mind however, something we've taken for granted. The SWF File format provided us with a 'reasonable' amount of security in terms of hiding answers to questions. It's far from secure, all you need is the ability to download the file, decompile it, and root through the source. However, this process for students is more cumbersome than actually just learning the material, not to mention technology that they're probably not familiar with.
As we move towards a Javascript, XML, HTML system for providing Assessments, we may find that increasingly web sophisticated students will find it easier to access answers to questions. You may not realize how quickly a determined student could root through your client side code, but any web familiar individual looking for a quick grade will find it quite easy to exploit your unsecured method of storing answers.
Tools like Quizmaker, or Captivate have provided us a fantastic way to create portable Learning Objects. Now, for reasons of security we may be forced into using our Learning Management System's proprietary Assessment Engine, limiting the shelf life and portability of our content.
Friday, November 4, 2011
Access Score Variables from an Articulate Quizmaker Quiz
I often get developers to my blog that are interested in using Articulate's Quizmaker to enhance their custom Flash based eLearning courses. I have previously written about how to load a Quizmaker quiz into your own Actionscript 2.0 swf and still report to SCORM. What if we want to do our own custom reporting? How do we access Quizmaker's score variables?
Well, assuming you've loaded the quiz into a MovieClip "_root.myContainer" here you are:
Score in % = _root.myContainer.g_oVariableMgr.m_arrVariables[7].m_nNumber
Total Points Awarded = _root.myContainer.g_oVariableMgr.m_arrVariables[2].m_nNumber
The Passing Percent = _root.myContainer.g_oVariableMgr.m_arrVariables[5].m_nNumber
The Passing Points = _root.myContainer.g_oVariableMgr.m_arrVariables[6].m_nNumber
Total Max Points = _root.myContainer.g_oVariableMgr.m_arrVariables[4].m_nNumber
Total Answered Max Points = _root.myContainer.g_oVariableMgr.m_arrVariables[3].m_nNumber
Enjoy!
Well, assuming you've loaded the quiz into a MovieClip "_root.myContainer" here you are:
Score in % = _root.myContainer.g_oVariableMgr.m_arrVariables[7].m_nNumber
Total Points Awarded = _root.myContainer.g_oVariableMgr.m_arrVariables[2].m_nNumber
The Passing Percent = _root.myContainer.g_oVariableMgr.m_arrVariables[5].m_nNumber
The Passing Points = _root.myContainer.g_oVariableMgr.m_arrVariables[6].m_nNumber
Total Max Points = _root.myContainer.g_oVariableMgr.m_arrVariables[4].m_nNumber
Total Answered Max Points = _root.myContainer.g_oVariableMgr.m_arrVariables[3].m_nNumber
Enjoy!
Thursday, October 13, 2011
Combine multiple SCORM packages into one
When moving to a new LMS you may find that it’s view of what makes up a ‘Learning Object’, ‘Module’ or ‘Course’ is quite different than what you are used to. This was the case when I was transferring content from Dokeos to Learnflex.
I had to find a way to quickly combine the modules I had exported from Dokeos (which was using learning paths) into one SCORM package. The tracking of each individual SCO was not neccesarry in this instance as it would only have a final assessment that needed tracked. My first thought was to launch RELOAD and start building a new package using all the exported files and my knowledge of the structure of the course. RELOAD however seemed to suffer from slowdown as soon as I was dealing with lots of items, I quickly became frustrated with having to wait to add a new page or module, so I began thinking about a faster way.
I loaded up a couple of exported IMSManifest files that I had exported from Dokeos. One thing I immediately noticed was that the “identifierref” attributes used in the files were numbered and unique. With that knowledge I figured the fastest way to combine Dokeos exported SCORM packages into one package was to manually cut and paste the XML files together. (or to use a script to do this that I should really just write and put online for others to use… will certainly update you if that happens) Anyways, for those proficient with XML here is what I did:
If this solution doesn’t help with your problem Dave Mozealous also has a solution that may be what you are looking for. See: http://www.mozealous.com/repackaging-articulate-content-to-allow-multiple-scos/
I had to find a way to quickly combine the modules I had exported from Dokeos (which was using learning paths) into one SCORM package. The tracking of each individual SCO was not neccesarry in this instance as it would only have a final assessment that needed tracked. My first thought was to launch RELOAD and start building a new package using all the exported files and my knowledge of the structure of the course. RELOAD however seemed to suffer from slowdown as soon as I was dealing with lots of items, I quickly became frustrated with having to wait to add a new page or module, so I began thinking about a faster way.
I loaded up a couple of exported IMSManifest files that I had exported from Dokeos. One thing I immediately noticed was that the “identifierref” attributes used in the files were numbered and unique. With that knowledge I figured the fastest way to combine Dokeos exported SCORM packages into one package was to manually cut and paste the XML files together. (or to use a script to do this that I should really just write and put online for others to use… will certainly update you if that happens) Anyways, for those proficient with XML here is what I did:
- The first XML file will be your starting point, wrap all the <item>’s of this manifest into one <item> tag.
tip: replace the <organization> tag with<organization identifier=”some id”> <item identifier=”some id”>, and then replace the bottom </organization> tag with </item></organization>. - For each package you wish to add, create a new <item ></item> and paste the items from that IMSManifest into your new <item> tag.
- For each package you wish to add copy all the <resource> information and paste into the main file’s <resources>
If this solution doesn’t help with your problem Dave Mozealous also has a solution that may be what you are looking for. See: http://www.mozealous.com/repackaging-articulate-content-to-allow-multiple-scos/
Subscribe to:
Posts (Atom)
