+1 for anki, the greatest tool i have ever found for learning - i will use anki for the rest of my life, without a doubt. i still everything in there now, math equations, history, italian (which is why i started using it), haskell, birthdays, my new address, phone numbers, vocabulary.
People ask for your setup, but I'd love to see examples of your cards.
I've tried using Anki for things, but I struggled with figuring out how to put things on cards. Languages are easy - you put vocabulary. History sounds easy too - you put dates and names.
But how on Earth do you use Anki for Haskell? How do you use spaced repetition to learn fields that's about concepts, not memorizing bite-sized facts and factoids? I would love to know that, since most of the things I'm trying to master have to do with things I find too large to put on a flashcard.
For flash cards I use different types for different things, I use the fluent-forever picture cards for almost everything related verbs / adjectives / and nouns in italian and for english vocabulary words (like words I do not know when Im reading a book.)
I use to ONLY read physical books, but after speaking with someone else on hacker news about it, I use the kindle only, and heavily use the kindle highlight feature, download them, and create tons of flash cards using cloze deletion in anki. I also use kindle highlights to keep track of vocabulary i am unfamiliar with.
For math related stuff, I have two way cards for tons of theorems. example "what is the law of large numbers", "what is mean's value theorem", "what is the definition of taylor-series expansion", "what is the difference between a taylor and maclaurin series". I have hundreds of these cards that I can review anytime I want. My programming cards are very similar. I try to create very concise cards, based on the steps found here: https://www.supermemo.com/en/articles/20rules
I am just starting to experiment with incremental reading now too: https://www.supermemo.com/help/read.htm. I have only been using it for a few weeks, but im convinced this is the way to do it.
If anyone has any questions or comments, send them my way -- These methods are not perfect, but they work for me, and I am always trying to improve them.
On last thing that helped me with anki, if you can figure out a way to add an image to the card, add it, if it seems superfluous --- this really helps with retention.
I use Anki too, but probably not as much. IMO Anki is a tool for memorizing things, not learning them. You don't make a card for anything you don't already understand.
Don't get me wrong, I think memorization is still useful for things like Haskell. You already have to have learned the concepts, but Anki helps you migrate what you've learned to a part of your brain where you just know them, no extra conscious effort required. Eventually this has to happen with what you already know if you are going to tackle bigger concepts, Anki just streamlines it.
ya that is correct, i take common things like print/control statements, function definitions, etc and make sure i see them a lot so i dont forget them (haskell is a language im trying to learn, i do not use it for work so i dont see these things as much as i would)
spaced repetition is life changing