I am excited to be part of SFU’s DEMOfest this year, where I will be presenting and discussing with my fellow educators the advantages of using the Canvas LMS with Grav:

Canvas Assessment Strengths

  • Assignment submissions and rubrics
  • Surveys, quizzes, and graded discussion forums
  • Multi-course calendar and gradebook
    A safe place for student assignments and data, and where most of our students are!

Grav Content Management System Strengths

  • Free open source software (FOSS) project
  • A modern flat-file (no database) CMS, which supports custom page types and modular content
  • The platform-independent format Markdown is supported, and pages remain as individual files
  • Fully extensible, with support for HTML, CSS, Twig, JavaScript, Google Fonts, YAML, etc.
    For tech-savvy educators a modern and flexible platform under their full control!

Continue Reading

I’ve been once again feverishly working in the open on the Fall 2017 Course Hub (built with my Grav Open Course Hub and using a flipped-LMS approach, naturally!) for SFU CMPT 363 so that potential students can better self-assess course fit before our first class meets in-person on Sept 6th.

The year brings some changes, with the addition of an individual component (reflective learning log) to the two group assignments and an expansion of the individual usability assessment assignment. Students will research and design potential user experience improvements for an open source project of their choice.

Here is the list of apps I am using to reach my pedagogical and student/facilitator experience goals this term (with lots of open source goodness):

Grav CMS
GitLab (hosted at sfu.ca)
GitHub Desktop
Canvas LMS

You can check out the nearly complete Open Course Hub at paulhibbitts.net/cmpt-363-173/.

CMPT-363 Fall 2017 Course Hub Figure 1. CMPT-363 Fall 2017 Course Hub

A collection of videos demonstrating how Grav with Git Sync can bring an efficient and flexible Markdown content workflow into Canvas LMS (or any other system supporting embeddable Web pages).

This post was inspired by the very informative July 14th BCcampus Canvas LMS session with Stan Wendt and moderated by Clint Lalonde.

If my reading of the tea leaves is correct, there could be a big uptake of the use of the Canvas LMS in Canada with news of a possible hosted in Canada cloud offering. As a sessional faculty member of the Computing Science Department at Simon Fraser University I’ve been using Canvas for the past several years and I thought it might be helpful for other potential users of Canvas to share my experiences so far.

Continue Reading

I’ve been feverishly working in the open on the Fall 2016 Course Hub (built with my Grav Course Hub and using a flipped-LMS approach, naturally!) for SFU CMPT 363 so that potential students can better self-assess course fit before online registration starts on July 4th.

A significant change to the course this year is that students will research and design potential user experience improvements for an open source project of their choice. Also, the entire course outline is a structured as a series of questions, which will be examined, discussed and experienced as the course proceeds.

You can check out the under construction Course Hub at paulhibbitts.net/cmpt-363-163/.

I am putting together a very brief presentation about flipping an LMS with an open + collaborative platform. Here is what I’ve got so far:

