Having started college recently, I regularly have to study. Often this studying takes the form of memorizing information about an image, or remembering the formula that will allow you to find a specific value. I find, as many other before me have, that going with the traditional route of creating flashcards for such studying is quite effective. Of course, me being me, having to keep a stack of note cards with me whenever I want to study simply doesn’t work. However, having an electronic version of these cards, which I can study anywhere that I happen to have one of my computers, works quite well. And that’s where Anki comes in.

Anki is GPLv3 tool which allows you to create flashcards, tag them to ease administration, and will then display them back to you, timing the intervals at which it shows the card by using a Spacing Algorithm (Confused? Read about the spacing effect here. To ensure that you can study all your cards before a test, rather than just those that the algorithm has selected, Anki also has a “cram” feature, which allows you to select specific tags to study for a one-time, intense session.

In addition to allowing you to enter standard formatted text in to these cards, Anki can also support images of varying types, audio, and the LaTex markup language (which allows for well formatted formulas to be entered onto a flashcard).

On top of that, Anki is designed to be extensible, so if you have a working knowledge of Python (or a common problem someone else has already fixed), plug ins are easy.