Hacker News new | comments | show | ask | jobs | submit login
How I Rewired My Brain to Become Fluent in Math (nautil.us)
458 points by nautilus 967 days ago | hide | past | web | 144 comments | favorite



My observation from years of experience teaching calculus and mechanics is that every student has a different learning style. In particular, there are "theory people" who need to understand the reasoning behind the concepts first and "practice people" who best understand concepts by looking at worked examples. There may be other subdivisions, but these are the main types.

I had two cases when my students showed no signs of progress after hours of theory-style training, and then became Einsteins after solving some practice problems. I was like... why did we waste so much time with the theory???

I don't necessarily agree with the OP that rote memorization is for everyone. Ultimately both the theoretical/symbolic understanding and the "doing"-experience are necessary, but the order in which students acquire these skills is up to them.

Here's a nice quote:

    不闻不若闻之,      Not having heard is not as good as having heard,
    闻之不若见之,      having heard is not as good as having seen,
    见之不若知之,      having seen is not as good as mentally knowing,
    知之不若行之;      mentally knowing is not as good as putting into action;
    学至于行之而止矣    true learning is complete only when action has been put forth
           -- 荀子                                    -- Xunzi


I first understood symbolic derivation after implementing code to apply the rules we'd learned (then I derailed completely and turned the expression evaluator I'd written for it into the core of a compiler).

All through primary school and most of high school, I stayed well ahead of the curve in maths because I could figure most things out from what we'd already learned, and finding algorithms was easier than memorisation.

E.g. I remember being given the task to sum all numbers from 1 to 100, and figuring out the algorithm for summing any series from 1 to n in time to be able to be intolerably smug about how quickly I had the result (I must have been 14-15 at the time so it was nothing out of the ordinary - the teacher assigned the task explicitly to see if anyone would find shortcuts or the formula). I then proceeded to spend the rest of the lesson figuring out how to modify it for all odd numbers, even numbers and various other classes of numbers. Up until then, that was how I spent most of my lessons, and my teachers tended to encourage it.

I lost most interest in maths when the teaching turned to become more about memorisation, and I was not taught the skills needed to figure out the underlying rules to be able to compensate for not memorising. If I'd been more interested, and invested the time in finding suitable resources myself, I'm sure I could've kept up, but it was still "just school" to me, even though I enjoyed math lessons until then.

It went from being my favourite topic to being something I actively avoided because of this.


That sounds better than a good portion of my K-12 math education. Starting in 7th grade and going to 10th grade, I would walk into class and the teacher would have a list of problems on the board for us to complete and turn in. That's it. Zero instruction at all, we were expected to read the book to figure out how to do everything on our own because the teacher barely knew how to do the problems. These were the "upper level" math classes too.

This situation was actually pretty terrible. My classmates and I hated this setup and most of us were barely learning the material, those of us who did figure it out usually had to teach those around us since the teacher wasn't. During this time my math grades were low compared to my normal grades, mostly in the B to D range.

Eventually, I found a teacher who would spend class teaching instead of having us work on "homework" the whole time. We would go over all of the relevant theories to the chapter for a few days, showing us, in a way that most of us could understand, mostly how they worked but without getting too in depth. At this point, I went from being the guy barely skating by in math classes to being a straight A student, just because my teacher was willing to put in the effort.


"Young man, in mathematics you don't understand things. You just get used to them." -- John von Neumann


This is so true.

I work best from examples, and find learning computer languages from documentation very hard.

OTOH, I'm very quick at looking at examples, generalising behaviour, finding edge cases and then looking at the docs to understand those edge cases.

One of the best programers I know is the polar opposite. He will spend days reading every. single. piece. of documentation on something, and then 5 minutes writing a perfect piece of code.


Do you end up writing perfect code when you learn from examples?

Just like you, I learn from examples rather than by reading documentation... and I suspect that just like me, you don't end up spending 5 minutes writing perfect code. If true, to me, that means your friend's method is superior.


After the same amount of time I'd say our code is of the same quality (ie, after say X days working on something new).

I'll have written lost of lesser quality versions first and slowly approached an optimal solution. He'd never write anything until he understood it well enough to write the optimal solution first time.

Sometimes getting lesser quality versions done quickly is a good thing - certainly I was much more useful at getting a quick messy mostly working solution done (and sometimes that's all that is needed).

OTOH, if there is job big enough to amortise that startup cost and important enough that it had to be of the highest possible quality then I'd often give it to him.


“Tell me and I forget, teach me and I may remember, involve me and I learn.” - Ben Franklin


Very interesting.

"I especially thought “involve me and I learn” didn’t sound very Ben-Franklinish, or very 18th century. So I did a little poking around. I found out that while the quote is generally believed to have come from Franklin, it might actually have originated with Xun Kuang, a Chinese philosopher who lived from 312-230 B.C."

[0] http://www.gazettextra.com/weblogs/word-badger/2013/mar/24/w...


I'd say the prime proof of true learning is to have taught someone else to put in to action what you have learnt.

The "put forth" in the above is not entirely clear to me but I imagine that fits in there as a sub-division.


不: not

闻: hear

若: good

见: see

之: have

知: know

looks easy :)


That's not as easy as it seems.

若 literally means [some kind of] "if", 之 is not "have" but rather "the" [?]. The last line is completely obscure for my very beginner Chinese skills.

I'd be glad if someone explained this.


My chinese is probably more rudimentary than yours, but I often use a firefox plugin that helps you get some idea of what the sentence means: https://addons.mozilla.org/en-US/firefox/addon/perapera-kun-... (note it recognizes expressions, instead of working only character by character ... )


'若' is closer to 'as' or 'equivalent to'


I come from a very similar background as the writer. As a young man, I showed high potential for languages. So when I went to college, I loaded up on languages, graduating with 6 different languages at at least the 200-level and fluency in 3 of those languages. Unlike the writer, I chose neither military nor government work upon graduation, but instead worked as an ATA-certified translator for 10+ years, primarily translating pharmaceutical documentation and medical studies.

