#Syncing courses from ePortfolio using the DBSelf plugin
For the last couple of months, you may have noticed that both your in-progress and completed courses - non-legacy courses, that is - are synced from ePortfolio to learn.saylor.org. Syncing that information between the two systems turned out to be a bit of a challenge. Moodle (the LMS we use for learn.saylor.org) seems to be designed with more traditional schools in mind and, sometimes, this is at odds with our use case as a provider of free, open, and self-paced courses.
Moodle comes pre-installed with an enrollment plugin ("External database") designed to connect to an external database, read the enrollments, and enroll the appropriate students in each course. We initially tested this plugin but found it not quite working for our use case of having an open instance of Moodle where students can enroll and unenroll at will; the plugin creates a new enrollment type, called 'database', and proceeds to enr