kitchen table math, the sequel: A view from computer science college professors

Monday, February 7, 2011

A view from computer science college professors

I hear from a friend who teaches college computer science that many CS educators agree on the following:
  1. There is too much emphasis on calculus, and more focus should be placed on discrete mathematics (graph theory, logic, automata theory, etc) and statistics.
  2. K-12 education places too much emphasis on memorization at the expense of conceptual understanding.  This leaves college students ill-prepared for their computer science course work.

Cross posted at Education Quick Takes


cranberry said...

Grace, could you be more specific about "too much emphasis on memorization at the expense of conceptual understanding?" I would guess that your friend would want students to know their math facts, such as times tables?

It sounds nonsensical, I know, but as a parent of children who went through Everyday Math, I have heard the "conceptual understanding" line used to support not teaching standard algorithms. The same phrases mean different things to different people.

Anonymous said...

I'll toss out two of my favorite "memorize at the expense of conceptual understanding" items:

1) "Invert-and-multiply" as a technique for dividing fractions (and mixed numbers).

2) "FOIL" as a method for distributing multiplication.

I think that both are taught because it is easier (certainly for a 20+ student class) to teach these in the allotted time than to teach the steps (and reasons behind the steps) and force the kids to follow the steps.

What I think happens is that the reason behind each of these techniques *IS* shown to the kids, but then the class spends the other 95% of the time on the subject practicing the shortcut. The reason these work is taught, but not learned.

You can teach division of fractions and distribution of multiplication in such a way that the kids understand why it works. But my experience (sample set of 1) is that this takes *MUCH* longer than teaching the shortcut.

-Mark Roulo

Elena said...

Interesting debate! I wasn'r aware of.......

Anonymous said...

As a computer science PhD and currently professor of bioinformatics, I see several problems in math education.

The lock-step rush to calculus is a minor problem---lots of sciences need calculus. It would be much better if calculus and physics were co-taught, rather than being treated as separate subjects, though, as calculus makes much more sense when taught as a tool for doing physics, and physics makes much more sense when everything is tied together with calculus.

Discrete math (graph theory, combinatorics, mathematical logic, mathematical induction) are indeed the foundational math of computer science, just as calculus is the foundational math of physics. Almost no high schools teach discrete math, but it isn't clear to me that they would do a good enough job to be worth having them attempt it.

Statistics is perhaps the most important branch of math for high school students to learn. It is needed in far more fields than either calculus or discrete math, and should be a core part of general education for all citizens. I never got much statistics in any of my high school, college, or graduate education, and had to learn it on my own. (I did take a couple of grad classes in stochastic processes and Bayesian statistics, after I had been a professor for 20 years.)

If I could fix one thing in high school math education, it would be to require statistics right after Algebra 1 (replacing geometry or algebra 2 if necessary).

Anonymous said...

Mark, to this comment:
"What I think happens is that the reason behind each of these techniques *IS* shown to the kids, but then the class spends the other 95% of the time on the subject practicing the shortcut. The reason these work is taught, but not learned."

My own experience working with teachers in elementary tells me these teachers, as a general rule, have no idea why invert and multiply works.

Maybe you and I mean something different by "knowing why". I mean different than "knowing that". Showing "that" it works isn't enough. Showing "why" it works requires more.

So, since they don't know why, they couldn't possibly explain it. They may appeal to procedural fluency with showing how something times the reciprocal gives you the identity, but they don't *know* why this works, don't know how to explain why it's "flip the second, not the first", and they don't know any way to teach it that isn't the rule.

So, absolutely, this rule is memorized and conceptual understanding is not present.

But I think most elementary teachers have practically no conceptual understanding of the math they present. It was never taught to them. It is not an understatement to say that most of the teachers I know in primary grades do not understand place value at all, and can't explain why you borrow from e.g. the hundreds column to help you subtract tens.

Anonymous said...


