Goodbye Turnitin…

July 10th, 2014

Time to say goodbye to the “Dan Marsden Turnitin plugin”… well almost!

Turnitin have done a pretty good job of developing a new plugin to replace the code that I have been working on since Moodle 1.5!

The new version of their plugin contains 3 components:

  1. A module (called turnitintool2) which contains the majority of the code for connecting to their new API and is a self-contained activity like their old “turnitintool” plugin
  2. A replacement plugin for mine (plagiarism_turnitin) which allows you to use plagiarism features within the existing Moodle Assignment, Workshop and forum modules.
  3. A new Moodle block that works with both the above plugins.

The Plugins database entry has been updated to replace my old code with the latest version from Turnitin, we have a number of clients at Catalyst using the new plugin and the migration has mostly gone ok so far – there are a few minor differences between my plugin and the new version from Turnitin so I encourage everyone to test the upgrade to the new version before running it on their production sites.

I’m encouraging most of our clients to update to the new plugin at the end of this year but I will continue to provide basic support for my version running on all Moodle versions up to Moodle 2.7 and my code continues to be available from my github repository here:

Thanks to everyone who has helped in the past with the plugin I wrote – hopefully this new version from Turnitin will meet everyone’s needs!

GSOC 2014

April 29th, 2014

gsoc-2014-600x540We are lucky to have Vignesh Panneerselvam working on the SCORM plugin as part of Google Summer of Code this year – there are 3 main areas of focus for his work:

  • Improving the built-in navigation buttons
    I don’t think the navigation buttons in Moodle have ever worked correctly – we’ve made incremental improvements but I’m hoping Vignesh will help to sort out the remaining issues.
  • Performance improvements.
    There are a number of areas in the SCORM code that don’t perform well on larger sites – one of our clients has over 250 Million records in the SCORM tracking tables and any small improvement to performance can make a large difference to the operation of the server.
  • Code Cleanup
    Moodle’s Coding guidelines have improved/evolved over time and we haven’t always kept up to date in the SCORM code – Vignesh will help us to tidy this up a lot.

Vignesh has already made some useful contributions to the SCORM code – I’m looking forward to working with him as he improves the SCORM code.

New Turnitin API and Moodle plugins

January 15th, 2014

Turnitin have been working on a new back-end API to improve the way integrations are able to access the Turnitin product range – they have also developed new plugins for Moodle using this new API including a replacement for my plugin. The new code supports the full range of Turnitin products (my plugin was only focused on their plagiarism/originality checking service) and the new API will hopefully also improve reliability and stability. Turnitin asked me to review their initial code and were very receptive to my feedback – the new code follows Moodle coding guidelines and looks like a good replacement for my plugin.

The code isn’t available in the Moodle Plugins db yet but it is available in github here:

I have a few clients starting to test the new plugin this week – all going well I plan to stop further development on my old plugin – my plugin still works in Moodle 2.6 but at this stage I don’t have plans to maintain support for it past Moodle 2.6 and I recommend everyone starts to look at the new plugin from Turnitin.

Catalyst IT contributions to Moodle 2.6

November 26th, 2013
Moodle 2.6 includes several new features developed by Catalyst staff including:

Improved Password reset process
The process for resetting a forgotten password in Moodle was previously lengthy and over-complicated. This improvement reduced the number of steps from 13 to 6. It was implemented by Peter Bulmer as a funded request from Statistics New Zealand and the Accident Compensation Corporation, who gave their approval for the work to be contributed to the community.
More information is available on the Moodle Tracker: MDL-23692 

CSV Bulk Course Creation tool
One of the highest voted for features in the Moodle Tracker with 166 votes, this tool was developed by Piers Harding – it allows Moodle courses to be created and removed by passing a CSV file.
More information is available on the Moodle Tracker: MDL-13114 

Assignment Marking management and workflow

This feature implements a marking workflow in the Assignment module that allows selective release of grades to students and individual marker allocation. This feature was developed by Dan Marsden for the Lightwork team at Massey University
More information is available on the Moodle Tracker: MDL-38359

A large number of improvements to the SCORM module were made by Dan Marsden including:
Improvements to management of package files(MDL-28579MDL-41580)
New objectives report (MDL-39926)
User report improvements (MDL-41290)

Many of the developers in the team at Catalyst provided other bug fixes and minor improvements that have been included as part of the 2.6 release. Catalyst is a certified Moodle Partner with offices in New Zealand, Australia and the UK

Managing SCORM content in Moodle 2.6

September 24th, 2013

