SCORM 1.2 and the interaction index in Dokeos

Extending a little bit on my latest post about howto test SCORM interactions in Dokeos, I'd like to add an important piece of information about our implementation of the SCORM 1.2 standard (and specifically the interactions). Although the SCORM 1.2 Runtime Environment documentation is not very clear about this, there are two "hints" that interactions IDs must start at 0, and not at 1. First, the description of the SetValue() method on cmi.interactions.n.id says:
De

Free photos for commercial use

Quickly finding free pictures to use on a website is more complicated than one would think. Most professional photo sites offer a huge collection of pictures. These pictures are cheap and of good quality but I had a hard time finding something equivalent for free even in the case of commercial use. After a long unsuccessful search, I found this excellent website: www.freerangestock.com. It contains about 2000 high quality professional pictures, browseable with a search engine. It's free for commercial and non commercial uses, the website and photographers make money thanks to ads revenue.

mbstring vs iconv benchmarking

Following up on my previous post about the differences between the mbstring and iconv international characters libraries (which resulted in a tentative conclusion that nobody knew anything about those differences), and particularly the comments by Nicola, we have combined forces (mostly efforts from Nicola, actually) to provide you with a little benchmarking, if that can help you decide. Nicola wrote the following script (which he gladly releases as public domain license) to test th

Testing interactions in Dokeos SCORM tool

Because one of the most complicated tools in Dokeos is the SCORM tool (found in dokeos/main/newscorm/ ), and because I am currently checking the inner-workings of the interactions inside this tool (Dokeos version 1.8.5), I thought it would be good to write down, once and for all, how I actually check whether the tool is right or wrong, and whether the content is actually the culprit or not.

Getting the right tools

The elementary tools for these tests are Firefox (I recommend version 3 for its better handling of JavaScript debuggi

October Statistics

A few statistics from our database in early October 2008, from our version check script that sends a little (anonymous data to www.dokeos.com, as explained on the Dokeos admin page: Total number of portals registered (some of them might be duplicates): 6 375 Total number of courses created on these portals: 122 054 (campus.dokeos.com accounts for 32 000) Total number of users registered on these portals: 1 297 775 (campus.dokeos.com accounts for 210 000) Around 5 000 downloads per

Make a patch of the complete files modified by commits

I don't know how to call this post. I have a problem with patch (I'm too bad to get it t work properly) so I want to export a list of the files I have modified between two subversion commits. This is how I do it for now (I'm sure it's extremely perfectible).
svn co http://mysvnproject/trunk/project@1
This gets me the first version
svn update > diff-files.txt
This updates my copy to the latest version, but most importantly, it generates a list of files that have been updated or added.

Dokeos in Machu Picchu

As I was in Cusco the other week to hold a few speeches at a 3 days conference, I took the opportunity to go to Machu Picchu. This time, I managed to walk to the Intipunku (la Puerta del Sol, The Sun Gate) and take a picture from there, wearing my wonderful - but old now - Dokeos t-shirt from the 2005 User's Day.

Is respecting GPL too complicated?

I've had a bunch of hunches recently about companies abusing the licensing terms of Dokeos by officially declaring (but only verbally so far) that their product (being Dokeos, but not officially) is not open-source software. The GPL licensing makes it clear that the software derived from GPL software, or any alteration to a GPL software *must* be open-sourced, at least for the people it is distributed to.