Saturday, November 06, 2004

High School curricula

Continuing our math theme, we just conducted our second CS225 mid-term, and I've been grading exams for the last few days. I've noticed something interesting; students tend to provide reasonably good answers to questions which require them to write code, but are often unable to write proofs/justification for running times and correctness of algorithms. When I find a particularly good answer to a mathematical question, I often turn to the front and check the student's name out of curiosity; it appears that the best solutions are often written by non-Americans (judging solely by names). Before I get flamed for being racist, I should reiterate that I mean American, not Caucasian. Students of different ethnicities who went through school in America don't seem to do better than average; at least, I haven't noticed any evidence of it.

The most compelling reason for the discrepancy that I can find (since I absolutely refuse to accept any claim that Americans are 'inherently' less mathematically able than others) is the difference in the way Math is taught at the school level. (Disclaimer: I only have India as a basis for comparison, so perhaps this isn't reasonable either.) An Indian student who enters engineering college has already studied (differential and integral) calculus for two years, probability and statistics for at least as long, some form of co-ordinate geometry (with its emphasis on proofs) and algebra for over five years, besides some combinatorics, matrix algebra, and complex analysis. Some high school syllabi even include a fair bit of group theory! Graders in India also tend to be demanding (bordering on ruthless!) when evaluating exams, so students quickly learn when an answer is sufficiently precise to deserve full credit.

So is that a better system? I'm not sure; many Indian students never see a complex number after leaving high school and years of demanding Math often leave them hating the subject. I know several Indians who feel uncomfortable answering an exam question unless they're reasonably sure how to do it; a lack of partial credit (much less common in India than in America) discourages people from risk-taking. And I've noticed that American students are often more creative with solutions to both exam problems and random problems discussed in section, which makes teaching fun. It looks like they make up most of the relative deficiency in college, so doing less math in school doesn't seem like much of a loss. Perhaps the syllabi will change to embrace the best of both systems.

Right now, though, I often wish that there were more emphasis on rigorously correct solutions. Some of the best students seem to think that proof by example is completely reasonable! And it always makes me feel like I've done a terrible job in section when I have to grade papers which make warm, fuzzy statements like:
Trees are a Good Thing (tm) in general when compared to lists (except when they (the trees) are unbalanced, but that doesn't happen for Red-Black Trees (because they are always balanced), so it doesn't make a difference to this answer) and so searching in a tree is usually better than in a list (because we don't have to look at all the tree nodes), so we would rather use a tree.

(Admit it, that's an exaggeration! -ed.) Granted, but I yearn for a plain O(log n)!


Jeff Erickson said...

By the time students get to CS473, the discrepancy you observe between Americans and non-Americans seems to have mostly vanished. But I have seen a tendency for Asian students to be less creative in their solutions than Americans. Faced with a novel problem, many students with more formal mathematics backgrounds try to shoe-horn textbook techniques into working, even when they aren't appropriate, instead of looking for a short solution from basic principles. On the other hand, Asian students tend to get the math right more often, once they find the right math to apply.

Nitish said...

I'm in 473 this semester, and yes, I've noticed that (at least the graduate) American students are doing as well as the international students, which is why I concluded that they must make up the difference in college. Unfortunately, as you point out, the international (at least the Asian) students still have the tendency to think 'inside the box' instead of coming up with new solutions. (I catch myself doing it too often for comfort, so I really shouldn't make disapproving comments!). On the whole it looks like a (slight) net loss for the Asian students.

On the other hand, my roommates are both grad students in Chemical Engineering, and senior students in the Ph.D. program have told them that international students tend to do significantly better than Americans on graduate-level math-heavy Chem Engg. courses. A couple of their professors have also made similar statements. And I've heard the same sort of thing from friends in ECE departments at other universities. So the jury's still out on the relative merits of the two systems.

On a completely unrelated note, Prof. Erickson, when will you return? Fall 2005? I wanted to take CS 573 and/or some other 500-level theory courses next semester, but I'm told that none of them will be offered until you finish your sabbatical.
(It's bad enough that you're harrowing him, but couldn't you at least make it seem like you've been longing to meet him all your life instead of advancing selfish motives? - ed.) Oh, well... consider it said. :-)

Jeff Erickson said...

I'm not surprised about the ChemE discrepancy. The type of math needed to do well in most engineering disciplines is very different than the type of math needed to do well in theoretical computer science -- more diffy Qs, vector calc, and linear algebra, and less discrete math, logic, and recursion. Apparently Asian CS students see more integrals as undergraduates than structural induction proofs. In other words, they get a more classical engineering education.

I'll be back from my sabbatical next June, and teaching again in Fall 2005. Sorry about the lack of graduate theory classes this semester. We barely have enough theory faculty to cover all the required classes even when we're all there (which is why CS573 is mixed ugrad and grad this semester). We've been trying for several years to hire some new theory profs (who DON'T do computational geometry), so far without much success. (Last year's candidate went to Stanford.)

Nitish said...

And I'm extremely grateful for that fact... I was never much good at differential equations. I should probably get down on my knees every night and thank God Computer Science requires less integral calculus and differential equations than traditional engineering. :-)

You hardly need to apologize; and I actually have a reasonably good semester. CS 579 (Complexity) is being offered by someone in the ECE department, and I can get one of my core requirements out of the way, besides an independent study with Prof. Har-Peled.

Anonymous said...

And I'm glad that there are fields that REQUIRE mostly Diff. eqs

- Atreides