Basic undergrad statistics. This doesn't make me better at doing statistics, but now I can understand things I read. Whereas prior to SR, I had learned the material three separate times - always forgot because of lack of use. SR made it stick.
Algorithms and data structures.
Basics of HTML/CSS/JS. I'm not a frontend developer, but this was enough for me to (mostly) understand colleagues' JS code. And often I would inform him of one of the newer JS features he didn't know of (e.g. null coalescing operator). Does it make me a JS developer? No. But it ensures I'm not useless at it.
Python 3.x new features. Simple things like "Stop using os.walk and use scandir instead".
A whole lot of Emacs keybindings. I was a heavy Emacs user before SR, but this really helped take it to the next level (I now mostly rely on hydras, so I no longer memorize keystrokes, cut I can't deny its effectiveness).
Some amount of elisp.
Probably a whole lot more random miscellany I can't recall right now.
Basically, what it does is let you retain information without usage. Prior to this, I would mostly retain only things I use (or had used) often.
I was in university for over a decade. Took lots of notes. But they're useless if you don't review them. Some years after leaving university I stopped trying to learn anything technical unless I was putting it to immediate use. Why bother if you're going to forget?
I can understand using SR for languages or I suppose geography or history trivia.
However, how do you use for skills/domains where you have to actively think?
Like in your Python example, knowing about os.scandir() would be a tiny bit helpful before Pathlib.
Let's say I put pathlib.Path().iterdir() in my Anki card, what would be the point of that for someone who is happily using glob or rglob?
What I mean is that for many domains it seems the challenge is what to put on these Anki cards.
Let's go with another example. Let's say you create Anki card Recall = TP / (TP + FN) for your statistics 101. However knowing why and when recall is important would be crucial instead of knowing bare formula.
As I said, they won't make you better at applying statistics (or programming) - just at recall.
Disciplines like programming, math, and well any technical discipline require both memory and analytical abilities. SR takes care of only the former. The barrier I kept running up against was forgetting definitions and theorems in math - especially if it had been a year or longer since I last used them. This helps mitigate that problem.
> Let's say I put pathlib.Path().iterdir() in my Anki card, what would be the point of that for someone who is happily using glob or rglob?
That's for you to answer - if you prefer doing it with glob/rglob, that's fine. For me, the card was "What is a better way to traverse directories/files than os.walk?".
The next time I reach for os.walk, I'm reminded there is a better way.
OK, let's be real. It doesn't always work. Perhaps only 30% of such cards lead to actual behavior change. In a typical scenario (70% of the time), I'll get the card right, but using os.walk won't trigger the part of my brain that says "Oh, there's a better way". Still, it's a very low price to get that 30%. And the bonus is if I see someone else's code where he uses scandir, I'll immediately know what it is for.
> However knowing why and when recall is important would be crucial instead of knowing bare formula.
Obviously. You'd have to find a way to embed that into a different card.
Basic undergrad statistics. This doesn't make me better at doing statistics, but now I can understand things I read. Whereas prior to SR, I had learned the material three separate times - always forgot because of lack of use. SR made it stick.
Algorithms and data structures.
Basics of HTML/CSS/JS. I'm not a frontend developer, but this was enough for me to (mostly) understand colleagues' JS code. And often I would inform him of one of the newer JS features he didn't know of (e.g. null coalescing operator). Does it make me a JS developer? No. But it ensures I'm not useless at it.
Python 3.x new features. Simple things like "Stop using os.walk and use scandir instead".
A whole lot of Emacs keybindings. I was a heavy Emacs user before SR, but this really helped take it to the next level (I now mostly rely on hydras, so I no longer memorize keystrokes, cut I can't deny its effectiveness).
Some amount of elisp.
Probably a whole lot more random miscellany I can't recall right now.
Basically, what it does is let you retain information without usage. Prior to this, I would mostly retain only things I use (or had used) often.
I was in university for over a decade. Took lots of notes. But they're useless if you don't review them. Some years after leaving university I stopped trying to learn anything technical unless I was putting it to immediate use. Why bother if you're going to forget?
SR is what let me get back to studying for fun.
I can understand using SR for languages or I suppose geography or history trivia.
However, how do you use for skills/domains where you have to actively think?
Like in your Python example, knowing about os.scandir() would be a tiny bit helpful before Pathlib.
Let's say I put pathlib.Path().iterdir() in my Anki card, what would be the point of that for someone who is happily using glob or rglob?
What I mean is that for many domains it seems the challenge is what to put on these Anki cards.
Let's go with another example. Let's say you create Anki card Recall = TP / (TP + FN) for your statistics 101. However knowing why and when recall is important would be crucial instead of knowing bare formula.
As I said, they won't make you better at applying statistics (or programming) - just at recall.
Disciplines like programming, math, and well any technical discipline require both memory and analytical abilities. SR takes care of only the former. The barrier I kept running up against was forgetting definitions and theorems in math - especially if it had been a year or longer since I last used them. This helps mitigate that problem.
> Let's say I put pathlib.Path().iterdir() in my Anki card, what would be the point of that for someone who is happily using glob or rglob?
That's for you to answer - if you prefer doing it with glob/rglob, that's fine. For me, the card was "What is a better way to traverse directories/files than os.walk?".
The next time I reach for os.walk, I'm reminded there is a better way.
OK, let's be real. It doesn't always work. Perhaps only 30% of such cards lead to actual behavior change. In a typical scenario (70% of the time), I'll get the card right, but using os.walk won't trigger the part of my brain that says "Oh, there's a better way". Still, it's a very low price to get that 30%. And the bonus is if I see someone else's code where he uses scandir, I'll immediately know what it is for.
> However knowing why and when recall is important would be crucial instead of knowing bare formula.
Obviously. You'd have to find a way to embed that into a different card.
> Probably a whole lot more random miscellany I can't recall right now.
That made me laugh ;)
> Algorithms and data structures.
how do you frame these cards? I've always assumed something like this would be too information dense to be useful
Basic stuff. Dijkstra's algorithm, union find, etc.
I will note that some cards are basic: A simple recall. Other cards ask for me to reproduce the whole algorithm (a violation of SR methodology).
All cards that take a long time to answer are stored in a separate deck, which I go through only when I know I have the time to dedicate.