pipwerks: home

pipwerks

Standards-friendy eLearning and Web development (HTML 5 version)

SCORM projects

SCORM is a technical standard for online courseware, and can be utilized in a course in many ways, from amazingly simple bookmarking to achingly complex sequencing and navigation. SCORM’s most important contribution to elearning — in my mind, anyway — is the standardization of communication between a course and an LMS, which enables course portability between LMS systems regardless of course or LMS vendor.

SCORM API Wrapper [JavaScript]

A revised version of the ADL SCORM API wrapper, intended to bring the wrapper more in line with the “Web 2.0″ world.  [ read more ]

ActionScript SCORM Classes (API Wrappers)

Companion ActionScript classes for the JavaScript-based SCORM API Wrapper. Designed to simplify working with SCORM in Flash. Comes in both AS2 and AS3 flavors.
[ read more ]

 

Feeling stuck with a technical issue? Check out the eLearning Technology and Development Google Group.

Like what you see? Why not share it!

  • Digg
  • del.icio.us
  • Facebook
  • Google Bookmarks
  • FriendFeed
  • LinkedIn
  • StumbleUpon
  • Tumblr
  • Twitter

What others are saying... (6 comments so far)

Glenn Peters

Hi — quick question. In your downloads section, you say, “Please do not hotlink or redistribute these files without my permission.”

I’m pretty sure my this means not putting these wholesale on a different site, but we are still free to use them internally (with attribution, of course) even for a commercial product. But there’s some concern at the company I’m working for, and I wanted to be sure.

philip

Your assumptions are correct. You know how some sites are scavenger sites, re-posting other people’s files and blog posts in order to generate traffic and make money off ads? That’s what I want to avoid. By “redestributing” I generally mean don’t make my files available as a download on your site or hand it out on a CD unless it’s part of your project; in other words, don’t hand out stand-alone copies of my files.

They’re under an MIT license, so using them in a commercial product is fine. If you have a legitimate use for my files and keep all notices intact (retain attribution), go ahead and do whatever you want with them.

Stéphane

Hi Philip,

That’s great work, and work that you just spared me, which always makes me happy!

Thank you very much!

I’m new to the SCORM scene, having been hired a few days ago only, but it already motivates me a great deal! If I come up with some good stuff that I’m allowed to share, I’ll keep you in touch!

Stéphane

philip

@stéphane
you’re welcome, and good luck

Dan

Great site/information here, appreciate your efforts.

I was wondering, have you ever considered putting a configurable “delay” in the wrapper?

The reason I ask is as follows:

The users I support connect to our LMS on a number of different internet connections.

Many are on fast ethernet, but some do connect from home, over wifi or even via cellular data networks.

Some of these connections have higher than average latency or poor bandwidth performance.

While my connection is good from my office location, I’ve used tools like IE Throttle to emulate a poor performing connection.

While I expected things like videos to load slowly and stutter, I also find that some of our courses freeze up (or lock up the browser entirely). Sometimes the API also fails to load (Although our retries is only set to 99, I’ll try your setting of 500 and see if that helps in that case).

Ultimately, though.. I’m wondering if adding a short delay between any communication causing actions may make the code better able to deal with bad connections?

I apologize if you already have some functionality like this built into the api, If not… do you think it may be a worthwhile addition? Any recommendations on how this might best be added to the wrapper?

(Not much of a coder myself.. I can deconstruct and tweak, but a bit weak on the “sit down and make it” side :) )

philip

@dan interesting request. i’ve never come across that particular issue myself. personally, i’d leave the delay out of the wrapper and add some kind of time manager to your course code. For example, i’d probably do something like this (pseudocode):

function delayedEvent(func){
   //timer code here
   //invoke function
   func();
}
 
delayedEvent(function(){
   scorm.set("cmi.suspend_data", "mycustomdata");
});

Want a gravatar? They're easy and free! Just sign up at gravatar.com

Add your two cents!

You can use the following HTML tags in your comment: <a> <abbr> <b> <blockquote> <cite> <code> <em> <i> <q> <strike> <strong> <pre>

The anti-spam code is my LAST NAME, and can be found in the page footer.
Be careful not to misspell it.

I'm currently moderating comments. Please don't submit your comment twice; it will appear as soon as I can approve it.