Wanted to start a new discussion specifically on this since it's an area we're hoping to improve considerably in 2.2.
We've already done two major overhauls of our flashcard selection / scoring algorithms since the original 2.0 came out on Palm/WM - "limit unlearned" in 2.0.1 and the new priority option / more tweakable Automated algorithm in 2.0.4 - but we're running up into some limitations now because our focus has essentially been too broad. Continuing to support the use of flashcard "scores" for not only SRS (repetition spaced) but "frequency adjusted" mode as well, and for other, manually-controlled test modes (card filters etc), has left us with a system that, while capable, can't do as good a job at the SRS stuff as a program designed specifically around that.
While the interval calculation algorithm now is pretty solid - tweak a few constants and you can get it to spit out almost the exact same intervals as Anki / Mnemosyne / Skritter / etc - there are some other ways in which those scores ought to be handled differently to reflect their primary use as repetition intervals.
Specifically, we seem to need:
Does anyone have any specific feedback / suggestions on any of these areas, or can you think of any other major way in which our software needs to change to better suit learners using SRS / better match the feature set of other SRS products?
We've already done two major overhauls of our flashcard selection / scoring algorithms since the original 2.0 came out on Palm/WM - "limit unlearned" in 2.0.1 and the new priority option / more tweakable Automated algorithm in 2.0.4 - but we're running up into some limitations now because our focus has essentially been too broad. Continuing to support the use of flashcard "scores" for not only SRS (repetition spaced) but "frequency adjusted" mode as well, and for other, manually-controlled test modes (card filters etc), has left us with a system that, while capable, can't do as good a job at the SRS stuff as a program designed specifically around that.
While the interval calculation algorithm now is pretty solid - tweak a few constants and you can get it to spit out almost the exact same intervals as Anki / Mnemosyne / Skritter / etc - there are some other ways in which those scores ought to be handled differently to reflect their primary use as repetition intervals.
Specifically, we seem to need:
- A more flexible definition of a "session" that allows new cards to appear mid-testing
- Better reporting - graphs etc designed specifically around spaced repetition
- Better history tracking, in order to facilitate synchronizing test history between multiple devices and sharing data with other flashcard programs (producing whatever statistics they expect)
- Some sort of option to automatically bury / stop testing on cards that are sucking up a lot of time
- A better system for presenting / handling newly introduced cards
- A system for calculating when to add new cards based not on the size of the pool but on the desired retention rate
- Better indication / control of cards' "pool" status in general
- Better review of recently incorrect cards, again intra-session
Does anyone have any specific feedback / suggestions on any of these areas, or can you think of any other major way in which our software needs to change to better suit learners using SRS / better match the feature set of other SRS products?