I've since moved into professional software development and am now rusty in the spoken languages I used to be fluent in. I work with a number of different programming languages, primarily doing web development since that's where the money is in remote work (although I also have a strong interest in embedded programming). In between, I also finished graduate school in public health (don't ask!), taking multiple upper-level biostats and epidemiology courses.

Anyway, people were always interested in how I learned so many languages. As it turned out, I used similar techniques as what the writer describes to not only learn languages, but also learn graduate-level quantitative coursework, and now programming languages, algorithms, and data structures (an ongoing task!). People are taking exception to her description of the technique as "rote learning". Perhaps a better emphasis would be on repetition, drilling, and fluency. But for me at least, this did entail things like flash cards -- Quizlet is a godsend -- and repeated, focused practice of short problems.

I have found that the technique doesn't seem to work as well for complex algorithms as it did for math and languages. Maybe because it's difficult to break down some algorithms into small parts, perhaps because I just haven't figured out how to do so yet, or maybe I'm just getting older.

But I am in total agreement with the writer that modern education does a grave disservice to young learners by discarding rote learning and repetition.


> But I am in total agreement with the writer that modern education does a grave disservice to young learners by discarding rote learning and repetition.

I've come to appreciate the importance of rote learning over the past couple of years... but despite its simplicity, I would call it a very advanced technique.

You don't need rote learning to get to understand something. You don't even need rote learning to become very good at something. You only ever need it to be able to think faster about certain advanced topics or if you'd like to become fully fluent in a language.

These are not things a high school student should necessarily spend much time on. Especially considering that rote learning, if not self-motivated, can be incredibly demotivating and have the opposite effect of what was intended.


I disagree. We are expecting students to learn more than ever before. Math is a great example. Their ability to handle even a simple concept like multiplication requires fluency in addition. The ability to learn algebra requires fluency in arithmetic. The ability to learn calculus requires fluency in algebra. Tons of kids pass one grade but emerge unprepared for the next. The author hits the nail on the head: they understand the material at the time, but never develop fluency. Then next year when they try to build on that foundation it has evaporated. Rote learning should begin in elementary. I am thankful that I was required to learn my multiplication tables.

Yes, we need to tailor our teaching to the attention span and abilities of our students, but that doesn't mean we shouldn't be using this powerful tool of fluency through rote learning.


It really depends on the goal. From a mathematician's perspective Engineering is still part of the kiddie pool of math. The kind of things some people did in high school mostly though route memorization.

However, for ~98% of the population it's by far the most useful parts of math. Then again you can also say the same thing about just Arithmetic, basic Algebra, Logic and Statistics. So, it's really a question of what your goals are.

There is actually a lot of Math that's been dropped from K-12 education. EX: Understanding logarithms is really fundamental for using a slide rule or understanding floating point arithmetic, but it's not really that useful for most people.


Even though I chafed a bit at the delays it imposed and kept asking the teacher about other more advanced topics, I do not regret a single minute of the time spent chanting 12-times tables in my first couple of school years. Same deal for written exercises and homework - I don't think I'd be so good at mental math, estimating, and 'back of the envelope' calculations done in pencil if it weren't for all that practice as a child.


> You only ever need it to be able to think faster about certain advanced topics

This (and pretty much only this - you don't need rote learning to become fluent in a language, as evidenced by the way people learn their first language). Rote learning is what in tech we call caching things.

I very much prefer calling it like that, because it immediately highlights some benefits and drawbacks of the method:

- you cache things for quicker access, therefore it enables you to think faster

- the biggest benefit comes from caching things that are most frequently accessed; therefore learning multiplication table makes sense, it significantly speeds up every math you do in your head explicitly

- rote learning basics of a given field can help you learn it faster as again, the basic facts you need will be readily available in cache

- this matters because a lot of thinking people do has timeouts (aka "power of will", "energy", "patience", "curiosity") - if figuring out some connections between pieces of knowledge takes too long, you will get frustrated and give up early

- rote learning of history dates usually makes little sense because you end up caching vertices of a graph, while what you really care about are edges and traversing

- there is only so much you can fit in cache without losing its effectiveness, so memorize what matters, not everything

- rote learning is caching things, not developing understanding

- spaced repetition is a hack to force your brain from removing a particular information from cache prematurely; after few iterations it will understand that this piece of information you keep repeating is important and should stay cached

Also note that various memorization techniques are basically very fancy names for data structures optimized for human brains. For instance, "mnemonic link system" (aka. "chain method") is basically a linked list, where you use stories to build cons cells. There are variants of this method that are essentially doubly-linked lists or skip lists, and then you have other methods that implement association lists ("memory palace"), hash tables, etc.

This is important because you can apply knowledge about those data structures to evaluating those memorization techniques. For example, the reason it's difficult to insert another item in the middle or at the end of the list memorized with "chain method" technique is that you have to first traverse linked link to the place of insertion and then re-cons it there (develop two additional stories). It suggests that a/ maybe try to add new elements to the beginning of the list, and b/ you shouldn't use the "chain method" for remembering things you'll need to have random access to.


I believe what is described is repetition, but not rote learning. That, to me, means memorizing facts without connecting the dots. Rote memorization is learning for an exam by memorizing the previous years' problems, or learning history by memorizing dates and events. If I focus on knowing the previous years problems by heart, I may accidentally make the connections to be able to solve more varied problems, but thats rather inefficient. Similarly, knowing historical dates doesn't imply an understanding of why and how things happened.

Learning different conjugations of verbs by using them in sentences isn't rote learning, either. It's rather the opposite, trying to connect the new verb into the existing knowledge of the language.

Rote learning alone is useless for most students. Repetition is certainly important in retaining information, no doubt about it, but as with the math examples, you need to apply basic arithmetic in the context of solving equations, for example, to really get a "feel" for it, a sort of automatism where you not only know how to do 1+1, but also WHEN to use this knowledge.

As far as complex algorithms and such go, I do believe they can be broken down into pieces, but you really do have to know the pieces and their relations and implications innately, and with complex algorithms, it's really hard to know all the pieces of the puzzle, and sometimes even finding out what is missing is difficult. You can drill something ad infinitum without gaining anything if you're missing something.

I believe this to be the secret skill that the article omits. In order to learn effectively, you have to recognize where your knowledge is lacking, find out what it is you should know, and drill those parts. A teacher should help students find these gaps and help fill them. The rest is just a little bit of willpower and discipline.


Spaced repetition algorithms and programs are a godsend. Org-drill and diligence has increased my retained knowledge of vocabulary, grammar, mathematics, and logic.

Other people probably use Mnemosyne which is great but having space repetition in Emacs? Org-mode? Capturing notes to-read or facts from the web that I want to remember and automatically putting it into my drill sequence? Definitely not rote - deliberate, yes.


As a thank-you present to our readers on HN, Nautilus wanted to give you exclusive full access to this Prelude article from our latest print Quarterly online "preview". Subscriptions to our print edition are how we make all our online content free. We thought the HN audience would like this piece so in appreciation for your traffic and your comments, here it is.


I became aware of nautilus via HN and subscribed a few weeks ago.

Please keep up the good work.

While print is exactly the medium I want for something of this sort, I do think it would be wise to look into some sort of digital subscription / supporter option.


I love Nautilus! Gorgeous layouts (print & online) with engaging and opinionated content.

I notice that you only sell print subscriptions. Do you plan on selling any digital-only subscriptions? I would sign up in a heartbeat because your online layout is Really That Good (TM).


We are planning to have ebooks of each issue available next month. Thanks


>I learned Russian by gaining fluency through practice, repetition, and rote learning—but rote learning that emphasized the ability to think flexibly and quickly. I learned math and science by applying precisely those same ideas. Language, math, and science, as with almost all areas of human expertise, draw on the same reservoir of brain mechanisms.

Author approached learning mathematics in the same manner as learning a new foreign language (Russian), and it served her well.

Student focus on maintaining grades throughout school is sadly a detriment to slow learners who actually do need to spend the time to absorb, savour, play with and drill new concepts. I used to think I was a smart, but after years of successfully guessing the teacher's passwords[1] in class and on exams, I realized I only short-changed myself. Comparing against others with the benefit of age and hindsight, I realize now that I'm one of the slow learners who actually need an inordinately longer duration to thoroughly understand concepts than others.

MOOCs and other forms of self-study are great in this regard since pace-setting is now controllable, but rarely lead to a degree or credential one can leverage later in life. I'm glad that the author was able to apply her effective language learning approach to mathematics and science presumably within course durations (all the way to her PhD).

[1] http://lesswrong.com/lw/iq/guessing_the_teachers_password/


Thank you for that article. Well written and it hit me straight away. I struggled through getting my B.S. Mechanical Engineering - fighting to learn the heavy math load along the way. Looking back, it would have been nice to have the perspective presented by this article.


I can recognize some of my experience in what she's saying -- as I've been told several times in math/stats "you don't understand this, you just get used to it."

That's a bit of troubling statement at first, but I think it's sortof a shorthand way of saying that much of the understanding available comes through the process of repeated manipulation and observing outcomes.

I've also noticed that a decade or two after going through a math undergrad, the limited material I've retained best was the stuff I learned my freshman year and had to repeatedly re-apply in other coursework.

Still, I think she may be overstating the case about the limits of conceptual understanding, though (or perhaps bringing an engineer's perspective to the discussion rather than a mathematician's. ;)

Practice is crucial, but when I need to dredge old mostly-forgotten material up out of my brain, the interconnections formed by the mapping of conceptual space we call "proofs" often turn out to be pretty helpful. There's plenty of things I can't remember that I can derive from what I can recall.


I got tired of not having an intuitive understanding of particular mathematical concepts. The rote memorization was very limiting for be because I wasn't as easily able to grasp when it might apply to certain concepts.

Pretty sure Kalid is a commenter here, but I have to give him a huge thanks and plug for BetterExplained.com--really helped me grasp some of these higher-level concepts in a more intuitive manner, even if I didn't walk away with a full understanding of the intricacies.

His Cheatsheet is a great starting point if you are interested in a particular topic: http://betterexplained.com/cheatsheet/


Wow, thanks for the plug and the kind words! Glad to hear the site is helping -- most of the time I miss the intricacies too, and end up adding things years later [after a re-read] or in response to a comment from the article.

As a more general reply to the article, I was fortunate enough to work with Prof. Oakley on her Coursera Class (https://class.coursera.org/learning-001/lecture, I'm the last guest interview at the bottom) and I really, really like her learning strategy.

Her article didn't use the exact phrase "deliberate practice" but I think that captures the essence of what she means by repetition. You need enough conceptual understanding to make sure you're following the path correctly, but then you want to practice -- at the edge of your comfort zone, with feedback, etc. -- to make sure it's really clicking.

It's really easy to fool yourself into thinking "I've got this" when it's untested. In my own case, I realized I didn't "get" imaginary numbers and exponents when I couldn't estimate a^b [a raised to the bth power] in my head with equal fluency for all numbers a and b. I had never really tested every type of number in every type of exponent position (base and power).

For example,

3^4 => this should be a positive real number greater than 1

3^(-4) => this should be a positive real number, very close to 0.

3^i => Hrm.

i^i => Uh oh.

I knew that unless I had fluency with all of these scenarios, I didn't truly "get" exponents or complex numbers. Sure, maybe I had a baby version where I could use them in well-defined ways, but I had a subconscious fear of i appearing as a base and/or exponent. I had to challenge myself and practice thinking through the various permutations before I recognized the gaps. Then I had to deepen my conceptual understanding, and practice again.

(For the previous questions, 3^i should be a complex number on the unit circle, maybe around 50 or 60 degrees, but less than 90, and i^i should be a real number, greater than 0 but less than 1. I can estimate these without calculating them, see http://betterexplained.com/articles/intuitive-understanding-... for more details.)

Again, thanks for the mention!


The entries on complex number, exponential functions & e, and many other subjects at betterexplained.com are simply amazing! It helped to clear my decade-long confusions or fears when dealing with them, Thank you for the great work.

In my opinion the three essential characteristics of a great teacher are expert level in the subject at hand, great communication skill and enthusiasm for teaching. Possessing two of them already makes a good teacher. You have all three.


That is really humbling and gratifying to hear, thank you.


Very happy to give the plug--the quality of your content and your generosity for putting so much out there for free is something I wish more people did.

I hope the business side of it is going well for you.

Side note--have you considered trying to work with Khan Academy? I feel like Salman's style flows well, but sometimes substitutes learning tricks vs. internalizing the underlying logic. Khan Academy could benefit from a touch of BetterExplained.


Thanks! The business side of things is coming along, I've just finished up a hectic few months (wedding, honeymoon) and am looking to crank on the site again. Long term I want the site to be an ever-growing part of my life.

I'm very interested in collaborations, and helping people sprinkle an intuitive approach into whatever teaching they are doing. (I like Bret Victor's approach, where he provides guidance on what programming tools could look like, which might work its way into new programming languages like Swift, etc.). I'm in touch with an internet buddy at Khan Academy and have been meaning to work together, I'll be reaching out soon I think :).


Is there really an intuition for i^i? I can give you the answer but I have nearly zero intuition for it.


Yep, I think so. My philosophy, at least, is that any idea can eventually be intuitive, no matter how difficult at first, if we find the right analogies.

I see any exponent like a^b as starting at 1.0, intending to apply a rate of change of (a), but modifying that rate by (b).

For example, 3^2 is an initial rate of change of 3x, which is then applied for 2 units of time [leading to 9]. So, 1.0 would turn into 9.0.

More here: http://betterexplained.com/articles/understanding-exponents-...

So what's i^i?

Well, our rate of change is "i", which means we plan on starting at 1.0 and having our rate of change be a rotation: 1.0 * i = 90 degrees on the unit circle.

If we are using i^i, that means we are rotating our rate of change. That is, we intended to rotate around the unit circle at 90 degrees, but now I'm going to turn the "rocket boost" which is applying that rotation by another 90 degrees (the i as the exponent). This means the rocket is facing 180 degrees (backwards) and our growth is going to be an exponential decay. We'll be on the real number line, but shrinking.

How about (i^i)^i? That's another 90-degree twist on the rocket, so it's pointing 270 (downward) and we'll rotate around the circle clockwise. It's probably a negative imaginary number, and (i^i)^i actually equals -i.

This is a quick brain dump, and not very clear without diagrams, check out the articles above if you'd like!


Your intuition is nice for figuring out the directions, but not so nice for explaining the numbers. By which I mean, I can understand why it's real, but I can't explain why i^i = e^(-pi/2)... I would expect it to be a nicer number instead (like 1/2, or 1/e, or something like that). I can't really explain why both pi and e end up int he formula.


Oh yeah, after getting the direction, figuring out the numbers is the next step :).

Having i as a base means "we plan on rotating 90 degrees" which actually means pi/2 radians.

e^rt models growth rate of r, for time of t. so e^(i · pi/2) creates a 90 degree turn (we intend on rotating, i, and do this enough to get a full 90-degree turn, pi/2).

This is all a fancy way of saying:

90 degree turn = i = e^(i · pi/2)

Now, with i^i, we're planning on modifying that growth rate (e^(i · pi/2)) that we just figured out! We're going to twist the "rate" from i (90 degrees) to i · i (180 degrees):

i^i = e^(i · i · pi/2) = e^(-pi/2)

which is the real number less than 1 (about 0.2).

I'm summarizing on the fly, but the full explanation for i^i and i^i^i are here: http://betterexplained.com/articles/intuitive-understanding-...


(Replying to myself since we hit the nesting depth.)

1. Here's a deeper intuition: any circle is just the unit circle, scaled up or down. Any number is just 1.0, scaled (and rotated, if complex) by the exponential function that was run for some rate and for some amount of time. e^rt is a rocket ship of constant change, we just decide how long to stay on for, and we can get to any number.

In other words, for any number a: a = 1.0 * e^ln(a)

This formulation is useful if we know we're going to be taking exponents on our number a, i.e. we really want a^b. (If we know we'll be rotating our number, maybe we write it in polar coordinates, etc.)

