There haven’t been any new reviews for this site for quite some time. The decline in newly posted reviews coincides with my personal shift from using the OS X flash card program iFlash to using Anki, which is now my flashcard application of choice. I do hope to continue posting reviews here from time to time as I explore the new offerings that are out there, but I predict two busy years ahead of me finishing my PhD dissertation.
In a previous review of Anki, I had a number of critical things to say about the cross-platform application. However, I eventually came to realize that the only true advantage I seem to gain from using iFlash (a review of which I never completed for this site, out of a desire to wait for certain updates) were certain conveniences of the interface and its elegant Mac like feel.
Interfaces are important because they define the relationship between a user and his or her interaction with data. When done well, they also provide a sense of consistency which allow users to quickly and easily access the features that are useful to them but also create an enjoyment in the use of an application that bring users back again and again. Given the fact that, as a fully cross-platform application Anki must always make certain sacrifices in this regard and that it continues to have areas that might be seriously improved, I believe there will always be, at least in the OS X environment, a range of other flashcard applications which will appeal far more to a user at first use than what they are faced with when they first open the Anki application.
However, my reason for posting this entry today is to make and support the claim that Anki is currently and without question far ahead of all of its competition, at least in the OS X environment that I’m familiar with, as a powerful spaced repetition flashcard application.
I feel the need to post this entry because I’ve been sent a lot of e-mails by various students wanting me to stake a clear position on what I believe to be the current leading application. While the reviews on this website seem to be useful to many, the various advantages and disadvantages I have listed for each application in my various reviews seem to have left many newcomers to the world of spaced repetition and interval study in a flash card environment wondering what ultimately they ought to use.
So, for the record, after having looked at dozens of flash card applications on multiple platforms, many of which I have not had the time to review fully on this website, I am happy to recommend, without reservations, that’s serious students, especially of language study, take a good hard look at the open source and freely downloadable application Anki which is available for OS X, Windows, and Linux operating systems. I believe that given a little bit of initial effort in becoming familiar with the application and getting your data into the program either by direct input or through various import methods Anki provides the best solution for long-term memory management of large quantities of small atomic units of information. I am happy to endorse another application at some later date, and will continue to keep my eyes open for what is out there, but at this time, no other application, at least on the OS X platform, comes remotely close to Anki in terms of the number and power of features, flexibility in study, or implementation of spaced repetition.
Instead of writing a completely new updated review of Anki, below are listed just a few of the areas where I’ve been particularly impressed relative to the alternatives. Because I believe in the potential for further innovation through a healthy competition between flashcard applications I hope that other developers may consider some of the points below as they develop their own solutions.
1. Spaced Repetition – The most important area in which Anki shines is also the area in which it has the greatest lead ahead of its competition. No other application that I have worked with, with perhaps the exception of Super Memo for Windows (which, though powerful, and a very important innovation leader, is such mess of an application that I would not recommend to anyone and will exclude from comparative consideration below) offers users the same degree of power and flexibility in carrying out spaced repetition. Spaced repetition is becoming more and more popular and I’m very happy to see it being implemented in various forms by developers on all platforms. However, generally speaking, these features often seem to be added as a nod or a gesture to users who demand them and rarely, with a few exceptions, as a central component of the application itself. Many developers also seem to lack an understanding of what the concept really means, and how to make it work effectively.
I won’t go into a blow-by-blow comparison here between Anki and its main competitors for lack of time but I believe that serious students who want to not only memorize materials but to maintain a long-term mastery of things such as language vocabulary will find, as I have, that in the long term Anki just works. It has a powerful but flexible algorithm which can be customized by users and which adapts to the memory of the user with each iteration of review. While I hope that documentation of this algorithm, its use, and the ways in which users can take control of the process itself will improve in future releases and the interface for customizing some of these features also likewise continues to develop, I’m convinced now that the Anki approach is far superior to the interval study schedule in applications like iFlash (which was in turn based on a method I used in my own Flashcard Wizard many years ago and later by StudyCard Studio) or on the somewhat more advanced and customizable approach taken in such applications as Mental Case. It is also superior to any of the spaced repetition implementations I’ve so far seen in a wide array of iPhone an iPod applications that continue to emerge every week.
Note: While there is a browser-based client of Anki available for the iPhone or other mobile devices it is difficult to install and unreliable in use. It cannot match having an easily installable native application and I hope that either the developer of Anki or some other enterprising soul will produce a full on key client for popular mobile platforms such as the iPhone in the near future. Users who really want to have a mobile client for their flashcard study are strongly encouraged to contact the developer of Anki to make their wishes known, but currently may be forced to consider alternatives like Mental Case which support spaced repetition on their iPhone/iPod clients. iFlash may also support it in a future update to the iPhone/iPod client.
2. Models – One feature that I have not personally made full use of but which I now believe is a major advantage of Anki is the powerful ability to create multiple models for each deck. Anki allows users to create different kinds of questions and thus cards with a different kind of appearance within the same study deck. Thus a single deck of cards for one’s Spanish class, for example, can offer differing kinds and numbers of fields according to the type of material being tested.
3. Facts vs Cards – Another feature that I once underestimated but which I now believe offers a powerful advantage for users of Anki is a distinction that it makes between facts and cards. See my entry on this for more detail. One fact is a relationship between several fields of information while one card is simply a way of displaying that information or rather withholding some of that information from the user who wishes to review and memorize its contents. This provides an easy way for Anki to allow users to review language cards in multiple directions, and keep spaced repetition statistics and performance data separate in those multiple directions of study, without the user ever having to change the mode of study or make other adjustments. Users can suspend, temporarily bury, or delete individual cards without harming or touching the original fact.
4. Deck Overview – A new feature of Anki which I’ve now come to like very much is also very useful for students who wish to engage in long-term review and study. If Anki is successful in helping one review information then it is likely that over time a user will acquire new decks that for various reasons they have decided to keep in separate files rather than incorporate in one large deck with multiple models. Anki now provides a kind of dashboard or overview of one’s decks upon launch of the application which immediately shows users how many cards are due how many new cards need to be studied and how many cards and how much time has been spent on the application on this current day. No other application that I know of provides this kind of convenient overview of multiple decks of cards and thus Anki provides a wonderful single starting place from which once daily study may begin.
5. Statistics – No other application that I have used provides anything near the amount of easily viewable data and statistics about one’s study. Anki provides users an easy way to browse statistics about performance on a single card both during Flashcard study, while the management of entries or accessible through the graphs created by its statistics feature. Students who engage in long-term study understandably wish to have a better understanding of how they are performing on individual cards or on the deck as a whole as well as get a rough idea about the number of upcoming cards and the opportunity costs of not studying for several days. Again Anki is way ahead of its competitors.
6. Customization – Anki is also way ahead of the competition in providing easy and convenient way for users to customize various aspects of one’s daily flash card study and provide reasonable limits on that daily study. For example Anki provides an easy way to limit study to a certain number of cards, a certain number of minutes, and fix a limited number of new cards for each day of study. It allows users to customize the way that the three different categories of cards are handled, that is to say, failed cards which have been marked incorrect recently, cards which are due for review, and cards which have not yet been studied but which are currently scheduled for review. Unlike many other applications Anki assumes that you are dealing with a large amount of as yet unstudied material that you wish, through regular but managed study, learn and remember through use of the application. It takes as its unit of time not merely a single study session, but a single day of study within a larger study schedule that continues indefinitely into the future. It never assumes that any fact or card is completely memorized (the serious Cookie Monster flaw that most flashcard applications make) and it never seems that any of its users have the same powers of memory. Nor does it force you, like a number of applications out there claiming to provide spaced repetition, to continue reviewing cards beyond what is currently due or on the verge of being forgotten (this I have called the Insatiability Flaw).
7. Formatting – While it can be somewhat confusing to use, Anki also provides the most flexible approach I’ve seen to displaying information in various fields on cards with full control over the fonts and sizes of information. I have been told that one friend even successfully used some more advanced cascading style sheet features in the formatting of individual fields to allow the display of certain fields only when certain text is moused over.
9. Excellent Use of Tags – I once criticized Anki for not using a set-based organizational method. However, I believe this was short sighted of me and showed that I was too tied to one standard approach to organizing data. I have come to appreciate the power of Anki’s full support for tagging which allows me to easily deactivate certain tags that may correspond to a particular direction of study or a particular category of words. It also allows me to indicate a priority for words that will have an impact on when those words are introduced.
10. Open Source & Open Architecture – Anki is an open source Python-based application. It has a fully supported plug-in architecture which allows any developer to add functionality and add features to the application. I believe that this kind of approach, both the fact that it is open source and its open architecture, gives me the best hopes for its future in that any interested and passionate developer can make improvements on the software and expand its functionality in the future.
11. Very Active Development – Finally, I’m incredibly impressed with the responsiveness and the enthusiasm of the primary developer of Anki. The application is continuously being improved and I found the developer to be extremely responsive to suggestions from his user base. A look at the issues database will suffice to show this. I hope that in the future the network of developers working on Anki will expand but for now I’m very happy to see a flashcard application that is continuing me being improved by a an active developer who seems to be devoting a considerable amount of personal time to the project. I only hope this continues to be the case! There are costs to this of course in that features can sometimes change quite rapidly and some consistency in approach might be lost but so far overall it gives me the impression of using a living application that is constantly evolving in response to the needs and requests of its user base. If you use Anki and want to support Damien’s work, I strongly encourage you to show your support for his labors with a donation. I also encourage other programmers with some understanding of Python, who use and enjoy Anki, to study the code and offer their services.