The program vt.exe ------------------ 'vt' is based on the principle of a flash-card-file. For a computer user it is a natural thing to put such a flash-card-file into the computer and use a computer program to learn the vocabulary. But after using a flash card file for many years and having developed a well working way of learning with it, the available computer programs on the market were a disappointment. That's why 'vt' has been created. Meanwhile many more programs are available and some of them go a little bit in the direction of 'vt', but generally they seem only useful for a small number of words and their main feature seems to be that these words are asked in random order and if there is something like more or less 'difficult' words they have to be marked explicitly and time consuming. The advantage of 'vt' over most other programs is the clear concept behind it. Roughly it works as follows: When a word is newly entered, it starts at the lowest stage, which means, it should be repeated every day or, if possible, even more than once a day. When the word is kept in mind, it goes on to the next stage, which represents a longer interval. Next time the word is asked it will go one stage up again, if it is still remembered. And as long as a word is remembered, the intervals become longer and longer. If a word has been forgotten, it will have to be repeated the very next time and therefore goes back to the lowest stage. Such a word may, of course, be remembered more easily than a new word. Therefore it can jump stages and progress faster than the other words. Features -------- - Intervals for repeating known words can be chosen individually for each file. - Trainer can be operated by keyboard or mouse buttons (for 'right' or 'wrong') and offers the possibility to modify the words and switch to a search facility. - Reverse Trainer displays the translations first and asks for the words, that have been done in the Trainer before. - An easy way to enter new words. - Import (from text or data file) and export features. - Information about how many words there are in which stages. - A search facility lets you search for whatever you like in your file. - Exit with or without saving. How to start? ------------- To start the program enter 'vt' at the command line. You will be asked to enter a file set name. A file set consists of two files, one containing the words and associated data (.dat) and one containing the stage table (.stg), i.e. a set of numbers representing the days after which a word should be repeated. If you enter 'span' for example, the program will read or create two files with the names 'span.dat' and 'span.stg'. You can also start the program by entering 'vt' and the file set name as a parameter (e.g. 'vt span'). In this case you won't be asked to enter the fileset name. Choose your own intervals ------------------------- In case 'span.stg' does not exist, you'll get the following display: stage table not existing ! Enter the repetition periods in days in ascending order (Allowed range from 0 to 999 with space between the values. Press Enter when finished.) Here you have to enter the steps after how many days known words should be repeated, like, for example: 1 2 3 4 6 9 15 30 90 300 Up to 19 values can be entered (a maximum of 20 stages is possible, but the lowest stage is automatically set 0 days by the program). In this example a newly entered word will be offered every time you run the program until you know it (lowest stage is 0 days). Then again next day (next stage is 1 day) and if you still know it, two days later, and then 3 days later etc. The program will read the entered values and fill the remaining stages up to 20 with the highest value. That's because some time later you might want to write different values into your stage table (which can be easily done by deleting the '.stg' file - the program will then ask you to enter the values when it's started). If your new stage table contains fewer values than the old one, there will be some words in your vocabulary file that are in a higher stage than the highest in your new stage table. Therefore all possible 20 stages must have a value. Creating the vocabulary file ---------------------------- In case there is no vocabulary file (e.g. span.dat) for the current file set, you'll get the following display: Vocabulary file not existing ! Would you like to import words from a file [f] or enter it in this program [p] ? If you choose 'f' you will be asked to enter the name of the import file. The import file has to be a text file with the following format: ----+----1----+----2----+----3----+----4----+----5-..-8----+----9-- foreign word translation . . . . The foreign word can have a maximum of 28 characters, the translation 64. So the first 28 characters in each line will be interpreted as the foreign word, the next 64, starting with position 29, as the translation. If you enter the name of a file that doesn't exist, the program will be ended. Choose 'p' if you don't have an import file and you can start to enter words right away. The editor is easy to use and hardly needs any explanation. First the cursor is positioned in the line for the foreign word. After entering the word press [tab] or [return] and the cursor will be positioned in the line where the translation should be entered. If a word already exists in the file, the translation will be displayed immediately. You can either make some changes or press [return] to enter the next word. By deleting the foreign word you can remove the whole entry from the file. Before finishing an entry you can always jump between the two input lines by using the [tab] key. The cursor will be positioned at the end of the text and the insert mode will be on. Press [ins] to switch the insert mode off or on. The cursor can be moved with [<-], [->], [home], [end], and [cntl]+[<-] or [cntl]+[->] to jump one word left or one word right. [return] completes an entry and you can go on with the next word. When you are finished with entering words press [esc]. Now that both, the vocabulary file and the stage table exist, the program will show the main menu: ÚÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄ¿ ³ [t] Trainer ³ ³ ³ ³ [c] Continue trainer ³ ³ ³ ³ [r] Reverse trainer ³ ÀÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÅÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄ¿ ³ [w] Enter new words ³ ³ ³ ³ [f] Import new words from text file ³ ³ ³ ³ [d] Import new words from data file ³ ³ ³ ³ [e] Export into text file ³ ÚÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÅÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÙ ³ [i] Fileset info ³ ³ ³ ³ [s] Search ³ ³ ³ ³ [q] Quit without saving ³ ³ ³ ³ [x] Save and exit ³ ÀÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÙ Trainer ------- If you choose the option [t] for Trainer the vocabulary file will be searched for all the words that have a date equal or earlier than today. Then a table will be displayed which shows how many words in which stages there would be to repeat today. The table looks like this: Today's Task: days since last time => 0 1 2 4 9 30 words => 12 8 5 10 3 1 altogether 39 words How many words would you like to repeat altogether ? (short repetition periods come first) Enter a number => _ You can choose a number and then the program will start to display the words in the lowest stage. In this way you will always have to repeat those words first which you didn't know last time and those you've newly entered. The words will come in random order but stage by stage. First the word in the foreign language will be displayed and after pressing any key the translation. If you knew it press the right-key, otherwise the wrong-key. Default values for these keys are 'x' and 'z', but they can be set differently by using the program 'vtcfg.exe' (see below). Instead of 'any key' and right- or wrong-key you can also use the left and right buttons of your mouse - the left button means 'right', the right button means 'wrong'. The stage of known words will be increased by the value of the progress indicator, the date by the number of days corresponding to the increased stage (stage, progress indicator, and date are stored together with each entry). Not known words will be set to stage 1 (0 days) and their date to the present day. The progress indicator will be increased by one if the stage of the word has been in the upper third, but only up to a maximum value of three, then it will be decreased again. So a word that you have known several times already, once you don't know it, will jump stages and progress faster, but only if you manage to remember it until its stage is in the upper third again. Then its progress will slow down anyway, because the intervals are too long to skip stages. If you don't remember a word, whose stage is still in the lower two thirds, its progress indicator will be decreased by one (minimum value is '1'). There is also the option of pressing 'm' in case you discovered a typing mistake or anything else you want to change. The editor works as described above. When editing is completed the next word will be displayed. A modified word is treated as if you had typed the wrong-key (stage = 1). Another option is 's' for search. When exercising some questions concerning the vocabulary may come up. You may have confused words or would like to know to which word the translation you guessed actually belongs. Here you can search your vocabulary file for whatever you like. You just enter the search string and press [return]. '*' can also be used as a 'wild card' in your string but not as the first or the last character (there it would be useless anyway). Capitals will not be distinguished (for standard ASCII characters). The program will search both, the foreign word and the translation, as if they were one line and puts every matching entry on the screen. If there are more matches as can fit on the screen, you can press [PgDn] to display the rest. [esc] lets you return to the trainer. If you want to leave the trainer before the exercise is finished, [esc] lets you return to the main menu. After repeating the chosen number of words, the words you didn't know will be displayed again until you know them all. In these turns you cannot modify the words. By the way, if you have chosen a number greater than the one evaluated as today's task, only today's task will be repeated. On the bottom of the screen there is always a line, telling you which keys you have to use to perform the functions that are possible right then. The upper right corner shows a number, counting down the remaining words per turn. That means that, if you have chosen 35 words, it will count down from 35 to 1, and if you didn't know 11 of them, it will continue counting down from 11 to 1, and so on. Continue trainer ---------------- If you have a huge number of words to repeat and want to do it in pieces, you may wish to skip stage 1 and not repeat all the words you didn't know in earlier turns before you can continue. In this case use option [c]. It works like [t] with the exception that words in stage 1 will not be offered. Reverse trainer --------------- After finishing [t] or [c] you can choose [r] (reverse trainer) to repeat the words you have done before the other way round. First the meaning will be displayed and after pressing any key the asked word. As in the trainer you can press the wrong-key or the right-key (or mouse buttons), depending on whether you knew it or not, and 's' for search (you cannot modify the entry here). The words you didn't know will be repeated until you know them. This exercise is only to help remembering the words the other way round. It does not result in changing any dates or stages. The pool of words offered in the reverse trainer will be filled anew every time you run the trainer [t]. The words you repeat with [c] will be added. Enter new words --------------- To enter new words type 'w'. The editor works just as described above (option [p] when creating a new file). Import new words from text file ------------------------------- With option [f] you can import words from a text file (format as described above). In case your import file contains words, which already exist in your vocabulary file, which means the 'foreign word' is the same, you will get the following display: Word already in file : foreign word translation New word : foreign word other translation You have the following options: [o] overwrite the existing word [e] modify the existing word [d] discard the new word [n] modify the new word Your choice => _ If you type 'o' the existing entry in the vocabulary file will be overwritten by the one from the import file, if 'd' the entry from the import file will be discarded. In case the translation in the import file is different from the one in the vocabulary file you may wish to have both translations together. Therefore it is possible to change the existing entry by typing 'e'. Now you can add the other meaning in the translation part of the existing entry. The editor works as described above. If you do not only change the translation, but also the 'foreign word', the existing word will no longer be the same as the new word. After finishing you will get the following display: The existing word has been changed. Since the new word is not the same any more, shall it be imported [i] or discarded [d] ? => _ Now you can choose, whether you want to import the entry or not by typing 'i' or 'd'. If you only change the translation but leave the 'foreign word' unchanged (same as new word) the new word will be discarded. Another option is to modify the new word (by entering 'n'). That makes sense, if you want to make a change in the 'foreign word'-part in order to get the whole entry imported into your data file. The status line at the bottom of the screen tells you that by pressing [esc] you can leave the import function. This may be necessary, if there are too many words in your import file, which already exist in the vocabulary file. If you press [esc], the currently displayed word will not be overwritten (same as typing 'd'). Import new words from data file ------------------------------- Option [d] works the same way as option [f], only that the import file used here must have the format of a vocabulary file created by this program (.dat). This may be useful, if you want to have separate files for different lessons later merged into one file and keep stage, progress, and date of the words. So you can enter the vocabulary for a lesson of a language course in pieces and already exercise in the meantime. When you have finished entering the lesson, you can make an export file (see below) and give it to your friends or colleagues, who can use it as an import-text-file for their own vocabulary files and save the effort of entering the words themselves. But you yourself can use the data file, in which some words may already have proceeded to higher stages, as an import file to your main vocabulary file. Export into text file --------------------- By choosing [e] you can create a text file with the same format as the import file described above and sorted in alphabetical order. You will be asked to enter an export file name. The created file only contains the words and translations but no dates or stages. Fileset info ------------ If you type 'i' you will get some information about your vocabulary file. It may look like this: The file span.dat contains 143 words. They are distributed as follows: period in days => 0 1 2 3 4 6 9 15 30 words => 15 20 13 13 0 22 9 18 33 You can see how many words there are in your file, and in which stages they are. All stages will be displayed, even if there are no words in some of them. So this option can also be used to get information about the entered repetition periods (stored in the '.stg' file). Search ------ Option [s] lets you search your vocabulary file for whatever you want and works the same way as when entered from the trainer (see above). Quit without saving ------------------- If you have made a mistake which has really messed up your file you can leave the program without saving to disk by using option [q]. In that way your original file will remain unchanged and not be overwritten. Save and exit ------------- To exit the program and save your vocabulary file to disk choose option [x]. The program vtcfg.exe --------------------- From time to time you might wish to change the colours of your vocabulary trainer or use different keys when you are practicing. For that purpose run the program 'vtcfg'. You will be asked to enter the right- and the wrong-key. Use printable characters here (vt would work with [space] or [enter], too, but they can't be displayed on the status line). 'm' and 's' are excluded, because they are used for the modify and search options. Next you'll be asked to choose the colours for background, text and vocabulary display, status line and editing mode. The whole configuration will be stored in the file 'vt.cfg'. If such a file doesn't exist, vt will use default keys ('x' for right and 'z' for wrong) and colours. Into details ------------ If you enter words by hand, they will be in the lowest stage (0 days). Words imported from a data file will keep the stage they had in the import file. But if you import words from a text file they may be many, and they can hardly be put in the lowest stage, because that would mean you had to go through them all as well if you only wanted to repeat the words, which were in the lowest stage before. Actually they shouldn't be put in any stage where they could interfere in your ordinary schedule. Since 20 stages are possible and you will hardly use them all, it is the best to put these words in a stage higher than the highest stage you use. The number representing the date will be set to '1', which means that they will be offered each time, of course, but it's their turn only after you have done all the words that were on today's task originally. There is only one drawback: Since the words will be stored in alphabetical order and you may import a huge amount of new words, you would, once you exercise these new words, only have to do words starting with 'a' for example for quite a while. For that reason the imported words will not all be put in one stage, but spread over all stages beyond your highest stage up to stage 20, each new word from the import file in another stage. That makes a less annoying mixture for your exercise. After importing the words in your file, they may be spread like this: period in days => 0 1 2 3 5 7 10 15 25 40 words => 6 6 37 9 34 40 43 9 113 313 period in days => 60 100 200 200 200 200 200 200 200 200 words => 563 42 0 145 145 145 144 144 144 144 However, if you have occupied more than 15 stages there would be only few or even no stages left for the new words. In that case they would be spread from stages 11 to 20. As mentioned above, when working in the 'trainer' the vocabulary has to be exercised stage by stage, but the words will be shuffled so that they won't be asked in alphabetical order. This is only true for the first 100 words per stage. It wouldn't be necessary to mention this, because it has no effect on your work. In case there was a day when you had to do more than 100 words in one stage and you would do the whole task in one piece, then, after doing 100 words in the respective stage, the exercise would go on with the next stage. But already the next time you invoke the 'trainer' or 'continue trainer', the remaining words in that stage would be offered. Since you will hardly do more than 100 words in a piece this is of no relevance at all. The reason why I still mentioned it is the imported words. Otherwise you may have wondered why I spread these words over a few stages instead of putting them all in one, when they are shuffled anyway for the exercise. The reason is the 100 words limit. If you import 2000 words and had them all in one stage (in alphabetical order), you would still get only the first 100 of them to exercise each time and that would still be only words starting with 'a' (e.g.), even if they are shuffled. Spread like above, however, you will get a good mixture. Since at most only 100 words per stage can be done in one turn, the following thing could happen: Today's Task: days since last time => 0 1 2 4 9 30 words => 12 128 5 10 3 1 altogether 159 words If you choose to do the whole task at once and enter 159 words, you will be surprised that the counter in the upper right corner on the trainer screen shows only '131'. That's because actually only 131 words can be done at once in this case. You would have to do the rest in a second turn. It has already been described above ('trainer' option) how words, known or not known, proceed. When they have finally reached the highest stage, they will usually not be asked for a very long time. If you still remember them after that time, it wouldn't be a good idea to leave them in the highest stage and have them offered again only after the same long interval. Instead they will be moved to a stage somewhere in the middle with the progress indicator set to '3', which means, they will be asked again after several days and then, if known, proceed quickly to longer intervals, where their pace will slow down, because the progress indicator will be decreased. Words above the highest stage (imported words) will be treated the same way, in case you know them the very first time. If you don't know them, they will be put into stage 1 (0 days) with their progress indicator unchanged ('1'), just as if they had been entered manually. If a word from an import file already exists in your data file, you will be asked whether you want to overwrite it or modify the existing or the new word (see above). If you enter new words by hand and a word already exists in your file, the translation will be displayed immediately, so that you cannot have the same word more than once in your file. If you want, you can add a new meaning here. But it's also possible to change the foreign word itself (adding something, etc.), which could not only change its position in the alphabetically ordered data file, but could also mean that this word already exists somewhere else in the file. In that case you would get the same display as if you were importing a word that already exists in the data file. You will have to decide whether you want to overwrite the entry that is already in the file or not, or modify one of the two (see above). If you choose to modify the existing word, you could of course change it again in a way that it becomes the same as another word already existing in your file ... But it can become even more complicated: When exercising your vocabulary ('t' or 'c' option) you can also modify your words, just like above. But here you have a table with all the pointers to the words you didn't know, because they have to be repeated again. And a word you chose to modify will be treated as if you hadn't known it. If this word is later removed from the file, because you changed it in a way that it has become the same as another, which you don't want to overwrite, its pointer has to be removed from that table. If this other existing word is coincidentally one you have been asked before and which you didn't know, and you choose to modify it, and you change it in a way that again it becomes the same as another and you discard it, its pointer will also be removed from the table of words which have to be repeated. Only if you continue that way (which is improbable) this won't be done any more (although the words in the file will be treated properly). So, when you get back to the trainer and it's the turn of the words, which you didn't know, it is possible that the program tries to ask you a word which isn't in the file any more and therefore displays some strange figures on the screen. Don't worry about it! Say you know it and go on. Limitations ----------- The program loads your data file into the memory of your computer. That means that the upper limit will be reached somewhere over 5000 words. If the memory becomes full while loading a file, the program will be terminated, showing the message 'out of memory'. If it becomes full while you are entering new words or importing words from a file the program will also show the message 'out of memory'. In this case you can exit safely and your file will be saved to disk (if you want). Nothing will be destroyed. Maybe you will never get to the point, where you have entered more than 5000 words (it also means a lot of work every day to keep such a huge vocabulary in mind). But if you do, you probably know the language so well meanwhile that it makes sense to eliminate some of the simpler words from your data file. You can do this by typing 'm' (modify) when they come across in the 'trainer'-mode and delete the content of the first line (foreign word). In case the limit is reached much earlier, you probably have too many programs running in the background and you should unload them before starting 'vt'. But usually it's even possible to have a dictionary program in the background and if this is able to take your entries as an input, you just press the hotkey after entering the foreign word and it will show the translation (if it has the word), which saves you the effort of looking it up in a dictionary. Experiences ----------- No doubt, by using the vocabulary trainer you can learn words and short phrases with much less effort and in a less tiring way as from a vocabulary list and it's still much quicker than with a hardware flash card file. An effort it is still and it requires some persistency to exercise regularly. But you are spared the effort of uselessly repeating those words that you know anyway. And the program supports the dynamics of your brain by offering a word frequently in the beginning and in always longer intervals later. It may take some time to find out which intervals work best for you. I currently use these: 1 2 3 5 7 10 15 25 40 60 100 200 Originally they were somewhat different, but then I found that somewhere in the middle I forgot too many words and made these intervals shorter. I also had 300 days as the longest interval, but that was just too long. For other persons it may be different. Some remember words more easily than others. It may also depend on the language you are learning and how easy you find it to remember its words. It can make sense to choose short intervals when you start learning a language and longer ones later, when you have become more familiar with it. If you don't exercise for some days, it is likely that there will be a lot of words on your schedule when you start again. Too many to be done in one day. But you can work yourself through slowly. It's one of the good points of this program, that the words with short intervals have to be repeated before those with long intervals. For those in the higher stages, which you had already kept in mind for a very long time, it doesn't make much of a difference, whether they have to wait for a few days longer. Don't forget that learning words is only one part of learning a language - a very important one, however. It also takes a lot of reading, listening, written and oral practice to activate your knowledge (attending a course makes sense, because it pushes you forward and gives you a motivation to exercise). Not knowing the vocabulary is an obstacle, that makes everything much harder. 'vt' can help you getting this out of the way and thus makes it possible for you to concentrate more on the other parts.