Flip it Good! Flipping the LMS with an Open + Collaborative Platform
Do you have unmet pedagogical goals due to the constraints of your current LMS? Do you want to have a better experience for your students and yourself? In preparing his Fall 2015 CMPT-363 (User Interface Design) course at Simon Fraser University, instructor and interaction designer Paul Hibbitts faced these same challenges. His solution was to ‘flip the LMS’ by designing and developing an alternative front-end to the institutional LMS Canvas (http://paulhibbitts.net/cmpt-363-153/). In this approach, the LMS was used only for elements it was best suited for (i.e. student records, grades, etc.) with all other elements handled by an open extensible platform completely under his control.

Based on the positive feedback of his students and his own experience, he decided to create an open source course hub built with the CMS (Content Management System) Grav to help other instructors get started in flipping their LMS with an open + collaborative platform.

In this presentation Paul will share his flipped-LMS approach and introduce his ready-to-run open source Grav Course Hub for use by other educators.

In-progress Slides

I am excited to be presenting my approach of a Flipped-LMS at Simon Fraser University’s DEMOFest 2015 on November 24th.

Here is the description of my session:

Flipping the LMS: Benefits and Lessons Learned of Using an Alternative Front-end to Canvas

Let’s be honest, as course facilitators we want to deliver the best possible online learner experience but at the same time make our own experience as convenient as possible. LMSs, such as Canvas, provide some great pedagogical elements but often fall short when it comes to such things as streamlined course updates, content reuse, easy customization, and providing a truly open platform. The solution? Flip the LMS!

A flipped-LMS is an approach where an open platform, chosen by an instructor, provides an alternative (and preferably collaborative) front-end to their institutional LMS. In this presentation Paul will demonstrate how this approach can produce significant improvements to both the student and instructor experience. Elements from Paul’s personal toolkit to be highlighted will include Canvas (naturally), the open source flat-file CMS Grav, and GitHub Desktop.

Presentation Slides

In this article I will describe the workflow details for my Fall 2015 Simon Fraser University CMPT-363 course companion, which meets the requirements first outlined in the LinkedIn article Online Course Companions: Workflow Requirements for (us) Instructors.

The one element that makes everything possible is the open source CMS Grav, which in addition to empowering me to provide a great user experience for my students, uses a non-database approach in which content and code are stored separately as text files (often referred to as a flat-file CMS). Within content text files it is possible to use plain text, Markdown and HTML. Grav also supports modular content, which means content can be displayed in multiple areas and contexts but only needs to be stored once. Think content blobs vs. chunks.


  • MacBook Air (primary work platform)
  • Surface Pro 3 (secondary work platform)
  • Samsung Galaxy S5
  • ASUS Nexus 7 Tablet


Workflow (Mac or Windows)

  • Edit one or more course companion files in a text editor (e.g. Atom or any other of your choice)
  • Preview locally within a Browser using MAMP (optional step)
  • Review and commit changes to course companion GitHub repository via GitHub Desktop

Atom Text Editor Figure 1. Adding a new article link in the Atom text editor (modular content that will be displayed in multiple areas of the site).

GitHub Desktop Figure 2. Previewing and then committing changes to the GitHub repository.

Once the changes have been pushed to the GitHub repository then Deploy can be configured to automatically get a notification and update the course companion site via SFTP. Priceless.

If I need to make a quick update with any mobile device I can do so via the GitHub website, and these will later be synced down to all my GitHub Desktop clients. These changes would also be automatically updated on the course companion site by Deploy via SFTP.

Let’s talk about two critical issues: time and trackability. In terms of time, I can now make simple changes to the course companion in a fraction of time (e.g. 30 seconds) that would be required by many database-driven LMS’s such as Canvas or Moodle. This is really important, as the faster (and easier for that matter) course companion updates are the more likely that us instructors will continue to make improvements throughout the term. Having each and every change made to the course companion be trackable, and essentially reversible, not only helps minimize possible errors but helps decrease the anxiety that often comes along with frequent (and not easily reversible, esp. with regards to code changes) site updates by the instructor.

Awesomeness on Top of Awesomeness If the above is not enough benefit for this workflow, here comes the kicker: since all changes are flowed through GitHub, the entire course companion is not just in the open but also truly collaborative. Students can suggest changes, which are then previewed by the instructor and immediately applied or be the start of a further dialog with a student. In other words, a course companion (aka learning platform) that students and instructors can both contribute to and improve over time. And this is not just about content, but also code (i.e. functionality of the site) if your students are familiar with common Web languages, as my Simon Fraser University Computing Science students are. In fact, I’ve now come to the conclusion that this should be a baseline requirement for any learning platform of mine from now onwards.

CMPT-363 Course Companion Screenshot Figure 3. A course companion page with a “Edit this page on GitHub” link to seamlessly initiate the process of submitting changes via GitHub.

Well, there you have it. If you are interested in learning more about this workflow, or about my experiences of using Grav CMS as a means to support a flipped-LMS approach (in my case with the Canvas LMS), please get in touch.