4 ms·
I think spaced repetition software, which typically involves flashcards, is great for memorising a large quantity of facts. E.g. for learning foreign language v
by steveridout 13y ago
I think spaced repetition software, which typically involves flashcards, is great for memorising a large quantity of facts. E.g. for learning foreign language vocabulary, anatomy, etc... For this kind of learning it can really save you time, especially when you have 100s or 1000s of items to remember.
Using flashcards to learn mathematics, computer programming, physics, or anything requiring more creative or analytical thought is not so useful. For these subjects the number of raw facts required is usually smaller, and the thought processes, concepts and problem solving ability are much more important.
However, spaced repetition could be beneficial to these more creative and analytical subjects if it was applied more dynamically. In this case the units to learn could be the rules, laws, concepts which can manifest themselves in different ways within different problems, instead of being static flashcards. Does anyone know of software which works in this way?
My interest in this stems from http://readlang.com http://readlang.com, a site I'm working on at the moment for learning foreign languages. I use SRS to keep track of words, but in future it could be nice to think about applying SRS to grammatical concepts too.
- kiba 13y agoUsing flashcards to learn mathematics, computer programming, physics, or anything requiring more creative or analytical thought is not so useful. For these subjects the number of raw facts required is usually smaller, and the thought processes, concepts and problem solving ability are much more important. My programming flash card usually consists of evaluating pieces of code like: Question --> Evaluate the following: puts "Hello world" Answer --> Hello world I cannot memorize the solution as if I memorize the answer to multiplication problems, which is just straight rote memorization. I memorize the process for code evaluation instead. In any case, I do not think anki and similar spaced repetition flash card software are in any way a replacement for actually just writing code and solving lot of different problems. They are always complementary to learning the materials in other ways.
- steveridout 13y agoThe danger is that it's very possible to memorize 100s of answers like this without having any idea of how the code is working. Imagine if instead of static flashcards there the SRS worked on items like: - puts - the '+' operator - variables - functions Then an algorithm would generate problems incorporating those concepts. The exact same problem would never appear twice so you can't learn by rote and it ensures you actually learn the concepts. Your progress on each concept would be tracked by the SRS algorithm to help schedule your learning. I think this would be a huge improvement on static flashcards.
- gwern 13y agoI agree, for a lot of algorithmic bits of knowledge, it's better to study a dynamic set of questions revolving around the algorithm, and that's almost the same example I give in http://www.gwern.net/Spaced%20repetition#prospects-extended-flashcards http://www.gwern.net/Spaced%20repetition#prospects-extended-... But so far no one has stepped up and done the programming & card writing to demonstrate it, aside from perhaps Khan Academy (they generate questions, AFAIK, and are supposed to have incorporated spaced repetition at some point).
- kumthekar 13y agoI am a co-founder of Lymboo Math (http://lymboo.com http://lymboo.com) We designed Lymboo Math to be a comprehensive, structured, and rigorous math enrichment program. While most programs focus only on short-term mastery of math concepts, Lymboo Math's emphasis is on both short-term proficiency and long-term retention. We do this by incorporating spiral reviews at periodic intervals. Our spiral reviews are 'spaced' both in time and in content, i.e., students are assessed on multiple topics in the same test. The mixed spiral reviews improve students' context switching skills and at the same time enhance retention of learned concepts. You can learn more about our philosophy here: http://lymboo.com/about http://lymboo.com/about and http://lymboo.com/tour http://lymboo.com/tour Thanks. Bala
- thinkersilver 13y agoHey steveridout, you've got a point there. It's a weakness I've ran into many times when I move away from languages into learning something like statistics or hard algorithms. It's possible, by simplifying the information and using a combination of text and images. The problem when you start doing this is the time it takes to create a deck of cards that make sense. It would be a great idea to be able to use a templating language for your flashcards which you can embed simple rules and plug in a source of data. SRS programs have cloze deletion but it will go much further than that. It may be a good idea for an Anki plugin, perhaps. I hadn't thought about it until just now. ......
- tgb 13y agoI use it for math at the undergraduate to graduate level and have for over a year, but not super religiously. There are plenty of things in math that benefit from this treatment. It's good to just know definitions, then when you come across something that satisfies it you'll know what to look for to find out more about it. You'll know the exact requirements of theorems so that you don't have to once again look on wikipedia to see that yes this does require a compact set. You'll find a card that says something you've reviewed before but go "wait, why is that true?" and then work out the general idea again. You can memorize known identities that are just plain useful, things that can't be easily Googled but can be easily recognized. You can put warnings to yourself that certain theorems can be easily applied incorrectly. You can learn the most common names for theorems so that it is easier to communicate with others about them. And above all, it's just another chance to look over things you already should know. I won't claim that it's more or less useful than reading a textbook for the equivalent amount of time or doing problems, but it's certainly more useful than doing nothing. P.S. Anki has very nice LaTeX support! I don't know about the others, but this is invaluable for math.
- Dewie 13y ago> Using flashcards to learn mathematics, computer programming, physics, or anything requiring more creative or analytical thought is not so useful. I thought you were wrong for a second, since there are a lot of definitions and theorems that are probably good to know on the fly. But then I thought about learning about the meaning of greek letters; okay, but in what context...
- natural219 13y agoEven for learning deeply creative skills, having a good scaffold of the vocabulary, concepts, and atomic pieces of knowledge is very important to construct high-level connections later on. Often, the relationship between fact-base memorization and high-level synthesis is a complex balance, but learning any skill or discipline is going to involve a fairly large amount of gruntwork in terms of just memorizing vocabulary and basic facts.
- chad_oliver 13y agoFor mathematics and physics, the 'unit' of spaced repetition should be skills, not questions. You would need a program which can generate questions that test a particular skill, such as partial differentiation or factorizing quadratics. If you get a question wrong, that indicates that you need to spend more time practicing that type of question.
- sheepmullet 13y agoI'm currently using SRS software (Anki) to learn more about software development. Instead of trying to memorize facts I am using cards as a cue that it is time to revise and deepen my understanding of a particular topic. Every time I learn about a new topic/concept/technique I will add a card to my anki deck with the topic name. E.g. Today I have added JS Promises. Then when a topic comes up for review I spend 10-15 minutes reviewing my knowledge and trying to probe my mind for parts I do not understand and trying to link it to, and see how it can be used with, other related techniques. After reviewing I then spend 30 minutes to 1 hour investigating the technique in more depth. At this point I'll try and implement an aspect of it in code or see if I can answer a few problems people are having with the topic on stack overflow. Then I will add a few notes to the card detailing what I have done so that I can make my next "review" of the card more challenging. All up each review for a card takes close to 1.5 hours. I tend to have 1-2 cards come up per day to review. I find it has given me a broad, and usable, understanding of software engineering practice and principles and has made me a better developer. The downside is I feel you will never become a master at these topics using this technique as the time investment per topic is just not enough. I started using it because I found I had an experts understanding of some topics and a very weak understanding of other fundamental areas of computer science and software engineering. E.g. 1000+ hours of crafting complex regular expressions but lacking a proper understanding of the relational model and how a database table join works. I would be really interested to see if there is any literature that examines using SRS in this manner (as opposed to learning simple facts).
- spats 13y agoYou approach looks very interesting. I was thinking how can SRS be used effectively for programming/software development skills. Can you please share your cards or any thing more on your approach?