I have started to compile a list of common issues and problems I see in the various flashcard programs I have been reviewing. I have created a page which will gather this information for developer reference: The Issues Page
The first problem I write about on that page, I have called the “Cookie Monster Flaw” and so far I found it in both Mental Case and the “burn wheels” of Mindburn.
In the memorable words of a failed Sesame Student, “Me not continually review cookies at increasingly spaced intervals, me eat the cookie.” This flaw is, of course, exhibited by any flashcard software which offers no interval study but it is included here because it is also a problem with some approaches of applications which actually do support interval study: If an interval study system offers a finite number of interval stages, at which point the interval study for a given unit of information is said to be completed, it is guilty of the Cookie Monster Flaw.
The idea for this comes from the practice, prevalent among some students in places such as China, Korea and Japan, of learning vocabulary directly from a dictionary. In an ritual act of symbolism, once all the words, or chosen words, from a given page of a dictionary have been “memorized” the page is ripped out of the dictionary and consumed. My experience, admittedly not backed by evidence from a full empirical study, suggests that thus physically digesting the ink and highlighter fluid of memorized words does not in fact have much of an impact on long-term retention of vocabulary.
Developers should keep this principle in mind:
Even native speakers forget their own languages during extended periods of disuse; no interval study system should be designed in such a way that implies the complete and final memorization of any unit of information.
Managing Keyboard Inputs Methods
One problem that makes it difficult to quickly and efficiently enter large numbers of vocabulary directly into flashcard software if you are dealing with non-Roman languages is the fact that the user has to keep switching the keyboard input back and forth between English and the other language, whatever it may be. This is a problem for all the flashcard applications I have seen so far, with the exception with some older versions of iFlash.
I’m wondering if this is a completely insurmountable programming problem in OS X or if perhaps the Cocoa programming API does offer some way of overcoming this issue.
Today I found this in the reference for the NSTextFieldCell class:
setAllowedInputSourceLocales – Sets an array of locale identifiers representing input sources that are allowed to be enabled when the receiver has the keyboard focus.
allowedInputSourceLocales – Returns an array of locale identifiers representing input sources that are allowed to be enabled when the receiver has the keyboard focus.
I don’t know much about Cocoa programming but I wonder if these two things (OS X 10.5) or something similar can be used to help remedy the problem?
Also, programmers might want to read over this posting about keyboard events and non-Roman languages.