A Workflow with Spaced Repetition

post by Emile · 2013-11-03T15:58:41.117Z · LW · GW · Legacy · 16 comments

Contents

  Overview
  Daily routine: transit
  Reading books
  Reading online material
  What if I get behind?
  What I learned
  What I’d like to improve
  More resources on Spaced Repetition
None
16 comments

This is a detailed description of my reading and learning workflow. You may find ideas to adopt, or maybe you can tell me what I could be doing differently!

Overview

I've been using Spaced Repetition on and Off for the past few years, and have built a solid Anki habit this last three months, to the point where now I wonder how I could read books without entering the important points into Anki.

I recommend getting a habit of using Spaced Repetition, it's a small habit that doesn't require too much willpower (it can feel like a game, if done right!), and is useful in the long term.

Daily routine: transit

I have a dozen or so Anki decks. Some I consider “valuable” (Algorithms, Driving Code, Git commands), some less so (Paris Metro, Hiragana and Katakana, Vim commands, …). I also carry around a book, notebook and four-color pen.

On any downtime (waiting for transit, waiting in line in a store, standing in crowded transit…), I’ll review my decks, starting with those with the most due cards.

On some days I may not finish all the decks, but that’s no big deal; with an hour and a half of transit per day, I’ll get to them eventually.

If I can sit for a bit of time, and don’t have too many outstanding cards, I’ll usually read a book (or work on stuff in my notebook if I have some stuff that needs brainstorming).

Reading books

If I’m reading fiction, I’m relaxing, I don’t need to try to remember anything :)

If I’m reading non-fiction, I’ll usually have an index card as a bookmark and place to take notes - things to look up, summaries and rephrasings, diagrams, page numbers of parts to come back to, and of course things to enter in Anki (though I’ll sometimes just directly enter them in my phone).

