Anki Flashcard Software for Learning

Updated 25-Feb-2021

Anki is one of the most popular flashcard software programs for memorization. It includes a spaced repetition algorithm for optimized learning. Anki offers clients for Windows, OSX, BSD, Linux, Android and has a paid client for iOS. There is also a web client, which also acts as a data storage for synchronization across clients.

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 and Spaced Repetition Learning

Anki uses the SuperMemo 2 (SM2) spaced repetition algorithm. 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.

Anki and Shared Decks

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.

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)
  • Cloze

Cloze is a special case, where the answer is a fill-in-the-blank. There can be multiple cloze cards generated from a single note. However, using a cloze template there cannot be multiple templates.

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.

Current Status of Anki and Download

Anki FAQs, Help, Documentation

Anki Community, Bug Tracking & Development

Interesting Discussions on Anki