Spaced repetition systems have gotten better
(domenic.me)721 points by domenicd 15 hours ago
721 points by domenicd 15 hours ago
Go into the deck preset options (any deck is fine). Look for the FSRS section and check if the toggle is enabled. If it's not there you probably are on an old version.
You're on an old version of Anki.
Once you upgrade, FSRS is available under the deck options.
I wonder how it compares with the current SuperMemo.
I experimented with SuperMemo around 18 months ago, and it made me fall in love with SRS again. The main reason being the algorithm is less punishing when I skip a day. Maybe it has better defaults?
I once skipped a whole week and could get back on track in the next week, in Anki that feels unbearable.
Another thing I really liked about it is that you can edit a card as you are studying without having to open a separate window, helps me stay in the flow when studying.
But… With a better algorithm I might give it a try in the future… Being FOSS is the real advantage here.
Currently under debate. FSRS is likely better than SM-17. No data on SM-18
Q&A/discussion: https://supermemopedia.com/wiki/SuperMemo_dethroned_by_FSRS
Repo: https://github.com/open-spaced-repetition/fsrs-vs-sm17
Discussion: https://discord.gg/qjzcRTx => https://discord.com/channels/368267295601983490/136895216717...
Am I reading this right, did users go through >10k repetitions on average?
Given users were self-selected SuperMemo users who needed to use GitHub to upload exported stats, it feels a low (FSRS benchmarks average ~70k per user, filtered to a random selection of users with > 10k reps).
I wasn't involved in the benchmark, and don't know whether `SM16-v-SM17.csv` is a full export. Didn't see any reviews before 2020, and it may only be an export of a subset of reviews.
https://github.com/open-spaced-repetition/srs-benchmark/#dat...
I really wish there was a FOSS equivalent to SuperMemo. Spaced Repetition is cool and all, but Incremental Reading that uses principles similar to SRS to augment learning novel content and then retain pieces of it through more standard spaced repetition is really next level.
systemS? There is only one program out there that is viable: AnkiDroid.
Anki runs on desktop: you have to be chained to a desk rather than taking advantage of idle moments when you are on-the-go. Even if you have it on a laptop, you still need a place to sit; SRS on mobile can be used anywhere, like standing-room-only public transit.
The AnkiMobile companion app for iOS is a paid app that is somehow chained to the desktop version, whereas AnkiDroid is a full-featured clone of Anki that you could use air gapped without ever syncing anything to or from another device. It has integrated management of decks and note creation/editing.
Every other SRS app out there is just playing very distant catch-up to Anki/AnkiDroid. They usually mention Anki in their pitch, trying desperately to explain why some very minor and very subjective negative point about Anki is worth switching to their massively inconvenient solution.
I’m sure the algorithm can play a huge role in the effectiveness of learning but for me the difficult part was always creating the cards and actually opening the app to practice.
I've built Komihåg [1] to try and combat this: Select any text on your iOS device and a flashcard is automatically created for you, and the app is then showing you the cards on the Home Screen / Lock Screen / Apple Watch Face.
I haven't gotten to implement any sophisticated scheduling algorithm yet but will definitely do that eventually.
[1] : https://komihag.com
Cool idea. I’ll check it out. It would be cool to do something like this for single word highlights on an e reader. If I have highlighted a singe word it is because I want to add it to my vocabulary.
I found this: https://developer.apple.com/forums/thread/762784
Looks like share extensions are not generally available inside the Books app, which is why my app is not showing up.
Thank you for making me aware of the issue!
I do think that Wanikani and Bunpro are kind of in a catch-22 on this compared to Anki. They've built their gamification features and UI on the idea that cards have specific buckets that they're in and something like FSRS is a lot more varied than that. Especially Wanikani, which has a system of unlocking more items based on your current items reaching a specific stage.
So I haven't integrated FSRS, and of these two, I've only used Wanikani, and have been playing with a reimplemention for Chinese hanzi: https://hanzi.bpev.me
But seeing how it's implemented, I think they could totally integrate something like FSRS to at least just replace their scheduling (how long until an item is next shown). The unlocking system can be implemented as a separate gatekeeping mechanism, and the buckets can be coded for certain step thresholds (instead of wanikani's "stage").
Basically, this is their entire srs system: https://docs.api.wanikani.com/20170710/#spaced-repetition-sy...
I find with spaced repetition that it works really well for some well-known things like vocabulary (EDIT: well-known meant as "spaced repetition is well-known to work for this use-case, not well-known as "the subject is well understood"), medical etc. but for everything else it becomes a struggle for a long time.
I have been trying for years to fined a way to use it for mathematics and physics - with the former being more of a focus and didn't really get anywhere. For definitions it works, but it's quite hard to write proofs in a way where there is a short obvious memorization based answer. Either you spend far too much time on a card or the card gives you too much information so you don't really test the knowledge.
I also tried it for computer shortcuts - it seems to me that they are really useful only when part of the muscle memory - so practicing them works better then memorization.
Math Academy provided a self-service learning system with a novel spaced repetition algorithm which could take the hierarchical body of math into account.
It's someone I wondered, what is the point of memorizing a proof if it only ever proves something you already know. The answer is you hope it generalises. There is a possible way you can do it in SRS, being inspired by RL training. Instead of cards you'd show options within a game or simulation. But this would need a lot of expert knowledge for a single concept.
What’s a good way to learn to understand concepts in a spaced-repetition way? I’ve used anki before for remembering facts or answers to specific questions, but is there a standard way to setup spaced repetition flashcards to learn, for example, when to apply a certain software pattern or something?
I have been using Supermemo daily (except for when I miss a day or two, vacations with no desktop, etc) since about 2010. I have found the newer algos to be pretty good. I have not had any bugs or a messed up collection. Its one of the pieces of software that is keeping me on Windows. There is still no foss replacement for incremental reading/writing [1]. Also, Supermemo has two modes that lets you skip a few days without being overloaded [2][3]. So you don't go from 20-30 cards to 200 if you skip a day.
That being said, its just another tool in the toolkit for learning stuff. I don't think I'm that much smarter or better at anything just because I have used Supermemo often for awhile. Honestly, I just like making cards and throwing articles I want to read later into Supermemo for processing. Most of what I use Supermemo for is incremental reading, which I have never been able to find a good replacement for. I like being reminded of cool stuff I have read and ideas that I have had. I would recommend also learning and practicing various mnemonic techniques alongside spaced repetition.
Most of the other algos/apps I have tried have been okay, I have not tried FSRS because I don't really use Anki anymore. I used Anki when I was in college for about 2-3 years because I would do flashcards using the mobile app. I was still using Supermemo daily during the same time period though.
I also use Clozemaster for language vocab with Supermemo. I put the sentences and some explanations into Supermemo after I do them in Clozemaster. I do not really consider myself to be a language learner or learning a language. I pick up new vocab very slowly and do not do anything else to practice the languages I am learning vocab from. I have also been using Math Academy almost daily for about seven months which is nice, but definitely not a full replacement for learning math. Using Math Academy actually made me start working with math textbooks and online resources again.
[1] https://www.help.supermemo.org/wiki/Incremental_reading [2] https://www.help.supermemo.org/wiki/Postpone [3] https://www.help.supermemo.org/wiki/Mercy
I’m solo-building a free Anki alternative using the Ruby FSRS gem: http://cadence.cards/welcome
Would love any feedback—I’m aiming for a more focused, restful take on what I like most about Anki. Styling is done with Tailwind.
Interesting. I was never really happy with any spaced repetition algorithm, so I recently implemented my own dumb system which simply asks you for the number of days after which the card shall be shown again: https://github.com/kldtz/vmn
Usually my intuition about how well I know something is not too far off. If you don't specify anything, it doubles the time since the last review.
I had a similar problem where I can't remember the answer to the card, but after revealing it, it seemed too easy to make it due in a few days, so I would lie to the program and press Hard/Good. Later I removed scheduling times on top of buttons and decided to trust the algorithm. I believe it helped me to stop caring about schedule times and loosing progress on a certain card. After all, these algorithms were made for ordinary people with ordinary memory behavior.
I think my problem is that I'm not using the system as intended. I learn new vocabulary mainly by reading texts or watching videos in the target language and use spaced repetition to keep track of my progress. If I can't remember a word (as indicated by SR), I'll reread the text/rewatch the video where I've first encountered it. I don't want to keep reviewing the same word in my spaced repetition program, especially not in the same session.
For anyone looking to read more about spaced repetition, Gwern's Spaced Repetition for Efficient Learning is worth checking out.
The folks at SaySomethingIn, that originally started with Welsh and other Celtic languages, have recently expanded to Japanese. I haven’t tried it myself, but I’ve found some decent success with one of their other courses. It’s all about spaced repetition and focuses exclusively on listening and speaking.
I like WaniKani because it forces me to type the right answer. When I tried Anki, it was too easy for me to "cheat" and press space for something I "kinda" remembered.
I do agree with the author's phrase of "...a daily ritual of feeling bad about what you’ve forgotten..." though, and would like to try the new algorithm. Is there a way to configure Anki to force you to type the correct answer?
You can set up Anki to force you to type answers; use Basic (type in the answer) when creating cards.
20 second video: https://www.youtube.com/watch?v=mxEqRe1Pp1w
It's possible to batch convert your cards to this format using Anki's "Card Templates" feature.
https://docs.ankiweb.net/templates/fields.html#checking-your...
Super nice, thank you for this post! Based on this I've updated the vocabulary learning scheduling in DuoBook (https://duobook.co) to FSRS based. We should be up to date with the science based learning :)
The author bashes other algorithms for being "arbitrary", but I don't see how FSRS is any less arbitrary.
Just added FSRS to my free mac flashcard app. If interested, check it out https://apps.apple.com/us/app/flashcard-max/id1430950704
I just loaded Hacker News after a WaniKani session.
Any recs for moving this into Anki? I already use Anki for cards I created while going through Genki with my tutor, and world capitals.
Language vocab seems a good use case. What other things are people here using spaced repition for?
A few uses for me:
• Memorizing Geoguessr metas. Made it to Master I rank this way.
• Memorizing new words. When I come across a word I don't know, I make a new flashcard for it.
• Memorizing things about people. My wife's favorite ice cream flavors, which spices each of my children dislikes, etc.
Anything I want to memorize but wouldn't be exposed to frequently enough in my day to day life. Flashcard review takes only a few minutes each day.
I'm using it to memorize all of the Paris métro stops and study for the French drivers license test. It was also a huge boon when I prepared for my citizenship interview.
I tried it for a while with my eldest child (then aged 3) to help her remember numbers, letters, etc. She didn't find it very fun past the first couple of times, so I figured I wasn't going to hoist it on her.
I used it whenever i studied anything, but with a 'recursive' twist.
Every time i did repetition, i've made a shorter note about the subject.
Then next repetition cycle, i'm reading the note, and making shorter note based on it. and so on.
once few cycles i'm re-reading the main starting note i made.
I used it to get my Amateur Radio license, since a superset of the questions that can be in the test are public.
I downloaded an existing deck and modified it so that only the correct answer is shown instead of multiple choices.
I still can remember some of the content even though I deleted the deck short after receiving my license.
HamStudy.org is exactly this, an SRS site/app that already has the questions and some explanations to go with it (the site is free, but they also have an app which is a couple bucks and almost the same but in my opinion slightly better). I used that a couple months ago I studied for the technician class license and got a perfect score when I took the test. Then I studied the general class license and got one wrong (34 out of 35 = 97%. You only need 26/35 = 74% to pass.) I could probably go for the third one next but maybe it would be more useful if I actually go get a radio and start using it first.
If the phrases are found by yourself in context from your own exposure to the language, it is even better.
I got introduced to this idea a few years ago from AJATT [1] and my personal experience is that it works very well.
[1] https://web.archive.org/web/20100406173634/http://www.alljap...
The advice with gendered languages is to always learn the word alongside some context that includes its gender, e.g. "Der Tisch" (The masculine table) rather than merely "Tisch->Table".
Everything, I use it to memorize anything that doesn't stick the first time.
I just don't use an app. I will challenge myself to remember things or practice things manually.
It's probably sub optimal compared to structured spaced repetition, but it works well enough for me.
I’ve been meaning to build a unix shell deck for a while. There are so many tools that are so powerful but I just don’t use them regularly enough to remember how they work when I need them.
There's an anki deck built from the jeopardy archive with 400,000 questions, so I'm studying trivia that way. I enjoy trivia.
I would love to get my hands on this, please share if you can :)
Mine has all sorts of shit in it. Mac keyboard shortcuts. Nautical terms. Cyrillic characters. Credit card verification codes. Phone numbers. Airport codes. Ionic component names. Names of my friends’ kids. A surprising amount of Z Specification. Anything I think it would be useful to remember.
This is something I’ve been tackling myself in the language app I’m making https://store.steampowered.com/app/3220820/Bilingual_Crosswo.... Right now, I’ve added a set of front loaded intervals: 2M, 5M, 10M, 20M, 40M, 2H, 6H, 1D, 2D, 4D, 8D, and so on eventually stretching to a full year.
I’ve always felt this setup was a bit arbitrary and considered it a temporary solution. Thanks for saving me some time on research!
Take a look at https://github.com/open-spaced-repetition/
As a quick hack, increase the factor to 2.5 once you reach 1 day. That's what Anki's SM-2 used to use (if only pressing 'good')
How are people using Anki for maths? Any nice decks you could share?
Has anyone tried to use an LLM to test questions / concepts in a broader way via spaced repetition instead of just memorization? Just wondering.
This should be a first class feature in iOS. Hey Siri teach me what elide means.
how to ace any uni theory course
> download all pdfs
> merge pdfs into one
> compress
> write a very specific prompt for gemini to turn these into anki cards separated by a semicolon
> do 50 anki cards a day for 3/4 weeks before exam
not a single lecture attended top of my class (ku leuven). feels like cheating honestly
You are so right. I just began doing this today for my exams, and it really feels like cheating with how easy it is. That, and also creating a podcast with NotebookLM with all the pdfs as source and using as a prompt "Make this a long summary for studying".
Japanese media is quite popular, and many fans want to watch/read their favourite thing in its original language. This is probably the reason most people learn a language, and a huge reason why so many kids around the world speak English. Chinese culture doesn't have the same impact, yet. As to Spanish, most kids who want to learn Spanish can do so at school so there is no need to go above and beyond to learn Spanish on your own.
> Chinese culture doesn't have the same impact, yet.
At this rate if 2/3rds of their popular media(manhua, games, animation) continues being cultivation fantasy featuring the exact same power system, tropes, character archetypes, often even setting(murim) and content, it never will.
Animanga were always poised to make it big, because for all their shortcomings, they have interesting, exotic(to us) themes/tropes/vibes, and go really hard on hyping scenes up.
You learn Japanese for the media and culture; Mandarin for the financial opportunities; Russian for the reverse-engineering community; Spanish, French or Arabic to be able to speak with large diverse groups of people, typically for travel; Klingon, Na'vi, Esperanto or Elvish to fit in certain communities
Accordingly, the stereotypical CS major is attracted to Japanese and Klingon, the stereotypical Business major to Chinese. Even though few follow through because of the amount of work and perseverance required
For me, it's about the media. I'm interested in Japanese anime and manga, and now light novels.
I'm not at all interested in anything I've seen in other non-English languages, except possibly Korean now, since they seem to be producing a lot of stuff.
However, almost everything that I'd enjoy gets translated to English for both Japanese and Korean now, so there's a lot less incentive to learn them.
I'd say it's confirmation bias. In my personal circle, not a lot of people are interested in the Japanese language, but I know a few who took at least a few lessons on Mandarin or Spanish.
I've learned Japanese and part of the reason is that I thought kanji were attractive. I remember watching anime on TV when I was a kid and seeing the opening credits with Japanese characters looked soo cool.
When I was a kid, most of the foreign culture I was exposed from came from the US, and then Japan followed with a small amount.
No wonder my second language was English and third language Japanese.
Never heard a single word of Mandarin in any media I was exposed to. I can understand Spanish very well but I do not count it as a learned language as it is too close to Portuguese (my first language).
1. Generally people using such systems to learn language only need to do so if they aren't immersed in the country where it is being spoken. I stopped using Anki for German after a while of living here, even though I'm still learning. Therefore, most language learners are doing so not because they want to live in the country but because they want to consume media written in that language
2. Japanese is becoming one of the most popular languages for foreign media, probably even surpassing English at this point. Anime is really huge now, particularly in the US. It has shifted from being a nerd thing to being of interest for the "cool kids" (if there is even such a thing now). Japan also had a huge and very interesting media industry in the 80s and 90s including some very novel video game concepts, most of which has not been translated
Online everyone learns Japanese, in real life i have never encountered anyone learning it, while i know multiple people learning French.
Ego.
Chinese evil. Communist. Bad. Bad Chinese. Bad bad. Cheap products.
Japanese. exotic. mystical. Samurai. Ninja. Anime. Good. Sony. Good. Good cars. Zen. Good.
Me good. Me learn Japanese. Me exotic and mystical. Super power. Me good. Me smart. Me learned Japanse. Me great.
Me me me. Me me me. Me me me.
As I understand, anki's use of spaced repetition comes from how it presents you cards in increasing or decreasing frequency based on how you have answered it previously. In this way, I prompt chatgpt to ask me questions, and it revisits previous questions or topics for me based on how I've answered previously. I continue the same conversation periodically prompting it for questions to ask me.
What is everyone using spaced repetition to memorize?
Anki is a good piece of software. But I couldn't come up with a worse scheduling algorithm if I tried (old and new one). It's like "here's the thing you just added one second ago. Here it's again immediately after. Ok you got it, you'll see it once again in a month or so lol".
It makes it unusable and every time I tried I went back to my own self written program that just lets me set/adjust the intervals myself.
When was the last time you tried? Anki used a static algorithm (SuperMemo 2) before the new FSRS - which is dramatically different.
In the short term (first day), I think it's still better to set your own intervals (typicall 1 minute, then 5, then 10). But after that, the algorithm optimizes for reminding you just before forgetting. Highly recommend giving it a try.
I try Anki every couple of years because it has an app and can sync. I also tried fsrs and rage quitted after a few tests. These people can get high and mighty on their algos and research. If they'd just add a manual interval mode they'd contribute a lot more to humanity.
I guess what you need is Set Due Date, which allows you manually schedule cards in Anki.
The current version of the supermemo algorithm is SM-18. The author thinks SRS has gotten way better since the author was previously using an out of date version of the algorithm, SM-2.
SM-17 is linked from the benchmark repo: https://github.com/open-spaced-repetition/fsrs-vs-sm17, though I get the impression those numbers come with a dash of subjectivity. It seems fair to compare to older versions of the algorithm though because SM-17 is only used in the SuperMemo software (and Anki) and isn't widespread.
language learning is 100% memorization. eventually your brain memorizes all the phrases that click into “situation-space,” for every possible situation there is a memorized response. language can be broken down into situational meta-phonemes. using flash cards and grammar is just a way to bootstrap yourself into memorizing all the appropriate responses for any given kind of situation.
> If we step back, we realize that this scheduling system (called “SuperMemo-2”) is pretty arbitrary. Where does the rule of 1, 6, 2.5times correct + 1, reset back on failure come from? It turns out it was developed by a college student in 1987 based on his personal experiments. Can’t we do better?
Note that Anki uses (used) such an old algorithm because it derived it from an ancient open source version of SuperMemo, a software which started the spaced repetition trend. Anki just added a usable GUI instead of the convoluted mess that is SuperMemo. Newer versions of SuperMemo improved the algorithm, but they are no longer open source. I wonder how FSRS compares to current iterations of the SuperMemo algorithm.
Repeatedly memorizing the same thing over and again does not make one smart.
Ofocurse it does help you win stupid games.
Like scoring good marks in exams.
So that you can spend the next 30 years of your life doing jobs you hate for money to just end up dead for infinity.
You're free to choose not to memorise things, but please don't be an arsehole about people who do want to do so for whatever reason. Having said that, you seem to misunderstand the point of spaced repetition, which is that you don't memorise the same thing over and over again; instead, you memorise it enough times to learn it, and not many more.
When was I being an asshole. Your ego took whatever I said personally.
Reality check incoming. Yes you are an asshole. Your word choice matters, and you picked a large number of insulting terms.
"not ... smart", "[only use is to] win stupid games.", "[you will spend] your life doing jobs you hate for money".
My dude, I'm learning Japanese vocabulary, which has helped me to start reading light novels for fun. By your argument: I'm not smart, wasting my time, and hate my life, or soon will?
Thing is I would fully agree with you that memorizing != comprehension, but that doesn't mean than memorizing is without it's use. Do yourself a favor and learn to not be so rude. It is literally the first item in the site guidelines:
> Be kind. Don't be snarky.
Hmm, I have Anki and I don't see an option for this algorithm. Anyone know how to enable it? The preferences say I'm on the "V3 scheduler" but have no option for an algorithm. I don't think I'm on the algorithm described in the blog post because whenever I don't know a card it goes back to 1 day as if it was new. Or maybe I am on it and I'm just misunderstanding how this works? I'm on Mac, Version 2.1.66 (70506aeb).