Long-term memory allows us to retail material learnt over a long period of time. It has been noticed that in order to aquire long-term knowledge, you have to periodically come back and re-learn (or repeate) the material.
In the early 70's a German psychologist named Sebastian Leitner devised a learning system that makes selective learning possible with less effort than the traditional method of studying a set of flashcards sequentially.
Leitner's system consists of a cardboard box separated into a number of compartments. The compartments are filled with flashcards and the flashcards are moved from one compartment to another, according to the current level of knowledge. When a flashcard is answered correctly it is promoted to the next compartment. When a flashcard is answered incorrectly it is demoted to the first compartment.
When studying the flashcards in a given compartment you examine the flashcards sequentially and indicate success or failure.
All flashcards that were answered correctly are promoted to the next compartment. Flashcards that were not answered correctly are demoted to the first (or top) compartment.
Flashcards in the top compartment remain in the top compartment if you failed to give the correct answer.
Flashcards in the bottom compartment remain there if you gave the correct answer.
A cardfile is complete when all flashcards are in the lowest compartment. Each flashcard needs to be consecutively answered successfully the same number of times for all flashcards to be in the final (bottom) compartment.
The result of the Leitner system is that you are allowed to prioritize your studying, focusing on the flashcards that are troubling you when you are keen and reviewing the easier flashcards when you want a lighter study session.
Additionally Granule uses built-in scheduling system to assure your reviews of a given cardfile are properly staged.
Granule implements Leitner system with its CardBox concept. CardBox occupies the left pane of the MainWindow. A CardBox has five partitions. Each partition of the CardBox is filled with flashcards from the card Decks.
All five partitions are saved to a cardbox file, CardFile, with .cdf extention. It is a simple XML text file that can be viewed with any text editor. Its DTD is stored in /etc/xml/granule/cardfile.dtd.
A CardFile is a UNIX file that stores flashcards in XML format. A CardBox is a GUI component that represents CardFile in Granule. |
Each of the CardBox icons is a clickable button. Clicking on one brings up DeckPlayer (Section 2.2.2) dialog to study the flashcards.
You can only have one CardBox open at any given time. |
Each partition tells you how many cards it has, and how many cards are expired and ready for you to revisit (bottom right). The "Stop light" circle in the top left corner visually indicates how many flashcards in the partition are overdue.
Table 3-1. Expiration legend
Color | Explanation |
---|---|
grey | 0% - 25% cards expired |
green | 26% - 50% cards expired |
yellow | 51% - 75% cards expired |
red | 76% - 100% cards expired |
Instead of storing actual flashcards, CardBox partitions store dynamic links to the flashcards in Deck files. You can add all or individual cards from a Decks to a CardBox. If you decide to delete a Deck file, all of the broken links will be erased from the CardBox.
Thus you can create a multitude of different lessons in a form of CardBox files from a pool of Decks. When you load a CardBox file, Granule loads all Decks that are referenced by the links.
To create a new CardFile, choose CardFile->New menu item.
The title of the MainWindow dialog will change to "Untitled".
To add a Deck to the CardBox, load the Deck into Granule first (see Section 2.4 for details). For the purpose of this discussion, we are going to load "Lesson_01.cdf" created in Section 2.2.
Select the "Lesson_01" Deck from the DeckList and add it to CardBox1 (the top partition).
Granule adds all of the cards from the "Lesson_01" Deck to the top partition of CardBox "Untitled" and adjusts the count of flashcards in that partition.
The same can be achieved with dragging the Deck selection and dropping it over one of the partition icons of the CardDeck.
You can also add any individual flashcard from any loaded Deck. For that, go to the DeckView dialog of the selected Deck by choosing Deck->Play/Edit->Edit button, select desired flashcard and click on Add to Box 1 button. The selected flashcard will be added to the top partition of the CardBox.
To begin studying flashcards in any of the five partitions, click on the partition's box icon. You are presented with DeckPlayer dialog with several of its GUI elements shaded out.
First thing to notice is that you cannot shuffle cards any more. You are to visit each card in a sequential order. Each time you see a flashcard, you have to tell Granule whether you know it or not. The two icons in the bottom control bar are for this very purpose.
Pronounce the Question word (if you have sound dictionary installed).
Click on the thumb up icon to inform Granule that you know the flashchard.
Click on the thumb down icon to inform Granule that you didn't know the flashchard.
The answer validation entry bears the same functionality as it does in the short-term memory learning mode with Decks.
In this mode, DeckPlayer's play controls also have the following keyboard bindings:
Table 3-2. DeckPlayer's CardBox Study Mode Keyboard Bindings
Action | Key(s) |
---|---|
Play the sound | Up_Arrow |
Flip the card | Down_Arrow, Spacebar |
Don't know the flashchard | Left_Arrow, 'n' |
I know the flashcard | Right_Arrow, Enter, 'y' |
Your answer moves a flashcard either to the next partition or back to the top partition.
To save the CardBox to a CardFile, choose CardFile->Save menu item, and specify the file name. In our example, we are going to call the file "Homework_01". A file /path/to/Homework_01.cdf is created.
You only need to save a CardBox when:
a new CardBox has just been created.
more flashcards from new Deck(s) has been added to the CardBox.
For day-to-day learning operation, saving CardBox is not required. Granule automatically saves all card movements on your behalf.