back

by ColinWright·15y ago·view on hn ↗

    > The argument though is that it is simply impossible to
    > use a calculator effectively without first understanding
    > the basics.
I don't think that's the case. I think the author is perfectly happy that people know how to use the calculator. I think the point is that without working through the basics underneath, mind-numbingly repeatedly, you don't gain any real insights about what's going on.

It's certainly true for me. Many's the time, when I've had monster power under my fingertips, that I've brute-forced solutions and failed to gain any insight. Then I've worked a few small, single instances by hand, and realised that there was structure I hadn't seen before.

The pattern-matching, pattern-finding parts of the brain are phenomenal. Sometimes they are best exercised by getting machines to produce loads of examples, and loads of visualisations very quickly.

Sometimes they are better exercised by working tedious examples by hand.

Balance.

2 comments
I think the point is that without working through the basics underneath, mind-numbingly repeatedly, you don't gain any real insights about what's going on.

I don't think that's true. And I'll say something controversial. Programming is taught more effectively than math and its because you don't spend a lot of time mind-numbingly repeating the basics.

Half the people on HN recommend teaching with Python for just this reason.

And think about it, when you teach programming do you make your student walk through what every instruction does? When I learned recursion, I walked through fib(n) by hand -- once. That's the sum total of how many times I've done a full hand expansion of a recursion in my life. How many times have I run a full program on paper with the substitution model? Never. How many times have I iterated even a small loop by hand? Never. These are concepts that I understand as well as anything that I know, yet I've never "mind-numingly" worked through them by hand.

A lot of traditional math teachers want us to sit down with an instruction pointer, stacks, heaps, physical/virtual pages, laid out and have us repeatedly simulate program. That's really the mathematical equivalent of doing this rote computation. I say teach them the concepts and give them interesting and challenging problems that make use of the concepts. The concepts will stick better, they'll learn faster, and they'll be more engaged.

As both a PhD in math and a working programmer who started with machine code (not even assembly language) and now programs primarily in Python and C, I think the analogy you make is incorrect.

I don't think there is much insight to be gained about programming in Python from repeatedly simulating the program at the level of tracing stacks, etc. - on that we agree. But I don't agree that doing so is the equivalent of learning how to add, subtract, multiply and divide fractions, or graph quadratics and cubics, or solve linear equations.

I believe the insights gained from doing quite a lot of arithmetic by hand are genuine.

Having said all that, if people aren't going to go on to careers or jobs in hard sciences then I believe the concept of qualitative computation is more valuable than doing any kind of mental arithmetic. But if you want to do proper math, or use calculus for real, or understand Fourier Transforms, or manipulate sheaves over higher dimensional topological spaces, then the abstract insights gained from arithmetic are, in my opinion, more than are generally suspected.

That's not to say that calculators are bad. Enormous computing power has let me get insights that I otherwise wouldn't have had. I'm just saying that not learning and internalising the underlying arithmetic basics is like not learning how to carve basic joints in carpentry.

To do so is to deliberately limit your skill set. Can't be good.

I believe the insights gained from doing quite a lot of arithmetic by hand are genuine.

But what are the insights gained from doing them by hand? I agree that learning arithmetic is important. But we spend a lot of time (or at least did) on things like times tables. I remember looking at a page of 30 long addition problems as a kid. I knew that the hardest ones were at the end, so I'd start there. After about three of them I realized -- every one of these is virtually the same thing. But I have 27 more to do.

I was lucky. I actually had a teacher in 3rd grade who let me work at my own pace and actually got math books not in the school curriculum (and looking back, she probably did this out of pocket). But I imagine there are a lot of bright kids who just gave up on math and school out of sheer boredom.

It seems that you did a lot of problems, and gained no insights. Perhaps you were never intended or destined to be a mathematician. This is no insult - I genuinely believe that different people think in different ways, and the balance is important. I work with engineers who do things I never could, and I do theoretical work in which they have no interest. I don't understand why everyone seems to want to be mathematicians. However, having good math is valuable.

But there are insights about differences of two squares, sums of cubes, divisibility tests, prime factorizations, smaller denominators imply larger numbers, greatest common divisors and lowest common multipliers, and many many more.

I find repeatedly that I show people small arithmetical tricks and they are intrigued and surprised. I then expand on the basic ideas and derive things like RSA and DHMW codes, or the fact that primes of the form 4k+1 are always the sum of two squares, or that for primes larger than 3, p^2-1 is divisible by 24.

And so on. People are often fascinated by these trinkets, and yet they are observations that for me arose from doing the arithmetic.

I don't deny that most math teaching is appalling, and that many bright kids give up out of sheer boredom, but without the basics they are equally ill-served. We need teachers who actually understand the math they are teaching, and not just regurgitating the curriculum they've been given.

That's why I spend around half my time going around talking about what math is really about, and how it can be interesting, useful, fun, and occasionally exciting.

