Morea Framework

14 views
Skip to first unread message

philipm...@gmail.com

unread,
Aug 15, 2019, 1:38:48 PM8/15/19
to CSSPLICE Curriculum Packaging Working Group
Greetings, all,

My name is Philip Johnson and I am a Professor of Computer Science at the University of Hawaii.  I am posting here because I thought this group would find my own "curriculum materials packaging" work of interest.  It's called the Morea Framework(https://morea-framework.github.io/) and I built it because the Learning Management System available at my university sucks.  You can check out the Morea home page for a quick overview of its features; what might also be of interest is an extension I later built that allows you to represent multiple courses in a curriculum, plus the prerequisite structure between courses at the module, rather than the course level.  For example, a partial implementation for the curriculum at my department is here:


Here's an example of the prereqs for an ICS 311 module:


There are a couple of cool features that arise from representing module-level prerequisites:

(1) Students can easily review material from prior courses in a "just in time" manner, and Professors can avoid re-lecturing on old topics because the students "forgot". 

(2) Perhaps more interestingly, if a module in an introductory or "core" course is never required as a prereq for a later course, then maybe it's not "core" for the degree program after all.  Conversely, if several upper level courses are creating very similar modules, then perhaps this material should be "refactored" and pushed down into the "core" courses as a module.

While I have used Morea for all my courses for quite a few years now, and a few other Professors in my Department also use it, it has not exactly been wholeheartedly embraced.  I have a number of theories about why this is so, but will spare you my conjectures for now. 

Anyway, I hope this provides a data point for your curriculum packaging materials group.

Cliff Shaffer

unread,
Aug 16, 2019, 6:19:43 PM8/16/19
to philipm...@gmail.com, CSSPLICE Curriculum Packaging Working Group
Thank you for the information! I took a quick look through this. Can someone familiar with any of the other description frameworks say how these compare?
             -- Cliff


--
You received this message because you are subscribed to the Google Groups "CSSPLICE Curriculum Packaging Working Group" group.
To unsubscribe from this group and stop receiving emails from it, send an email to cssplice-curriculum-packagi...@googlegroups.com.
To view this discussion on the web visit https://groups.google.com/d/msgid/cssplice-curriculum-packaging-working-group/93bc71b1-1dfe-4dff-aba6-2afd221cebcd%40googlegroups.com.


--
Cliff Shaffer                                               
Professor and Associate Department Head for Graduate Studies
Department of Computer Science              Phone: (540) 231-4354
Virginia Tech, Blacksburg, VA 24061          WWW: www.cs.vt.edu/~shaffer

Cory Bart

unread,
Aug 19, 2019, 9:30:04 AM8/19/19
to CSSPLICE Curriculum Packaging Working Group
I don't think I can draw much of a comparison, but I wanted to share a few thoughts while I have the time:
  • I very much approve of the careful articulation of learning objectives. Clearly you've read up on them!
  • I approve of the division between "passive" and "active" materials. I've been working on a hierarchy/taxonomy of materials and that does seem to be one of the spectrums. Things do get a bit fuzzier when you start looking at things like interactive visualizations and ungraded self-paced activities. But this is probably an effective system for helping instructors navigate, which is the real goal of the site.
  • This interface highlights one of the potential solutions to the "multiple view" problem - we often want to slice our curricular materials in different ways. Sometimes, you want "all the <readings>" in one place. Other times, you want to have "all the <predicate logic> materials" in one place. And frequently, you want "an ordered list of the materials". Thinking about things like spaced repetition and tracking learning curves, some folks might even want "an ordered subset of <relevant subquestions>" or something. There's probably other ways we want to view into our materials, and a simple filesystem view can only accommodate one at a time. Having a web interface is the solution used here, but comes with a tool requirement (potentially conflicting with the LMS). 
  • Questions for Phillip: when an instructor is teaching, say, Algorithms, do you have a process for sharing instruction reference solutions with them? Do you have a problem keeping materials from having their answers published in the wild? Do you have any internal process for tracking common student misconceptions or mistakes?
  • Another directed at Phillip: I, for one, would be very much interested in your theories about why adoption hasn't surged. I can speculate, and I'm sure there's many possible theories, but there's no harm in hypothesizing about what barriers we're seeing in technology adoption.

On Friday, August 16, 2019 at 6:19:43 PM UTC-4, Cliff Shaffer wrote:
Thank you for the information! I took a quick look through this. Can someone familiar with any of the other description frameworks say how these compare?
             -- Cliff


On Thu, Aug 15, 2019 at 1:38 PM <philipm...@gmail.com> wrote:
Greetings, all,

