A minimal command-line app implementing the SuperMemo 2 algorithm.

The SuperMemo algorithm is designed to refresh your memory at intervals based on how well you remembered something.

Put question-answer pairs in a file. Everyday, feed the file to forgetful and it will quiz you on what you need to remember today. Based on your self-evaluation, forgetful will reschedule at an appropriate time in the future.


gem install forgetful


forgetful filename.csv [more filenames]

The CSV files are formatted very simply:


The interaction goes as follow:

forgetful: shows question
you:       press enter
forgetful: shows answer
forgetful: asks for self-evaluation
you:       type a number, press enter

You will be asked all of today's questions. After you will be asked, again, the questions for which you scored less than 4.

Self-evaluation values:

5 - perfect response
4 - correct response after a hesitation
3 - correct response recalled with serious difficulty
2 - incorrect response; where the correct one seemed easy to recall
1 - incorrect response; the correct one remembered
0 - complete blackout.

WARNING: Statistics are written back to the input file. This is a feature. Put your CSV files under source control to keep a history.


Copyright © 2011 Jonathan Palardy. See LICENSE for details.