I’ll reread my notes when I finished the book or a big chapter, or when I come back to the book after a long time, and eventually enter them in Anki (usually with Anki's web interface, which is quicker than typing on a phone).

Reading online material

I have a bunch of Google Docs where I take notes on various topics (why Google Docs? I can search them, share them if needed, work with them from various places). If I’m reading something I want to remember, I’ll usually have a corresponding google doc open in another window (so I can see both at the same time - hunting through tabs breaks the flow). My notes will be a mix of

How do I declare that Integer is of class Eq, using IntegerEq?
instance Eq Integer where
  x == y                =  x `integerEq` y

(note that in this case it's three lines, when entering into Anki I'll have to put the first line as question and the two other ones as answer)

Building the anki cards in Google docs makes it easier to make related cards by copying and pasting the same question and changing little bits ("Question: ???, B and C", "Question: A, ??? and C", "Question: A, B and ???")

In the evening, when I don’t have the energy for something more difficult, I’ll occasionally copy batches of stuff from Google Docs into Anki. To do that first I copy everything into a plain text file (to strip all formatting, otherwise things look weird in Anki and it’s distracting), and then cut-paste the cards into Anki by alt-tabbing between the text file and the Anki web interface (this sounds cumbersome but can be done fairly quickly using pretty much only the keyboard).

What if I get behind?

No big deal, I’ll review the “important” decks first, and then eventually catch up on the rest (Some people recommend using one big deck for everything; I prefer having several small decks because it makes it easier to catch up with what matters if I “fall of the bandwagon”).

What I learned

What I’d like to improve

Batch-entering data is a bit complicated, I wish I could just select a bunch of text in google docs and say "just put all this in Anki". However, as a low-energy habit batch-copying stuff feels a bit like a game so I don't mind that much.

More resources on Spaced Repetition

The article on the Wiki points to a few discussions here of Spaced Repetition (which are worth reading if you want to see how other people use it), including Gwern's excellent article.

How about you? Do you use Spaced Repetition? Have you tried, but give up? Do you have a workflow with some bits that differ from mine? Do you have any tips of things I could do better?

16 comments

Comments sorted by top scores.

comment by luminosity · 2013-11-03T21:04:06.772Z · LW(p) · GW(p)

I wish I could put some decks at “low throttle” and some at “high throttle” (say, I want to learn 20 driving code cards a day, but only 3 vim cards). Anki has a setting that says how many new cards you get, but it's global; so either I change that setting all the time (which can be done fairly quickly), or control the influx by leaving stuff in Google Docs.

I just double-checked. You can. Create a new option group for a deck, go to its options, and change the number of new cards, reviewed cards, etc per day. I currently have Latin vocab set to 5 new per day, Japanese vocab set to 10 for instance. (Done through Anki for Windows, unsure if you can set this up through the web or phone).

Replies from: Emile
comment by Emile · 2013-11-04T10:57:37.500Z · LW(p) · GW(p)

Hmm, looks like what I need, thanks!

However, I tried doing that on my phone, but the options for adding new option groups was disabled (there was a menu, it's just that all the entries were greyed). I didn't find anything in the top-level options either.

The web interface has even less options, so I'll probably have to install a desktop version and then sync with my phone - when I'm not at work.

[edit] By the way, I got this to work fine with the latest desktop version. Thanks!

comment by Antisuji · 2013-11-03T16:41:57.967Z · LW(p) · GW(p)

I'm a fairly long-time Anki user, about 2.5 years now, and my biggest frustration with it is a lack of workflow. I've tried to set one up a couple of times, including one point where I was using Anki's CSV import functionality, but there were always too many steps. Things would get backed up at the bottleneck. So at this point I just use it in maintenance mode and add a new card manually once a month or so.

(My second biggest frustration is that Anki doesn't really let you learn things as sets, and I can't figure out how to make cards parameterized. For example, I want to really learn the NATO phonetic alphabet, and I have a card for each letter, but I'm still slow when I spell things out. I want software that creates drill cards and uses spaced repetition scheduling based on how I do on the drills. Same thing for certain types of math problems. I understand Khan Academy is now using spaced repetition to periodically reinforce older subjects, but you're stuck using their material.)

I looked around for alternatives a week or so ago and discovered memrise, which is actually quite good, in some ways a distinct improvement over Anki (the game-like feel, the UI in general, lots of decent pre-made decks), but has its own share of disadvantages (can't copy decks or edit decks you didn't create, all data is stored on their closed, proprietary system, creating decks still feels clunky). (ETA: it occurs to me that creating a LW Concepts deck on memrise might be a good way to raise the sanity waterline. There are similar decks there already, like this list of cognitive biases.)

I don't really want to spend the gobs of time that would be required to create the ideal SRS system (good workflow, adjustable importance, parameterized sets, etc, etc) especially since so much pretty good stuff already exists. But if someone else feels inspired to take on that task I'd be glad to help out however I can.

Replies from: ChristianKl, ChristianKl, Jayson_Virissimo, MathiasZaman
comment by ChristianKl · 2013-11-04T11:58:58.743Z · LW(p) · GW(p)

I don't really want to spend the gobs of time that would be required to create the ideal SRS system (good workflow, adjustable importance, parameterized sets, etc, etc) especially since so much pretty good stuff already exists. But if someone else feels inspired to take on that task I'd be glad to help out however I can.

Anki is open source and allows for plugins. If you want to help making Anki a better SRS system the road seem clear.

comment by ChristianKl · 2013-11-04T10:35:07.228Z · LW(p) · GW(p)

I looked around for alternatives a week or so ago and discovered memrise, which is actually quite good, in some ways a distinct improvement over Anki (the game-like feel, the UI in general, lots of decent pre-made decks), but has its own share of disadvantages

It doesn't allow for rating cards as Hard/Good/Easy. As a result it's going to show some cards way too often. It seems very inefficient.

comment by Jayson_Virissimo · 2013-11-03T23:51:04.580Z · LW(p) · GW(p)

When I was training to be a 911 operator, in addition to reviewing them in Anki, I would just read aloud all the license plates in our standard alphabet that were in my field of view (provided I was alone). It became second nature in short order.

comment by MathiasZaman · 2013-11-03T21:11:11.418Z · LW(p) · GW(p)

For example, I want to really learn the NATO phonetic alphabet, and I have a card for each letter, but I'm still slow when I spell things out.

This is one of the things that might benefit from social learning. Find a friend that also wants to learn it and play around with it together. I learned the entire alphabet during an internship with a local police force and it never slipped my mind since. It's something that you need to use in order to memorize it.

comment by [deleted] · 2013-11-06T03:49:09.227Z · LW(p) · GW(p)

My method is to have specific decks for when I'm first learning something, and more general decks for things I've learned a while ago.

My specific decks are for things I am currently working on. These may be for courses I am taking or textbooks I am reading. Examples are 'control systems', 'thermodynamics', or 'nuclear reactor theory'. Having them separate like this allows me to cram if needed, such as before a test. Also, if I fall behind I can catch up by studying these decks first.

I have more general decks for things I've completed learning. For example, I might move my three above example decks into a more general 'engineering' deck once I've finished those courses. This allows me to keep my number of decks low, and mixes up the cards pretty well.

Replies from: ChristianKl
comment by ChristianKl · 2013-11-08T17:45:47.182Z · LW(p) · GW(p)

I would add that it's good to keep tags if you merge decks into the main deck. That way you can always go back and selecting all cards to move them out to cram should the need arise.

comment by [deleted] · 2013-11-11T04:46:19.648Z · LW(p) · GW(p)

My workflow is that I spent 30 minutes a day going through the cards. I do them all until I complete them. Usually, that mean I finish them all within 30 minutes. If there's spare time, I learn some new cards until 30 minutes is up. Otherwise, I never learn anything new that day. Over half of the content entered is never reviewed before, so I have quite the reserve.

Usually that mean hundred of cards are studied everyday. Then I spend 5 minutes editing my cards, either for errors, or for fact checking.

comment by Locaha · 2013-11-04T19:38:39.409Z · LW(p) · GW(p)

I use Anki mainly to improve my english vocabulary, a language I'm already proficient in. When I learn a new word, I strive to learn it deeply, including all or most meanings, and examples of use. My questions are usually just a single word, while the answers are a conglomeration of a few online dictionaries.

Did you know a "divot" is both a piece of turf torn out by a golf club AND a hole it left in the turf? You can put a divot back into the divot, I guess. :-)

Sometimes I learn stuff I can't even translate. Why "merkin" is even a word???

comment by ChristianKl · 2013-11-04T11:58:04.027Z · LW(p) · GW(p)

I’ll reread my notes when I finished the book or a big chapter, or when I come back to the book after a long time, and eventually enter them in Anki (usually with Anki's web interface, which is quicker than typing on a phone).

I would encourage you to use the desktop version to add new cards. It's better developed than the web application and the android version.

comment by Metus · 2013-11-03T19:35:25.130Z · LW(p) · GW(p)

In case people do as I do and interpret this as a suggestion box: I would find it interesting to be able to answer with a confidence value from 0% to 100%. The SRS should take this in account to decide when to show the card again. Wrong or unsure answers will be repeated very soon and wrong more often, very confident and correct answers get much longer resting time.

Note that I do not use Anki or other SRS as they have been some pain to work with for me. I'd like to use them on my Android phone but in the past it was just too much of a hassle to get it up and running and maintaining it.

Replies from: deskglass
comment by deskglass · 2013-11-03T20:32:46.879Z · LW(p) · GW(p)

Is that not what SRS like Anki does already? Granted they force you to pick one of 5 categories of difficulty rather than one of 100, but it's basically the same.

Replies from: hyporational
comment by hyporational · 2013-11-05T17:49:53.789Z · LW(p) · GW(p)

Not really. You pick the category after the answer, not before. The categories are supposed to represent effort in remembering the answer, not how lucky you got with your guess.

Replies from: None
comment by [deleted] · 2013-11-05T20:21:21.518Z · LW(p) · GW(p)

If you're guessing, mark that card as having been wrong.

In real life, there are probabilities, but in Anki, you should have either "I remember this with certainty," or "I've forgotten this."