Back

Learning How to Learn

A Beginner-Friendly Introduction to Anki

Do you still remember what you learned four semesters ago? No? How about one semester ago? No? Well, how did you study the material? By reading and re-reading textbooks, while annotating and highlighting interesting parts, as most students do? I hate to break it to you, but such so-called passive learning techniques aren’t successful learning strategies, as you have experienced firsthand. Even taking notes and summarizing passages in your own words isn’t an optimal study method. Read on to learn what are the best study strategies (backed by evidence) and what’s the only way to ensure high learning retention rates so that you actually remember what you’re studying

Effective Learning Techniques

If you want to improve your study methods, Ali Abdaal’s YouTube channel is a veritable goldmine of information. He already explained excellently in video form what I couldn’t describe better in text form, so I’ll yield the floor to him and let him gain the laurels.

Before you read further, watch these two videos by Ali so that you know what evidence-based learning is and what the rest of this article is all about. They both are long, but what are 20 minutes when they save you hundreds of hours in the long run? Just bookmark my article and come back to it after you’ve had time to watch the videos.

Active Recall

The first technique, Active Recall, means that, instead of just reading a text and forgetting the content immediately afterward, you ask yourself questions about the material and try to actively retrieve the information from the depths of your brain without/before looking at the answer.

This Active Recall technique is very similar to the Feynman Technique, or in other words, learning by teaching. Teaching can also mean teaching yourself (or an imaginary person). Before reading about a topic, write down what you already know about the topic. Then, identify gaps in your knowledge. Do this by always asking yourself, “Why is that so?” like a 5-year-old would. If you can’t answer any of these Why questions, read the material again and focus on the parts you couldn’t answer.

Example: The Quicksort algorithm, in the worst case, takes $O(n^2)$ comparisons to sort $n$ items. But why is that so? In case you cannot answer that question, read your source material again; then, fill these gaps with your newly gained knowledge, and repeat identifying and filling remaining gaps until there are no more gaps.

Spaced Repetition

Because of the forgetting curve, it’s not enough to quiz yourself only once. You need to retrieve the information multiple times by spacing the intervals out rather than cramming the entire material in a single day or week. You’ll use the Spaced Repetition technique in combination with Active Recall and ask yourself again and again with increasing interval lengths until the information has successfully transitioned to your long-term memory.

Implementing Effective Learning Techniques Using Flashcard Software

Hopefully, you’ve watched those two linked videos by Ali. How you implement these two techniques is by using a digital flashcards software. The most popular one is called Anki.

Installing Anki

If you’re ready to start with Anki, you can get the desktop version here. In case you’re using a Mac, Anki is also available from Homebrew via brew install --cask anki. You can create an account to sync your flashcards so that you can e.g., create your flashcards on your desktop computer but do the review during your commute on your tablet. The desktop version and the (inofficial) Android version are 100% free. The iOS version costs about 25 bucks. That’s how the developer Damien Elmes funds himself and the development of the completely free desktop version. You don’t really need the mobile app, but in case you consider getting the iOS app, say, for your commute, these 25 bucks are absolutely worth it.

Should You Get Anki 2.0 or 2.1?

There are two versions of Anki available: Anki 2.0 and Anki 2.1. Anki 2.0 is no longer supported since February 2020, so definitely install Anki 2.1.

“Why are there two versions?” you might ask. Anki 2.0 is still around only for compatibility reasons. When Anki 2.1 was released back in 2018, many popular add-ons didn’t work anymore. This is because Anki’s developer rewrote a lot of the code base for Anki 2.1. In fact, the changes were so huge, it actually is more like a Anki 3.0 than a 2.1. With version 2.1, Anki itself was much improved, but because of the changes its add-ons had to be rewritten too. While Anki’s developer funds himself by selling the iOS app for 25 bucks, add-ons are developed by unpaid hobby programmers in their spare time. Many popular add-ons weren’t immediately made compatible with Anki 2.1 and some will never be. That’s why some users who relied on certain add-ons preferred to keep using Anki 2.0. By now, however, most add-ons support Anki 2.1.

