Anki is one of the most popular flashcard software programs for memorization, and it is one of the first. It includes a spaced repetition algorithm for optimized learning, and a host of configuration options.
Anki is multi-platform (Linux, Mac, Windows, Android, iOS), and free (except for iOS). There is also a web version, and all apps support synchronizing data via the website (again, for free).
Anki Original Use Case
Anki means memorizing in Japanese and was originally created to help with memorizing Kanji characters for learners of Japanese as a second language. It has since been adopted for dozens and perhaps hundreds of other languages, as well as any other subject for which a memorization tool can be used.
However, it can be used for anything requiring remembering, including definitions, formulas, historical facts, etc.
Anki for Learning Thai
Anki remains a great tool for learning languages, and Thai is no exception. Simply, it helps with the memorization process, once one learns something, such as language vocabulary. Anki is composed of decks, notes, and cards. Notes have fields that are basically the columns in a spreadsheet, and rows are each note.
Anki can support different stages of the Thai language learning experience:
- Learning the Thai Alphabet
- Letter names, letter sounds (phonics), consonant class, etc.
- Learning how to pronounce letters, syllables, and words
- Vocabulary building
- Listening comprehension
- Fill-in-the-blank (cloze) for testing recall and comprehension
Anki decks are decks of notes and cards. One can create many decks, but for a given language it is probably wise to have a single deck unless there are some special features (such as the Thai alphabet with multiple aspects, more on this later).
Anki Notes Fields for Thai - Examples
It is simple to set up fields such as:
Then for any given word or phrase, one enters the information.
Anki Cards for Thai - Examples
Cards are generated based on templates. For example, for the three note fields above, there can be six actual cards:
- written-thai to spoken-thai: Say the written word in Thai
- written-thai to written-english: Translate Thai into spoken English (note we do not need spoken English for this)
- spoken-thai to written-thai: Write in Thai
- spoken-thai to written-english: Translate Thai into spoken English (note we do not need spoken English for this)
- written-english to written-thai: Translate English into written Thai
- written-english to spoken-thai: Translate English into spoken Thai
Pronunciation and Translation
Of course the number of fields could be reduced or increased to limit the number of cards generated. For example, when first learning vocabulary, pronunciation will be difficult and it would be very helpful to include additional fields. However, as time goes by, the cards generated could be reduced to only written-thai and written-english.
Initially, even more fields could be added, for example to provide phonics for sounding out letters and syllables. Once these phonics rules have been internalized, then this aspect could be removed, not so much by editing the notes but simply removing cards that are generated from those fields.
For recording audio, it is quite simple: click the microphone button, speak, click save. It does all the work of managing the mp3 file. There is a text-to-speech functionality that can use Google Translate and other online services for recording audio. This means one can access spoken audio for written words on-the-fly without having to pre-record these files oneself.
However, this functionality is not yet in Ankidroid, and is only available on the desktop distributions (Linux, Mac, Windows). Should come soon though (2021).
Anki supports spaced repetition for active recall. That is, questions are provided at optimal intervals which prompt active recall, and when actively recalled, help move the information from short-term to long-term memory. The algorithm used is based on SuperMemo 2 (SM2). This is a scheduling algorithm which reintroduces a flash card at an optimal time (shorter if difficult to recall/cannot recall, longer if can recall). The effect is to move things from short-term into long-term memory. The actual intervals and other aspects of the recall system can be fine-tuned to one's own individual preferences.
Anki users can make their decks available to the general public to download from the AnkiWeb site. Shared decks can be searched for and imported into ones' own collection of decks. However, shared decks are not the greatest approach when dealing with learning language. The main reason is that one should learn words and then use Anki to remember them, rather than use Anki to learn words. This means that Anki is a tool for remembering, not learning.
More on Anki Notes and Cards
Anki is highly customizable. It has a concept of notes and cards. Notes are the actual bits of information organized as one or more notes. Each note has a set of fields, that can include information in them (or not). Multiple cards can be generated for a given note simply by creating more cards. Each card has two sides, and cards can generate both ways (that is, displayed front-to-back and back-to-front). The built-in cards are:
- Basic (front-to-back)
- Basic (with reversed)
- Basic (with optional reversed)
Supporting Text-to-speech Voices
Currently desktop Anki supports Text-to-Speech (TTS) with multiple languages and services (Yandex Translate, Google Translate, etc.). This isn't yet (February 2021) available in Ankidroid, but is coming soon. Part of the challenge is getting parts of Ankidroid working with Rust so that the functionality can be shared across all platforms.
There are some paid plugins that have extended support for TTS using cloud providers for translation (Amazon, Google), beyond the basic use of Google Translate and other platforms.
Anki already supports recording and playback of audio files, though these tend to make decks large in filesize, and an on-the-fly translation is much more flexible.
Anki desktop Add-ons
Anki supports Anki desktop add-ons which are created by the community and extend the functionality quite a bit.
Anki Community, Bug Tracking & Development
- Anki Help Forum and Anki Droid Help Forum
- Anki Bug Tracking and a separate Anki Droid Bug Tracking
- Anki on Github