47 comments

[ 3.4 ms ] story [ 107 ms ] thread
I liked seeing your reasoning and method for creating decks. I purchased Anki and have tried using it several times over the years, but haven't found a way to get myself to stick to it. You're right, using other people's decks was mostly boring, and I tried using it instead of reading books.

Having a guideline of how to stick to a process might help.

purchased? I just had a look at the homepage and it says it's open source?
You have to pay for the iPhone app
The iPhone client is commercial.
I thought it was possible he purchased a mobile port? But even then, I checked the Google Play store and iTunes, and the official version from the Anki Open Source Team is free in both cases.

EDIT: No, I'm just bad at looking at the iTunes website, looks like the iOS version is $24.99.

https://itunes.apple.com/us/app/ankimobile-flashcards/id3734...

> Definitions are not hard, there is just too many of them.

Perhaps I'm missing the point, but I'm really skeptical that rote memorization of definitions is a sensible solution to this problem.

> For example, I recall that Epi and Mono are generalization of injective and of surjective. Or of surjective and injective. I can't remember which is which.

Specifically with respect to Epi and Mono, perhaps it would help to know that epi is from Greek meaning "upon" and mono is from Greek meaning "alone" (my dictionary tells me so), which immediately resolves the injective-surjective confusion example: Epi is surjective, Mono is injective.

In that case you're learning foreign vocabulary, something Anki is more traditionally associated with.
The Greek roots that appears in English words aren't really foreign, they're part of the English language and have been since forever.
That may be the case, but most people don't know what they are and what their original meanings are, so they might as well be foreign words.
So they haven't heard of epiphenomena, epithelium, epigenetics, epigraphs, epiderm, epithets? Or monosyllabic words, monoski, monochromes, monogamy, monograms or monologues. It's not hard to guess the meaning of the roots.
The only word of these that I would assume any given english speaker knows is monogamy, and maybe monologue. I myself know those, epithet and monogram. Perhaps I could guess on the others, but I certainly wouldn't know what epi- meant.
Came here to say the same thing.

This won't give you an understanding of mathematics, just perhaps a memory of it.

A memory is also crucial. Things like standard derivatives/integrals or standard probability laws need to be memorised be it by this method or by experience.
I agree to the extent that once understood, things need (presumably!) to then be remembered.

I suppose people's methods differ, but personally I don't think I could have an effective memory without understanding, and that my memory follows understanding.

By "effective memory", I mean that I could actually apply some definition, not merely remember the pattern of notation on the page. I fancy if I learnt it from a flash card I'd struggle when variables were named differently, or with the slightest variation in form.

I used to be in your camp but now I think they go hand in hand. If you insist on understanding before remembering, how do you start?

When we start a lot of things are interrelated and unless you a bare minimum is committed to memory, it's difficult to start.

It is akin to learning a language where one need to cram the basics building blocks i.e. words and grammar rules before applying them. I think idea of trying to understand before remembering ends up impairing learning at least in my case.

I have a two year old and I see this process in action. She will first cram things like counting and then start attaching meaning to it slowly.

There are some things we must remember, of course. A child has no choice but to memorise the digits. Axioms, essentially.

When it comes to addition however, any attempt to learn addition by tabulation and memory would clearly be futile.

I certainly don't mean to suggest that one should study a theorem in a particular corner of mathematics from fundamentals up; rather understand it "one level down", to something previously interned in a similar manner (and since forgotten because one no longer had need of it) or to somemething axiomatic.

For example, say I come across an equation for the area of a right triangle for the first time. I've previously understood and accepted some other problem that I can reduce it to - area of a rectangle, say, or integration - so I can do so and actually understand why, and be able to reproduce it. Easier to learn, recall, and apply than rote memorisation in my opinion.

Perhaps easier: if you can remember that "mono" means "one" (as in monophonic, monosyllable, monomania, monopoly, ...) then that should make it easy to remember it's for (the analogue of) one-to-one functions -- same as injective.