Getting Started With Anki

Anki has a high learning curve and can be quite intimidating at first, but because it is so widespread (especially in the medical community) there are so many tutorials available online. It is absolutely worth it to learn how to use Anki. And once you get the hang of it, it is not that hard to use. Actually, it is quite simple. Just start using only its most basic features such as adding cards of the Basic card type and ignore the more frightening features for now, e.g., cloze deletions, filtered decks, or rescheduling cards. Don’t worry about the perfect settings or the algorithm just yet. You will figure out how those more intimidating features work along the way. And you can always change card types belatedly, e.g., turn a Basic card into a Cloze card or vice versa. Everything is reversibel and Anki automatically creates backups of your flashcards for you. You can’t do anything wrong. Just start using Anki and set one foot before the other as you go.

Now you should start adding things you want to learn to Anki. That can be anything. Basically anything that is interesting and important. However, you shouldn’t just dump random trivia into Anki such as “Who was King of England in 1681?” Maybe I should reformulate that last sentence lest you get the notion that there were some “wrong kind of material” to put into Anki. Of course you can dump such useless information into Anki. Don’t be afraid of adding the “wrong kind of material” to Anki. Don’t let the fear of using the program wrong lead you to stop using Anki altogether. Add whatever you want. You can always delete cards later should they turn out to be not very useful. You’ll figure that out naturally along the way. There are, however, certain rules regarding how to formulate your questions that you should obey in order to get the most out of your practise. These rules were formulated by Dr. Piotr Wozniak, the creator of the SuperMemo method on which Anki is based. But you need not first learn these rules by heart before you can allow yourself to add content to Anki. You can always edit a card later on, split it into multiple cards if you realize it is too long and does not conform to the minimum information principle, or change the card type of a simple Basic card to Cloze once you understand how cloze deletions work.

Let me give you an example how this may look like. As I’m going through Christopher Olah’s wonderful blog post about the artificial neural network architecture long short-term memory (LSTM), I first try to get the overall picture in an information gathering phase before I go over to breaking down my flashcards into more digestible pieces that I can then use to quiz myself about the finegrained details. The resulting flashcards don’t (yet) adhere to the minimum information principle at all. But that’s ok.

The first of the twenty rules of formulating knowledge states, “Do not learn if you do not understand.” You certainly know that feeling, when at one point in school your math teacher went too fast and you fell behind and from that moment on you were lost. This is what the first rule is all about.1 If I didn’t know what a sigmoid layer is or does, or didn’t understand why there is a $\tanh$ function, then I shouldn’t try to memorize that there is a sigmoid layer and a $\tanh$ function. Basically, I should not begin to save something to my memory for later usage if I cannot explain even now, with the blog post in front of me, what is going on in the figure. Chris’s excellent explanation solved that problem.

The second rule states, “Learn before you memorize.” This rule is all about the big picture. For instance, if you’re familiar with the core concepts of machine learning, then you may understand this very flashcard, because of the provided comprehensible explanation. However, if you don’t yet know that the key to LSTMs is the cell state $C_{t-1}$ (the grayed out arrow at the top) and that an LSTM can remove or add information to that cell state by means of three gates (one of them is the output gate covered in this flashcard), then you should first read the entire blog post before you set out to commit this particular flashcard to your memory.

Now that I understand this specific (sub)topic (i.e., I can explain it) and I learned the (broader) topic (i.e., I know how the given card fits into the overall picture), I can begin to break down my flashcard(s) into smaller pieces that I can then memorize.

In the Anki browser, you can mark such overlong cards by flagging them or by giving them a tag. I like to flag cards that strongly require editing due to their length with an orange flag (shortcut ⌘2). By that I mean cards where the answer is not immediately obvious because of too much information on the card. Cards I cannot even answer because they don’t include a (satisfying) answer yet get flagged with a red flag (shortcut ⌘1). And cards I can answer but where some editing could make the review easier get flagged with a green flag (shortcut ⌘3). The editing includes presenting the information better, for example, by highlighting a keyword for more clarity and other minor editing such as fixing a typo or some $\LaTeX$ code.