Following on from an earlier post we now have 2 new methods for managing SCORM content in Moodle 2.6.

Selecting a Zip package as an alias from a repository.
When adding/updating a SCORM and selecting a Zip package from a repository in Moodle 2.6 you now have the ability to create an alias/shortcut to the file – you can then set an update frequency to set how often Moodle should check to see if there is an updated zip. To set this up follow the steps below:

  1. Click the ‘Turn editing on’ button at the top right of the course page
  2. Click the ‘Add an activity or resource’ link in the section you wish to add your SCORM package, then in the activity chooser, select SCORM package then click the Add button (or select ‘SCORM package’ from the ‘Add an activity’ dropdown menu)
  3. Enter a name and a description.
  4. click the Add button to open the File picker menu in order to choose a file a repository
  5. Select the repository that contains your SCORM zip files
  6. Browse and select the SCORM zip file  you wish to add – makes sure you select the option to create an alias/shortcut to the file.
  7. Set the auto-update setting to “every day” – which will check overnight if a package update is required or “every time it’s used” to check if a new package is available every time a user enters the SCORM.
  8. Click the button ‘Save and display’ at the bottom of the page and then enter the SCORM package to make sure it has worked!

Selecting an imsmanifest.xml from an unzipped SCORM in a file system repository.
This allows you to create a repository that contains all your unzipped SCORM packages – you can also share assets between your SCORM packages – for example if you re-use the same video file across multiple packages you can just link to that single video file from multiple imsmanifest.xml files – you can also update your content and as the content is loaded directly from the repository the user will always see the most up to date file. To set this up follow the steps below(some of this is copied from MoodleDocs)

  1. First set up a new File system repository (you need direct access to your server to do this)

    1. Find the moodledata folder on the server
    2. Inside it, create a folder called “repository” (if it doesn’t exist already)
    3. Inside that folder, create a new folder for your repository of SCORM packages named appropriately.
    4. Extract your SCORM packages into appropriate locations within this folder.
  2. . Enabling the File System repository plugin

    1. Go to Settings > Site administration > Plugins > Repositories > Manage Repositories;
    2. Select from the drop down next to File sytem “Enabled and visible”350px-filesystemrepo23
    3. Click the Settings link..
    4. Click Create a repository instance
    5. Give it a name and choose from the dropdown the folder you created with your SCORM packages.
    6. Click the checkbox “Allow relative files” and Save.


  3. Adding a SCORM package
    1. Click the ‘Turn editing on’ button at the top right of the course page
    2. Click the ‘Add an activity or resource’ link in the section you wish to add your SCORM package, then in the activity chooser, select SCORM package then click the Add button (or select ‘SCORM package’ from the ‘Add an activity’ dropdown menu)
    3. Enter a name and a description.
    4. click the Add button to open the File picker menu.
    5. Select the SCORM file system repository you created in the file picker window.
    6. Browse and select the imsmanifest.xml file you wish to add – makes sure you select the option to create an alias/shortcut to the file.
      File picker selecting imsmanifest file
    7. After selecting the imsmanifest.xml file click the button ‘Save and display’ at the bottom of the page and then enter the SCORM package to make sure it has worked!

This method is only currently supported by the file system repository – it’s possible that some of the other repository types could be added in future.

Moodle 2.6 SCORM Update

September 24th, 2013

Moodle 2.6(releases November 2013)  brings some great improvements to the SCORM module

One of the most voted for features in the Moodle tracker for SCORM has been to allow better use of alias’s and support for unzipped content – Thanks to one of our clients at Catalyst IT we have now implemented this in Moodle 2.6

Key components of this work are covered in the following tracker issues:
MDL-41434 – When updating a SCORM package we used to delete all the records in the scorm_scoes table and then recreate them which caused all sorts of issues – by implementing a sort field in the table we keep the existing data and order it correctly this makes updating a SCORM package less fragile.
MDL-28579 – The SCORM module previously used the basic filepicker element which didn’t support the use of creating an alias/link to a file, converting to the advanced filemanager element gives a lot more flexibility.
MDL-41580 – This was the harder part to get right – this patch allows a file system repository in Moodle to support relative linked files – this means that you can unzip your SCORM package in a file system repository and then when creating your SCORM inside your course you just link directly to the imsmanifest.xml file within your repository.

I will follow this up with a post that shows how to use this feature.

Mayank Gupta has been working hard on improving the SCORM player as part of his GSOC project – particularly to improve it’s use on mobile devices -  we now have a more responsive design and the SCORM TOC automatically collapses and hides on smaller screens and it seems to fit these devices a lot better than our older SCORM player – he has also converted a lot of the older code to make sure it meets the Moodle coding guidelines. You can see some of the details on this in MDL-39910 I’ll try to follow this post up later with some screen-shots of the updated player in action.

