I don't have to review 4000 flash cards every day. Instead, I only need to review a handful, sometimes less than a dozen, because a software spaced repetition system (SRS) predicts when I'll forget each flash card and makes me review it before I forget [1]. How can a program predict when I'll forget something? The program, or rather its author, knows about the forgetting curve, which means that people forget new memories faster than they forget old memories. For example, if you just learned the Pythagorean theorem today and you don't review it again, you'll probably forget it by next week, but if you remember it from high school, you'll probably remember it for at least the next year.

For a spaced repetition system to work, you must tell it how well you remember a fact each time you answer its flash card (i.e., you grade your memory). The program uses your grade to predict when you'll forget that fact. Each time you remember something correctly, the program schedules it further away. For example, if you tell it you learned the Pythagorean theorem today, it makes you recall it tomorrow; if you answer correctly, it makes you recall it in six days, then in 12 days, then 20 days, and then 30, 50, 100 days, and so on. Within the first 18 months, you may only need to review each card 12 times. For 4,167 flash cards, that's 50,000 reviews, which sounds like a lot but it's an average of only 90 reviews a day to keep more than 4,000 flash cards memorized. That's how I reviewed just three flash cards a minute, for 30 minutes a day for 18 months to memorize more than 4,000 flash cards. And I don't intend to stop: In 30 years, with the same routine, I plan to memorize (and keep memorized) more than 100,000 flash cards.

Read More at Ubuntu User Magazine (PDF)