The first two rules also are a reason why you shouldn’t use Shared Decks. The real learning happens while transforming these messy, overlong flashcards into the presentable flashcards that other people ultimately are willing to share. Not while memorizing and learning these already polished bits and fragments of information by heart. Your flashcards are only meant to augment some source material, e.g., a textbook, not to replace it; to implant something into you that you already read somewhere else. Obviously, this article is written from the perspective of a computer scientist. I don’t want to presume to know how medical students study with their pre-made Brosencephalon and Zanki flashcard collections, so your mileage may vary. These statements are just based on my own personal experience.

You’ll find loads of more information in the Anki subreddit, e.g., on how to make your Anki cards much more beautiful with a little bit of CSS or which add-ons you should install.

How To Best Use Decks

One common “mistake” Anki-beginners make is that they create too many decks. Let’s say they read a certain book and create a deck called MyBook. They then create a subdeck for each chapter, i.e., MyBook::Chapter1, MyBook::Chapter2, and so on. This is bad for multiple reasons.

Organizing your flashcards this way provides way too much context. Say chapter 3 is about topic X. You then see a certain question for which you don’t know the answer. But because you know that you’re currently reviewing only cards about chapter 3 which covers only topic X, it has to do something with the card you just saw a few seconds ago. The answers become predictable this way. You can sort of guess some answers just from their context and your short-term memory instead of actually enforcing the neural pathway in your brain. This does not lead to long-term retention.

Similarly, Anki-beginners tend to create, e.g., one subdeck called Math::Linear Algebra and one called Math::Calculus instead of just learning maths as a whole. If you learn this way, you miss entirely how some topics are interwoven with each other, e.g., eigenvalues and differential equations.

To develop that thought further, such a separation also prevents interdisciplinary insights. The most valuable ideas often come forth when you connect different, maybe even seemingly unrelated fields, e.g., quantum physics and biology, or computer science and economics. A good understanding of the one can lead to a deeper understanding of the other, and vice versa. It’s the same reason why, as a programmer, you should learn more than just one programming language: it let’s you view a problem from a new perspective and come up with an innovative or more elegant solution. To quote Scott Adams’s career advice:

If you want an average successful life, it doesn’t take much planning. Just stay out of trouble, go to school, and apply for jobs you might like. But if you want something extraordinary, you have two paths:

  1. Become the best at one specific thing.
  2. Become very good (top 25%) at two or more things.

The first strategy is difficult to the point of near impossibility. Few people will ever play in the NBA or make a platinum album. I don’t recommend anyone even try.

The second strategy is fairly easy. Everyone has at least a few areas in which they could be in the top 25% with some effort. In my case, I can draw better than most people, but I’m hardly an artist. And I’m not any funnier than the average standup comedian who never makes it big, but I’m funnier than most people. The magic is that few people can draw well and write jokes. It’s the combination of the two that makes what I do so rare. And when you add in my business background, suddenly I had a topic that few cartoonists could hope to understand without living it.

That’s why I try to use only one single deck. In this deck, I put everything; from computer science to physics, biology, chemistry, et cetera. One question might be, “When is a matrix $A$ called orthogonal?” and the next question, completely unrelated to the one before, might be, “The thoracic spine is composed of how many vertebrae?”

If I need to focus on a certain topic, e.g., if I need to refresh my linear algebra knowledge for an upcoming exam, I just create a filtered deck by pressing F in the main window and search for the tag for the particular topic I want to study (e.g., tag:linear-algebra). That’s why it is crucial that you meticulously add tags to your flashcards.

I’ll create another deck only for topics that are truly independent from all other topics. Being able to speak Swedish probably isn’t going to further my understanding of quantum physics or computer graphics, and it likely won’t provide me any insights in the sense of the quoted career advice. The reasoning for using separate decks for such topics is that filtered decks are only meant for temporary use, e.g., before an exam, to quickly brush up your knowledge. They have to be rebuilt once you’ve gone through all cards, since every reviewed card is moved back to its original deck after finishing the filtered deck. In my daily study routine, I want to go through my default deck and I also want to set aside 30 minutes a day to go through my Swedish vocabulary. Using a filtered deck for this use case would not be the most appropriate choice, since I would have to recurringly rebuild the filtered deck. I hope that made it clear when to best use a filtered deck and when to use a deck/subdeck.