So, the intuition is: "I know I'm going to be taking my number to various powers, so let's get the base settings for e^rt dialed in. pi/2 is the setting for how long we'd ride e^i for in order to get to 90 degrees. I should expect pi/2 somewhere in the answer as I take it to various powers."

2) I haven't taken complex analysis, so my understanding isn't nuanced enough here either. Technically, i^i can be multi-valued, for this graphical analogy let's settle on the principal root (https://www.math.hmc.edu/funfacts/ffiles/20013.3.shtml).

> (e^(2 i pi))^(1/2) is not e^(i pi), it's e^0.

(e^(2 i pi))^(1/2) is asking for the square root of 1, which is both 1 [e^0] and -1 [e^(i pi)]. Again there may be a subtlety here, but I'm not sure how the above statement is incorrect (barring a technicality like "we always mean the positive root"). For the purposes of an intuition it makes sense, I think.


Two things:

1. I said earlier that I already know how to find the numbers mathematically. What I don't have any intuition for is why the numbers are correct (such as why both e and pi should be in the answer).

2. You can't just distribute the exponents without justifying that it's valid. (I don't know the appropriate conditions for doing this myself either, but I know they exist.) For example (e^(2 i pi))^(1/2) is not e^(i pi), it's e^0. In other words, you need to first reduce it mod 2pi. Now if you're dealing with complex numbers I have no idea what the conditions should be.


It's interesting that that famous quote about math is a von Neumann quote. I always use the same quote with language and I think that there is a strong connection between language learning, especially ultra logical and systematized ones like Russian. Still, for the sake of saying the full quote:

    Young man, in mathematics you don't understand things. You just get used to them.


If understanding is about "connecting the dots" then you need to learn about all the pertinent dots before that can happen. You can't be expected to have a deep understanding when first introduced to something, you have to trust that it will probably all make sense later.


I found the article rambling and mostly pointless...

However, if you have a weak background in math and want to get up to speed before going into calculus and beyond, I have 2 suggestions.

1) Lial's Basic College Math[1] is adequate and will get you up to speed. 2) Serge Lang's "Basic Mathematics" is great and will cover all you need to go into a rigorous theory based college math class.

[1] http://www.amazon.com/s?ie=UTF8&field-keywords=lials%20basic... The editions basically the same... pick the cheapest

