Is there a benefit to trying to actively memorize the syntax/semantics of a language rather than just looking it up when you need to know something, and then passively memorizing the parts you use often?
Also a huge component of memory is contextual cues, which is why people find it so hard to code on a whiteboard vs. being at their normal computer/keyboard.
Is there a benefit to trying to actively memorize the syntax/semantics of a language rather than just looking it up when you need to know something, and then passively memorizing the parts you use often?
This is akin to looking up words you don't know in a foreign language and hoping through repeated exposure that you learn the right words to use. It's very slow and frustrating. It is much more efficient to just know stuff off the top of your head.
Just because you look stuff up doesn't mean you efficiently memorize those things either. Reading had been proven to be a poor strategy for studying.
Also a huge component of memory is contextual cues, which is why people find it so hard to code on a whiteboard vs. being at their normal computer/keyboard.
Context clues can be embedded in flash cards as necessary.
Although it's also possible that you're associating arbitrary clues to your cards, which would be to your detriment. For example, an arbitrary part of the card trigger the answer, instead of an appropriate context.
It's why some academics recommend studying using different rooms so that the context for your answer don't become glued to that environment.
> This is akin to looking up words you don't know in a foreign language and hoping through repeated exposure that you learn the right words to use. It's very slow and frustrating. It is much more efficient to just know stuff off the top of your head.
> Just because you look stuff up doesn't mean you efficiently memorize those things either. Reading had been proven to be a poor strategy for studying.
The research of Krashen, Mason and other L2 acquisition linguists on extensive reading for language learners directly contradicts this claim. Regular, sustained reading is considerably more effective for acquiring a language than flashcard-based methods.
Anki is great and I'm a contributor! But it's more of an ancillary tool. SRS shines when it comes to memorizing decontextualized, atomic information (e.g. countries and capitals, the periodic table of elements or writing Japanese kanji), but not for learning a language in general.
The research of Krashen, Mason and other L2 acquisition linguists on extensive reading for language learners directly contradicts this claim. Regular, sustained reading is considerably more effective for acquiring a language than flashcard-based methods.
I am not disputing reading in the language learning context as a tool for learning, especially when combined with SRS. Doesn't really apply to me since there is no widespread written component for ASL.
By reading, I meant people rereading their old notes instead of actively challenging themselves. That is, no attempt at retrieval-practice that is the basis for spaced repetition. Research said that study method is often regarded as effort in vain.
But that apply to contexts such as studying biology. Reading in a foreign language is a different context in that you are also learning new materials and practicing retrieval at the same time.
Anki is great and I'm a contributor! But it's more of an ancillary tool. SRS shines when it comes to memorizing decontextualized, atomic information (e.g. countries and capitals, the periodic table of elements or writing Japanese kanji), but not for learning a language in general.
I don't see how it's impossible to use anki for contextualized learning. It's the whole point of sentence mining. Rather, with no context, it's essentially useless since I wouldn't know how to use it in context.
Periodic table is a great example for this. When I don't know the answer to questions anki posed, I used related information to retrieve what I need to know.
In my case, I have no reading materials to sentence mine, so I just mine ASL videos.
> SRS shines when it comes to memorizing decontextualized, atomic information (e.g. countries and capitals, the periodic table of elements or writing Japanese kanji), but not for learning a language in general.
I have acquired >3,000 words from daily anki usage in Korean. Not only is it possible, it's the only way for me because inputting words into anki (or any SRS system) takes so long.
I interleave two decks: a premade sorted one with 5.8k words, and my personal deck that I occasionally add to.
The issue is that later on, you start delving into ambiguous territory for words. I've found that it's impossible if you maintain a (word in your native language) frontside and (target language word) on the backside.
Now I am slowly migrating to having the definition of the word in Korean on the front, and the target word on the back. I'm sure this won't be perfect, but it's better than having one english word potentially map to many korean words.
Using anki has bolstered my Korean learning because, well, I can recognize more words when I read or watch native material! Previously it was impossible for me to read the news because I had to look up every. single. word. Now it's more like 65-80%, which makes it much more tolerable.
In an ideal world one would learn a word, then put it into anki, but it's simple math. ~1 min per word (very generous) is only 60 words per hour. I usually fluctuate between 1-2 minutes because I have to check 2 dictionaries to make sure it's accurate, then add other data like grammatical type, and so forth. It may be easier for a language that lacks chinese characters, but I have to make 3 dictionary searches to add one card. So I only rarely add anki cards now... I have notebooks filled with lists and lists of words that I wrote down from seeing it in native material, that I just don't have time to manually add into anki.
If I were -only- studying Korean, then I could muster ~2-4 hours a week or so to add anki cards. But I have work, and life, and other hobbies, etc. Any time spent not adding cards, is more time for me to study my other decks, etc.
3,000 words is barely a start! You need much more vocabulary than that to get to a very functional level. You absolutely don't need Anki to learn that many words (which your comment originally claimed before you edited it). FWIW, I still couldn't comfortably read Chinese when I had 3,000 characters and closer to 25,000 words under my belt.
That said, I think using Anki as a scaffold for the first few thousand words is reasonable. After even 1k, I'd advise getting graded readers which are easy enough for you that you know 97-99% of the words and read 50 pages a day. It will probably take you under 90 minutes since it's easy enough that you're actually reading instead of decoding.
Progress might seem slow at first, but you'll be building a solid base with all that input and reinforcing previously learned words in many, many contexts. You'll also be getting collocations, history, shared cultural beliefs, etc. As your vocabulary builds, you can also start listening to radio or podcasts. They're less forgiving due to moving at a set speed but will do wonders for your conversational abilities.
Even when it comes to word definitions, as you pointed out, it's not a 1-to-1 mapping. The Korean word for "nose", for example, can be used for pigs and elephants as well as for humans. In English, you couldn't do that—pigs have snouts and elephants have trunks. Similarly, in English, if you talk about "black eyes" it means something completely different (bruising) than it does in Korean (dark brown eyes).
This is stuff you don't pick up from flashcards, unless you make super elaborate flashcards (which take more time than reading)!
> You absolutely don't need Anki to learn that many.
No, but anki makes retaining them much easier. There are a great many words that I've learned that come up infrequently enough that it's easy to start forgetting them. In fact, a great many of the more niche words that I learn through tv shows, etc, are easy to forget unless I'm retaining them via anki.
> After even 1k, I'd advise getting graded readers
Yes, but there aren't really any for Korean. Also 1k is really nothing at all, almost all content at that point will be excruciating to read.
I am not arguing to use anki -alone-. Obviously one needs to be reading material as well, but that's tertiary to this discussion on anki and its usecases.
> This is stuff you don't pick up from flashcards,
No, this is stuff not picked up from poorly made flashcards. I.e., most flashcards. Mine include tidbits like this when applicable. Each of my cards has several fields like hanja/grammar type/notes that I fill out, hence it taking a while to make them.
The issue is that later on, you start delving into ambiguous territory for words. I've found that it's impossible if you maintain a (word in your native language) frontside and (target language word) on the backside.
First thought is that you should do sentence mining. That way you have the context surrounding it that let you figure out how the word is meant to be used?
Second thought, have you think about using symbolic images to avoid tying a word to target language?
I found it difficult to use since you have to make your own symbols and concepts, and re-purposing images to represent something. Not time efficient, and I am not sure if it's actually effective. OTOH, it should get easier and faster as I amass more conceptual images. For example, I have an example of "one" and "hour", so I can combine them to make "one hour" without English or any other written language involved.
Well as far as a know there’s no commercial neural implant that will autocomplete forgotten words when speaking. When programming, it’s really not necessary to remember much of anything. It doesn’t hurt of course, but it’s not exactly what differentiates a star programmer from a mediocre one.
You misunderstood the point of my question. I don't think it's worth memorizing any of those things when you could be learning deeper concepts than names of standard library functions or something.
It's important to learn the names of concepts so you know what they refer to. Then, you can start diving in deeper once you have the surface level understanding down.
If you think you understand the fundamentals? That's cool. Move on.
For me, there's some doubt in my mind about definitions despite being pretty good at debugging and knowing how things work. So it's good to get those cleared up.
It kind of covers this in the article, but the theory is that by actively memorizing these things you become a better programmer because you have more tools at your disposal (and more knowledge about exactly how those tools work and what they are good for).
I'm sure all of us programmers have been in the situation of discovering a faster/better way to do something that we've been doing for years.
- code-level design patterns (like the factory pattern)
- system design patterns (like caching in Redis)
- SWE process patterns (like code review or 1-1 meetings)
Why would syntax be the right level of abstraction to repeatedly review?
The space of things you can memorize (or "cache" in your mind) is too large. So a better strategy might not be to use Anki (which optimizes for retention but takes time to set up) and instead "randomly sample" a bunch of different things so that you know the techniques out there. Then you retain the knowledge that you need by actually using it on the job.
Also a huge component of memory is contextual cues, which is why people find it so hard to code on a whiteboard vs. being at their normal computer/keyboard.