Without a basic facility in arithmetic, so much of real math - as opposed to arithmetic - is denied. If every calculation you do requires that you reach for a calculator, or fire up a symbolic math package, you are slowed to a crawl.

It's like trying to programming without being able to type. The ideas can't flow when you are constantly held up by not having mastered an underlying skill.

And i suspect we are more in agreement than not, each colored by our own experiences. Mine were happy, full of discovery. Yours weren't. How can we make kids experience more discoveries if they won't actually play with the underlying basics?

It's like trying to programming without being able to type. The ideas can't flow when you are constantly held up by not having mastered an underlying skill.

I almost love this analogy. There's certainly an aspect of "menial mathematics" which is like typing in that it directly translates into fluency of thought. There's also an aspect of discovery, though, that's missing from the metaphor.

There is a large difference between inferring that some equality holds based on abstract principles and actually performing the evaluation and directly tracing out why that equality holds (even very non-generally). I liken it to statistical modeling sometimes: models allow you to talk about and comprehend data on a high level, but only by directly plotting all of the data at high resolution can you let your brain's natural pattern seeking tendencies reach out for further insight.

That's a common theme there: granularity versus generality.

It seems that you did a lot of problems, and gained no insights. Perhaps you were never intended or destined to be a mathematician. This is no insult - I genuinely believe that different people think in different ways, and the balance is important

Indeed. It was Knuth who said that mathematicians and computer scientists think in very different ways. With that I don't disagree.

How can we make kids experience more discoveries if they won't actually play with the underlying basics?

I'd argue that we should let them play with calculators and other tools. My discoveries came as I did programming. In 4th grade I wrote an arbitrary precision number package. I learned more about arithmetic doing that than all of the rote drills combined.

It's not the arithmetic you're trying to get insight into - it's the structures.

I have a feeling I'm never going to be able to convey what I'm trying to because you're not a mathematician, and I'm not a good enough writer. It's not just about becoming better at the arithmetic, it's about finding and creating structure, order, relationships and mappings.

But I'm going to stop now. It's clear that I'm just not expressing myself well enough to make the point, and I've spent far too long on it. I regret not being a good enough writer - and perhaps not a good enough mathematician - to explain in a way so as to make it clearer.

This is even true in college, where for example a large part of a physics education is spent computing integrals and solving differential equations in special cases, using approximation methods by hand. It would be more appropriate for an intuition of the physics to use symbolic and numerical methods on a computer a lot more. You realize that doing arithmetic by hand is a largely pointless exercise when you get a calculator, and we should similarly recognize that doing integrals and differential equations by hand is largely futile when you have things like maple and scipy.
I can tell you right now I'd never hire someone who wasn't able to compute the result of a linear differential equation without using a computer, because it's something that every person I hire needs to do very frequently while designing circuits. The difference in quality of design between one who can analyze a circuit on paper or in the head and one who relies on simulation to discover basic properties of the circuit is massive. Iterated simulation is not a tenable approach to the design of any sufficiently complex circuit.

Moreover, the nature of innovation in my corner of the mixed-signal circuit design world is such that said innovation rarely (if ever) comes as a result of a computer simulation. Much more likely, a person with a deep understanding of the fundamental underpinnings of his/her particular problem gains insight into its solution as a result of the same experience and intuition that leads to the aforementioned understanding.

I can have a computer calculate Fourier transforms for me all day, but it's vanishingly unlikely that any amount of such calculation will lead me to the kind of insight that sparked the invention of CDMA.

It is definitely useful to be able to do linear differential equations by hand. It's not useful to keep doing these things by hand. Just like it's useful to know the algorithm for multiplying two numbers, and it's not useful to keep doing multiplication by hand.

What lets people invent new circuits is their good intuition about circuits, not their ability to solve linear differential equations quickly by hand or to compute integrals by hand. When an expert is analyzing a circuit on paper he is thinking about "what happens if the input to this circuit is a sine wave with high frequency", he's not going to solve the differential equations by hand.

Rather than circuits look at how electromagnetism or quantum mechanics is taught in college. In my case it was integrals, integrals, integrals. Doing these by hand provided approximately zero intuition into the physics. We could have covered more ground if the instructor would just type these into maple, instead of doing them on the board or in the book by hand. Or how many times have I not had to compute eigenvalues of 2x2 or 3x3 matrices. How many times have we not applied crude approximations in class because doing it by hand was too difficult, when typing it into a compute would give you 100 digits of precision in a couple of milliseconds. One time one of my maths teachers how to compute tan(2) or something like that by hand. After half an hour of calculation he had 2 digits. Computing the integral of something to a crude approximation in an edge case strikes me as futile as computing tan(2) by hand.