You and I agree 110% that there is practically no way that most schools could teach discrete math in high school, but given that you are one of the tiny fraction of people in the world who understands a Bayesian approach to probability and stat, why in the world would you think hs teachers could do that subject any better than they would discrete math?

I mean, most *technical* people are wrong about the probability and stat they think they understand--most don't even know that a probability is a statement about ignorance of one's knowledge of the world, not an absolute statement about the world. (Just think how many people have been taught that if a couple has had 4 boys, that the prob that couple's 5th child is a boy is 50% because they think it's a coin toss, ignoring the prior data, and failing to realize that what makes a single coin toss have a prob of 50% is *that you know nothing about the system to bias your answer one way or the other yet*, not some intrinsic property of coins.) Stat class in hs will just exacerbate the problem.

There are serious problems with the overemphasis of calculus in high school, the main two being the lack of analytic geometry, series, and other topics that used to be taught well at that level (and are now not taught at all), and the second being that the overemphasis leads students to believe they actually know calc when in fact, their understanding is terribly shallow. Engineers would be much better off being taught calc from a differential forms point of view, but there's no way to undo the calc treatment they've already had for a year or two, and no way to get those kids to pay attention learning it in another way, even if that way were to pay off for them.

But I think any claim by "cs educators" that kids should be taught discrete math earlier is just ridiculous. The prior 60 years of CS didn't require that--why now? Maybe the answer is the 2nd major fallacy of the day, that people mistake acceleration through material sooner for preparation. Real preparation doesn't mean you do the same stuff only sooner. It means you learn breadth and depth about foundational skills, like mathematical maturity and reasoning through such subjects as algebra, geometry, pre calc, analytic geometry. Taught well, those courses provide the reasoning needed to handle discrete math.

cranberry said...

Gasstationwithoutpumps, would you drop geometry from the high school curriculum? If you are a professor of bioinformatics, and you did not have much statistics until later in life, what hope is there of producing enormous numbers of high school math teachers capable of teaching statistics to high school students?

Where else in the high school curriculum do students do proofs?

Anonymous said...

Students would be better off if they left Geometry and Calculus alone and dropped TV, Facebook and video games from their 'curriculum.'


Anonymous said...

I think that there are some teachers in high schools who could teach discrete math, but I don't think that there is a lot of point to it, as not many students would get much out of it.

Geometry is actually a terrible subject for teaching proofs (direct instruction in logic is probably more productive), and most students don't really learning anything that sticks with them from their geometry classes. It mostly ends up wasting time, except for the few who go on to become mathematicians or math teachers.

Math for all citizens should include algebra 1 and statistics. Math for carpenters and machinists should add trigonometry to that. Math for scientists and engineers should add algebra 2 and calculus. Geometry is probably the least useful of the math courses taught in high school, though it can be fun if it is done as problem solving rather than as dry-as-dust 2-column proofs.

Anonymous said...

Geometry may not have a lot of usefulness in later schooling or life, but for many students it's a welcome break from the more abstract algebra/trig.calculus (even statistics) progression. It's the only math class where you can see what's going on. It was a treat for me to have a math class that I could excel at and enjoy, and gave me the energy to persist in the following years.

Anonymous said...