My name is Philip Johnson and I am a Professor of Computer Science at the University of Hawaii.  I am posting here because I thought this group would find my own "curriculum materials packaging" work of interest.  It's called the Morea Framework(https://morea-framework.github.io/) and I built it because the Learning Management System available at my university sucks.  You can check out the Morea home page for a quick overview of its features; what might also be of interest is an extension I later built that allows you to represent multiple courses in a curriculum, plus the prerequisite structure between courses at the module, rather than the course level.  For example, a partial implementation for the curriculum at my department is here:


Here's an example of the prereqs for an ICS 311 module:


There are a couple of cool features that arise from representing module-level prerequisites:

(1) Students can easily review material from prior courses in a "just in time" manner, and Professors can avoid re-lecturing on old topics because the students "forgot". 

(2) Perhaps more interestingly, if a module in an introductory or "core" course is never required as a prereq for a later course, then maybe it's not "core" for the degree program after all.  Conversely, if several upper level courses are creating very similar modules, then perhaps this material should be "refactored" and pushed down into the "core" courses as a module.

While I have used Morea for all my courses for quite a few years now, and a few other Professors in my Department also use it, it has not exactly been wholeheartedly embraced.  I have a number of theories about why this is so, but will spare you my conjectures for now. 

Anyway, I hope this provides a data point for your curriculum packaging materials group.

--
You received this message because you are subscribed to the Google Groups "CSSPLICE Curriculum Packaging Working Group" group.
To unsubscribe from this group and stop receiving emails from it, send an email to cssplice-curriculum-packaging-working-group+unsubscribe@googlegroups.com.

philipm...@gmail.com

unread,
Aug 19, 2019, 3:02:14 PM8/19/19
to CSSPLICE Curriculum Packaging Working Group
Thanks Cliff and Corey for the comments.  Here's some additional perspective:

Separating curriculum materials into Passive and Active is an attempt to help instructors ensure that, for each Module and associated set of Learning Objectives, students have an adequate chance to practice the concepts, and that there is some balance between the two kinds of materials. Over time, I have found that I will consciously prune the initial set of Readings (for example), in order to make sure that students have enough time for the active materials. Or I will realize I need some additional Active assignments.

There is more than just a "tool requirement" to get (for example) multiple views. When you create Morea sites, each file has metadata indicating that its contents represents a Module, Objective, Reading, Experience, or Assessment. This is key: Morea is opinionated, and you have to buy-in to its representational system. The "tool requirement" also means that it's trivial to separate content from presentation.  This was a big selling point for one of the professors using the system---he was happy to represent his courses using Morea because he figured if he didn't like the tool, he could build his own replacement.  (And, in fact, he built his own command line tool (http://morea-framework.github.io/morea-lintui/) to facilitate his own site processing requirements.) I am undoubtably biased, but I don't see how anyone can make significant improvements to curriculum organization without first deciding on a set of representational primitives (i.e. M,O,R,E,A) and then building the curriculum contents within that representation.  MOREA might not be the right or best set of primitives for this group, but it's worked well for me for quite a few years now. 

Sharing reference solutions in Morea is done in the following way. First, the GitHub repo hosting the site must be made private.  That means that access to the source files can be controlled by the instructor. Second, within the source branch of the repo, any directories named "_ignore" are not processed when creating the publicly available, HTML version of the site. So, let's say you have a module named "Foo" whose source curriculum materials are in a directory called "foo/".  You can create a "foo/_ignore" directory, put your reference solutions in there, and then they can be managed as part of that module without being accessible from the web.

Regarding having answers published in the wild: I don't have a big problem with this issue, for several reasons. First, for most of my course, I require students to build the solutions to problems as part of a private GitHub repo, which means (a) access to it during the course is restricted, and (b) commit timestamps and contents can be used to figure out when work was done. Second, I don't reuse certain important assignments from semester to semester, so even if a student has access to old problems, they are not different in character from the homework assignments they already have access to. Third, I actually like having related problems available in the wild for my course, because I think it helps the learning process. YMMV.

My internal process for tracking student misconceptions and mistakes is informal and managed in the form of an FAQ/AMA document which gets updated from semester to semester and published with the course.  Here's an example: http://courses.ics.hawaii.edu/ics314s19/morea/meteor-2/reading-meteor-bsogata-ama.html

Finally, my "theories" about barriers to Morea adoption. I've had lots of ideas about this over the years, but here are two to get you started:

(1) Using Morea requires elementary knowledge of Git, GitHub, Markdown, and the command line. Gaining this knowledge might be too taxing for some faculty.  It would be straightforward to significantly reduce this issue by creating a desktop app  (say, in Electron) that removes all the Git/GitHub and command line knowledge requirements, but I have zero motivation to build it.

(2) Using MOREA means thinking more deeply about the pedagogy than just picking a textbook, downloading the PPT from the publisher's site, and assigning homework problems from the back of each chapter. For at least some universities, the incentive structure is designed such that all time spent on undergraduate teaching is non-optimal. 

Philip


Reply all
Reply to author
Forward
0 new messages