[2] http://www.amazon.com/Basic-Mathematics-Serge-Lang/dp/038796...


Since we are on the topic of math textbooks, I will suggest the No bullshit guide to math and physics which is a math textbook written specifically for adult learners. See http://minireference.com/ for more info.

<discl>I'm the author</discl>


It's an interesting looking book, and I'm somewhat inclined to buy it. Bookmarked!

I agree that you don't need to read thousands of pages to learn calculus. However, I don't want to stop at calculus. Basically, what I'd really love to have is a "mother of all maths textbook" -- a thick and heavy tome that compacts information from all the other thick and expensive books (which I'm never going to read) and different fields of mathematics. With enough detail that you can actually learn from it -- so it shouldn't be just for review and looking up formulas you couldn't memorize. I'd like to call it a reference book I can forever keep in my bookshelf (under my bed) and always look in it if I'm unsure about something...

If someone has book suggestions, I'm all eyes.


I've looked at a bunch of these math compendiums while researching what to include in my book, and this one seemed the best so far: http://www.amazon.com/Mathematics-Content-Methods-Meaning-Do... The writing isn't very hand-holdy, but it covers a lot of important topics, and without too much fluff.

For a more "math for general culture" I'd recommend this one: http://www.amazon.ca/Mathematics-1001-Absolutely-Everything-... which covers a lot of fundamental topics in an intuitive manner.

I have both books on the shelf, but not finished reading through all of them so I can't give my full endorsement, but from what I've seen so far, they're good stuff.


The Princeton Companion to Mathematics is exactly what you are looking for http://press.princeton.edu/titles/8350.html


I hope you get a well informed answer. There are famous (so to speak) examples of such things:

http://en.wikipedia.org/wiki/%C3%89l%C3%A9ments_de_math%C3%A...


I've been looking for something just like this.

Do you plan to release an ePub or mobi-format book? I'd prefer to read it on my ereader, and PDFs don't reflow on smaller screens.


I've been trying to get the .epub working for a long time, but its not easy to convert all the equations and make them look nice. Recently I found some very good new tools[1], so hopefully I'll add .epub/.mobi to the eBook bundle soon.

Do you know of any math books that are available as .epub? I'd like to see how they implement equations... PM me if you would like to be a beta tester.

[1] https://github.com/softcover/softcover


Just get Calibre and convert your pdf to epub.


The article wasn't pointless at all. He's saying that a conceptual understanding is important, but so are things like flashcards. I know growing up my ability to quickly do simple math and recognizing patterns quickly always helped me speed along quickly.


The problem is that unless you are also able to approach things like a constructivist, you will end up with a bunch of disjoint facts. I think that most people just don't understand math well enough to understand this key. The more math I know, the more I wish I hadn't memorized anything, but derived more things. There are many cases these days that I will have to go back and derive an equation for the first time because I was never taught the equation.

Her department is "Industrial & Systems Engineering", she doesn't need to know much more math than how to do arithmetic and a Chai squared. Not that I know more math than she does, it's just not a true part of the mathematical disciplines. She and I probably both just use the tools handed to us and don't understand the beauty or the ugliness. One of the big problems with math today is that nobody understands that arithmetic isn't math. It would be like a baseball player being called a woodworker because she used a wooden bat.


she. the authors name is barbara oakly.


She never really gave a definition of "understanding". Personally, I see "understanding" as exactly the way she described her method of learning. When I learned f=ma I did it the same way she did, but I would've called it "understanding".

In fact, "rote memorization" is the opposite of how I'd describe her method of learning. She says she learns language by using it in many different situations and learning the situations when it's usable and when it's not to be used. That sounds exactly like a search for intuitive understanding to me.

Rote memorization is more like using flash cards or scanning over a list of words and memorizing their definitions.

Contrast this with her method. She's playing with the subject matter.

I find that playing with a subject is the best way to understand it and to be able to apply it.


A similar comment Joel Spolsky from years ago always stuck with me.

"... Even though I understand all the little bits, I can’t understand them fast enough to get the big picture. And the same thing happens in programming. If the basic concepts aren’t so easy that you don’t even have to think about them, you’re not going to get the big concepts."

http://www.joelonsoftware.com/articles/GuerrillaInterviewing...:


As someone who graduated with a math minor and promptly forgot the vast majority of what he learned, something that really messed me up were gaps in my education.

For example, I took a graduate level course in the foundations of mathematics (proving natural numbers and arithmetic). I grasped the lectures, but one day I was completely stumped by a step in the proof where algebra was performed across an inequality.

I had never in my life seen algebra across an inequality! As an undergrad senior in a 500-level course.

I grew up moving a few times, and even within single schools I found the teachers weren't on the same page in terms of how math would be taught. For this alone, the Common Core sounds like a good idea to me.


What do you mean by "algebra across an inequality"? (Does this mean things like "x < y is equivalent to 5 + x < 5 + y"?)


Or perhaps more likely, multiplying with a negative number which involves changing the ordering relation in the inequality.


Take a look at Daniel Willingham's material and his book "Why Don't Students Like School"

Here's a review of the book: http://ed-policy.blogspot.com/2009/04/one-of-handfull-one-of...

Here's Dr Willingham's web site with a lot of articles worth reading: http://www.danielwillingham.com/articles.html

Here's his credentials: Earned his B.A. from Duke University in 1983 and his Ph.D. in Cognitive Psychology from Harvard University in 1990. He is currently Professor of Psychology at the University of Virginia, where he has taught since 1992.


What an incredibly short-sighted sentence: "Sorry, education reformers, it’s still memorization and repetition we need.".

I could not disagree more with this article. Memorization helps, but MAKING CONNECTIONS between concepts is _HOW YOU MEMORIZE EFFECTIVELY_.

Memorizing is great for learning different languages. NOT MATH.

Sure, maybe students are bullshitting in understanding concepts, and forgot quickly since they didn't learn anything. However, just memorizing shit doesn't do anything. So many students in other cultures are being forced to memorize everything, and since they don't understand the connections, they cannot come up with the answer on their own. There was a piece on HN about a math teacher that was amazed by how little students knew: They memorized how to solve a particular problem instead of actually knowing why something was true, and therefore couldn't work through basic proofs and stupidly basic, foundational stuff.

A terrible article!


Did you even read the article, or did you read the subheading, which I will admit is a stretch, and immediately cast judgement? You used the strawman of a k-12/college student who learns something and quickly by practicing a particular method then forgets it. What about those who actually do learn this way? There are most certainly visual learners who can see concepts in their head -- a trait I admire personally.

>So many students in other cultures

Do you know every student? Every culture? Again, nothing but over-generalizations here. The article actually referenced the afterschool programs in Japan that had success.

Yes at some point you have to back and understand the why and the how, but solving equations and crafting proofs are actually two different skills in my opinion and I have met mathematicians that were stronger in either or both.

In any case, I think you are missing the point of this author. I think the authors strongest argument which is building that foundation, or "innate ability" and he argues that comes through memorization and rote learning. Quoting, "building well-ingrained chunks of expertise through practice and repetition was absolutely vital to their success" I don't think he just pulled that out of his butt. If you take the time to practice like the author did where it becomes engrained into your mind, you are in fact learning effectively.

Besides all this, what is mathematics anyways? Is it not a language? Does it not have "letters" (variables, operators, symbols), does it not have a grammar? Does it not have "parts of speech?" (an equation must have a left side, and a right side), Is it not used to communicate to others?

In any case, certainly not a terrible read in any way.


As a CPGE student I must say that memorization IS key to solving problems (the essence of learning maths); it's not a traditional "dumb" memorization of proofs however.

The whole assertion of "understanding how a proof is done rather than memorizing it is how maths should be done" holds true, BUT only when you are not bound by time or a deadline, which is not the case most of time, whether you are working through a test, an exam or even on a PhD, you cannot afford losing time "reinventing the wheel"; working on proving theorems that have already been proven rather than using them directly.

The factor of time forces you to "memorize" certain concepts/theorems/facts so that you can use them directly as tools.

Personally, my approach consists in working on proving these "tools" at a first stage; understanding why they are true, then, I simply go past that and simply "memorize" them in order to boost my workflow.

