Challenging Problems

Moodle is the leading open source LMS (based on no real research on my part whatsoever, mostly, I’ve just heard the name more than Sakai or some other alternatives). They’ve done a great job creating a product that is broadly used and reasonably well thought of. SCORM, frankly, has been a bit of a challenge for Moodle (as it is for so many folks). Application service providers (ASP’s) and companies with in house LMS’s come to us regularly for help with this particular problem, but Moodle has taken it on themselves, and I personally applaud them for that.

Recently, some of the folks in the Moodle community have put some real effort into moving the platform toward SCORM 1.2 certification. As Dan Marsden mentions, the most recent versions of Moodle can pass the test suite, and they’re moving toward formal certification. He also mentions the following with regard to SCORM 2004:

I couldn’t finish this post without “mentioning” SCORM 2004…. this is still a way off for us, the common statement is “some of it’s there, but it’s missing sequencing and navigation”. I don’t expect we’d get this done before Moodle 2.0 release, It’s hard to balance whether time should be spent on the SCORM 2004 stuff, or the other structural/scalability issues.

I can’t argue with his thoughts at all… I would want nothing less than to try to build a SCORM 2004 LMS on a platform that has other issues. SCORM can be finicky, and SCORM 2004 particularly so. SCORM 2004 (and frankly, some of the finer points of SCORM 1.2) are without doubt challenging problems.

They are, however, problems that we’ve solved to a very large degree with our SCORM Engine. We already have the plug-able architecture that allows us to embed the player in other applications. We’ve also had “a few” prospects come to us asking if we could embed the SCORM Engine in Moodle. (Older versions of Moodle, in particular, struggled with SCORM conformance. From what I’ve heard, the Moodle SCORM forums are actually more active than the ADL forums themselves.) So, partly as an exercise, and partly to explore the possibilities, we’ve started down the path of integrating the SCORM Engine with Moodle. Already, just a week or two later, we have this…

This is one of the ADL Photoshop courses running via SCORM 2004 in the context of our local Moodle installation. It includes legitimate SCORM 2004 sequencing and navigation in a fully conformant manner, and even reports overall status back via the Moodle API. On top of that, the SCORM Engine would allow an integrated Moodle/SCORM Engine to benefit from all of the SCORM Engine functionality, including high end compatibility and delivery customization. (OK, I think it’s cool, but I am admittedly a dork, no doubt.) I’m 100% convinced that we can very quickly take this to a state of elegant integration. Which leads me to our…

Challenging Problem

How do we offer this to the community? I am well aware that Moodle is open source. Clearly, I am aware that the SCORM Engine is not. The various open source licenses are a problem for another time (and likely, a lawyer with his or her hourly fees).

What would you (and by you, I mean, presumptively, the Moodle user who has found their way to this post somehow) expect in the offering? We are, admittedly, a for-profit company. We would like to find a way to offer this to you where it solves your problems and compensates us appropriately. In many ways, we think of ourselves as a software cooperative, solving this challenging problem on behalf of many. So how can we do that effectively for you? What would you be willing to pay to have this problem solved?

What SCORM problems, other than SCORM 2004, can we solve for you in particular? Are they already solved by the SCORM Engine (feel free to try the Engine implementation available as the core of TestTrack if you like)?

Would you be willing and able to introduce a non-open source project in the context of your Moodle implementation, provided we could work out the license issues?