At the HS I have mentioned before, with an excellent math/science program, the pre-calc class was called Elementary Functions/Analytic Geometry at the time my kids took the class; called E-FAG for short. That being politically incorrect, the name has since been changed (can't remember to what) but I wouldn't be surprised if the content is the same.

BKM said...

The discrete math vs. calculus debate is really more relevant at the college level. In many CS programs, the calculus requirement crowds out math that is more relevant. It is not unusual to see all discrete math topics shoved into a one semester hodgepodge course. I have also heard complaints that math departments use calculus as the gatekeeper course, so that students have to get through calculus in order to take more relevant math courses.

I must disgree, though, that discrete math couldn't be taught in high school. There are many topics from graph theory and even automata theory that are accessible. Perhaps this ties to the discussion going on over at Mark Guzdial's blog, about whether HS teachers should be certified in CS? I could imagine that a teacher with CS certification could run a high school level course on discrete math topics. Maybe a course like that could tie in with the new CS principles course?

SteveH said...

The discussion isn't well defined. Some of my old CS students just didn't want to put in the work. They didn't seem to like programming. I wouldn't care if they didn't have calculus in high school, or ever. I never thought "Boy, if only they had class 'X' in high school, everything would be fine". At most, I thought that the CS requirement of a class in differential equations kept many away from the degree program.

The post never states what the problem is. It's kind of like saying "There's something wrong with my program, I think we need different inputs? What do you think?"

No, what exactly is the error? I had too many students who wanted to use guess and check to debug their programs. Back in the 1980's, Turbo Pascal on a PC was huge; edit-compile-link-run was so fast that students stopped thinking. They just changed something and tried it again. Maybe if these students had a (real) programming course in high school, they would have figured this out by college or would have gone into another field.

The "error" I saw was that the students didn't know what they were getting into in terms of work and level of detail. You can't be satisfied with a program that is 90% correct. My solution is to make sure they have a proper programming course in high school.

SteveH said...

Actually, I think the problem these days would be that kids come to college after having done some web page development and scripting and think that's what CS is all about. Wait until they get to the data structures course. Then again, didn't someone once say on KTM that now you can get a CS degree without taking a data structures course or ever having written a set of B-tree routines?

BKM said...

The discrete math issue is somewhat separate from the programming issue (computer science isn't just about programmng, after all - that's a big pet peeve for computer scientists!). I agree that the way programming is taught (or not) in K12 is appalling. But that is not the debate that the OP is referring to.

Most CS programs will require a data structures course, although the content can be pretty slippery. But it is completely possible to get through a CS major without every programming a B-tree routine. B-trees are often relegated to the database course, which is often an elective (and that is a pet peeve of mine!). I can also tell you that just because a student *takes* a data structures course, it doesn't mean that he or she understood any of it.

And I do agree that we get lots of students who are utterly unprepared for the demands of computer science. A lot of HS guidance counselors seem to tell kids (boys especially) that if they like video games, they should major in computer science. We used to flunk 'em out rapidly, but when CS enrollments tanked around 2002, we came under lots of pressure to "retain" any living body.

The NSF is taking a huge interest right now in the state of CS education in K12. Take a look at the CE21 program

Grace said...

I would guess that your friend would want students to know their math facts, such as times tables?

For the moment, I don't know what my friend thinks about that. I imagine the answer might be that students should ideally know both the procedures and the concepts, but the concepts are more important if you had to choose just one.

Here's what I've heard a few "math brains" say in defense of prioritizing conceptual understanding over procedural fluency. They say that if a student has deep understanding, he can always have figure out the answer, even if he has to go back and puzzle out out an algorithm. I guess that's a pretty standard view among reform math advocates.

Having known both mathy and non-mathy students, and having read about the limits of short-term memory, I would respond that it is impractical for most students to forego memorizing procedures. Also, memorization before deep understanding works fine as an effective learning sequence. I’ve experienced this many times.

Grace said...

Math for all citizens should include algebra 1 and statistics.

That sounds right to me.

Anonymous said...

Exactly what topics should be taught in a statistics course that has *no prereq other than algebra 1*?

What conceptual understanding of statistics is achievable with no prereq knowledge other than algebra 1?

SteveH said...

"They say that if a student has deep understanding, he can always have figure out the answer, even if he has to go back and puzzle out out an algorithm."

"Math brains" say this only because they haven't had a child take Everyday Math. I've seen the transformation that takes place when that happens. So many arguments sound fine on a superficial level, but fall completely apart when you get to the details. Many educators don't have the knowledge or experience to get to that level. Also, this argument means something completely different to "math brains". They are usually astounded when they compare notes with educators. Higher expectations get translated into lower expectations. Somehow, understanding gets translated into no need for mastery because the kids can eventually figure it out from some sort of conceptual understanding. It just doesn't happen. There is linkage between mastery and understanding.

It's hard to progress past these simple pre-conceived ideas, especially when that's all that educators have ever been taught. We can claim "false-dichotomy" until we are blue in the face, but they continue to ignore it over and over and over.

BKM said...

I just realized, in rereading the comments, that Steve H is probably talking about binary trees, not the B+trees that I was thinking. Binary trees are supposed to be covered in data structures, but since it is the last topic, it is common to run out of time in the semester before getting there. But certainly I agree that binary trees and tree traversals are fundamental

SteveH said...

Way back when I taught a data structures course, B-trees referred to B+ or B* trees, and binary trees were called binary trees. My students had to write B-tree routines. I suppose nowadays students (at most) need to use a B-tree class structure rather than to create one.

Grace said...

Exactly what topics should be taught in a statistics course that has *no prereq other than algebra 1*?

I don't know, but in NY statistics instruction starts in pre-k. From the "Statistics and Probability Strand" for first grade:

Students will collect, organize, display, and analyze data.
Collection of Data
Pose questions about themselves and their surroundings
Collect and record data related to a question
Organization and 1.S.3 Display data in simple pictographs for quantities up to 20 with units of one
Display of Data
Display data in bar graphs using concrete objects with intervals of one
Use Venn diagrams to sort and describe data
Analysis of Data
Interpret data in terms of the words: most, least, greater than, less than, or equal to
Answer simple questions related to data displayed in pictographs (e.g., category with most, how many more in a category compared to another, how many all together in two categories)
Students will make predictions that are based upon data analysis.
Predictions from Data
Discuss conclusions and make predictions in terms of the words likely and unlikely
Construct a question that can be answered by using information from a graph

I guess it depends upon what you want to call a "statistics course." ;)