In a nutshell, in order to be productive (doing maths or even physics), you must memorize shit, just don't do it blindly.


"In a nutshell, in order to be productive (doing maths or even physics), you must memorize shit, just don't do it blindly."

And voilà, you put it much better than I did in 5 rambling paragraphs. Memorization is key (at least for some learners), but only as one part of a process.


This is why the education system will never ever change. Too many people learn too many different ways. Some people can read a formula and instantly memorize it. Other's need a connection to that formula. Some need to figure out how that formula was derived in order to understand and memorize it. And some know the formula before you even show it too them.

Not to rehash what you hashed, but it depends who you are. If you are really good at memorizing, you may not need to make connections. You may just be able to memorize everything. Some people can.


This is very true. A corporate trainer once told me there's specific kinds of learners. They've actually identified each type, and which specific methodologies you need to reach each one. The best teachers find a way to synthesize it all into an effective single presentation. (This may also be why tutors are so helpful -- they can customize their material to the audience...)


Although there is ample evidence that individuals express preferences for how they prefer to receive information, few studies have found any validity in using learning styles in education.[2] Critics say there is no evidence that identifying an individual student's learning style produces better outcomes. There is evidence of empirical and pedagogical problems related to the use of learning tasks to "correspond to differences in a one-to-one fashion".[3] Well-designed studies contradict the widespread "meshing hypothesis", that a student will learn best if taught in a method deemed appropriate for the student's learning style.[2]


Heh. Okay, that's good to know. These comments prompted me to look up "Learning Styles" on Wikipedia, which confirms that scientific studies have not confirmed the validity of the "different learning styles" theory.

http://en.wikipedia.org/wiki/Learning_styles#Criticism

That probably says something about corporate trainers. I still remember the HR department at one company where I worked that insisted on giving the Myers-Briggs personality test to every employee. So maybe this also says something about junk science and the way it lingers on in our workplaces...


A corporate trainer once told me there's specific kinds of learners.

I don't believe there is compelling evidence that this is the case.

Instead, different people have different backgrounds and experiences. Learning requires making connections. Depending on what you have in your head already to which you can connect, you may respond differently about a particular topic than someone else.


This is a good point. It's important not to overgeneralize. At the same time, for those students who learn best by memorizing, it's best not to completely discard rote learning.


> Memorization helps, but MAKING CONNECTIONS between concepts is _HOW YOU MEMORIZE EFFECTIVELY_.

This is the essence of the article. It is chunking.


I am interested in this kind of topic, but came away disappointed. Not only is it long-winded, but also she never gave clear definitions of 'fluency' and 'understanding', which are the key ideas in the article.

I think the reason she has succeeded is quite simple: she is an avid learner. She has put in huge amount of effort into learning. It's not about some magic methods she discovered.

Carrying the formula f=ma in head all day long, thinking about it, practicing its various forms in different situations, that is not rote learning or simple repetition (as the author claims), it is working one's a$$ off to understand something.


It's always the combination of conceptual learning and memorization when it comes to learn math. It's like performing a complex computation job once, and then caching the result for fast retrieval. Memorization is for efficiency: it clears the way for our brains to focus on higher-level thinking. The great Euler "memorized not only the first 100 prime numbers but also all of their squares, their cubes, and their fourth, fifth, and sixth powers. While others are digging through tables or pulling out pencils and paper, Euler could simply recite from memory...". Besides, math is all about making invisible visible, about discovery patterns, or about connecting dots. That means we need to have dots to connect, and need to have patterns to work with. If we don't remember them, what the hell can we use for?

On the other hand, there's no need for rote memory. Just practice by solving interesting problems. There are plenty of opportunities to use math every day. There is also a very effective way of learning: work on slightly harder than usual problems. When learning calculus, I started to work on Demidovich's Problems in Mathematical Analysis, and I thought it was hard. Then, I stumbled upon solution book for college math competitions. Man, that was a huge help. After working through the problems, a lot of concepts became clear to me, and Demidovich's problems became reasonably easy too. It turned out the hard problems were hard because they required me to make non-obvious connections, which nudged me to really understand, from different angles, the concepts that I learned in the classroom.

By the way, when did arithmetic become so hard? It seems kids nowadays are being spoiled by their parents...


He highlights one of the problems I had with mathematics when I reached University. I was in the top 2% of students in the first few months. I considered it a trivial subject. "Here's a class of problems, here's how you solve them." Easy peasy. Then we started integrating and differentiating forms of problems we weren't familiar with. All of a sudden, everything we were taught didn't seem to apply any more.

Our lecturer told us: "I can see that some of you are struggling and are confused. You want to know how you become skilled at solving these problems? Forget your social life. Solve every problem in that 900 page textbook of yours. When you've done that, come to me and I'll give you another 900 page text book and finish that as well."

In one fell swoop Mathematics had lost all its appeal. I switched to Applied Math and aced it.

On the other hand, my brother actually followed this advice. For an entire year he spent a few hours every night doing Calculus till he recognized every different form they could conceivably throw at him. I asked him how he knew how to solve some problems. He said he didn't. It was all just memorization and recognition.


I can't understand how anyone would decide to lose their social life for anything. But then, perhaps I am simply not the right person to become a scholar. Sure, I can put an hour or two a day of personal time keeping up to date, but I wouldn't see myself going "alright, let's waste an entire year of personal time for non paid formations" ... If I really have to do some learning, I'm going to try to do it through projects which I am paid to do.


It was much the same for me with quantum physics. The theory was fine, but the maths was just so much memorisation that I completely lost all enthusiasm. I still get the chills thinking about 4 hour exams with only a single question on them that we pretty much just had to memorise the answer for in advance.


"As a young woman with a yen for learning language and no money or skills to speak of, I couldn’t afford to go to college (college loans weren’t then in the picture). So I launched directly from high school into the Army."


>> I switched to Applied Math and aced it.

What sort of integration and differentiation were you doing originally that is not included in an applied math curriculum?


My Applied Math curriculum (roughly):

- Logic of Compound/Quantitative statements.

- Elementary Number Theory and Proof Methods

- Sequences and Mathematical Induction

- Graphs/Tree/Set theory

- Algorithms

- Functions and Application


> memorized the equation so I could carry it around with me in my head and play with it. If m and a were big numbers, what did that do to f when I pushed it through the equation? If f was big and a was small, what did that do to m? How did the units match on each side? Playing with the equation was like conjugating a verb. I was beginning to intuit that the sparse outlines of the equation were like a metaphorical poem, with all sorts of beautiful symbolic representations embedded within it.

I cannot emphasize how useful this approach is. What's more, I am very surprised by how many students lack the basic ability to sit and "play around" with math concepts.

I used to tutor algebra, trig, and pre-calc. I was surprised by how few students had the ability to look at something and break it into pieces. If you gave them piece A which they knew, piece B which they knew, and put them together, the result was something new the student couldn't understand and they'd sit and wait for an explanation.

This was sad because this is largely what math learning is. Given pieces you do understand, you put together bigger pieces and then build an understanding of those bigger pieces.

I have always advocated something similar to what what the author said here:

> What I had done in learning Russian was to emphasize not just understanding of the language, but fluency. Fluency of something whole like a language requires a kind of familiarity that only repeated and varied interaction with the parts can develop.

I love this point. I am borderline convinced it it is near impossible to learn math concepts more than one or two steps beyond the point that you are fluent in. Beyond that, it's just memorization, guessing, and poor heuristics that just get you to skate past the test and do little or nothing for understanding or retention.

The bigger picture here is that the author has learned how to learn. It amazes me how significant a divide there is between people who know how to learn and people who don't. Forget IQ or test scores, I think knowing how to learn is the biggest indicator of how far someone will go in life. So perhaps most of all I love the fact that they began this journey relatively late (most students going through a similar math path would have done in their late teens or very early 20s what the author was doing in their late 20s).


Case studies in education as applied to non-atypical brains are essentially worthless. You'd think that someone with a newfound scientific disposition might realize that you probably shouldn't make sweeping prescriptions based on personal anecdotes (though honestly, based on the quality of the educational literature I've seen, it's not uncommon even for professional education researchers).


I think those of us who aren't a fan of "memorize/repeat" is that it is extremely inefficient. And you lose as many people as you gain.

