
                        TUTOR v1.8 by Daniel Green
                        Copyright 1992, 1996, 1998, 1999
                        Superliminal Software
                        dgreen@superliminal.com

TERMS OF USE:

Tutor is a shareware program. I simply ask that if you find Tutor
useful, that you send me a check for $25 to the address at the end
of this file. Please include your email address so I can inform you
of improved versions. Purchasing the product entitles you lifetime
support and free point releases. I'll also offer free license to 
anyone that  creates and sends me a useful dictionary to make public.

You may use tutor freely and share it with anyone you like, however I
retain all rights to this work and expect you to honor my copyright.
You may not disassemble or  otherwise attempt to reverse-engineer my 
work. You wouldn't want people to attempt to steal your creative 
works, so don't you do that. If you redistribute Tutor, you must 
distribute the complete package unchanged including this file. Better
is simply to always find the latest version at 
	http://www.superliminal.com/tutor/tutor.htm 
and to share that URL instead of the program itself. In the spirit of
shareware, this program is not crippled and does not display annoying
messages when a demo period has run out. 

DESCRIPTION:

This document describes the Tutor vocabulary teaching program.
Tutor is something like the ultimate flash-card partner.
A good human flash-card partner will know which words you know well
and which you're having trouble with. They will then select mostly
those words which are most important for you at that moment, but
will occasionally select words which are less important or which
they know you already know fairly well, just to keep your memory
refreshed.

Other vocabulary teaching software simply select words at random.
That is a poor approach for all but the smallest dictionaries because
users tend to become frustrated and lost quickly. Attempts to fix that
such as partitioning dictionaries into lots of smaller groups of 
related words may help with this, but risk boring the intelligent 
users with too much repetition.  The Tutor program does this in a 
very optimal way. It adapts to the current user's ability to learn, 
and takes into account their past performance with each word. It also
accounts for the basic importance of each word in its language
and will continue to adapt to the user over multiple sessions.

When using the program, it's best not to try too hard to puzzle out 
which answer to select. If you don't know a word, then just make a 
quick guess. There's no harm in missing lots of words since Tutor 
will quickly bring up problem words so frequently that you can't 
help but quickly get them right. Tutor is not a test, but a learning
tool, so don't be afraid to make mistakes. Mistakes are a very 
important part of learning anything.

USING THE PROGRAM:

The program is very simple to use.  Whenever it is running, the next 
selected word for you to  translate appears printed large at the top 
of the window. Simply click on the button underneath which you believe
is the correct translation. When you make an incorrect selection, you 
will need to keep making more selections until you pick the right one.
Each time you get a word right, a new one is selected and displayed. 
The word you just got right is still displayed in the bottom left 
corner along with its translation. This serves as a reminder and also 
shows you all the possible correct translations for that word.

A good strategy for optimal learning is to move through as many words
as you can as quickly as you can while at least still reading all the
choices. A good idea would be to set yourself a goal of seeing a
certain number of flashes instead of a certain amount of time. 100
flashes seems to be a good goal for a single sitting and can be 
reached in just a few minutes.

It doesn't matter at all how many words you get right or even the
ratio of right to wrong answers. Just do as many as you have
patience for at any one time. It's also a good idea to not set
your goals so high that it becomes a real chore to do. Tutor will
work very effectively when used often but for short periods rather
than a few long sessions.

The Tutor program learns a lot about your learning progress with each
vocabulary. Before quitting a session, hit the "save" button if you
want Tutor to remember your progress with the last vocabulary
for the next time.

Tutor can be used to train you in *any* vocabulary, and is not
restricted to natural languages, but could be used to memorize
technical terms, chemical compounds, anatomy, or any other such
word associations.

MANAGING YOUR VOCABULARIES

This distribution only comes with a single example vocabulary, 
but may more are available at the Tutor web site located at
http://www.superliminal.com/tutor/tutor.htm. The example vocabulary
"elements.csv" is a simple dictionary for learning the names and 
symbols of the chemical elements. When you start the program and
click the "Load Dic" button, a file dialog box will appear to let
you select a vocabulary to learn. If you store any vocabularies that
you download into the same folder as the program and sample vocabulary,
then you will see all these dictionaries when you hit the load button.
Conversely, if you've stored additional vocabularies in other
locations, then you will have to use the file dialog to locate them.

If there is a vocabulary that you intend to use often, you can make
it the default vocabulary which will load automatically whenever you
run Tutor. To do this, simple rename that vocabulary to be "words.csv"
and place it either in the same folder as the the program file 
Tutor.exe, or put it at the root of the same drive as the program.

VOCABULARY FILE FORMAT:

Tutor dictionaries are plain text comma separated files which you can
edit with Excel or any text editor. You can create a new vocabulary
by following the simple format of the chemistry vocabulary supplied 
with the program.
Here are the first four lines from that vocabulary:
	WORD,TYPE,IMPORTANCE,DEFINITION
	Ac,A,4,Actinium
	Ag,S,7,Silver
	Al,A,5,Aluminum
The first line contains the labels for the fields and must appear
exactly as shown. Each subsequent line represents a word to be learned.
The meaning of the fields are as follows:

Field 1: This is the text of the word or concept to be learned. 

Field 2: This is a "type" descriptor.  This can be any single word
you like and is used to organize the flashes to only show decoy words
of the same type. For natural languages, good type choices are "noun",
"verb", "adj", etc. The elements vocabulary simply used each element's
first letter in order since the element symbols usually start with the
same letter as the element name. This makes all the decoys start with
the same letter so it's not usually obvious which is the correct choice.

Field 3: The third field is the relative importance of that word 
on a scale from zero to ten.  Initially, the number should be the 
word's relative importance in the language, but as you use the program
and save the results, the numbers will change to reflect the 
importances of those words to *you*.  You might therefore want to make
copies of any initial vocabularies before you start running Tutor on 
them.

Field 4: Is the translation or definition of the word. 
The translation may contain multiple correct definitions separated by 
semicolon characters. When Tutor displays a word with multiple
definitions it chooses one at random each time, though it always 
displays all definitions for the previous word in the lower left 
corner. If you have multiple synonyms within a definition, you should
separate them with a forward slash character. For example, the entry
for the German word "Lager" looks like this:
	das Lager,neutnoun,4,camp;store/stock
It has two different definitions, and the second one has two synonyms.
Note that the definition "store" is used in the sence of stock or supplies
as opposed to a place to buy things.

Note that it's crucial that these four fields exist for each word, 
that they are separated from each other by commas,
and that there *not* be any commas anywhere else on those lines.

If you create any useful vocabularies, I'd love to add them to the 
web site. Please send them to me at the email address at the end 
of this file. As mentioned before, this will also entitle you to a
free license for yourself or a friend.

APPLICATIONS:

You'll note that the program interface is extremely simple.
The interface is simply a test bed for the underlying algorithm.
This is very much a work in progress, and I'd be especially
interested to hear your suggestions about potential applications
this algorithm might be integrated into. Licensing and collaboration
opportunities are most welcome. I'll also be very curious to hear any 
feedback you'd care to give.

I hope you find Tutor useful. I wrote it as an aid for me to learn 
German, but I think the underlying algorithm is general enough to be 
useful for many different applications.

Daniel Green
Superliminal Software
2340 Francisco St. #301
San Francisco, CA 94123

email: sales@superliminal.com
tel: 415-673-5965

