Anki: Memorization with Spaced Learning
apps.ankiweb.net
apps.ankiweb.net
Personally, I've used Anki to keep remembering/revisiting the concepts that I use for a while and then move onto something else. Common APIs of programming languages and their standard libraries is one such area. I've found that while it's not really difficult to learn and get into the flow of using a programming language (or history, mathematics, physics for that matter), it's more difficult to try using the same knowledge after a break of few months.
My main language at work is C# and Web Development, but I keep trying to learn other languages and domains in my free time. If I do not use the knowledge for a few months, I forget everything. But with Anki I have to just open the app for around 10 minutes a day and it helps me to recall such concepts in a timely fashion.
I would suggest everyone who has the time and faces similar issues should give it a shot.
Some categories of cards I have that may serve as inspiration for others wishing to get into flash cards..
* Basic information about countries e.g. population
* Ingredients and dishes from restaurant menus I didn't know
* Important people and places
* History facts (typically from Kindle highlights)
* Conversions between units (e.g. lbs to kg)
* Season for various vegetables and fruits
* Keyboard shortcuts for vim, readline, etc.
* Learning words and terms I don't know from Kindle/Instapaper highlights
* Useful statisticshttps://forums.developer.amazon.com/questions/68355/regardin...
Upon research, there's a few tools like https://readwise.io/ and clipping.io which are chrome extensions.
They webscrape your homepage highlights here:
https://read.amazon.com/notebook
https://read.amazon.com/kp/notebook?ft
Readwise is like evernote for kindle highlights. It sends 10 or so highlights as a daily message email.
Do you have any other ideas/suggestions?
I'm in the process of turning many knowledge aspects of my life into a personal knowledge base inside org-mode. For books I'm reading, I find it invaluable to create org-mode items. One per concept. Sometimes I don't even bother filling the content. E.g. I just use a title like "Hadamard transform definition" and nothing else. It'd be to time consuming to write up the definition, and it's pointless as that's in the book anyway.
Then, org-drill brings up some of this cards according to the spaced-repetition algorithm. I answer them with pen and paper. Sometimes I need to prove a theorem, or recall a definition like in the example above. I then open up a book to check my reply is correct and grade myself accordingly. It's a great system to systematize learning.
Many if not most people on HN are knowledge workers. For us especially, many tasks in our inboxes are non-actionable. E.g. a link you stored that teaches a great trick to use your editor, or an elusive shell one-liner you came up with.
What to do with these? A good productivity system should also include a knowledge base, so that those non-actionable bits of information that have future value can be easily stored and later retrieved. Here they explain it better than I do: https://praxis.fortelabs.co/gtd-x-pkm-8ff720ef6939/
A further tweak is to force spaced repetition on those knowledge bits you want to be able to learn by heart. In Emacs, you can achieve this by simply tagging them for later org-drill (spaced-repetition) sessions.
As a student I used to do this with pen & paper. I would patiently deconstruct books into extremely long lists of items that included definitions, theorems, corollaries, demonstrations, and whatever concepts in the right order. Then I recalled them during repetition sessions. Doing this with a spaced-repetition algorithm is a much more efficient way, as you focus your effort on hard stuff and you time sessions appropriately to maximize the chances of learning it.
I am one of those guys who try moving everything to Emacs, but personally I found Anki to be much better than org-drill just for the simple reason that I can go through the cards quickly using the phone app when I have some time (waiting for someone, something, etc.). With org-drill I have to be in front of my machine.
But yeah, I've pretty much sold to org-mode. I, too, have been creating a knowledge base inside org-mode. This contains the deeper knowledge and explanations, while the tidbits are in Anki. Org mode notes are like fat nodes, and Anki cards are the threads which bind them. I personally have found both to be very useful together.
But on the other hand, org-drill will fill your org file with scheduling and metadata drawers (I did some hacks to hide them but not able to make it work without messing the org-ellipsis).
Another drawback with org-drill is it manages schedules for one "card" per heading, hence cloze items are not scheduled individually. So, either you remember entirely "Alfred North Whitehead wrote [Principia Mathematica] in [1910]" or not at all. In Anki, not only the book title "[Principia Mathematica]" and the written year "[1910]" are tested separately (same as org-drill), but also scheduled/scored separately too (where org-drill falls short).
I use both, org-drill mostly for books, Anki for "standalone" facts. But I'm always wishing for some kind of a system that hit the sweet spot between them two.
I decided to feed all the concepts of my criminalistics class into the program and only study that way. The class contains a lot of procedures and tidbits you kinda have to memorize (It was a bad class, I think it should've been taught entirely different but that's another subject).
I came out GREAT. I aced the fuck out of that class and I didn't even have to use anki every day.
Also worth paying attention when reviewing flashcards, as described in [2]:
And when I rush through my flashcard reviews, I’m not thinking. I’m focusing on the wrong question: “Do I remember this perfectly?”
Instead, whether I happen to have perfect recall or not, I should focus on: “This is my time to think about this again.”
Major paradigm shift.
[1] https://ankiweb.net/shared/info/1081195335
[2] https://yourawesomememory.com/reviewing-as-thinking/* Only put things you know into Anki. An individual Anki card should feel a little too easy when you make it.
* Put in words with a good amount of context. Avoid single words as much as possible. The quickest way to do this is to just input the sentence from the book/TV where you learned the word. You'll learn collocations and grammar structures by doing this.
* Delete cards when they give you trouble. Language learning is a marathon, if the word is important you'll see it again. If you keep getting a card wrong then you probably didn't actually learn it in the first place, or the card is written in a confusing way.
* Avoid the temptation to input huge lists of words automatically. Lots of beginners download "3000 Most Common Words", put them all into Anki and then give up within a few weeks. A language is much more than just a list of words.
I’m just curious. I’d like to use Anki to get better at reading and playing chords (on keyboard / piano) from symbol notation but I haven’t started yet. Would you recommend learning each chord one by one and entering them into Anki as I learn them?
The question about piano chords is really interesting. I often compare learning a language to learning to play the piano. Both are real time skills that require practice, to just learning. I meet someone who loves reading grammar books I say "You can read a book on piano construction 100 times and you won't learn to play the piano.
As for your case, what is the skill you want to learn? Playing the chords right? Then that has to form the main focus of your practice. By all means, use Anki to help memorise chord names and chord patterns but be careful: You might just get really good at seeing a chord and saying it's name rather than seeing a chord and playing it!
Also, sight-reading is a very real-time skill. You have to read those chords and then play them on the right beat. If you practice chords with Anki you might get good at seeing them in Anki and then playing them a few seconds later, but it's not the same as doing it in real time.
So perhaps a good approach would be to do the Anki spaced learning sessions in front of the keyboard and actually play the chord as the answer. I may not become a great real time sight reader, but being able to see a chord like C+9 / C95 and be able to play it a second or two later should be good enough.
Thanks for the advice.
Anki is for retention, not learning. If you haven’t internalized what you’re flashcarding, it’s not going to stick just because you’re using spaced repetition.
Anki has that feature built in actually, they're called leeches. By default I believe it's set to 7 mistakes. The idea is that if it happens, you need to either remake the card or do as you said, and wait for it to come up later.
* When learning languages, create your cards in a way that you must type the answers in Anki. It's way easier to acknowledge how confident you are with them.
* Your Anki cards/decks shouldn't be static: edit and tree-shake them often. It means that you got a deeper understanding of the subject.
Beyond that it is like trying to learn how to ride a bike by putting facts about balance and motion into your Anki deck.
Vocab is a grind no matter how you do it, but the best place to be is being able to read books. This will allow you to have a natural repetition in context and get you will easily and enjoyably acquire the vocabulary. However, once you're past the most common 3000 words or so, new vocabulary often shows up at pretty rare frequencies. So if you're free reading and you encounter a rare piece of vocab it's quite useful to jam it into SRS software like Anki and review it until you are up to about 1 month frequency -- which will probably be when you encounter the word naturally.
1. Read an article.
2. Encounter a word or phrase you don't know.
3. Keep reading!
4. If the meaning of the word or phrase "clicks" for you, put it into Anki. If not, look it up in a dictionary. For words you have to look up, think very carefully about putting them into a dictionary. There are no hard and fast rules but err on the side of leaving them out.
Review the cards whenever you have time. If you have so many cards that "Review anki cards" is something you have to schedule time for then imo you have too many.
Let's imagine I'm learning English and I read a BBC article and I see this sentence:
> They often have to get creative when "cashing out" or laundering the money they have stolen, according to a security expert.
Hmmm. I don't know what "cashing out" or "laundering" means. Let's keep reading.
> "They can try to sell the card, which is not big money because they only get a few dollars for each one," he said.
Aha! "Cashing out" must mean getting money from what they did. Now that I've learnt "cashing out" I'll put the original sentence into Anki. The back of the card will be an explanation of "cashing out". When you start you can use a translation into your native language. Then when you get better you can use a dictionary definition in English or even write your own definition. Anything that helps you remember the phrase that you already learnt.
After I finish reading the article maybe I check "laundering" in a dictionary or maybe I just leave it. Don't worry that you'll "miss" a word. If it's common you'll see it again. If it's extremely rare then you won't see it again and won't need to know it.
Learning a language is like walking through an orchard. Pick the ripe fruit and leave the rest. If you try to grab everything you won't be able to carry them.
Great analogy, it really resonates with my experience. Your Anki language learning tactics also.
Before Anki, I tried to learn Polish with Memrise and it didn't work. With public decks you will waste time on irrelevant words for your usecase and soon you'll get bored. You MUST do your decks. My tactic is to digest everyday one or two headlines from a Polish newspaper and create 2-3 cards with relevant words/expressions (3 x 365 = 1k+ cards/year!).
I used to agree with the traditional SRS criticism: learning is not memorising stuff. But after trying it I reshaped my beliefs: learning is understanding and memorising.
Time spent flicking through flashcards for vocabulary or formulae or chemical paths or whatever seems like a poor substitute for time spent reading material that uses the vocabulary, explains the derivation of the formulae, or describes the chemical process, or whatever...
Is this just about passing tests, or is this genuinely how other people approach learning?
You can't effectively read material without having enough vocabulary to cover at least some 80% of it.
My most recent language learning experience is Japanese. The difference between trying to read before cramming on an ~8000 word vocabulary and after is night and day.
And the comparison basis here is not reading hardcopy, but electronic text with the help of an instant dictionary lookup tool (hover the mouse over anything to get to the reading and meanings instantly). That is to say, even with that tool, which eliminates some of the barriers of the writing system, trying to read is still like pulling teeth compared to the experience when you're crammed on a decent chunk of vocab.
Vocab gets you to that point where you can guess the meanings of unknown words from context, as well as their readings. You can start using mono-lingual dictionaries and other resources.
Now if you're coming from, say, one European language to another, you may be able to get away without using spaced repetition, because of a lot of shared vocabulary (cognates) and concepts.
In any case, brute force reading is spaced repetition. It's just inefficient spaced repetition that fails to schedule the appearance of a word based on your recall performance for that specific word.
Should, because I've never tried it, but wish I could. Something like Kindle + Audible + augmented learning would be my dream. I always get my additional info from deep-diving Wiki and the internet, but that's obviously not as deep as a good set of notes, or a teacher should get me. There's an undeveloped space between the layman and the scholarly level.
In high school there was this old-school paper database resource I really liked that gave you this perspective for all the great novels. It didn't help you directly with your book report, but it helped find the words, themes and directions to report about. I even remember one: the 'vatersuche'-motif, which is a literary concept where a young man is looking for knowledge about his father via his actions that make the plot. It's so obscure, I can't even google it right now. That, or I don't know the proper translation, which proves the point.
Can you tell me what text you were reading and what tool you were using? This sounds like exactly what I have been looking for my japanese learning.
There is something called the "natural order hypothesis" that states that the order in which people acquire the grammatical structures of a language is roughly the same, no matter what order the grammar is introduced. This is one of Stephen Krashen's hypotheses that has some good evidence in trials.
So the problem is that if you pick a piece that has a lot of grammar that you haven't acquired yet, you'll be spinning your wheels for a long time. The solution to this is simply to move on and find something else to read.
As for tools, the rikaichan plug in in Firefox and the Chromium port (rikaikun) are the main ones. There are lots of children's stories on the internet. Search for 昔話. You'll find lots to read :-) If you're a bit more advanced, then news is always good. TBS news is nice because they always give you both the video and audio along with the text (which is invariably exactly the same as what's in the video): http://news.tbs.co.jp/
But you can even read Twitter or and other social medium. I spent a long time reading the Ruby dev list in Japanese to learn computer terms. Good luck on your studies!
Care to share the tool you use to read and the dictionary tool?
> I have never really found that memorization was ever an obstacle to my ability to learn something.
I think it depends what you are learning, for example when learning languages I find a lot of the difficulty is just in retaining the words.
Another place where I've found it useful is for memorizing definitions in (pure) mathematics. To be able to read the later parts of a book you need a good working knowledge of earlier definitions. You could look back for the definitions every time, but that breaks the flow of reading.
> I've always found that retention proceeds from understanding.
Yeah, I find that too. But this is something that I do after understanding something to help retain it better and for longer.
> Time spent flicking through flashcards for vocabulary or formulae or chemical paths or whatever seems like a poor substitute for time spent reading material that uses the vocabulary ...
The time I spend on memorization is very small, less than 5 minutes a day, and I usually do it on my phone while I'm waiting for something. It replaces checking reddit or playing phone games rather than deep reading of interesting material.
In general, it helps with indefinite retention. And if you don't do something often, or regularly, any permanent footholds offer some scaffolding to get back up to speed quicker the next time you need to do it.
As a problem approaches looking like learning a language, spaced repetition gets more useful. If you learn a second language, you will probably hit a plateau if you never try to memorize anything, because language has a large set of symbols, some infrequently used, but still critical in some situations.
It probably helps anywhere that "deliberate practice" and "memorization" almost overlap in how they work or in effectiveness, say, in memorizing program hot-keys.
I mean, taken to an extreme, that's clearly wrong - if you had no working memory (or, say, forgot everything after 10 minutes), you also couldn't learn anything, at least in the sense of being able to use that knowledge long-term. Learning and memorization go hand in hand - learning is, in a sense, the act of getting new things into your memory.
If you mean that there's more to learning than just memorization, you're right! (mostly, see note) In many domains, you need more than just to try and rote memorize a bunch of facts. E.g. when studying math, you need to memorize things like definitions, but also understand them, which is another way of saying "memorize what they really mean". You need to "memorize" how to solve problems. Etc.
You certainly need to have that initial understanding when reading the material the first time, otherwise you can't possibly remember it. But, all of these can reasonably be called memorization, because they are all things that you might know one day, but get lost over time, and are things you can "drill". Therefore spaced repetition is a good way to make sure the stuff you learned once will stay in your memory long term.
Note: some things are pure memorization of facts, in a sense. E.g. I memorized all the locations of countries of the world, then their capitals, and now I'm working on their populations. There is some understanding that goes in here (and one of the reasons I do it is because it forces me to learn more about countries and make interesting connections), but for the large part, this is just brute "practice this fact enough times" learning.
With this approach, Anki is much more about retention than learning. Books and lectures are good for learning, but Anki is ideal for ensuring I can remember side effects of a particular heart medication months or years after cardiovascular lectures ended.
It’s certainly useful for passing tests too, but the main value is in retaining knowledge long after a particular test has been taken.
I've been using Anki decks in tandem with native reading material to study Japanese. Whenever I encounter a word I don't know, I add it (along with a sample sentence demonstrating usage) to my Anki deck. Whenever I don't do this I get frustrated by having to look up the same words multiple times (often times a new word is used infrequently enough that I forget it even if I look it up every time I encounter it).
Also, when learning Japanese, there are a lot of things where memorization is very useful like learning to map between English words and kanji and learning the readings of place names and people's names.
There are cons too. The flexibility comes at the price - while reviewing the flashcards is smooth and easy, creating a deck can be very frustrating - the interface is not the most user-friendly. I ended up creating decks in Excel, exporting to csv and importing in Anki. That made the whole process much easier but I still had to jump through some hoops to achieve that.
Another problem (with the algorithm, not Anki itself) is that it's very easy to forget what you've just learned if you don't keep using the app. It's super easy to learn hundreds of vocabulary within a short period of time and pass the exam, but you need to keep reviewing the deck for at least a year, otherwise you'll forget it as quickly as you've learned it.
My main gripe with the algorithm is you can't take weekends off. I used Anki a lot in College, and Mondays where terrible, due to the backlog built-up over the weekend.
One could also say, one shouldn't be drinking the weekend away ...
Instead, change the limit of cards to review to the number that you can get through in the time you have.
(Unless your college schedule requires you to actually crunch some number of cards every day? I don't know if that's a thing, but using spaced repetition in such a case would seem ill-fitting anyway.)
I actually brought this up with the devs. The way Anki counts this limit is just how many draws from the stack. A better way (and much more intuitively aligned with the wording) to count this, would be to limit the size of the stack you draw from.
Wouldn't it be more accurate to say that this is a problem with human memory in general?
I still find it odd that the only two groups of people who seem to use the software a lot are med students and language learning enthusiasts.
Supermemo is really buggy, and the website is extremely disorganized, but has a lot of useful information on it. The main reason I use it is its incremental reading function. Essentially, you can import articles, and turn them into flashcards in one swoop, while still having access to the full text via built in search (if you choose).
For example, I just finished importing most of the CSS reference [1]. And it only took me ~10 minutes to open the tabs and import them into Supermemo. Each page will get whittled down into flashcards over the next few weeks.
As others have stated, my srs usage is actually quite a small portion of my day, and extremely high leverage.
The hardest skill to learn is learning how to make flashcards properly [2]. I almost exclusively rely on cloze deletions now.
I do my repetitions in the morning when my memory is still fresh.
[1] https://developer.mozilla.org/en-US/docs/Web/CSS/Reference
(Though I'm not sure how the internal database structure works with that, I think you can't save the whole text along with a deck instead of individual notes―but maybe addons can change that.)
Now incremental reading for me is a multi-monitor and multipass approach. One monitor has Anki, the other has the thing I'm reading. I keep on reading and keep noting down questions.
I've also come to realise that the context is totally different when I frame a question during reading, and when I revisit the same question later. A lot of times I have to clean-up the question: perhaps add a little more context, change wording etc. so it becomes a bit easier to answer.
I just thought that it might be of interest for people already using Anki and curious about incremental reading.
The nice thing about Anki is that you can use it at any time without any overhead associated with beginning or ending your session. There are so many scraps of time in my day (on the bus, waiting for someone to meet me, waiting for my food to heat up in the microwave, walking to the store, etc.) that are mostly only useful for being a zombie on my phone, enjoying my surroundings, or being alone with my thoughts, which are all also sometimes appropriate uses of the time, but in all of these times, I can also just pull out my phone and start reviewing my cards, even if I get in just a few.
I made my own Anki deck because this deck didn't have tags by chapter, and I wanted to study only the words I'd been exposed to so far.
Thanks.
Not sure what the nature of your interest is, but I'm sure you must be familiar with what a Swadesh list[1] is? It's only a couple hundred instead of a thousand, and the words (or rather, their meanings) are chosen in advance, but it's a close concept.
[0]: http://decks.wikia.com/wiki/Anki_APKG_format_documentation
What kind of job do you do?
I cannot get Anki working on Raspberry Pi. (I have a Raspberry Pi connected to a TV in front of my rowing machine so I can study while I'm exercising.) I tried Mnemosyne but I can't get the sync server working, and I'm disappointed in the formatting options provided. I tried org-drill but adding images to cards is quite difficult.
Right now I'm working on writing some Javascript that can be plugged into web pages to provide the spaced repetition functionality. That way I would have the full capability of html5, css3, javascript, etc. Syncing would be handled by whatever file syncing software the user preferred. Creating/editing cards would be by whatever workflow the user wanted.
If anybody has any other solutions to the problems I'm having (running Anki on Raspberry Pi, Mnemosyne syncing/formatting, etc), I'm ready to listen.
I'd trust the system though. Typically once you get to the point where you won't see it for more than a year you're highly unlikely to forget the content anyway. Although it depends on what you're trying to learn. The default settings are optimised for learning Japanese.
This is why you should turn off showing time until you next see a card in preferences. Trust the algorithm.
Or, you can fire up the desktop card browser and reschedule all the cards in those decks—choose "return to the learning queue" so they pop up like new, or set some interval like, again, a month. Then you can do a “custom study” to work through the cards right away. (I haven't tried this method, though, so not sure it will work.)
It's a bit hard to help without knowing:
- what OS you're using
- what exactly you mean by "I cannot get Anki working", i.e. the standard stuff in a bug report: what did you do, what did you expect to happen, and what actually happened
- what peripherals you're trying to use (e.g. some people using treadmills control their PI using an Xbox controller; perhaps your problem is related to getting that working?
Apparently, QtWebKit has been unmaintained for quite some time, and has been removed from the latest version of PyQt. When I get the time I'm going to load Jessie onto a spare micro-sd card and see if that solves the problem. If that doesn't work I may fall back to Plan A and roll my own SRS application.
Edited to add: The Raspberry Pi is not attached to the rowing machine or anything else besides keyboard, mouse, and TV. I'm using it to read ebooks, study, surf HN, etc, while I'm exercising.
If you really want to install the one from apt, e.g. because your favourite plugins haven't been updated to work with 2.1, then perhaps this approach will be easier than re-installing the OS:
I haven't tried it so not sure if it syncs with AnkiWeb and really works as a full-fledged client, but it sounds like a fitting solution for your stack.
---
By the way, there are bluetooth remotes/joypads for one hand, e.g. Zeemote or mini gaming pads [0] — they may be more comfortable to use with Anki and the TV while exercising, compared to the keyboard and mouse. Afaik people are using them with Anki in text-to-speech mode on phones. And media server apps like Kodi have “big picture” interfaces suited for such remotes.
I originally signed up for a Kaplan class for the 65, thinking it was going to be a cram class. In reality, it turned out to be a review class. Halfway through the first day on Monday, I told the teacher I hadn't started reviewing the material yet for the test on Friday. He said I was essentially a lost cause, and I should sign up to take the test again in a month.
I immediately left the classroom and spent the rest of the day entering every question from the practice exams into Anki. I spent 8-10 hours the next 3 days doing nothing but running Anki questions. On Friday, I crushed the exam.
Other useful things I've learned with Anki include the Number Major System and the answers to a bunch of those useless "brainteaser" interview questions.
My memory has always been really good at indexing "what's the word for that", "there is an algorithm for this called X", "the keyboard shortcut for this is Y", "there is something weird about the way Z works in situation W". But it's index only, and I have to look up the content every time. At least since I turned 35 and realized I was forgetting the answer to every problem I'd solved before.
It's been 2.5 years and I don't remember the answers to any questions. Maybe using it for precise definitions is the wrong way, as that might be more like remembering 20 things in a row. I had questions like
Q: What is type erasure? A: Java implements generic types by deleting them. It does a compile-time check that your types match, then replaces the types with their bounds (eg, when T extends Number) or with Object.
I have retained a vague, but not precise knowledge of what type erasure is. I know exactly what to do when I program something that uses it. But even Anki can't give me the kind of sharp memory you might need for a job interview or quiz.
It's so easy for me to learn things by working with them. Hundreds of concepts, functions, keywords, and strategies a year, more than all my colleagues. I tried to memorize the things I don't use every day. It was unpleasant and that made it unsuccessful.
> Maybe using it for precise definitions is the wrong way, as that might be more like remembering 20 things in a row.
This is exactly what it can be like. The 20 rules from SuperMemo are really useful for trying to formulate and transform the cards.
I was not aware till this moment that type erasure was something that C++ also has. I thought it was a specific gotcha for Java like the whole "no == for Strings" thing. In that context, I've only seen it connected to generics.
That's a definite hint to adjust the procedure, e.g. change the schedule. There are plenty of variables: some cards are better learned together because they are too similar, and you'd have trouble recalling them among other ones (I have this when going over geography, with countries that are in busy regions like Oceania or the Caribbean) ― you can pull them into a "filtered deck" by a tag and study them separately. Or, you do the opposite and put several decks into a grouping deck so you have to remember different kinds of facts in mixture instead of drills on specific topics.
Some answers are poor fit for one's memory, so you change them until you feel comfortable and retain the knowledge. E.g. I can't remember population of countries and cities with good precision, so I allow myself some slack with the answers.
Regarding the schedule, I found that I have to have a tighter schedule than the default, and I also employ the "bury" feature to repeat some cards. Plus, I have different limits on the numbers of new and reviewed cards for different decks.
If you find that you need more context to retain the knowledge, I'd think it suggests that you should have more cards, not fewer, and they should have closely related information, even partially duplicating each other. Maybe also have more info on each card, such as code examples. It can be time-consuming to create the cards yourself, but there are ready-made decks, including plenty on programming, and it's also possible to convert cards made for other apps. (Might be also fruitful to see how others make cards, and borrow some ideas.)
Generally, IMO spaced repetition simply "automates" the natural need of the memory to have the facts repeated to remember them―and other tricks, such as addition of more context, would also help. But, of course, for some people the right approach might be to abandon flash cards altogether and employ something else, such as practical exercises.
The best guidelines I've found on writing flashcards are Supermemo's 20 rules: https://www.supermemo.com/en/articles/20rules. Honestly, this is a seminal work that anyone jumping into SRS or flashcards in general should read.
I also found this recent discussion about spaced repetition on HN to be very helpful: https://news.ycombinator.com/item?id=17706776
As far as Anki itself is concerned: Make sure to check out some of the add-ons that are out there – they can really improve your workflow and motivate you to keep on going: https://ankiweb.net/shared/addons/
I also do this for friends and the ever growing list of baby names that I can't keep track of.
If you put in the time (I do at least 45 minutes of Anki a day, which turns out to be roughly 300 cards, 50+ of which are new) and you're consistent, the volume of information you can retain is truly staggering.
I have a retention rate of 90.1% and I've learned 15000 cards over the last 16 months.
About 2000 of those cards are my own-- the rest are fromv arious premade medical decks. Using premade decks is perfectly fine, but you do need to make you get a first pass of the material through some other method first-- Anki is not ideal for learning material, just retaining it.
Mnemonics can be successfully integrated into Anki cards-- but I think they're best for information that's easily confused with other bits or for really tedious stuff. Example: remembering which random medical drug is best for which genetic mutation, or which chromosome is mutated in which disease. Stuff like that is just pure tedium-- so translate it into images with the Major Mnemonic System or into memorable images like Sketchy Microbiology does.
This is another way of say "everyone that it works for gets good results"
[0]https://www.gwern.net/docs/spacedrepetition/2001-simon.pdf
First, some times I see ppl calling spaced repetition a "trick" or "hack" (I read "shortcut"), but the truth is, using SRS actually entails a lot of work! [0] It seems a pretty important part of the process is to formulate your own cards, which also puts more emphasis in understanding first and memorizing later [1]. SRS is a hack to memorize as much as going to the gym is a hack to gain muscles...
Second some ppl object that "memorizing is not understanding", but I think better recall aids in faster learning, so one feeds the other. [1], again, talks about this: one should only strive to remember what one has already understood. OTOH, a lot of types of knowledge requires mostly memorization. For instance: irregular verb conjugations.
0: I tried SRS and failed to keep up a bunch of times... and I want to give it a sec^H^Hthird chance at some point!
Then, a computerized approach allows for fine control of many variables in the scheduling of individual cards.
Some people use mnemonics to boost memorization, essentially supplying context and associations where there's none—hijacking another natural tendency of memory. But you can't invent many mnemonics e.g. for geographic facts, and rote memorization is the primary approach there. (And IMO mnemonics are fragile and unreliable due to their nature of being invented out of thin air.)
In the latest version of Anki, the LaTeX is rendered using SVG and looks great on Retina and HiDPI screens without having large file sizes.
I know others who maintain their cards/latex in a text file and import the changes rather than working in the Anki software for creating and maintaining cards.
If only there was a way to quickly add cards that would be nice.
Feel free to ask me questions if you're confused about how it works! I'm fairly experienced now.
Example for Spanish:
Front: picture of a "gatito" from google image search. Back: gatito
The word "kitten" is not used at all. No translations!
The reason you search images in the foreign language is that sometimes the foreign word has a different connotation, and isn't a direct translation. (The example he used was for "girl" in Russian. девушка supposedly means "girl" and yet when you search it, it's (mostly) seemingly a certain type, not "girl" in general.)
In that particular case however, there might be a simple mistake: девушка doesn't mean "girl" in russian - it means "young woman". A "girl" would be девочка.
Clozemaster uses word frequency lists and sentences. Honestly it's (clozemaster) one of the best free SRS products I've seen for multiple languages.
I'd avoid memrise (too many horrible quality decks). Duolingo isn't bad but certainly isn't comprehensive by any means.
The reason I'm paying for supermemo.com is because it has a good quality Chinese deck and those are hard to come by. I also want to use the updated SRS algos that it uses. SM-2 is really old and does not handle skipped days well at all. The newer versions of the sm algo are much better in that respect.
Anki's implementation has some rough edges, but for $0/mon for multi-device use, it's an amazing way to get your feet wet with this learning technique.
Why? Because it is the only way to support Anki's sole developer. He cannot take donations due to Japanese laws. AnkiDroid also does not take donations, though I do intend to start contributing code to that project.
If you really enjoy Anki, consider buying the iPhone app even if you don't have an iPhone.
$25 is surely expensive for a simple app, especially if you are a student without a steady income. But if anyone wonders whether Anki is worth this much money - try thinking of the potential benefits.
[0] https://drive.google.com/file/d/0BzlHy07nfEjOQ2hXWjU3LWpDdmc...
Wikipedia actually has a great explanation, the labels are pretty ingenious.
When using anki, a browser extension, enabling creation of flashcards, from the content found on the Internet, is handy. I find a website fluentcards.com and its browser extension, quite OK. Unluckily, it seems not to be maintained and there is no official add-on for Firefox, but you can build it from the github repo [1] and it will work on FF, too. The webpage also allows export of the words saved on Kindle to the anki.
There are also a few extensions for learning Japanese specifically. [2] seems to be the most popular.
If there is anything worth checking it about Google's search engine today, I would want to know.
Rant off: I'm sure that those in the HN crowd who don't yet know what Anki is, would like to. It is the whole secret to my career success.
You will spend months “learning kanji”, only to discover that knowing kanji meanings, in isolation, is unhelpful in most situations. You can get all of the same benefits, with more immediate utility, by just learning words.
I should finish them by April or so, and be advanced enough in German at that point that I can switch to Japanese. At which point I'll do Pimsleur and Assimil.
I think having the character base will accelerate that process. I previously tried Pimsleur Japanese, but found it didn't go smoothly compared to European languages I've done. The lack of characters was a big hurdle.
Thanks though. Is discouraged RTK learner someone who completed RTK, or someone who fails to
There are useful parts of RtK, but they’re the parts Heisig didn’t invent: radicals and mnemonics. You can (and should) employ both, but in the context of words. As you learn words, the “meanings” of kanji will naturally settle in your brain.
RtK people love to argue that it helps them infer the meanings of words and discriminate similar kanji. But in practice, it’s insanely difficult to do the former (except for simple words), and the latter is rarely necessary. It’s far more common to encounter 2-3 kanji compounds with unique meanings that recombine into words, than it is to find words that compose meanings from their individual kanji.
What do you think of that plan? My assumption is that I'll better be able to learn the words in the Pimsleur course the second time around when I can see the writing, and that this will make the overall process easier. It felt like too much, cognitively, the last time.
And at my current pace, the Kanji are about 30 min per day, so it mostly feels fun. If I were doing more I don't think it would be worthwhile, it would be stressful.
If your learning goals are mostly focused around reading, it's helpful a bit.
If you want to actually understand and use the language, hiragana, katakana, vocab and grammar have much higher utility.
My most complete advice would be to focus exclusively on the language you’re learning and don’t futz around with half-measures, but who am I to tell you what to study? If you’ve gotta satisfy the itch, then sure, you might learn something.
The system I'm doing isn't s reading one though. Instead, you associate each of the 2200 Kanji with an English keyword. You break down the kanji into component primitives, and then you remember how to draw each one by visualizing a phrase associated with that keyword.
For example, Seedling:
苗
The top part is flower: 艹
The bottom part is rixe field: 田
You can make a story like: if you plant seedlings in a field, they will flower. And you imagine it visually. (Note, I have terrible visualization, but can do it well enough for it to work)
This is a really simple example, but you can get more complex stuff. The system generally sticks to Japanese etymology, but sometimes will make up new primitives where it's more convenient for learning.
The website doesn't emphasize it, but readlang has a spaced repetition vocab tool. With multiple (at least for romance languages) built in dictionaries.
I really wish there is a way I can create cards in vim or something, but that sounds really limited when it comes to things like Chinese where you need to somehow write out the character or find an image of it on the Internet.
In computer science, a stack is an abstract data type that serves as a collection of elements, with two principal operations: pop and push.
This sentence would become a number of flashcards that look like ([...] is a cloze deletion where you have to insert the missing word, each cloze is a flashcard):
In computer science, a [...] is an abstract data type that serves as a collection of elements, with two principal operations: pop and push.
In computer science, a stack is an abstract data type that serves as a [...] of elements, with two principal operations: pop and push.
In computer science, a stack is an abstract data type that serves as a collection of [...], with two principal operations: pop and push.
In computer science, a stack is an abstract data type that serves as a collection of elements, with [...] principal operations: pop and push.
In computer science, a stack is an abstract data type that serves as a collection of elements, with two principal operations: [...] and push.
In computer science, a stack is an abstract data type that serves as a collection of elements, with two principal operations: pop and [...].
You'd do that for most of the article. Find a few examples of a stack, do the same thing from cloze deletions, and then in a separate card, make a few questions to have you write from scratch, parts of a stack.
The separate deck would be so your regular reviews don't take forever, when you get a question asking you to write out a stack. The other deck would be done say 3-4 days a week, and have many fewer cards, because they're going to take awhile to answer. You could even use the index card method for this part as it's closer to actual practice than recall.
In another deck, I'd also have short answer questions. For example, what's the difference between a stack and a queue, or stack and array, etc. This would also be more for practice sessions, rather than daily repetitions, as the questions could take awhile to answer.
Note that you'll have a ton of flashcards this way for each algo, but they'll be extremely easy to answer (a good thing). Five flashcards you can answer in 2-10 seconds each, is much better than one flashcard that takes you a minute to answer.
Assuming five seconds to answer a flashcard, you could easily do 120 repetitions through the day. The nice thing about Anki is the mobile clients, so you can do a few cards while you have some downtime. When I was in school, I was usually doing flashcards while I was waiting for class to start or going to the bathroom etc.
Especially in the long run once you get thousands of flashcards, and have a few breaks because of life. A general rule of thumb I go by is that my answer should be shorter than the question.
Even in your answer there's three or four separate parts to it. You have:
1. An abstract data type 2. collection of elements 3. Two principal operations 3a. Pop and push
After a while you'll know if it's for you or not. Then you can buy the iOS version.
The Android version is made by a different set of people, and it's completely free as well. It's called AnkiDroid.