(But the OP is French and I don't know whether French mathematics terminology includes anything corresponding to English "one-to-one".)

Memory is crucial. I got much better at learning mathematics when I started memorizing the statements and proofs of key theorems.

You also need the understanding, of course. The largest mistake in mathematics education is to think that memorizing a rote process is the same as learning mathematics (see: US high schools). The second largest mistake in mathematics education is to swing too hard in the other direction.

Learning without thought is labor lost, Confucius said.

At any rate, symbolic representations of knowledge should be committed to memory (or pad and pencil) at the time of understanding (Hebb's rule), or else your "memory" will be isomorphic to random symbols and therefore inaccessible to future thoughts.

That said, some of the greatest mathematicians (e.g., Gauss, von Neumann, Dieudonné) had phenomenal memory, so I suppose rote memorization isn't a terrible hack to try to approximate the advantages this kind of gift confers, but only in a pinch, since these mathematicians were keeping much more than definitions and statements of theorems in memory.

Absolutely. Being able to instantly recall concepts, definitions, syntax, etc. is incredibly empowering when solving problems, regardless of the subject (mathematics, programming, writing, etc.).

Nobody would suggest that you try to learn a new language without memorizing words, phrases, idioms, etc. Communication is the foundation of any field of interest, so why do we think we can get away with "learning" them without memorizing the sub-language of the field?

Just as memorization is only part of process of learning a new language, so it is for learning in other areas.

If all you have is some rote memorization about mathmatics you can use those memorized items to study in your own head. So while you shower or drive you can think about the math you've memorized and develope a deeper understanding.

As you say, memorization can be a useful part of a deeper understanding.

Memorization and definitions go hand in hand. After all, you need a certain amount of memory to understand that epi means 'upon' or that mono means 'alone'. If I retain that, is it my understanding, or my memory?

That leads me to my next point, which is Anki is best used when you do what's called rote-memorization, but memorize simpler aspects -- so have one card that asks what does 'upon' mean in Greek, and another asking what 'mono' means in Greek - in addition to making more general questions regarding this subject.

I used handmade cards and it made all the difference. A good foundation was necesarry for me to make things click. I tried anki later on, but it was too cumbersome to create and work with digital cards for me.
I used handmade cards and it made all the difference. A good foundation was necesarry for me to make things click. I tried anki later on, but it was too cumbersome to create and work with digital cards for me.
Surprisingly - as stated by others - memory is crucial to math and problem solving. Most problem solving is just memory on a higher domain anyway. Break down a problem with first principles (hard part), and solve with a mental model gained from memory.

Euler - probably the greatest mathematician of all time - had an amazing memory. He memorized the entire Aeneid and could recite any line at will.

I had an absolute beast of an algebra professor who impressed upon us the fact that things are defined they way they are for a reason, and we, as mathematicians must know them. It is not enough to be able to remember the definition of a normal subgroup, for instance. We must know why we define it the way we do, and what happens if the definition is altered in the slightest, weakened, strengthened, negated etc. It is not enough to know that quotient groups are defined modulo normal subgroups only. You should know why defining a quotient group modulo a non-normal subgroup is meaningless. Even for much more complicated categories, like manifolds, one must absolutely know why all the bits and pieces are needed. Why do we require the transition functions for real n-manifolds to be C^r? What if r=0? What happens if two charts on some underlying topological space are not compatible? Why do we need the atlas to be maximal? Why on earth do we need a countable base? Hausdorff? What is this business about needing manifolds to be Hausdorff? [0]. Why is it that bijective homomorphisms are the isomorphisms in the category of groups - i.e. why is it that its inverse is not required to be a homomorphism as part of the definition? Learning definitions by rote is the surest route to mathematical mediocrity.

"Don't just read it - fight it!" - P.R. Halmos.

[0] Yes, I know these can be relaxed, but this is the standard presentation in Kobayashi-Nomizu/Spivak/Lee/Tu/Barden-Thomas/Do Carmo/Petersen etc etc.

I see it more like freeing up you active working memory to do other things, similar to how you can only become a better driver once you aren't constantly fretting over exactly how much to lift the clutch as you accelerate. You can (and must!) understand what/why you do what you want to do, but you can begin to abstract over it and find other patterns.
Is Anki useful in learning to program? Does anyone know of any examples?
It doesn't seem like the sort of thing that would be useful for programming. I'm under the impression that the best way to become familiar with a language is to just use it. It wouldn't really occur to me to have a flashcard saying "define a function prototype that accepts 2 integers and returns a pointer to char".

Languages (vocab but also some grammar patterns), law cases, and other "fact" things is what I've used Anki for.

If instead you were thinking of using it to memorise algorithms, you'd get too caught up in the content of the flashcard while trying to learn it rather than the process of the algorithm itself. I think, anyway. I've never tried it :)

Function definitions and stuff like that I agree you probably aren't going to get much from it but memorizing large parts of the standard library is somewhere you could since in a lot of cases you aren't going to be using a lot of parts regularly but when you need them you'll save a lot of time if you have them in your memory vs having to google/check docs.
I've used it for many years, and for a short while threw some programming things on there. The main use case (I think) would be something like: you have interviews coming up, and you know a bunch of programming languages, but you aren't completely precise on the vocab for each, e.g. in python you might use len(someString) while in javascript you might use someString.length . Anki would be perfect for straightening all these out. For day to day programming, I doubt it would be useful (as if you forget that for some reason, you could just try it quickly on the interpreter)
Use Anki to memorize that gosh-darn block syntax. It's like the lord's prayer for me, used it 1000 times yet can't recall it for the life of me.
For me, Anki reviews are a morning ritual. I do whatever it scheduled for the day. Then, I take time to review weaknesses. Then I move onto doing my actual projects. A combination of project experience and curiosity inform me as to what new Anki cards I need.

So yes and no to your question. Anki by itself isn't useful for learning to program. Anki as part of a larger personal development system can be pretty effective from my experience.

Most computer programming languages have a simple syntax, so it's probably not so useful to memorise it. I find that having learned 10s of programming languages, I barely remember syntax anymore and rely on examples in the code I'm working on.

I think what's more interesting is using memorisation for learning short idioms. In fact, I recommend the same for human languages. Instead of learning vocabulary and grammar, memorising the translation of short sentences is much more effective in my experience.

As with the discussion of mathematics, memorisation will not give you insight or fluency. However, to have insight and fluency, you need comprehension and the first step of comprehension is memory. You still need to practice for fluency, though. Some people find that when they are practicing for fluency, they retain what they need automatically. I am envious of those people ;-)

