Java Runtime Environment 6 (JRE1.6) may be downloaded and installed from Sun's Java Download page.
MobilePhrasier was originally developed and tested using a phone from Asus: unfortunately, they don't seem to make mobile phones any more. It has now been tested on Sony Ericsson phones (W380 and W395), which required a number of improvements. I have tried to test it on a Motorola phone, but Motorola seems to have a security policy which prevents uncertified applications from accessing the memory card: i.e. avoid Motorola if you want to run Java freeware applications since the developers are unlikely to have been willing to pay for a certificate.
First, the phone must have Java. Secondly, there are optional Java packages, e.g. the one for reading files from the memory cards, that need not be present even if the phone has Java support. However, unless the phone is very old, neither of these should be a problem with respect to MobilePhrasier.
Some phones, e.g. Motorola, may come with security restrictions that limit the access to the memory cards. In some cases, when phones come tied to particular carriers, they may have added restrictions not inherently in the phone. This might allow MobilePhrasier to run, but not to read from or write to the flash card practice session file.
Last but not least, each brand, even different models, come with different implementations of Java: e.g. some commands made Sony Ericsson W380 to freeze although it ran well on W395. In some cases, these may be phone bugs, while in other cases it may just be differences in implementation that causes unexpected behaviour in particular cases.
The principle behind flash cards is fairly simple: while you are likely to forget the contents of a flash card after a while, by repeated practice you will gradually come to remember it well. The more times you practice, the better you are likely to remember what you have studied. However, since most of us have limited time to study, we wish to learn as much as we can. as fast as we can, spending as little time as possible on the studies.
An important method in the use of flash cards is that of spaced repetition. This is the idea that time is best spent by repeating each flash card after an interval of time, where this time interval increases as you are starting to remember the contents of the flash cards. Research indicates that the optimal time to repeate a flash card is before you are about to forget it: this minimizes the time spent on each flash card.
Although I had this method in mind when implementing Phrasier, the actual algorithm I implemented was fairly ad hoc. It does not attempt to estimate the optimal time for repetition, but instead tries to order the cards so that cards you need to practice and have not practiced very recently are practiced first. In order for this to work well, you may want to limit the number of new vocabulary terms you add to your practice session: only add more when you are starting to know the ones already included for practice.
One important word of warning is to remember that flash cards are only an aid to the study: it is a useful addition to reading text books, listening to audio files, etc., but not a substitute. In particular, vocabulary flash cards may help practicing individual terms, but are no substitute for complete sentences or texts where the terms are placed in context. While flash card practice may aid you in practicing fast recognition and recall of terms, this is only one several abilities required in improving your reading, listening and talking skills. The combination of several different techniques should be seen as complementary rather than ones competing for your time: e.g. reading or listening to a text will let you hear words used in context which in turn may help you remember the individual terms more easily.
Phrasier and MobilePhrasier both store the following information about each term which has been imported into a training session:
When you give feedback on how well that term is known, this feedback is on a scale from -1 to 1: the
five step scale uses -1, -0.7, 0, 0.7 and 1. The learnt index is then increased by
where adjust is the feedback number and learningspeed is a global parameter presently set to 0.5. Thus, while a feedback of 0 will make the learnt-index move towards 0, and a feedback of 0.7 or -0.7 will make it move towards 1 or -1 approximately, the feedbacks 1 (or -1) will make it increase (or decrease) without bound although with decreasing speed as the learnt-index gets higher (or lower).
Without going into the tiny details, it uses the learnt-index, the importance and the time since last practiced to compute a queueing index (the Q-index). If you select to view the entire vocabulary of the practice session, you will also be able to see the Q-index. This Q-index is higher the higher the learnt-index, lower for higher importance terms, increased for terms has been recently practiced, and increased further for terms that have been practiced within the same session (since you last opened the practice session). There is a small random factor added to this, but it has little influence unless terms are very closely rated. It then queues the terms selected for practice by increasing Q-index.
The main idea is similar to what you find in several other programs, although the complexity of the underlying model varies greatly: some have very simple methods for selecting terms, others have more advanced models. The method I have implemented is a somewhat ad hoc method, but one which seems to work fairly well.