The classic example is long division. In elementary school I did a thousand long division problems, but I never understood it. I just knew the pattern. I didn't really know the math. It wasn't until much later did I learn how and why it worked. Having done those thousand problems didn't really help my understanding at all. And honestly, it's not a skill I use today.

Rote learning is useful when what you memorize is useful in itself. Learning what 2+2 is useful, but because adding 2 to another small number, including itself, is something you do a lot.

Addition/times tables are great because the scope of numbers is something you will run across a lot of day to day. A thousand long division (or multiplication) problems is just rote work for little benefit. It's better to teach the concepts, and then build on them.


I can relate to your long division example. In grade school my mom helped[1] me put in a ridiculous amount of effort in order to get through my school's spelling tests. I have come to believe that the reason that I couldn't spell was because at the time I did not understand the rules behind how the letters form together to get words. Simply memorizing how words are spelled took a lot of painful practice.

A more recent example is when I was first learning lambda calculus I wanted to understand how church encoding worked to allow basic integer operations with just function abstraction and application. Most of the operators are easy except for predecessor, which is absolutely nightmarish to get on your own. I tried memorizing the definition I found on wikipedia for over a year to no avail, but once I understood how it was working ...

  pred = λ n . λ f . λ v. 
           n ( λ a . λ b . b (a f) )
           λ k . v
           λ i . i
I haven't yet forgotten what it is.

[1] - well, basically dragged me kicking and screaming

EDIT: formatting


> I couldn't spell was because at the time I did not understand the rules behind how the letters form together to get words.

One of the main goals of this kind of learning (at least for me) is to recognize patterns and rules on your own. When I repeat something often enough, patterns and rules began to jump out at me.


Have you read Lockharts Lament[0]? It discusses something similar to what you have experienced.

[0]- https://www.maa.org/external_archive/devlin/LockhartsLament....


Just saw that the author, Barbara Oakley, has a (free) Coursera course titled "Learning How to Learn" starting Oct 3. Sign-up here - https://www.coursera.org/course/learning


For those interested in this learning approach, I recommend the book "The Talent Code" by Daniel Coyle [1] which covers 3 areas for mastering new skills.

Here the author only mentions about the importance of repetition (which she refers to as fluency). In the Talent code book Repetition is the first step, but we can learn that the brain is wired to master new skills by taking advantage of 2 others areas as well: A/ Ignition (or passion and motivation), and B/ Discipline and long term commitment.

[1] http://www.amazon.com/The-Talent-Code-Greatness-Grown/dp/055...


Understanding is "facile" [superficial], but rote learning is the real way....?

Seems reversed. An explanation is she's in Electrical Engineering - my ugrad experience of EE was a emphasis on using tools (formula etc) as opposed to understanding them (that's for Science). Engineers, after all, are paid to get stuff done, not just sit there and grok it. "Fluency" with tools works well for EE.

OTOH, all discplines have "tools" - even pure maths has algebraic manipulation. If you're not fluent, it will slow you down (fortunately, you'll have years of algebraic practice from school).

OAH, most professional mathematicians don't think symbolically (a survey found, IIRC, about 70% visual, 25% kinesthetic, 5% linguistic) - notation not so much a tool of thought as a serial representation (serialization/data format), for recording/communicating. So practice in thinking is what's helpful.