Enough questions from the blogger, I say. It’s time to cut this off here. Feel free to offer commentary via the blog or by contacting us here.


  • Brian Caudill

    Why don’t you become one of the Moodle hosting partners and as part of your value added proposition to the Moodle hosting is that those that use Rustici as a Moodle host will have the SCORM 2004 player available to them. There could be a tiered cost of hosting to reflect the added software value.
    –Brian Caudill, JCA Solutions

  • Dan

    Hi Tim,

    interesting post! – I can definitely see the benefit of allowing a pluggable SCORM 2004 compliant engine into Moodle – even if it’s a “commercial” option. I’m interested to hear more about how you integrate with Moodle – do you use a new Module type or a course format?

    You pose an interesting question “What would you be willing to pay to have this problem solved” – IMO – this would likely be similar or more than the price the “user” paid for their SCORM Authoring tool…. I’d guess that users of the open source tools like eXe/Reload etc probably wouldn’t want to spend extra $$ on a SCORM engine when they can “make do” with the 1.2 stuff in Moodle currently….however – the users of some of the higher end tools may be happy to pay for a tool to get it compliant now. (as long as it’s easy to install)

    I have absolutely no issues with adding detail about your tool to the documentation wiki for those looking for SCORM 2004 compliance. Or for you or others to promote it’s use in the SCORM forum – It’s definitely a worthwhile tool, and if it solves some users issues, and they can afford to pay for it, then great!

  • philip

    i appreciate your situation.

    the most common approach for open-source software seems to be: give it away then charge people for support.

    the moodle community is huge and still growing; there is a very large potential client base there, esp. if the rustici scorm engine is the default SCORM component in moodle. plus, it helps the community at large and is for the greater good.

    perhaps you can open-source the PHP/moodle version but continue to sell ASP.Net versions — people who use ASP-based solutions are used to spending big bucks! 😉

  • Stuart R Mealor

    Good post, and follow-up comments.
    I am the MD of a Moodle Partner (HRD in New Zealand), and I believe some commercial users of Moodle would be willing to pay for this.

    Many Moodle users will use Articulate etc. to produce content for example ($$$’s).

    However, this should be balanced against the hundreds of thousands of smaller Moodle users who could/would not.

    Can you provide a ‘trimmed down version’ perhaps for free? (Not sure of the technical challenges there!). This would be a great marketing opportunity for you, with a pathway for users to upgrade to a paid version (and I’m sure there would be a market in the colleges, polytechnics, universities, commercial companies).

    I also like Philips idea of a PHP/Moodle OS version, and a paid for ASP.Net version (when did M$ last give you software for free?). Software such as DimDim and others use this type of strategy quite successfully 🙂

  • Ryan Leathers

    Eventually the day will come when the Moodle community’s own SCORM 2004 efforts will be ‘good enough’ for most folks. Not only will that be bad news for commercial LMS vendors, it will be bad news for companies like Rustici who will still have a great product, but a shrinking customer base. Of course, it will be great news for everyone else.

    How do you preserve your current sales channel while positioning for the inevitable changes coming?

    I think you’ve got a couple of good options, but you can’t just open source your code and try to sell support. That model won’t work for the kind of product you provide. If you did that I guarantee I’d use your stuff and seriously doubt I’d need much support. It would be business suicide.

    Instead, you could either get into the hosted Moodle business or partner with someone else who will do that part. Bringing certified SCORM 2004 to the party will give you the upper hand over every other Moodle hosting company out there. It will also allow you to compete for deals previously available only to commercial products.

    Second, consider selling a Moodle drop-in SCORM Engine complete with management module on the cheap. Provide licensing that prevents distribution of your module, but make it affordable and standardize it enough that the masses can come to your web site, buy the thing, drop it in and use it. You’ll make money in your sleep.

    Will the Moodle community go to school on you and just build their own version? Sure. But they are going to get there at some point anyway. Perhaps work out some terms to be granted a period of exclusivity before any community release includes a competing capability.

    Lastly, keep it affordable. Don’t tempt cheapskates with a good but unobtainable product and you’ll be amazed with how many of these you sell.

  • Pingback: SCORM Engine « danmarsden.com()

  • Gir

    Hello
    I’m developer of software for Scorm-courses creating.
    I have a problem. My single item course open his single page in new window. How I can do it will be opened in the same window? (like courses with any items)

  • This varies. Certain LMSs, including those that use our products, offer controls that allow you to dictate the window opening behavior. (See our course properties for more detail.)

    Other LMSs, though, are not required to offer this functionality. SCORM itself does not dictate cosmetic behaviors such as this one.

  • Gir

    How I can get total time for each sco? I need gen it by javascript inside html-file of sco.

  • Gir. I’ve answered your questions via email. Thanks.

  • Guilherme

    Tenho o seguinte problema: o curso esta sendo feito em Flash AS2. Em uma determinada tela do curso existem 6 botões e cada um chama um HTML, preciso controlar quais foram os botões clicados e para no caso do aluno sair dos curso, antes de terminar de clicar em todos os botões preciso guardar quais ele já clicou e mostrar para ele quais estão faltando. Bom acho que expliquei o que queria. O que passa em minha cabeça e que tenha algum campo que eu possa jogar valores que seja do tipo ARRAY, para controlar por aluno. Obrigado!

  • Guilherme

    I have the following problem: the course is being done in Flash AS2. In one particular screen of course there are 6 buttons, and each called an HTML, precise control which buttons were clicked and if the student leaves the course before you finish click all the buttons I need to preserve what he already clicked and show for it which are missing. Well I think I explained what I wanted. What goes in my head and that has some field values so I can play that’s an array to control for student. Thanks!