We have also improved the reporting in SCORM:

MDL-39926 – A new Objectives report like the existing Interactions report, some SCORM packages use objectives to report progress through a course so we added a nicer view of this data that allows easy export.

MDL-41290 – Improved user level reporting – the old user level reports were quite limited – we have added the ability to export this data and have added a more useful view of the interaction elements as well.

Thanks to everyone who has helped with funding or with development and testing of these improvements!


September 13th, 2013

Adobe have kindly invited me to speak at the Adobe Learning Summit in Las Vegas at DevLearn, I’ll be in San Francisco for the GSOC Mentors Summit between 17th-20th Oct and then in Las Vegas between 21st – 25 Oct – even if you’re not attending DevLearn but are in the area and want to catch up – drop me an e-mail!

I’m also thinking about a trip to Alcatraz on the 17th or 18th if anyone wants to join me!

GSOC 2013 Projects

May 28th, 2013

We had some great applications for GSOC this year and there are 7 students who have been accepted. I’m excited to be working with 2 students this year – Mayank Gupta who will be working on improving the SCORM player in Moodle to work better on mobile devices – Mayank has been part of GSOC with Moodle in previous years so his continued contribution to SCORM is appreciated!

Vinnie Monaco submitted a proposal to develop a plugin that uses keystroke dynamics to verify the identity of a user before allowing them to enter a Moodle quiz – this will involve a practical application of his research and looks to be a very interesting way to verify the logged in user.

The biggest mistake applicants made this year was not attempting to fix a Moodle bug – one of the requirements of the Moodle GSOC application process is that students must try to fix a Moodle bug – many didn’t try and some just rewrote a patch that was already available on the tracker.

Thanks to all the students who put effort into their applications – hopefully some of you will continue to engage in the Moodle community even if your applications weren’t successful.

Stopping work on SCORM 2004

May 6th, 2013

I’ve been the official maintainer of SCORM in Moodle since 2008 when we implemented full SCORM 1.2 support thanks to funding from Moodle HQ. Since then with the help of a handful of other developers in the community I have spent over one thousand volunteer hours supporting and improving the SCORM module and occasionally funds have been provided for my time by organisations to fix a particular issue.

SCORM 2004 is now over 8yrs old and despite many efforts no-one has been interested in funding the time required to complete native support for SCORM 2004 in Moodle – I’ve run some successful GSOC projects which which have been a great learning experience for the students involved but have not made a significant dent in the work required to complete SCORM 2004 support. This year we received no valid GSOC applications for improving SCORM 2004 support in Moodle.

I spent a lot of time discussing the opportunity to run a crowd-funded project to complete SCORM 2004 in Moodle but it’s hard to define a fixed figure that would allow us to complete the project and I wonder if such a large amount of my time could be spent on projects that are more current.

Full support for SCORM 2004 is already available in Moodle by using the Rustici SCORM cloud plugin for Moodle and I think it is more cost-effective to purchase a subscription to their hosted solution which is much more stable/reliable and feature rich than what we could provide directly in Moodle anyway.

There is also a new version of SCORM (Tin Can) and I think it makes more sense to focus development effort on that rather than continuing effort to get an old standard working within Moodle that so far no-one has cared enough about to fund.

I will continue as a volunteer to maintain support for SCORM 1.2 and AICC packages in Moodle and the new Tin Can work that is currently underway. I will also make best efforts to avoid regressions in the existing SCORM 2004 code.

I will no longer be spending any time as a volunteer to support or improve SCORM 2004 in Moodle, I will accept patches from community contributors to improve SCORM 2004 support as long as they meet coding guidelines and are easy to test. All existing SCORM 2004 bugs will be closed as “won’t fix” – these will only be re-opened if a community member provides a good patch with full testing instructions or if someone funds my time to continue the work.

Thanks to everyone who has spent time working on SCORM over the years – hopefully drawing a line in the sand over SCORM 2004 support will allow us to focus on more current developments like Tin Can.

Moodle and 2 Million users.

March 19th, 2013

The team here at Catalyst have been working on this exciting project for a while and now that it’s gone live we can finally post publicly about it – the Saudi Arabian National Centre for E-learning and Distance Learning(NCEL), an agency established by the Saudi Arabian government is now running what is the biggest ever Moodle site (as far as we know) with over 2 million users expected to use the system this month.

more info here: 1 2