Anonymous said...

Well, yes, it does depend. Which is why I want to hear what "statistics course" you and GSW/OP think high schoolers should receive. I doubt you meant high schoolers should receive what first graders know. What
do you mean precisely?

Anonymous said...

Steve's point
"this argument means something completely different to "math brains". They are usually astounded when they compare notes with educators."
cannot be overstated.

Tech folks and educators can nod in agreement all day about how students need conceptual understanding and how procedural fluency without it is a waste. But they don't know that they aren't agreeing on anything beneath that. Many *many* educators think that teaching the standard algorithms for addition, subtraction, multiplication, and division to proficiency INHIBITS conceptual understanding. Go ahead, ask them--do the standard algorithms support or detract from conceptual understanding?

I think most tech folks would have their mouths hanging open to realize how many educators they thought they agreed with believe the standard algorithms should not be taught.

Anonymous said...

Alliosn wrote "Exactly what topics should be taught in a statistics course that has *no prereq other than algebra 1*?"

You can be sure it will be the frequentist approach and not Bayesian.


Anonymous said...

gasstationwithoutpumps wrote: "Geometry is actually a terrible subject for teaching proofs (direct instruction in logic is probably more productive),"

Incidentally, I've always been bothered by the SAS postulate. The proof using superposition always seemed a bit dodgy for something that was so essential for many other theorems. Last night I realized that it could be proved directly using the trigonometric laws of sines and cosines which don't rely on the SAS postulate.

All you have to do is make another triangle A'B'C' where sides a=a', c=c' and angle B = B', then prove that b=b', A=A' and C=C' by substitution.


Anonymous said...

...we can also prove the other cases (ASA, SSS, AAS) directly using the trig approach as implied in the other links and I believe we can avoid the problems of weak proofs for SSS described here:


Anonymous said...

Here are some things that I'd include in a statistics course for the general population of students with an algebra 1 background:

* Making sense of mean, median, and mode. Knowing when each is the best choice. Realizing that the mean net worth of the people in Bill Gates' high school graduating class is a meaningless number (and less extreme examples).

