Gradint, a program for self-study of foreign languages
Gradint is a program that can be used to make your own
self-study audio tapes for learning foreign-language
You can use it to help with
a course, to prepare for speaking
assignments, or just to keep track of the
vocabulary you come across.
Technical graph of a lesson with
many graduated-interval sequences. The shorter ones do background revision of older words;
pink ones do the newest words; springs show degrees of
method: Gradint uses a variant of the
"graduated-interval recall" method published by Pimsleur in
1967. It's like audio flashcards that appear in a special
pattern designed to help you remember. The
Pimsleur™ accelerated language courses
use several techniques (they say some are patented), and
Gradint does not imitate all that, but
this particular 1967 idea is now in the public domain
so Gradint can use it to help you learn
your own choice of vocabulary.
Gradint gives only audio, so you concentrate on
pronunciation. (And so you can listen during daily routines
e.g. washing etc, since you don't have to look or press buttons during a lesson.)
can write its lessons to MP3 or similar files for you to hear later, or it can play them itself and
try to adapt to emergency interruptions.
The words it uses can be taken from real sound recordings or they can be
synthesized by computer.
You can add words to your collection at any time, and Gradint can
manage collections of thousands
of words (and supports batch entry). It can also help you
rehearse longer texts such as poems.
Gradint is free software (as in "open source"), distributed under the GNU General Public
License (GPL v3). The latest release is
For Mac OS X, download the Mac
version, unpack it, and open Gradint.
For Linux and other Unix systems (including OLPC laptops, NAS
devices and the Raspberry Pi), download
version, do tar -jxf gradint.bgz and
run using gradint/gradint.py.
Also install espeak and python-tk packages if possible.
For Windows Mobile (6.0 or earlier) install
install gradint.caband run Setup in the gradint folder.
(This will also install eSpeak, and some scripts to read the clipboard.
It will run faster if you have a RAMdisk.)
For Android phones, install QPython, unpack gradint-android.zip into com.hipipal.qpyplus/scripts and optionally set QPython's "default program" to gradint.py (or if you have SL4A+Python, use /sdcard/sl4a/scripts)
Alternatively, use Gradint Web edition with any browser. You can set up your own server with the Unix version (above) and the server scripts (also includes scripts for email-based service).
Tell the program which language you
want to learn. On most systems, Gradint will show a
GUI which lets you
A more technical way to do it is to edit
the file settings.txt.
Give the program some words and
phrases to teach. This can be
any combination of real recordings and
computer-synthesized words, and you can always
add more later. You can use the graphical
interface (on supported systems), or you can:
If possible, prepare some audio
prompts such as "say again" and "do
you remember how to say". These can be
real recordings or synthesized text. Some
text for English and Chinese is already
provided, but if you won't be using a speech
synthesizer you can download sampled English
prompts. For any other language you
should ideally add your own; for details of how
to do this, see
README.txt in the prompts
subdirectory of the samples directory.
You should then be able to run the program every
time you want a lesson.
You can do more advanced things if you are able to edit
For details see the file
advanced.txt (that link is for
reference only; to make changes
you will need to open the copy
in your gradint installation).
For programmers: The source code is
gradint.py which can be found within any of the downloads,
or you can
download the Gradint build environment which
contains a Makefile and supporting files for producing the above releases
from a Linux box. See its README.txt for details.
There is also an SVN repository thanks to Cameron Wong: svn co http://svn.code.sf.net/p/e-guidedog/code/ssb22