Michael Rowe

Trying to get better at getting better

I submitted this video as part of my funding application to the Shuttleworth Foundation in September last year. The application was unsuccessful so I thought I’d share it here.

This is an idea I’ve been playing around with for a few years: a hackabable, open-source, physiotherapy curriculum. Some of these ideas are also expanded in my series on an alternative physiotherapy programme at some point in the near future. Note that the descriptions below assume some basic understanding of version control.

In short, we could think of the curriculum as a project that gets hosted on a version control system like Github, where it represents what we might call a core curriculum. In this context, “core” doesn’t mean “central” or “important”; it just means the baseline. Or, the simplest version of what a physiotherapy curriculum might look like.

Using version control for the curriculum, anyone could download a snapshot of the entire curriculum (or smaller modules) that they could run locally. Any modifications that they make could be sent “upstream” to the core curriculum, meaning that over time, the core curriculum would grow in complexity as it started to include all modifications and refinements that are contributed by people anywhere in the world. But anyone would be able to fork any version of the curriculum that suited them, with any modules that were relevant in their context.

It’s possible to use distributed version control to create professional curricula that all students can edit and use for personally meaningful learning.

Tell us about the world as you see it. (A description of the status quo and context in which you will be working)

Higher education institutions have been around for more than 500 years and for good reason. They provide spaces for critical engagement with important social issues and knowledge creation with no expectation of a 10x return on investment. Instead of trying to replace universities with MOOCs, or whatever will be trending next year, why not improve them? There are many options for universities to improve what they offer, but as someone with some responsibility for coordinating an undergraduate professional degree programme, my two biggest frustrations are 1) managing the curriculum efficiently and effectively in a way that 2) improves student learning.

Curricula are complex systems of interacting variables (people, technology, outcomes, content, learning activities, and assessment tasks, for example) that play an important part in students’ success but we tend to think of them in quite simple terms. Curricula are given to students in bits and pieces over 4 years, in a variety of file formats that are disconnected from each other, and few of which bear any clearly defined relationship to each other. You can’t search across everything and they often can’t be edited. This ad hoc approach to curriculum management makes learning difficult for students, maintenance difficult for teachers, and sharing between universities more trouble than it’s worth.

What change do you want to make in the world? (A description of what you want to change about the status quo, in the world, your personal vision for this area)

Software projects are similar to curricula in that both are collections of files that contain mostly text. Both have users who rely on these files to achieve objectives. Both need regular maintenance and updates. But unlike universities, software developers have dedicated systems for managing their files. Version control systems (VCS) are used to track changes to files within projects, avoid conflicts between files, and for sharing those files with others. If the curriculum is just a collection of files, a university could use a VCS to improve curriculum management in a way that enhances student learning. There are two main ways I see this playing out.

Scenario 1

Incoming cohorts of students connect to the university server and clone (download) a copy of the entire curriculum onto their laptops. From now on, each students’ personal version of the curriculum will start changing in subtle ways as they work with it. And because every students’ computer is now also a curriculum repository they can sync it to every device they own (and that idea of ownership is especially important in this context). When the university releases a curriculum update, it changes the local version for every student and the VCS manages any conflicts. In addition, students can push their changes back up to the core curriculum, meaning that students become active participants in developing and updating the programme. Of course, all of this is moderated by the programme developers to ensure alignment with programme outcomes. And, an under-appreciated side-effect of this is that students can keep getting curriculum updates after they graduate, making this look a lot like higher education as a service (I’d like to explore this concept in more detail at some point).

Scenario 2

University B wants to start a new medical programme so instead of starting from scratch they connect to the server of University A, clone the curriculum, make some changes and then share their modified curriculum to their own students, possibly after it’s been translated. Curricula managed like this could be used to provide foundations for new programmes in other institutions and countries.

What do you believe has prevented this change to date? (Describe the innovations or questions you would like to explore during the fellowship year)

The problem that people in this space tend to focus on is how to make their learning content better than everyone else’s. Most “learning” platforms (MIT OpenCourseware, Coursera, etc.) simply provide structured pathways through a curated collection of content that they control. Openly licensed content has been around for a while but also misses the point that every student needs their own, personal version of the curriculum that they control as part of personal learning. A focus on content as the centre of learning relegates the student to being merely the “one who accesses content”.

