Mar 06, 2007 14:46
My Algorithms professor is a fairly young professor. This class is new to him, and he often realizes things while teaching which aren't in his notes. He seems to know his stuff, and he's a pretty good teacher on the whole. This isn't an indictment of him personally; I'm just using that class as an example of a style of teaching which I see as very common.
In class, he usually starts by presenting one algorithm, casually showing that it works, then formally proving that it works. A similar sequence applies to showing the time complexity of algorithms: show casually, then formally prove. At this point, he generalizes to a class of algorithms and repeats this sequence for a few other algorithms in the class. For the last set of algorithms, a particular class of greedy algorithms called "matroidal algorithms", he ended the sequence by showing a completely general way to solve all of them, proving that a couple of problems were in this class, and showing how the general method could be used to solve those specific problems.
This is boring. Why? All of it is covered in the book. Okay, the matroid stuff was in a different book - which is easily accessible through the library website. You don't even need a physical copy to read it. Why cover that stuff in so much detail? Do we really need to see the proof in class as well as in the book? His proofs were no more understandable than those in the text, and perhaps less so since understanding is time-constrained with a live lecture in a way which it isn't with a book.
I'm not arguing for the "here's an overview of the problems out there" sort of lectures that my Distributed Systems prof is apparently so fond of. This is by far more interesting. But why can't we do some extensions of the material in class, instead of just rehashing the book? Why should folks like me, who are capable of learning from books - probably the only sort who make it through grad school anyway - even bother coming to class?
It's clear to me that many people in this class have *not* done the reading, given their inane questions which pick at nits, avoiding the big picture. Had they read and understood the text, they would not be confused when the professor presents the exact same general recurrence relation as the book presents on page three of the current chapter.
I should note that this only applies to high level classes. I don't think that 3rd grade should be taught this way. I'm not sure about 11th grade. But I'm damn sure about grad school. At the very least, if material is going to be taught in class, it should be taught in a different way than the book covers it. Ideally, it should build on the reading - discuss its implications, make connections to other work, and show the context in which it was initially developed.
academics