35 karma · joined April 9, 2009
Personally, I don't mind lecturers "telling" the answers straight away. Obviously give motivation and lead into it rather than just delivering it with no introduction, but I've found a lot of problems are simply too large or too non-obvious to take a straw poll from the class.
The best teachers I've had have been:
(i) Really bloody good at their subject. My probability lecturer (the Field's medallist Tim Gowers), when presenting the proof of Stirling's approximation, said something along the lines of "now, the normal method for proving this bit is a bit complicated, and on my cycle in this morning I thought 'There must be an easier way', when the following struck me. Now, I've never written this down before, so hopefully it works...", and of course laid out a simplification of a famous proof that worked perfectly. Inspirational. (See http://gowers.wordpress.com/2008/02/01/removing-the-magic-fr...)
(ii) Incredible elucidators. The ability to take a complex concept and pick exactly the right words or metaphors to explain it is a powerful ability.
I feel these criteria are far more important than asking the audience questions. You need both -- I've been taught by plenty of talented mathematicians who had no idea how to teach, and certainly a handful of great teachers who simply didn't have the aptitude to really grasp the more complex topics.
In what way? It's certainly as good as it is in any other editor, with the addition of several very Emacs-esque mouse-driven commands. For example, right click marks the region from point to the click point and saves it in the kill rin (like M-w); double right click kills that region. Using M- does the same, but modifies the secondary selection. Using C- with the mouse pops up several useful context menus. Try playing around with C-h k <mouse button> in various contexts.
More recently I've moved mostly away from the arrow-keys navigation (not just up/down/left/right instead of n/p/b/f but Home End instead of C-a, C-e; C-left, C-right instead of M-b, M-f; C-up, C-down instead of M-{, M-}; C-Home, C-End instead of M-< and M->, etc.) to the more central commands. This is less of a win but has nonetheless sped up my editing still further.
How about they wait until available through their distribution's package manager?
Do you really need something as complicated as a stack?
n = 0
for (char in string)
if (char == '(') n++
if (char == ')') n--
if (n < 0) print "Unbalanced"
if (n != 0) print "Unbalanced"I don't think there was any point in listing the demographic observations he did, the sample is way too small for anyone to try to draw conclusions.