What might higher education look like if all professional curricula were shared as if they were open-source projects that anyone could contribute to?

But content is the easy problem to solve. We need to provide students with learning experiences that empower them to actively work with ideas, which is difficult when the content is static, out of their control, and simply consumed. Even when you can download the content, it’s often in the form of Word, PowerPoint, or PDF documents, making it hard to edit and link concepts between modules and courses. We need to provide a curriculum that’s hackable.

I haven’t yet seen a project aimed at providing a professional, accredited curriculum that has the student at the centre. Personal learning happens when you find your own path through the curriculum with guidance from teachers. Students need a curriculum that provides a solid foundation which they can edit, is personal and local, and can be updated with corrections and refinements.

What are you going to do to get there? (A description of what you actually plan to do during the year)

I want to use existing technology to make it easy for every student in a university programme to hack their own personal curriculum, starting from a shared copy of the original. The following work is needed to create a proof of concept:

  1. Convert a module from a university curriculum to markdown (a plain text file format that converts to HTML for beautiful layout and presentation)
  2. Create a project repository on Github to host it
  3. Modify an open-source text editor (e.g. VS Code) that integrates with Github. This modification should hide the technical details of working with a version control system. VS Code is built with web-technologies, making it relatively easy to modify and already has a community-driven ecosystem providing some of the functionality that a hackable curriculum will need.

This proof-of-concept should enable someone to:

  1. Install the modified code editor on a personal computer
  2. Connect to Github and download the module
  3. Complete a tutorial that teaches them how to use the system
  4. Personalise the editor with themes
  5. Edit content in the module
  6. Install plugins that enhance learning e.g. a spaced repetition flashcard system for retrieval practice
  7. Download module updates from the repository on Github that doesn’t corrupt the local version (Git manages conflict resolution well)
  8. Submit changes back to the online repository

What challenges or uncertainties do you expect to face?

I don’t believe that the challenges in this project will be technical because almost all of the technology already exists as a collection of open-source projects, and can therefore be used immediately at no cost. The challenges in this project are likely to be cultural.

University academics are conservative by nature and asking them to change their way of working requires a cultural shift. So I’d start by making the point that I don’t want to disrupt anything. This project aims to make it really easy for an entire academic department to share their full curriculum with students so that they can work with it in ways that make learning truly personal. Academics don’t need to know how the technology works, only what problem it solves for them. So I’ll focus on how this approach to curriculum management makes operational administration less painful and time consuming, which is something that most university lecturers would appreciate.

The user interface of the VCS will be difficult to convert into something that lecturers feel comfortable working with. Version control systems aren’t conceptually challenging but most lecturers aren’t going to learn how to do “code commits” and neither will most students. Hiding the technical details of version control behind a user-friendly interface that “speaks” the same language as educators will be an important challenge to overcome.

What part does openness play in your idea?

All of the technology necessary to implement the project (Git and VS Code) is open-source, making it easy to start prototyping immediately without needing permission from anyone.

It’s important to recognise that the institutional content belongs to the university and part of this process would include getting institutions comfortable with the idea that sharing their curricula is not only beneficial for students but for the institution itself.

Using plain text files means that any curriculum file can be read and edited on any digital device, now and 20 years from now. So anyone can change any part of the curriculum without needing to run a proprietary application (e.g. MS Word, Adobe). Plain text makes the system future proof.
This project will include an open-source code editor that can be modified by anyone, that connects to a server using an open-source protocol (Git), to clone part of a curriculum that exists as plain text, is platform and device-agnostic, and enables the sharing of ideas between students, departments, and institutions.

Ideally, I’d like to see a scenario where institutions make their entire curricula available with an open-access license, allowing anyone to fork any curriculum for personal and professional development. I imagine anyone being able to have local copies of medical, arts, and computer science curricula on their own computers, that they can edit and make their own, and which can also be shared and redistributed with anyone else.


Share this


Discover more from Michael Rowe

Subscribe to get the latest posts to your email.