June 28, 2004

Bulk view

Teaching reflections

CS21A

Dr. Sarmenta finished the lecture on Java Basics and started
on Conditionals. I’m worried that the students might find the
discussion on preincrements and postincrements a bit too abstract, as
they don’t have use for that yet. Dr. Sarmenta thinks it’s wiser to
get the topics out of the way, and since he’s senior for that section,
well… Anyway, I’m going to postpone that topic until I get to for
loops, where it really makes sense.

I’m also worried about the long discussion on conditionals and
grouping statements with braces. He spent a lot of time pointing out
possible bugs. I guess this is a good thing because otherwise the
students might pick up the bad habit of making small, random changes
to their programs in order to get things to work, but again, it
felt somewhat disconnected.

I started my MIS class with a quick overview of the exercise. I
explained a few of the quirks, then moved on to conditionals in the
context of the bank account exercise. I explained it in English and
then showed them the Java code to do it, which they dutifully copied
down. I also showed them how to use the debugger to investigate the
behavior of the if/else structure. I felt good about trying to follow
the BlueJ way of making exercises.

CS110

Armed with more examples, I went over methods of justification again.
They understood the contrapositive immediately when I used English
examples, and they were surprisingly familiar with the various
examples for proof by contradiction. Loop invariants are a little bit
clearer now, but they still need a lot of practice identify the
statement S and proving it holds true before, during, and after the
loop.

CS139.3

Mini-contest. Okay results; a number of people solved at least one
problem, and Mark got all 3. I should be moving into searching and
sorting soon. I guess I’ll have to cover normal sorts so that people
using the Online Judge know what to do. I should also cover the
shortcuts…