Tricky Content

Editors’ note: This post is the latest in a series from Tom Cotton, a Learning Designer at La Trobe University in Melbourne, Australia. Tom has been working on a project to migrate content from the Canvas Learning Management System to Moodle and these posts describe some of the challenges faced and solutions found.

The challenge: “We want you to shift a course from Canvas to Moodle.
The course has 27 subjects. You and your three learning design colleagues have six months.”

Someone Higher Up  (may or may not be Bob)

Presenting Learning Content

Just because you can use a shiny tech trick doesn’t mean that you should.

Moodle Labels, Lessons, Pages and Books are the primary elements to carry content. Which should we use as we carried content over from Canvas to Moodle?

  • Moodle Labels are a fast track to the “scroll of death”.
  • Moodle Lessons are cool but too limited and have Gradebook and user experience problems.
  • Importing Canvas content automatically generates Moodle Pages. Lots.
  • Moodle Books have strong navigation but you can’t add activities inside them.

The best compromise, we decided, was to use Moodle Books. Each topic was introduced using a Moodle Label, and a Moodle Book provided a deep dive into the topic.

Topic = Brief Introduction + Moodle Book + Activity(ies) + more Moodle Books etc…

In the above image, you can see how the content was structured: an introduction with a list of Moodle resources and activities. Note how a Moodle book was split into two, with activities in-between. Simple light indenting was used to “group” the learning material.

The Moodle Books were favoured because of their clear and obvious navigation via a table of contents as well as the “next”/”previous”/”exit book” text labels.

We also needed to find solutions for the “add-on” elements embedded in the content: icons, LaTeX elements, JavaScript, Flash and SCORM, and files that were part of the Canvas course.


Icons associated with media or activities were simply stripped out, unless they had a specific pedagogical purpose. “Do less work” was the mantra.

Glyphicons had to be removed after the upgrade of the LMS to Moodle 3.5.

All those funny icons, symbols and emojis use Unicode. The issue with Unicode is it’s not displayed consistently across operating systems or devices. These elements were left in learning content but removed from headings.


Canvas exports any LaTeX as image. Fortunately it also embeds the original LaTeX code in the “image alt” attribute. These elements were changed by hand.


Some simple JavaScript interactions in Canvas were hand-crafted, designed to be compatible across devices. These had to be replaced with a Bootstrap panel.


Flash content was ported as-is, but with an additional line added about playback requirements.


Fortunately, SCORM packages could be ported as-is.


Canvas has excellent file management and exports all files. The trick is to re-embed the files in Moodle. Rather than use the Moodle File resource, files were embedded into hyperlinks.

Key learnings

It is not possible to simply ‘lift-and-shift’ content between platforms. Each platform conceptualises content differently forcing you to engage with the content to address the differences so it doesn’t compromise the student learning experience.

Every non-standard embellishment of content (like custom CSS) creates risk for projects like this. It simply creates more work or requires more significant investment in technical solutions.

Another surprising insight: the content issues for this project also hold true for the mobile app version of the LMS.

Leave a Reply

This site uses Akismet to reduce spam. Learn how your comment data is processed.