Maybe, but maybe not. Just like driving through a city doesn't give you the same understanding as walking through a city, immediately solving (say) the Schroedinger Wave Equation for a finite square well doesn't give you the same appreciation for the underlying physics as struggling with the terms one by one.
Lets be clear, no one isn't saying that you shouldn't struggle with the terms one-by-one. Or to not solve something by hand ever -- but teach it and then find useful engaging (and appropriate) ways to use it. But its the current nostalgia over doing things "mind numbingly" repetitively. And "mind numbing" really is the operative phrase here.

I went through this as a child, where you do the same problem over and over again. Some of the symbols change, but the operations are identical.

It reminds me of when I was in 1st or 2nd grade doing long subtraction. And I had informed the teacher that I wanted to create the problems for the class, so she let me (on the chalkboard). But I snuck in some problems where the result would be negative. The kids struggled with these problems, but not a single student in the class said anything about the structure of the problem. And why would they? They learned nothing about what they were actually doing. It was a sequence of subtractions and carrys and other magic.

Pretty much nothing works if it's done badly. many things work if they're done well. I claim that when done well, exercising skills by hand that can be done by the computer yields insight in some cases.

the fact that when done badly it rarely yields insight does not necessarily mean it shouldn't be done.

I'm about to make a sweeping generalisation.

The problem is virtually no one in the world can teach math properly. Those who love teaching kids usually hate math and transfer their lack of skills and negative attitude. Those who really, really understand math are usually the type of people who would never teach 3, 4, 5 year olds.

People end up doing math despite the system, rather than because of it. They can usually point to one specific inspirational teacher. My specific inspirational teacher gave me lots of mind-numbing exercises and helped me find the insights.

Rote learning of mechanical processes will rarely, of itself, lead to anything other than a hatred of math and a lack of understanding about what math is. Repetition of mechanical processes, guided by someone who really understands stuff, and asks prompting questions, can lead to discoveries and genuine excitement and engagement - I've seen it happen.

How will we ever get really good math teachers?

There I have no answer.

Not to minimize the importance of teaching, but the content is important too. Instead of the content consisting of memorizing and performing algorithms, hoping for students to discover meaningful patterns/concepts/insights or rely on teachers to provide them, maybe the content should be doing this explicitly. One topic in the high school syllabus which actually does this is Euclidean geometry, where everything is coherently derived from basic principles as opposed to a grabbag of techniques. Maybe, one could present arithmetic in the same way, not focussing on the how to do calculations but the patterns in these calculations and a few basic principles too discover/prove them. Alternatively, one could focus on applications of mathematical techniques in toy versions of real world problems.

Arithmetic algorithms still have value - for the insight they give on arithmetic and because following a complex algorithm is itself a skill with value.

But there is no need, as we do now, to insist on performing them so many times, or to do them very quickly in exams.

The main problem with this new approach, I feel, is that it makes learning mathematics harder. Building richer conceptual models which is necessary for both applications or theory is more interesting and meaningful, but also more difficult than following prescribed algorithms. It is harder to test in an exam, and where testable the problems are much harder.

This issue of algorithms vs conceptual understanding, is important at the undergrad level too. Eric Mazur has a nice video about this where he also talks about his way of testing conceptual understanding by asking very simple but illuminating questions - http://www.youtube.com/watch?v=WwslBPj8GgI

Thank you for that Eric Mazur talk -- it really captures what I see. In particular the part where he talks about how his students, at Harvard, were solving triple integrals of complicated bodies to calculate the moment of inertia -- yet they didn't have basic high school level intuition of Newtonian physics.

We're so "drill, drill, drill" focused that we lose sight of why we're doing the drills (Eric Mazur calls it "plug and chug"). It's possible that these drills will in rare instances create the likes of a Colin or an Andrew Wiles, but for virtually everyone else you have a group of students that can solve triple integrals, multiple 5 digit numbers in their head, factor matrices into any form desired -- yet not have a clue why.

I think we're essentially in agreement; you've just defined "know how to use a calculator" a little more specifically than I did.

In my mind, if you don't know the concepts behind what you are doing, you don't know what you are doing. It's like copy and pasting code from the interwebs and then saying you are a python programmer.

But it isn't about balance, it's about using a tool to extend your abilities, not to replace them. If you are doing 36+19 on a calculator, I would posit that you simply aren't every good at math.

This is precisely the example repeatedly cited by the author of the post and the author he quoted: people doing very basic addition using a calculator.

If you focus your vision on these sorts of example, the rise of calculators is reasonably disastrous-looking! My comment meant to destroy the artificial dichotomy that calculators are "good" or "bad". They are clearly capable of generating some appalling lazy mathematical habits, but they're also clearly able to extend your abilities, improve pedagogy, and garner insights impossible to consider unaided.

Science and mathematics have wholeheartedly embraced computers as a tool for analysis and exploration. Education cannot ignore that. Simultaneously, many abstract concepts that people must know to make use of computers are best learned by replicating the exact work the computer can save you later.

The benefits of trading off toward laborious computation are going to be especially pronounced while learning things, of course.