I think fluency with "standard" modes of thought is a double-edged sword. Yes, you become expert with those tools, fast and able. But that very expertise biases your perception and reasoning in terms of them. Thus, it's hard for you to see another way; you'll tend to build on top of them instead. Fortunately, since our tools are pretty good, this approach works well. It's just that you're less likely to see fundamentally new approaches (though to be fair, that's pretty damn unlikely anyway).


>>student may have thought he’d understood it at the time, and perhaps he did, but he’d never practiced using the concept to truly internalize it.

I'm changing jobs and I've interviewed at quite a few places off late. Having faced with so many Algorithm and Data Structure questions, I took it upon myself to read upon a good deal of material before I started interviewing. So I did the usual approach one takes while studying math, understand all the basic concepts and look for places where you could apply them, rather than studying individual problems.

Recently I interviewed at one place, where I guess a guy who was just out of college asked a few questions. My general approach is to look for how the problem would fit in the concepts I've learned. I gradually derived the solution out of the concepts I knew. And to my surprise, the solution was simply unacceptable to the interviewer, he just clung to his position that I was wrong. He then proceeded to write the answer, he even wrote the test cases.

Now I go back home and check it out of the internet and it was hardly surprising for me to see what I had suspected. The guy didn't want the answer to the question. He wanted exactly the same answer he had memorized. The guy had even memorized the variable names, even the exact input values.

Most people interviewing you on your Algorithm and Data structure skills. They are simply testing your algorithm and data structure rote memorization skills. The same goes in exams.


And isn't that completely bogus too - you don't want programmers who can regurgitate algos you want ones that can take an overview and know which algos to apply and how to implement them in a timely way using reference material if needs be ... perhaps it's too hard to test for that ability in interview?

It's like upthread someone talked about engineering exams - seemingly you don't need working engineers to run through equation derivations and do arithmetic. You want them to understand the basis for the derivations and to have a mental model that will spot if the calculations are way out, for sure, but really you want them to be able to take an overview: know which factors are important, use the engineering tools they have. A practical engineer is going to be using computers to perform calculations (be that chemical processes or electronics or civil structures or whatever).

In a way I think we're on the cusp of a change in how we need to approach job focused learning. We're getting to the point where we've stood on the shoulders of so many giants that if you want to operate at the top you can't see the floor any more. By which I mean that maybe the human mind can't cope with the full vertical stack in some fields, that we need to have people either focus at the bottom - understanding the basis on which particular knowledge is built. Or understand the top - be able to work with the tools for implementation.

Maybe.


Frankly it sounds like you dodged a bullet with that interview.


I have a crappy memory. I tried med school for a year. In all my pre-med and medical courses, they constantly warned us to understand, not memorize. I gladly took their advice, tried to understand rather than rote-memorize, and I ended up flunking 5 exams, which finished my medical career.

The fact is, in many fields of human endeavor, you need to memorize before you can think. Would we have better physicians if they weren't required to memorize and spit out so much rote information? Not sure about that. I think a good doc not only has great personal and intuitive skills, he or she needs good analytical skills and a "think outside the box" problem solving mentality similar to that of a really good computer programmer (which I thought I had, hence crossing over into medicine from computers).

But, a doc also needs to remember stuff. There's so much data and you need to remember signs and symptoms, case histories, and see the similarities and differences with previous cases you've had.

The OP was about math, and I'm definitely in the memorize-the-formula camp; I've never really grasped the theoretical niceties of mathematics and am more of a connect-the-dots kind of guy. But definitely there are similarities between learning math and learning the physical and biological sciences. Some of it is intuitive, but some of it is just wacky stuff out of left field and you have to just take it on faith.

I think we need to emphasize critical thinking and analysis more, but we also need to teach the ancient Greek and Roman methods of memorizing, e.g. the memory palace method -- see Moonwalking with Einstein for more details.


It reminds me a lot of the Pimsleur method.

http://en.wikipedia.org/wiki/Pimsleur_method

It's rote memorization and repetition, but it also incorporates interaction and active thinking. Additionally, the repetition is non linear. As you learn new terms they throw old terms at you once in a while to make sure you remember them, and the spacing is set out for maximum retention.


I believe that math is something a lot of people can learn and become effective at using, way more than Americans currently believe about themselves.

I think it all comes down to making sure people understand the actual abstractions and concepts rather than formulas and rote learning. The advantage of math is that you can figure stuff out using what you already know, without having to learn every little detail - while that's impossible in other subjects, such as history.

The missing piece is, in fact, granularity and feedback. And real world studies support my position:

http://opinionator.blogs.nytimes.com/2011/04/18/a-better-way...

http://opinionator.blogs.nytimes.com/2011/04/21/teaching-mat...

If you want to read how I'd reform education and improve the economy, these are my thoughts:

http://magarshak.com/blog/?p=158


Assuming the author's convictions are true, how would one apply a 'rote learning' technique to programming?

I believe in repetition, but, personally haven't been able to find a useful way of implementing it to become a top-notch programmer.

Why? Well, take calculus. Buy a book, pound problems. Do 1,000 derivatives. Next chapter. 1,000 integrals.

Is there a similar "exercise" for programming?


Depending on what you want to learn, sure. Googling for "[someLanguage] practice problems" appears to turn up good results for most languages.

For data structures, write some unit tests and then make them pass.

I personally wouldn't recommend you bother learning the implementation details of algorithms: just learn the names and use-cases. Make some Quizlet flash cards and you're good. If you're having trouble finding some to learn, try Googling "sorting algorithms" or "sorting algorithm for [someDataStructure]". Go from there. I'd recommend a similar approach for design patterns.

If you want to get better at building applications, practice by reimplementing apps you use every day in your favorite language (or just come up with your own). "Building applications" encompasses a wide variety of things not mentioned above that you'll only be exposed to by building stuff, so do that.


> "[someLanguage] practice problems" It might also be fall under "Études"

such as 'Études for Elixir' http://chimera.labs.oreilly.com/books/1234000001642

which is a collection of exercises that slowly introduce you to a programming language.

I can read stuff out of a book, but I won't have that 'muscle memory' until I've spent that time in Vim and the compiler/REPL. So that when something new gets thrown my way, I'm not having to think back to the basics.


Project Euler. Also, the whole 'kata' movement, where you write and rewrite relatively brief solutions to problems until you master them.



When I was learning C, I would write my program, then run it step-by-step in the debugger (I was using Visual Studio at the time) until it was pointless to do so because I knew what would happen next. If I made a change and did not have a mental model of what would happen, I would run the debugger.

Learning how to solve problems is a different process, but this gave me good understanding of basic code structures.


Drop in to the REPL, this is why languages that have Read, Eval, Print, Loop are super popular. BASIC, Python, LISP, SQL, Ruby, etc. You can get proficient in such languages faster than C, Java


> Is there a similar "exercise" for programming?

Project Euler?


"Sorry, education reformers, it’s still memorization and repetition we need." This is very true. For example, doing the advanced engineering calculus can often boil down to manipulating polynomial, which are still arithmetic. A person with "understanding" but no fluency in basic arithmetic is setup to fail.


Maybe to fail the coursework but what about the real world where they won't have to do equations by hand on timed tests anymore?


If your work seriously involves manipulating polynomials, install some software.

Done, and done better and faster than you could possibly do it.


I thought thus would be about the guy on HN who used a psychedelic trip to gett over math anxiety. Still a good read.


I think that it is strange that she is saying that there is too much focus on understanding at school. From what I could see, most people learned maths by just memorising the process. Except for a few who invested an exceptional amount of effort, they scored poorly. In contrast, everyone who I knew who focused on gaining a deep understanding was able to pick up maths quickly.

There is one area, though, where there is probably too much focus on understanding at the cost of memorisation and that is in the Olympiads. I remember that many of us held the rather uncharitable attitude that the people who tried to succeed in maths by memorising it were 'stupid'. But clearly, understanding combined with targeted memorisation of the key building blocks will lead to the most success.


How is "rewiring your brain to become fluent in maths" different from "learning maths"? Can someone explain this? I read the article, and I don't understand it. To me it sounds like she learned maths, in much the same way one learns anything else.


Authors usually don't get to pick the titles of their articles. That's the editor's job and they try to pick headlines which will attract readers.


There isn't one, all titles like this do is perpetuate the myth that you need some sort of specially wired brain to learn math. I hate the spin of learning as some sort of hack. Surprise, learning something involves repetition and practice.


It's not so hard:

(1) Pick a topic at about the right level.

(2) Get one main, maybe plus a few extra, good books on the topic.

(3) In a good chair in a quiet room, in the good book, read the material on the topic and try to understand it well enough to make sense. Then work the exercises.

If something doesn't make sense, look in one or more of the other books.

(4) At times, review the last several topics and try to get more understanding, e.g., what else is true, what is not true, what makes the true statements true and the false statements false.

Maybe take a class that covers the main book and check work and understanding with the professor.

Rinse, repeat with other topics.

Done.

Worked for me.


I liked her point of repetition being the main problem. It makes sense as we strengthen the new synopsis that are made. Josh Foer author of moonwalking with Einstein proposed an interesting theory that, essentially fucked up imagery of any kind helps increase and strength synaptic connections.

Interesting watch (first 5mins gives good context) http://books.google.com/books/about/Moonwalking_with_Einstei...


I don't understand why there seems to be a languages/math dichotomy. I remember in school teachers used to bucket people in one or the other.

But from what I can tell, and also from the article, they have a lot of common ground. Learning either requires understanding of structure, but also a fair bit of memorization. Learning conjugations by heart is not all the different to learning trig relations. You also need both on the fly when you're using your language/calculus.


Memorization is not learning. It is a part of learning. Being able to memorize things and understand their relationships in context is learning.


My German teacher at school did an accelerated course from scratch at university (no previous knowledge) - a full language degree. It involved rote memorisation of German texts. It worked! She said that the advantage was that you later recognised phrases and grammar and were able to analyse what was previously just rote memorisation.

I spent a couple of years in Italy in my early 20s and learnt fluent Italian in that time. I took a couple of classes a week in the evenings, but spent the day programming with a team of English colleagues and perforce spoke English. I made an effort to socialise with Italians outside of work.

I went out with groups of Italians many a time, and experienced many a boring evening where if people didn't speak to me specifically I couldn't understand a thing.

I realised that after 9 months I could hold a good 1-to-1 conversation but that it was another 9 months before I was comfortable in a group situation - in your native tongue you can keep tabs on the various threads of a group conversation with ease, whereas if you are having to explicitly process it, it's so easy to fall behind and then you're lost.


From experience with exchange students, staying with families and going to regular local secondary school (ages 15-18, look at www.afs.org for more information) -- that sounds typical for an adult in a non-native work setting, making an effort.

Generally students starting at zero will use 3/5/7 months to approach fluency, approaching native level at the end of a stay. The difference being the "jump distance" -- so German to Norwegian or Spanish to Italian is 3 -- Arabic to Norwegian might be 5 -- and Japanese to Norwegian might be closer to 7.

Coming to Norway, sometimes students with poor English skills will do better - not being tempted to fall back to English, breaking the immersion - and not having such a hard time "forcing" class mates to speak Norwegian.

Having spent a year in Japan myself, it's fascinating how one can go from seemingly "nothing" to fluent after those months of no apparent progress. But language learning tends to be like a staircase -- you can feel stuck at one level for a long time (and being in a foreign setting it can be incredibly frustrating to be constrained to a preschool level of speech) -- only to seem to jump up a level. And then you'll be stuck there... etc


I wonder if part of the effect is simply studying a lot. It sounds as if she devoted a lot of time to studying Russian and then maths. Perhaps the actual way she spent the time is not that relevant? Not saying it is irrelevant, but for example maybe simply doing problems in maths for the same amount of time would have been just as effective?


Reading this reminds me of how much I really want to be better at math, and especially the quick fire recall and understanding. I'm taking courses with a lot of math that I've learned before, and encountering similar struggles this time around as last time. Maybe I'll try a new approach, one such as this, to insure my success.


I get this sense that mathematicians tend to focus on abstracting relationships, whereas programmers tend to focus on abstracting objects/entities. Hard to explain though. Like programmers are constantly building models of the world, whereas mathematicians are constantly building new functions and general transformative techniques.


This is the general idea behind category theory: it describes relations and not objects themselves.

That's quite a shift from set theory, where the core idea is that objects can be described with what's inside of them (and building the whole idea of relation as a set of tuples).


Author makes generalizations based on her own individual experience - the process which she doesn't understand. Rot-learning in music (mentioned as example of good practice) produces millions of classically-trained musicians that don't understand anything about music, and can't play even Christmas song by ear.


so many aspects of this article echo my own experiences, though i was likely a far worse example of a student than the author of this article. i excelled at literature (and took this talent for granted) and i had a vicious disdain for math. my time in high school was spent anticipating a “mathless” career in the NHL that never quite came to fruition… sometimes you just don’t grow any taller after your freshmen year :)