* Basics of distributions, standard deviation. If one student has a 75 on every test and another has a 50 on half the tests and a 100 on half the tests, they both have a 75 average. But would you say that their performance was the same? Practical things like this. Nothing about normalizing areas under curves!!!

* Both the number of drowning deaths and the amount of ice cream sold increased in July. Therefore, ice cream causes drowning. Understanding how not to reason with statistics.

* Making sense of percentiles.

* Making and interpreting histograms and similar graphs. (I do love me some stem and leaf.)

* Very, very, very basic probability. Why you should not play the lottery.

* Extremely concrete examples of conditional probability, but without using that term and without using Bayes' Theorem. (It can be done just in terms of fractions and percents.) Examples like universal AIDS testing. (Upshot: So few people in the US are HIV+ that universal testing would end up with a lot of false positives -- way more than real positives.)

* Good and bad surveys.

* If you have a population of 10,000 people and you ask 1000 of them what their shoe size is and take the mean of these 1000 people's shoe size, is this the mean for all 10,000 people? Problems like this, but not going into too much detail about distributional assumptions.

* What margin of error means in a poll.

* Very basic hypothesis testing, such as the chi-square test with 2x2 tables. It is OK to let the students accept the chi-squared table as a magical black box.

* Interpretations of statistics seen in the newspaper, in science publications for the general public, in the pamphlet that comes with your prescription medication, etc.

Jen said...

I agree that people at the college level have no idea what they're asking for (or getting) when they ask for "more conceptual understanding." They don't seem to understand that students who can't do their times tables also struggle with more conceptual word problems that require multiplication, because they have NO CLUE if their answer is totally off base.

They also don't seem to register that these problems have accelerated SINCE we've tried teaching conceptual understanding without a rote/algorithmic basis.

I've picked up my knitting again and I keep wondering what a conceptual understanding first knitting program would look like. I think you'd show them lots and lots of pictures of knitting, let them look at sweaters and scarves and hats and talk alot about "what they notice" and what they like and don't like.

Then, nearly as an afterthought, the needles and yarn come out, and there's a quick "here's how to do a knit stitch, here's how to do a purl stitch. BTW, there are youtube videos in case you forget."

Then tell them to draw a sweater (or even a scarf or hat) and make it.

It won't work. Learning the basic stitches comes first and it's only after hours of practice that you begin to see what mistakes look like. Then after hours more of it, you begin to realize (or can ask, repeatedly) how to go back and fix problems.

Then after working up from very simple squares to slightly more complex items, you can start looking at patterns and following them.

THEN after doing that over and over, you start to see the bigger picture, you realize how you could make a sweater out of what you know and have done. You can NOW develop and produce a concept.

BUT it took a loooooong time of basic practice and then continued practice with gradually increasing levels of difficulty. And there's really no other way to get there.

Anonymous said...

Anonymous at 2:31 had a pretty good list of statistics with just algebra 1 topics.

You can find lots of examples. Just about every "biostatistics" class in the country assumes only algebra 1, because that is all most biology students master (no matter whether their major requires a calculus class or not).

The statistics department here distinguishes between "calculus-based probability classes" as prereqs for the upper-division and graduate statistics classes and the "biostatistics" classes (and other stats classes for mostly innumerate majors).

I'm arguing that everyone should get the fairly simple view of statistics that biology and psychology majors get.

Grace said...

My quick check of the Khan Academy "introduction to statistics" course seemed to indicate that only first-year algebra was required as a pre-requisite. Here are the first few topics:

-- : The Average
-- : Sample vs. Population Mean
-- : Variance of a Population
-- : Sample Variance
-- : Standard Deviation
-- : Alternate Variance Formulas

(I've been meaning to take Khan's course because I am woefully ignorant on this topic.)

Anonymous said...

I found this intro statistics textbook:
It seems to be pedagogically sound with lots of exercises.