Portfolio

Level Up RN Spaced-Repetition Learning System

2022 – Present (spaced-repetition system: May 2022 – Mar 2023)

A custom spaced-repetition algorithm based on SM-2 that took a physical flashcard system to the web, followed by ongoing work on the learning platform and data warehouse.

Role: Developed the custom spaced-repetition approach.

Challenge

Level Up RN wanted to extend a highly effective flashcard-based learning system to web and mobile clients. The physical cards worked well with a rule-based repetition process devised in-house, and automation of that process was desired for the web-based product.

The goal was to augment the content with a proven spaced-repetition algorithm, integrated with a custom WordPress site hosting user accounts and flashcard content.

Solution

Starting with the original SM-2 spaced-repetition algorithm in pseudocode, a custom approach was developed that supported Level Up RN's features (sub-decks, shared cards, linear and non-linear study paths) while overcoming some of SM-2's original limitations and rigidity. The result was a flexible algorithm for delivering cards at the optimal spacing for effective learning.

The algorithm was delivered as a custom WordPress plug-in and theme in PHP. The plug-in gives front-end developers functions to control card flow, score cards and track progress. The plug-in is agnostic to WordPress and platform versions and has no side effects on WordPress's native tables. Activating the theme in a developer environment provides a test harness for all plug-in features.

Results

Learners can switch decks, change learning modes, cherry-pick specific cards, and study for any length of time, and the algorithm delivers the next card needed. Feedback and metrics are available at several levels of detail, and a deck can be reset for a fresh start after a break.

Ongoing work

Back to Portfolio