I did a phd. in math and used anki heavily- but ONLY to study for exams. Anki is great for things like memorizing precise statements of theorems, or remembering some trick. Anki is not great for learning the intuition needed to solve hard problems (imo). I also use it to study written chinese characters, and it has been immensely helpful with that (although this is a harder task than I ever expected as just something I do in my spare 5 minutes a day!)
Yes, there is no substitute for developing intuition by doing exercises.
I used a similar program (same algorithm, I believe), when I was taking my first abstract algebra course.

It really didn't help, unfortunately.

I have a very bad memory and I am convinced that was the reason I was good in mathematics. IMHO there is very few to rote memorize. When you learn demonstrations, there are so many links with definitions that you eventually know all definitions by heart. When you are asked to prove a theorem, no teacher will complain if your (correct) demonstration is not the one that was given by the teacher.

I do not know how mathematics is teached in anglosaxon countries, but for me (in France), rote memorization of definitions is the consequence of practicing demonstrations, not a first step.

My comment does not contradict in any way the article: the problems of mathematics searchers are very different than the ones of students. I just disagree with many of the comments about this article: for me mathematics does not require a good memory. Perhaps a bad memory means the brain store more high level data instead of raw data and that may be useful for higher level of abstraction ???
If anyone has found a TeX template to print ~8 LaTeX flashcards on a single a4 sheet please let me know. I did find a template for 3 flashcards on one a4 but haven't had the time yet to change the template to accommodate 8 of them. Any other suggestions to quickly create flashcards are also very welcomed.
The flashcards class works fine for me. https://www.ctan.org/pkg/flashcards I specified a custom layout that I use to print on cardstock and then cut out the cards on a paper trimmer.

    \NeedsTeXFormat{LaTeX2e}[1996/12/01]                                                                   
    \ProvidesFile{letterCardstock.cfg}                                                                     
    \newcommand{\cardpapermode}{landscape}                                                                 
    \newcommand{\cardpaper}{letterpaper}                                                                   
    \newcommand{\cardrows}{2}                                                                              
    \newcommand{\cardcolumns}{2}                                                                           
    \setlength{\cardheight}{3in}                                                                           
    \setlength{\cardwidth}{5.0in}                                                                          
    \setlength{\topoffset}{1.25in}                                                                         
    \setlength{\oddoffset}{0.5in}                                                                          
    \setlength{\evenoffset}{0.5in}
I love anki and have been using it for years.

One thing I definitely recommend is _not_ importing someone elses deck of a gazillion cards. It's completely overwhelming. Create your own prompts (you'll learn better that way anyway) and slowly slowly increase it.

I use it for language practice and also to remember a vim and bash commands that I can never remember.

I've also started using it to remember friends partners & kids names, as I can never ever remember them (except now I can ;) A bit cheaty, but hey, whatever works.