In a typical class, after a brief review of earlier material, the students break into groups to explore that day's topic, guided by a written handout. At the end of the term, each student does an independent project. By now I have taught this course several times, for instance to liberal arts honors students, to high-school students in a summer program, and to advanced undergraduates mostly majoring in math. At UIUC, I offered this course in Spring 1999 as an honors seminar, Math 296. It was very popular, and I plan to teach it again this coming spring.
Computers are another good way to let students participate actively in learning.
Several years ago, when teaching an undergraduate differential geometry course, I developed software for interactive exploration of curves and surfaces, with graphics and symbolic computation of curvatures. In such a course, computers are indispensable for showing a wealth of examples that would otherwise be inaccessible, though it would be a mistake to let this distract students from learning the theory. Many times, some students in a course are interested in helping develop software, and of course these students will get even more out of the computer experience. My final year at Minnesota, I taught a new course to future math teachers, Technology in the Geometry Classroom . This course covered material about mechanical linkages, dynamical systems, and planar symmetries, while showing the students how to use computers in the classroom.