How to Use Anki to Improve Your Memory
superpoweredself.com
superpoweredself.com
If you want to improve your vocabulary read more books. If you want to improve in a programming language program more in that language. If you want to learn chess openings - play more chess.
Actually doing things you want to learn is way more fun than rote memorization so you are more likely to stick with it.
But if your goal is purely to expand your vocabulary, don’t you think reading is more tangential than drilling words with flash cards?
However, after a couple of weeks coding a project related to Perehdytykset and Kuljettajaohjeet, I now know the words.
I also heard finnish is a really hard language, so maybe it's that.
I have used the technique from "Fluent Forever" [1] to create my flashcards using images, not only translations for learning Swedish the past years and it works surprisingly well. Much easier to fixated words when you have a more personal connection to it, finding the right image for them is part of the process and it's worked for me, personally.
Of course, using the language and having reasons to learn a specific word help even more. I've used my deck to learn words that I came across in newspapers, in government articles and so on, to expose myself to words outside of the daily conversation usage.
Another technique from "Fluent Forever" that I think helped me a lot was listening to minimal pairs to train my ears to the sound of Swedish and intuitively know how words sound when spoken.
It's been a while since I Used Anki, so my memory is a bit fuzzy. If I remember correctly I tried it with both text and images. I also remember using TinyCards, which had multiple choice and I had more success getting correct answers with that, because I didn't have to pull the word out of my head and remember how it sounded/looked. However, even though I could guess correctly, I still had problems with recall.
Still, I think Anki is great for remembering new words. You'll just have to use it daily.
But many things are list-like, or maybe just don't stick in your mind via reading, or need to be memorized quickly, or are better memorized in a digital/artificial context, or can only be memorized "naturally" at a high cost (just theorizing here). In this cause Anki is worth the overhead.
If anki were cost free (every interesting thought I heard in a podcast were automatically added to the deck), I'd use it store everything I didn't want to forget.
The advantage of reading is seeing a word in different contexts, and grasping the many nuances.
Many masters say the fastest progress can be made in chess by doing "find the checkmate" exercises on tricky or otherwise interesting positions. This aspect of chess disproportionately contributes to success, compared to how much time is spent on each of these positions in the natural course of play. A bit of meta-knowledge about what makes someone successful at chess lets players play more effectively by focusing most on whatever helps them win.
Similarly, if you're learning a language and find yourself constantly groping for the right word, you might make a connection between your ineffectiveness at communication and lack of a memorized vocabulary, then shore it up by focusing specifically on that.
While there's a very strong correlation, there's no special rule of nature dictating that the best way to learn a thing is the same as doing it.
Go players practice life and death, basketball players practice shooting hoops, football players practice dribbling.
I designed macro exercises to give my students when I taught Starcraft.
The problem with these exercises is they are rarely very fun. To be great at something, you have to put in the hours. You won't if you aren't enjoying the time spent.
But I do agree with you that it takes you there and no further. Moreover, I find the branding of this site (and others of its ilk, these seem to pop up every now and then over the years) to be really disingenuous. I don't think it's on purpose, more out of naievete.
An implicit assumption with these kinds of things is that it's cognitive fitness getting in the way of whatever it is you want to do. That's deeply presumptuous, IMO. The truth is more likely to be as you say -- it's not a lack of "cognitive fitness" -- it's a lack of experience doing the thing you want to do! And so if you want to get better at doing that thing, the difference between success and failure is figuring out a way to practice it consistently and slowly pick more challenging things to do. Not look at it like a leetcode problem with a trick that must be found which magically makes the problem tractable.
At a certain point doing the "fun thing" will lead to stagnation of your skills.
It takes effort to get good at something, and that effort is not always going to be fun.
The gist of it is that there are several types of "practice". "Naive", "purposeful", and "deliberate".
- [0]: https://mrbartonmaths.com/resourcesnew/8.%20Research/Explici...
It’s a big reason why when you ask your friend what the two foreign characters in the movie are muttering they may pause and say, “this character is really mad at that character.” Because translating their swearing just does not make any sense in English, or sounds even harsher than it really is (according to screenplay writers, the French like to slip the word “whore” into any exclamation, from jovial mocking to impotent rage. Or perhaps more illustrative, there’s a “dang it” that refers to either a cow, or a dog’s name.)
Or going the other way, you want to explain “Bob’s your uncle” to a Swede? There’s a political history lesson in that explanation. They’re so weird you just learn them in context and go on, mostly.
As an airline pilot I’ve had to learn new aircraft a few times over the last 5 years. The airlines can’t afford to give you 100 hours in a simulator to drive in every little detail. You have to spend time in the manual using rote memorization to be up to speed on things before you’re out in the world operating the machine.
Learning by doing is my preferred method as well and it has its place. Just trying to point out that sometimes rote memorization, and tools to make it easier, are an important piece of learning something new.
A good approach is to use Anki to memorize words but only add words that you've actually encountered in the wild.
I always saw Anki as an implementation of spaced repetition. What is your process?
How do you codify connections and associations into spaced repetition?
I also make Cloze cards specifically for grammar where I'll cloze out the conjugated verb and put an English hint, like: 7시니까 댄 씨는 벌써 {{c1::퇴근했을 거예요::I think he left work}}.
I disagree with his approach (which I haven't followed since original discussions) to then try to monetize this by basically creating a closed-source, locked-down Anki replacement. As I recall, he wanted to do what he said in his book wouldn't be effective -- to sell his cards to others.
I've tried his new app. Built in image search, pronunciation trainers, many included sentences with audio of varying difficulty. Now you can finally add custom words... It's at least gradually honing his vision into an app.
They are also going to have community supported languages, rather than simply not have more rare languages.
Granted, it's a premium app. Currently not got a freemium offering, and certainly not open source, so will put many off.
But at the same time, I know so many people who couldn't work with Anki, but could easily work with the app, so it does at least offer the system to a much broader audience.
It was a brutal, breakneck pace but the result was nothing short of phenomenal.
If it just has the proper dispersal.
You would just be an ass,
To do it en masse,
Your remembering would turn out much worsal.”
Ulrich Neisser, Retrieval Practice and The Maintenance of Knowledge
My number one recommendation is to not get overly excited about it. One of the first things that happen when you start using Anki and realize the superpower that it is being in charge of your memory is that you want to include EVERYTHING in it.
You start creating cards with obscure bash one-liners, little-used git commands, or Javascript functions you read about in a random article. You add all of it to Anki. After all, you might use them in the future right? And it doesn't cost you anything to create a card with them so why not.
What happens is that because you don't have a clear picture of why those cards are valuable to you - you just added them because they might be useful, one of these days - you will have trouble retaining their knowledge, meaning that you will keep failing to successfully review those cards.
And because of the way spaced repetition algorithms work, those cards will be constantly appearing in your reviews, and you will keep failing them. And they will keep appearing. And so on and so forth until you lose all motivation to use Anki because it's becoming a frustrating experience to do your reviews.
The most important thing about using Anki is to keep using it. That's how you get the benefits of it, so be more selective about what you add to Anki instead of profligately adding cards that you gain nothing from.
Coworkers, neighbors (like that neighbor 3 blocks away that I talked with for a few minutes about {such-and-such}, but don't see that often), restaurant employees/proprietors, delivery people, maintenance workers, friends-of-friends I've met.
Without Anki I have an abysmal memory for names. I have aphantasia[0] which might relate to my difficulty with names.
Now, with Anki, (if I'm using it regularly) I have a freakishly good memory for names. :)
Goes a long way to helping others feel welcome and appreciated, which in turn means _I_ end up feeling welcome and appreciated. A very virtuous cycle.
Edit: I'm a software engineer, but most of my Anki usage is not focused on software engineering directly. To create new Anki cards, I follow the "20 rules for formulating knowledge"[1], so it takes a bit of work before I can take some new bit of information and "process" it to something ready for Anki.
[0] https://www.facebook.com/notes/blake-ross/aphantasia-how-it-...
[1]: https://www.supermemo.com/en/archives1990-2015/articles/20ru...
When adding "people cards", I do anki's forward-and-reverse card, and I build the card so I can read both sides, and generate the opposite side.
I'm just trying to build an association in my brain for their name, so I might do:
Front: "people: Neighbors to west, older couple, he likes woodworking"
Back: "people: Joe and Trish"
I only use a single Anki deck for all my cards, which span many interests, so I'll usually give myself a word to specify the topic, like "Go, Ruby, People, Mental Models"
Or if I can grab a headshot or picture from Slack, Twitter, or LinkedIn, I'll often put the picture on the front, name on the back.
When I review the card "from the back", I try to remember what the person looks like.
I have aphantasia [0] so this form of recall is effortful.
[0] https://www.facebook.com/notes/blake-ross/aphantasia-how-it-...
- what does ABC stand for
- describe process X
- how process X differs from Y, and why
- what is the role of system A in process Z
- what is the shape of data that comes from A to B in process Ł
This vastly reduced the number of times I got stumped with something during various high-level meetings (to the point that I routinely pointed out some false assumptions people made). It worked better for me than passive documentation. The domain was unusually complex though.
- Emacs Commands
- Emacs Key Strokes
- Greek letters, words and sounds
- The wikipedia List of non-standard dates
- Physic ideas
- General principles of organization
- Learning principles
- Bible verses
- Command line utility options
- Vimium key strokes
Basically anything that I want to learn I end up ankifying. I find that Anki is most effective for remembering things that I don't do all the time, but need to remember two or three times a week/month. Here's a good tip, if you need to DuckDuckGo it more than once it's probably a good idea to throw it in an Anki card.
That way, you can build a knowledge base of what actually interests you, which you’re much more likely to study and retain in the first place.
* HTTP status codes
* Acronyms
* Syntax mistakes (spot the bug).
* Command line or vim snippets, e.g. "write a for loop over all files in a directory in bash" "grep and only show match"
I find it most useful for catching things I commonly screw up. The trick, of course, is to build the habit of identifying when you've repeated a blunder and then to make it into a card. An example for this in Go would be using `range` and forgetting the second arg: `for val := range slice` is legal syntax, but `val` is actually the index var here, it should be `for _, val := range slice`.
It's usually simple things, like what's the method signature for slice? Or how do I run bash inside of a docker container?
The tough part for me is sticking to reviewing. There, I'm trying to figure out where to attach it to something I often already do.
I've started reviewing a question or three in the rest breaks during my workouts.
Not all exercises or routines work great for that, but it works surprisingly well for things like bodyweight HIIT.
The author of this article mentions he'll post an article tackling this issue, looking forward to that!
I later wrote my own flashcard app[1] with spaced repetition and ended up hiding the details of what was overdue and instead just let you set up a daily goal of number of cards reviewed. When you do a lesson, it picks up the overdue cards first, but if there aren't any, it pulls in new cards instead.
It's funny because I originally thought telling you how many were due each day would be a great motivator (at least for me), but I'm finding I actually don't care. If you miss a few days, the cards still remain overdue, but when you return it doesn't feel bad.
I think for me, it's more important when learning to aim for the long-term commitment to it than to be perfect each day in your studies. If you aim for perfection, you end up not meeting your high standards and may end up quitting. Also, I think the "deadline" for when to review in spaced repetition isn't exactly accurate to the day or hour that something is due, so there's a little bit of malleability there, and I think that's okay.
Those are features of AnkiDroid, and probably the desktop Anki also.
There is a daily review limit, and you can configure to see review cards before new cards. Anki does not tell you how much is overdue beyond the review limit.
If you're set on writing your own app, you will tend to overlook the configuration details of the original, though.
I think Anki is powerful and has a lot of configuration settings and add-ons to support new scenarios, but I think for a lot of average non-technical users, they may be overwhelmed by that and not interested in learning it. My goal was to write an app for those people (and for me).
I found with Anki that it was sometimes difficult to self report precisely how well I remembered something. It also added an extra cognitive step on each card to have to consider it, which over time was an annoyance.
I don't have any scientific proof that judging response time is better than self-reporting, but my thinking is self-reporting accuracy is low enough and forgetting curve is approximate enough for each card that in aggregate it doesn't make a huge difference. It would be interesting to have real scientific tests, but I think it would be difficult to set up.
I considered adding a way to self-report your score, but it didn't make the MVP and I'm really trying to target less technical users and not people who are already familiar with Anki. I might add it one day as an option since the underlying design of app can handle it.
If there's enough interest, I might try to port it to Android next year as a fun project.
My strategy for this was to dump the entire text of some good literature into Anki decks that give me one new paragraph per day. The steady drip of unseen material removes the stigma of pressing the “again” button and gives me a small reward of story progression from each session.
In a separate deck, I use cloze deletion on sheet music to help learn songs. That deck only gets reviewed by actively playing music, which is an inherently enjoyable activity on its own.
Because paragraphs are so variable, my Project Gutenberg import script makes 25-line cards with a 5-line overlap between adjacent cards (for context). It also blanks out a random word on the 15th line as a cloze deletion test, to ensure I have some understanding of what’s going on.
Brilliant strategy.
This is still a fairly new strategy for me, so I don’t yet know how many parallel threads I can keep straight at the same time— So far, it doesn’t feel like I’m anywhere near the limit.
This idea was actually born to combat review starvation: I haven’t been very active at adding new cards lately, and there was a risk that my daily review count would hit 0 for long enough that I’d stop checking regularly— I needed a source for lots of interesting but low-priority cards to keep the pump primed.
The original paper on cloze deletion [1] uses them as a readability measure: Readers are given an unfamiliar text with blanks and are asked to guess the omitted words; the percentage correct is then a measure of the text’s quality rather than the reader’s knowledge.
Instead of a knowledge quiz, which is how clozes are usually treated in the SRS world, this is an automated reading comprehension test— Just the thing for capturing the intangible benefits of reading literature. In theory, as you become more familiar with the book’s style and subject matter, you should be able to pass the first review of an unseen passage most of the time.
I settled on 25 lines of text per card with one omitted word about 2/3 through the passage. Successive cards contain some duplicated lines (5) to provide a sense of continuity between the cards, which are presented in a disjoint manner.
I import each book into its own deck set to show 1 new card per day (in the order added)- I want whatever mental connections are necessary to understand the next passage to end up in long-term rather than short-term memory. The reviews give me an opportunity to spot details that seemed unimportant on a first reading but that foreshadow something that happens later.
Beyond that, it’s driven by Anki’s normal scheduling algorithm; these are subdecks of my general-review deck, so Anki will autumatically mix the new cards and reviews with any other reviews I have due.
Most of the books I’ve imported are 300-400 cards, so it’ll take about a year to work through each of them. I wouldn’t be surprised if I end up doubling the number of books I’m reading at once, which would bring the average to around 1/month.
[1] https://www.gwern.net/docs/psychology/writing/1953-taylor.pd...
I did the first one manually. In addition to being a lot of work, there were major spoiler hazards— If I wasn’t already familiar with the general shape of the plot, the process would have revealed secrets too early.
The script will ask you for a text file to process and the pop up a Tkinter window with a single button. Each time you press the button, it copies the next card's body text to the clipboard, ready to be pasted into Anki's Add window.
The text file needs to be already split into reasonable-length lines, like the ones you get from gutenberg.org
Card template: https://pastebin.com/BFJxW1jC
Cloze splitting script: https://pastebin.com/4Jek0G7u
Maybe you only review a few of those hundreds of cards that are due. So what? The algorithm still achieves its purpose. You are still focused on cards you are least likely to have permanently learned. No matter how you use or abuse space repetition algorithms they ensure your study time is well spent (assuming flashcards are the right thing to be studying at all).
I learned this from experience. I have some math concepts I'd like to have memorized. I made some flashcards in a space repetition program. I haven't review them for about 6 months. It is what it is -- at least I know all my progress wont be gone when I finally do return to those flashcards. I will have forgotten some cards, those cards will be shown to me frequently. I will have remembered some cards, those cards will get a boost because I've remembered them for 6-months without review, and will rarely be shown to me. The spaced repetition algorithms still work; they are robust.
I will update the post with screenshots or something tomorrow, for credibility.
1. Never set a maximum number of reviews. It will create an unstoppable backlog no matter what you do.
2. If you have a huge backlog of like 500 cards then just hit "HARD" on 50% of them until the backlog is spread out over multiple days and you have a manageable number reviews.
3. Don't have too many young cards at once. Stop adding new cards after you have 500 young cards (exact number depends on how easy the cards are).
I've been able to use it about 30-45 minutes per day, every single day for five years. Even when Im sick or traveling. If I know I am going to be busy, I just turn down the number of new cards in advance and by the time I'm busy my review count has usually responded.
(I don't use the desktop Anki, by the way; I used it briefly for doing some editing on decks.)
Tha said, AnkiDroid could use a vacation feature. How vacation mode could work would be simply by rescheduling all cards, delaying them by the vacation amount (14 days or whatever). Thus, no cards are due for the next 14 days, and on day 15, the same cards are due that would have been due day 1 (no "snowplow" accumulation). It would probably help if the app generated a notification a day before vacation ends.
It's incredible that neither the author of the original Anki, nor the authors of the AnkiDroid clone, recognize the value of a vacation.
But the vacation idea is great, I'm sure someone could make an add-on to implement it.
A simple toggle: "pause Anki". Here are my requirements:
- in the paused state, the review UI is entirely disabled. You cannot review anything.
- when you toggle out of the paused state, Anki calculates the number of days since the pause, and delays all cards in all decks by that many days.
- pausing and resuming on the same day has no effect since the days delta is zero; the UI just becomes enabled.
- For the purposes of the delta calculation, a day is the study day (e.g. 7 a.m to 7 a.m), not the midnight-to-midnight calendar day. If you pause at 11:45 p.m. and resume at 1:15 a.m., that's a no-op since that's the same study day.
- since resuming is potentially a time-consuming operation that destructively manipulates the database, unpausing comes with some yes/cancel prompt, except in the no-op case.
I've started to think of it like node: A slim core with an expansive userland in the form of add-ons.
It happens. Every time it was a slog but I just got through it.
The one thing I can say for certain is given enough time it will happen. But whether you can overcome it or it causes you to quit is down to how intrinsically motivated you are (Anki or no Anki) to achieve the goal you are using Anki to help you accomplish. If you would continue to pursue the goal even without Anki then you will most likely persevere. If the goal is simply to remember everything and not forget stuff and you're only using Anki to use Anki then you will almost certainly quit when you hit this wall.
>I feel like Anki is not designed to help you succeed. Eventually, you'll start missing your reviews. One day you'll open Anki, see that you have hundreds of cards scheduled, and just quit the app.
You could also just do it every day, if it's important to you. You're not destined for failure, it's a choice you make.
You will forget stuff over time. What was the leading actor's name in that movie? Aaargh, it was practically a household word in the early 90's ....
> You could also just do it every day.
Even people who stick with it 7 days a week for 50 weeks could use a 2 week vacation.
>Even people who stick with it 7 days a week for 50 weeks could use a 2 week vacation.
Then you'll need the discipline to do ~10x your normal daily volume when you get back (not doing new cards ever day makes it not a clean 14x).
>That is not a given. Just several days ago I lapsed on a 4.5 year card. The interval went down to 2.2 years or so; hopefully I will get it that time around.
The default settings set it to 10% of the interval after an again, so you must have messed with that. You can also configure that to be 0% if it bothers you.
I've seen curious comments like this in various past forum discussions on the topic of Anki vacation ideas.
A vacation is not a period of rest followed by double the amount of work to catch up.
A vacation is a pause in work, which delays all subsequent work by that much time.
> not doing new cards ever day makes it not a clean 14x
You can't do new cards everyday; eventually you will have seen all new cards of a deck. I'm still working decks whose new cards ran out years ago. The presence and scheduling of new cards is a temporary condition with little long-term significance.
My new cards comment was to explain why it's not 14x when you go on vacation.
>I've seen curious comments like this in various past forum discussions on the topic of Anki vacation ideas.
>A vacation is not a period of rest followed by double the amount of work to catch up.
>A vacation is a pause in work, which delays all subsequent work by that much time.
This is simply cheating the SRS. Some SRS programs do allow you to do this, wanikani does it for instance, but it is quite literally cheating. Instead of seeing it after 30 days, you see it after 44, but the program pretends it's only been 30. It's not a good feature, besides to make people feel better about themselves.
>I've seen curious comments like this in various past forum discussions on the topic of Anki vacation ideas.
It's cheating. And in this case, the only person you are cheating, is yourself.
One particular comment I remember was about the Anki feature of reviewing ahead. The poster said that you shouldn't do it because it will "mess up your stats". But, think about how idiotic that is. According to that reasoning, you should not read any native language material. Because if you read, you will encounter some of the words which are scheduled in your Anki, and recall them prematurely. And that will cause your Anki progress to deviate from what the SRS algorithm predicts, making it seem like you're doing better. Hence, reading native material is cheating: sticking to the algorithm is the goal, not learning the language!
SRS is just a tool; it's not a master to be served, but the servant. It's based on soft science, and is self-correcting. Any user behavior which leads to increased forgetting will result in more lapses, and an increased workload to make up for it.
Mature grown-ups with busy lives adopt the tool to best suit them, rather than to adopt themselves to serve the tool.
If the only way you can use the tool is less optimal, so that learning takes longer, well maybe that's the best it can be, in relation to everything else you have going on in your life!
The SRS implementation in Anki has a large number of parameters. The defaults are poor and don't work well for people. Good parameters are a matter of opinion. Someone taking a vacation according to a regular pattern, like one week every four months, is effectively just tuning another parameter.
You're making a mistake of inference. Someone getting a card right after 44 days, but getting only 30 days of "credit" for it in he program does not have a reason to feel good, other than to feel good about remembering the card after 44 days. You raise a good point there though. In fact, a correct implementation of vacation mode should not literally just make time stop; it should somehow give the user credit for recalling cards beyond their scheduled interval. The recalled cards should perhaps get a bit of a boost in their next interval.
The point of a vacation feature is simply to feel rested, not to feel gleeful about somehow "cheating". If someone misuses the feature to take a one week vacation after every week of studying, that's their problem, and not a reason why a reasonable user shouldn't be able to take a break.
It's just a tool, and if you miss some lessons, it's not like those cards immediately vanish from your head. If you fall behind because you weren't disciplined, no big deal, just pick it up again and carry on. Learning is a marathon, not a sprint.
For me, SRS algorithms try to model how memory works, it's not an exact match to it, so even missing a card deadline by a day or two or even a week isn't the end of the world.
I suspect that the reason is that language-learning forums are full of children.
Jesus christ, calling someone a child because they disagree about adding a cheat vacation mode to an SRS program? You gotta take a step back and look at your life.
I've been using Anki quite successfully to learn things about wines in french, especially about the wine domains in Bordeaux and Bourgogne. It's easy to create, as a flash card. One side shows the map, the other shows the name.
Now, I'm keen on learning the list of the main french authors of each century, but I don't know how to proceed.
Let's say a list of 20 names, how would you do it?
You would not create one flash card with 19th century on one side, and the 20 names on the other side. I've been struggling with that issue.
Maybe using the cloze type?
In general you want to reduce the amount of things you have to retrieve from memory in one go, and attempting to retrieve a 20 person list is just going to give you problems.
The cloze solution is certainly better than the full list (and does follow the minimum information principle because you just have to retrieve a single name) but the problem is that it doesn't give you any handles. If you have 19 names and Flaubert is hidden, how would you know it's Flaubert that's missing? Long-term you're bound to fail those cards.
But I would also question the premise of the card. Do you expect to have to come up with the 20 names each time you want to talk about 19th century French literature? As in, each time the context is "19th century French literature" is the appropriate knowledge to retrieve "* list of 20 authors *"?
Instead a better approach might be to flip it around and ask yourself, "In which century did Flaubert write Madame Bovary?" or something along those lines. You can both reconstruct the list from that and if you're writing about Flaubert the knowledge that he wrote during the 19th century will come more fluidly to you.
Your answer and your link (especially the paragraph about sets) help me a lot
Anyone else study this way, like an Anki for interview questions? If not, how do you pick what questions to practice and what order do them in when studying for interviews?
If you don't want to practice programming exercises, but rather memorize facts, Anki is fine. Go through the common algorithms/data structures (and the less common ones) and create cards that ask you things about it. "What's the big-O for inserting into a sorted linked list?"
Or do like me, and skip those interviews because they're usually a miserable experience and don't really gauge the quality of the hire.
It's like inventing a very surreal dream to help you avoid forgetting things. I use variants of it for things like people's names and ideas I'd like to explore all the time, it's super helpful.
Is anyone working on improving the UI? Or are there alternative "frontends" out there? Does anyone know how hard it would be do it? (I assume it might not be trivial since Anki has a plugin system, but I don't know to what extent they can modify the UI)
It uses a similar scheduling algorithm to Anki, but it's based on simple markdown note cards, and has some features around that as well, such as bi-directional link references.
Personally I find the UI/UX to be exactly what I want it to be. What exactly do you not like about it?
It's by no means pretty and definitely has a learning curve. That's what makes it such a useful tool though. Otherwise you end up with duolingo...
What? If you can ace the exam by memorizing, it must mean that awarding of merit in your field of study requires little more than the mere regurgitation of facts.
In a typical engineering exam, you can bring a sheet of formulas and facts, and a programmable calculator. This is so that the exam is less about rote memorization and more about application.
Conspiracy? Well it must be true.
Sets that can be downloaded are also often low quality, or at least there is no way to tell in advance.
I think some day there may be a unicorn startup doing the flash card thing right.
There are software companies doing the spaced repetition thing (like Duolingo).