The “official” way to install an add-on is to open the Tools > Add-ons menu item (shortcut ⇧⌘A on macOS) and simply paste the add-on’s ID into the prompt. An add-on’s ID is the number in its URL. For instance, the Frozen Fields add-on’s ID would be 516643804.

Some add-ons such as the popular Review Heatmap add-on are not yet available for Anki 2.1 via the “official” way. Although they work perfectly fine with Anki 2.1, they have to be installed manually as long as they’re in beta status.

With that being said, here are the add-ons I use and recommend:

I also highly recommend downloading the Mathpix Snip app for easily creating flashcards containing $\LaTeX$ code. With this app, you just take a screenshot of some math formula and the app—with the help of machine learning—recognizes the characters in the image and outputs the corresponding $\LaTeX$ code. This app is a huge timesaver.

How Does Anki Work Behind the Scenes?

After you’ve made yourself a little bit familiar with the interface and how to use the browser, how to add cards, etc., you should definitely learn how the Anki algorithm works. The reason you are using Anki in the first place is that you want the application to present you your flashcards at the optimal time, so that you can move the content of your flashcards to your long-term memory in the most efficient way with the least effort possible. Unfortunately, Anki’s default settings are far from optimal. Thus you will waste a lot of time on learning your flashcards in an inefficient manner if you don’t set out to understand how the scheduling algorithm works in order to improve the Anki settings. The algorithm seems a bit intimidating, but actually it is not that difficult to understand once you get the hang of it. This is the best video I found explaining how Anki works behind the scenes.

What Now?

At this point, you have a lot to do:

  • Get familiar with the software by reading through the excellent documentation and other resources.
  • Create flashcards.
  • Review your cards daily. Don’t fall behind.

There definitely is an immense learning curve if you want to get the most out of it, but it is worth it. Learning how to use Anki—and thus learning how to learn—is an extremely beneficial meta skill to have. The smartest people I’ve encountered so far in my career all seem to use Anki or some other sort of flashcard system. That’s why they’re so knowledgeable in the first place.

Further Resources

I recommend that you take the Learning How to Learn course on Coursera by Barbara Oakley. It is the most popular MOOC on the entire site. If you want, you can read the accompanying book, A Mind for Numbers, too. Some say it’s even better than the course itself.

Before you buy any book or commit so much time and energy into a course (even though it’s free), you can first check out Barbara and see if it is worth your time by watching her TEDx Talk or Talk at Google.

I also recommend reading at least the first of these two articles by Michael Nielsen:

  1. How he uses Anki.
  2. How he dissects a mathematical proof or concept in general, irrespective of Anki (although using Anki helps).

If you want to dig really deep into spaced repetition, you can read this enormous blog post by Gwern Branwen.

A programmer named Jack Kinsella suggests an approach (consisting of following 8 rules) he calls the Janki Method.

Maybe you’ve come across the terms Brosencephalon or Zanki and don’t know what they mean or how they are related to Anki. These terms simply refer to two different pre-made decks that their creators (two medical students) shared on the subreddit /r/medicalschoolanki. Unless you study Medicine, you do not need to know about these terms.

If you want to know how I use Anki to learn foreign languages, check out my other blog post.

Final Words

Learning is a continuous process. One can alway try to work on oneself and improve one’s learning techniques. As I discover new learning strategies, I will see that I update this article accordingly. So be sure to follow me on Twitter to get notified when I update this post or publish a new post. Thanks, and take care.


  1. This coincides with what one of my favorite thinkers, Naval Ravikant, has to say↩︎

Last updated on Feb 05, 2020
As an Amazon Associate I earn from qualifying purchases.
Built with Hugo
Theme Stack designed by Jimmy