I am a patient man. Slow to anger, slow to annoy. Frankly, some mistake my calm demeanor for apathy. But now they’ve done it. The folks on Twitter (and elsewhere in the community) have made enough comments about SCORM that I’m annoyed. That’s right, I’m actually a little irritated.

I’ve been feeling, lately, like SCORM is my little brother. It’s OK if folks choose to pick on my bro, so long as they are constructive, or at least right. The comments I’ve been seeing lately range from misdirected to out and out wrong.

@jclarey SCORM? With an M? Gee, I always pronounced it “SCORN.”
@Dave_Ferguson

SCORM arrrgh. Go To HELL !!
@frdsrcks

maltido Adobe SCORM Packager!!!
@bloggus

Note: Congrats to @bloggus for catching Adobe in the crosshairs!

Do any of you love SCORM like I do? #sarcasm
@johndavidblack

Before I dive into a full fledged defense of SCORM, let me say this… I am not an outright fanboy for SCORM. I have implemented both content and LMSs with SCORM, and I understand the hassles intrinsic to the standard. I understand that SCORM can be a complicated problem. I’ll even go off the reservation here, in a way that will likely annoy some SCORM purists with whom we work regularly, and say this, “SCORM 2004’s sequencing and navigation? Well, it pretty much hurts my head.” That’s right, there are pieces of SCORM 2004 that are great. I do believe that it’s better, in total, than SCORM 1.2, but it’s not all hunky dory.

With that context, and with my self-loathing credibility intact, I’ll also say this. SCORM is really well put together. If you doubt that statement, I’ll ask you this… Have you read the specification? Can you really say you know the spec? I challenge you to read it as a software developer… the concepts are well documented. The examples are thorough. SCORM’s API is simple… it has a grand total of 8 methods. Seriously. The vocabulary is publicly defined and direct. Failure to make proper use of the standard is not an admonition of the standard itself!

Has SCORM addressed every possibility? No. Is it iron-clad? No, it’s not. But is it fundamentally sound? Can those who are willing to dig into it implement it in a way that increases interoperability in a dramatic fashion? Absolutely. SCORM has moved eLearning interoperability miles ahead. This is undeniable. Complaints about SCORM’s impact on reusability are also more than reasonable. SCORM has admittedly failed in this regard, but that failure stems as much from the instructional design challenges as it does from SCORM’s technical shortcomings.

So I’m going to ask you a favor, “Ye Olde Basher o’ SCORM”. If you’re gonna go after my little brother, make sure you’re going after the right guy. If you’re complaint is with the standard itself, go ahead and attack the standard itself. (Say, if you think Javascript is an extremely limiting communication technique and webservices would be a better approach.) If that’s your beef, I’ll join in with you.

But if you’ve got a conformant piece of content, and your LMS won’t import it, don’t jump on the standard, jump on your eLearning vendor! When your content won’t report completion in Saba, jump on Saba. If TestTrack is failing to represent SCORM 1.2 rollup effectively, as it is today, jump down my throat. But get it right; go after the right perpetrator.

So, I’ll be inviting the “haters” to this page as I encounter them. Folks who twitter about how SCORM “kicked their cat” or “blew their house down” will be invited to vent… I’m all for the dialogue. And I’m all for the challenges. I’m no SCORM homer, but I’m also prepared to point the finger at the real culprit. As vendors fail to do their job well, we collectively need to understand when SCORM is failing and when vendors are failing.

If you’re a hater, lay it out for all of us in the comments. Let me feel your pain.

Tim is the chief innovation and product officer with our parent company LTG, though he used to be CEO here at Rustici Software. If you’re looking for a plainspoken answer to a standards-based question, or to just play an inane game, Tim is your person.