Hacker News new | ask | show | jobs
by graboid 537 days ago
Nice. I also have an implementation in Rust (no public repository, private note-taking app). One low-hanging fruit (IMO) to improve on the base SM-2 is to more smartly pick the initial ease. I just took the average ease of "similar" mature items. Since for my use-case, spaced repetition items are embedded in notes, "similar" items meant items in the same note, or in notes that were tagged similarly.

These days I often wonder if I should just switch to FSRS [1], which Anki also switched to. It delivers better results. However, I am hesitating, since I understand SM-2, and it is easy to read the code while FSRS is complex and feels kinda black-boxy, which wouldn't feel right to me.

A quick note to the implementation above: I wonder if having that many answer options is worth it. It probably increases the cognitive effort needed for grading and I wonder if the increased precision in some cases is worth that. But who knows?

[1] https://github.com/open-spaced-repetition

1 comments

Is there an actual problem that you'd be solving by switching algorithms?
FSRS gives you the same retention for less work, or, equivalently, you can remember more things for the same amount of time worked.
While being more opaque & difficult to self-correct for. How much more work are we talking about? A theoretical couple of minutes in a year? Not worth it.
Using the scheduler estimates from the FSRS simulator [1], for desired retention held equal at 85%, I received approximately 20-30% improvements in workload upon switching to FSRS from SM-2. Even disregarding the "internal" improvements, the ability to reduce the number of parameters that require modification/present risk to performant scheduling is heavily reduced to only setting desired retention explicitly (a benefit in and of itself) as well as minor decisions (e.g. inclusion of suspended cards). Interpretability really is far less of an issue than efficiency, and frankly the achievements of the team behind FSRS (including their decision to make it publicly available) should be lauded.

[1] https://colab.research.google.com/github/open-spaced-repetit...