here’s how a gift can actually be a curse: i’ve always had an extremely strong visual memory and it enabled me to get by (and sometimes even excel) at courses like algebra and pre-calc. i’d simply memorize the exact structure of a solution, and “plug and play” from memory when teacher asked identical questions on exams with different numbers. it wasn’t until i was an undergrad and i decided to do my own “rewiring” experiment that i realized i hadn’t ever learned a thing about math my entire academic career. it made for quite the rude awakening, being that i was a college sophomore who’d just switched from pre-med biology to electrical engineering!

i struggled with basic problems that required even a little bit of mathematical intuition because i’d never developed an intuitive understanding of anything–to paraphrase bart simpson, it was like i was cheating on tests by using my own mind, since i could remember my notes with such vivid detail.

how’d i fix it? i became a voracious reader. i started reading “popular” science books about math that actually interested me, and i realized that textbooks were only part of the puzzle. once i was able to grasp the theoretical concepts (aided by the “pop” books) i could return to the textbooks without being bored to tears with the dry, abstract concepts–i could actually relate the concepts to reality! i also took a keen interest in physics because it connected calculus to the real world. when i realized that a parabola could actually be the path of a cannon ball, it changed my entire outlook on math. things started to click.

so how’d it work out? getting through b.s. degrees in both electrical and biomedical engineering (i was a masochist and picked up a second degree) was nonetheless a struggle, due to the fact i was essentially several years behind my peers in terms of my mathematical ability. also, i constantly had to fight the urge to rely on my memory. old habits die hard or simply just go into remission, but i made it!

where am i now? as an MBA student (please bear with me here) i was fortunate enough to be at a university that recently embraced data science. i fell in love with the field because data can tell a story, and my (now) strong mathematical background enabled me to grasp the underlying math & algorithms that yield the wonderful insights you can uncover if you look in the right places.

was it worth it? absolutely. i feel as though i am a different person that’s capable of using both sides of their brain! although i must admit i’m still a natural “right brainer” and i need to use a calculator more frequently than i’d like to admit. i’m an engineering manager at a 9-5, i work as a data science lead for a startup, and i dabble with inventing products. i’m convinced that had i not put myself through the wonderful torture that was rewiring my brain, i’d likely not have achieved a single thing in my career.

if you’re really curious to see how someone like me thinks i’ve done some writing here: www.takeiteasythursday.com/liox


I remember struggling with Calculus in high school. I sat in the library next to the smartest guy in the class and explained to him that I couldn't figure out why a certain formula was to be used to solve a problem. It went something like:

Steve: "You have to use that formula to solve this."

Me: "I understand that but why do we use that formula?"

Steve: "Cause that's the only formula that works."

Me: "OK but how did they come up with that one formula?"

Steve: "Cause it just works!!"

He didn't know. That's when I first realized a lot of his knowledge was just memorization while I needed to know the why. It wasn't till my first year in college that I finally found a math instructor who always shows us the reasons why that I was able to take off and grasp math by connecting the dots.

So, no, I do not think memorization is the key but, like most zen things, understanding is.


Right on man.. When you think you know something, you earned your Bachelors. When you realize you dont Know a thing, you get your Masters. When you realize no one else knows either you get a PHD!


I've constantly struggled with something along these lines too. I've always had a difficult time in Chemistry because i wanted to know the why's of things as opposed to just memorizing things. Even in programming, my intro Java class everyone learned the basic public static void main(String[] args){} and we were expected to take it for granted. The first Hello World assignment took most students a few minutes to complete, but sent me researching the Oracle docs, which led me to the java trail, which made my assignment like a week late lol.

If there's any life hacks on how to minimize this mindset, I'd love to hear about it. I'm constantly struggling to find this balance of memorizing abstractions vs digging in the details.


YMMW, but I use "I can always fill in that gap later if I have the time" and move on. Later, if I do indeed have the time or I find out that I'm struggling because of missing details, I'll get back to it.

Its like making a temporary mess in a project while trying to understand the problem you are solving and making a promise that you will refactor it later, once you get to something that works.


This is where OCD really kicks my ass. I want to understand everything that I'm typing, and it's a major hurdle to have to accept that, no, I just can't have all the answers.


What I do is keep a notepad next to me. When I start something, I first write what my goal is. This guides me as to how deep I am willing to go. If my goal is just to learn things, I start out with a tutorial and write notes about what I don't understand as things that I can follow-up on later.

It helps that I've spent some time explicitly trying to learn things on multiple levels. If you like doing that, look at MIT's class 6.004 and it will give you a deeper understanding of computer architecture.


I would remember that knowledge is not fungible, while prestige and money are. Do enough things for prestige and money, and you'll have time to do things for knowledge. </darkside>


Never stop digging. Just realize you can only dig into one thing at a time, and be selective about what that is.


I think some things you just have to accept as is. If you do not, you will find yourself constantly looking for why something is the way it is. Why does the sum of 1 and 1 equal 2? I couldn't tell you why. I just know that the sum is 2 because I know.


That is simply because + is defined such that 2 is 1 + 1


Well yes, you're correct. And I wouldn't obviously struggle with simple addition like 1+1. But... for me, the hard part is the "accepting as-is" on more complex things. Especially on topics that I'm new to, or some higher level concepts. I'm currently learning Scala and really trying to learn FP for the first time and have similar issues.

Also, fwiw, you can take anything to the extreme. Even simple addition :)

http://math.stackexchange.com/questions/321939/proof-of-the-...


Perhaps the reason most people don't think memorization is important is because they don't realize they already did it through practice outside of school. Usually (if you will), the kids who are more successful in math and science during K-12 education and who pursue STEM in university are the ones exposed to more math early-on ...and often. Having a parent with those skills to help you - even if only ten mins a night after school - is a huge difference-maker. Those who succeed may not realize the advantage those extra ten or so minutes a day over 6 to 12 years have given them over the peers, whose parents were math illiterate and, therefore, ignorate of the process of accumulated study.


The point of this article is that they need equal emphasis. If you don't know why you're using a certain formula, you're missing half the picture, but you're still going to be able to solve problems faster than someone who has to redo the derivation every time they see a problem.

In professional life (as a programmer), it's very valuable to be able to look at a problem and think 'hash table!' before even fully understanding what sort of problem I'm approaching. I can get things done a lot faster because I've practiced my algorithms and data structures and I have strong intuitions for where each is useful.

At the same time, having a well explained, fundamental understanding of how everything works is critical to innovation. If you're staring at a problem that nobody has ever been able to sovle before, it means that the general basket of tools isn't going to help, because if it would somebody would have already solved it.

The point of this article is that both styles of learning are critical, but America has largely thrown one of them out the door.


I feel like this touches on the Montessori Method quite a bit. Most schools assume the student is an empty vessel and that the knowledge needs to be poured in. Montessori takes the approach that humans are naturally curious and that we in fact LOVE to learn so it encourages understanding through exploration.

I would say the rote memorization that the author of this article lauds is actually unnecessary. When one is learning through exploration of a subject and subjects you in fact are exposed to the same concept many times (like with memorization) but you have the added benefit of association with other concepts.

In other words; learning doesn't have to be boring to be effective!


I asked similar questions. My instructors always encouraged us to just follow the rules and memorize the formulas. We never really were encouraged to understand. Doing that took too long!


You have a good point, but I think the author was making the case that a conceptual understanding AND memorization/repetition are required to make the learning stick. I don't see a case for not explaining concepts, but a caution to not go too far the other way. And I saw repetition as being more important than memorization. That by repeating the application of your understanding of some concept, as being the key to making it stick.


Theorems are muscles of the mind.


Nice!


FYI: This comment will get downvotes. Not because people here are senselessly mean. But, because the HN community takes a strict approach to comments that add noise without contributing signal to the conversation. Downvotes on "Nice article!" comments frustrate many new users. So, here's your explanation. Welcome to Hacker News!


I was simply replying to the explanation that the article is available for free and I care nothing for points or votes, thanks anyway


I could hardly stomach the self-congratulatory tone of the introduction. Jeez.




Guidelines | FAQ | Support | API | Security | Lists | Bookmarklet | DMCA | Apply to YC | Contact

Search: