Someone asked me recently what was the one thing that’s changed the most about my teaching over the last 10 years. My response was that I’m a lot more likely now than I was in 2002 to organize my classes around *asking and answering questions* rather than *covering material*. Here’s one reason why.

The weekly *Mathematica* labs that we have in my Calculus 3 class are set up so that some background material (usually a combination of math concepts and new *Mathematica* commands) is presented in the lab handout followed by some situations centered around questions, the answers to which are likely to involve Calculus 3 and *Mathematica*. I said *likely*, not *inevitably*. There is no rule that says students must use Calculus 3 to answer the question. The only rules are: (1) the entire solution has to be done in a *Mathematica* notebook, and (2) the solutions have to be clear, convincing, and mathematically correct.

What’s been good about this approach is that promotes an ownership mindset of the mathematics in the class. Students get very creative and engaged when they have some say in the proceedings and it’s not just parroting what they learned in class. The lab problems are created so that they apply what we’ve learned in class, but often students will find some creative workaround.

For example, we recently finished a chapter on vector functions, and the lab for the week was on motion in space. In the pre-lab reading I defined velocity, speed, and acceleration when position is given as a vector function. The first problem on the lab included this question: Suppose a particle is moving through space with trajectory given by \(\mathbf{r}(t) = t^2 \mathbf{i} + (3 \sin t – t \cos t) \mathbf{j} + (\cos t + 4t \sin t) \mathbf{k}\). At what time is its speed at a maximum? This is a pretty basic question (almost to the point of being pseudo-contextual) and there is basically only one right answer. But that answer could be obtained from several different approaches .

Several lab groups defined r[t] in *Mathematica* and then defined speed as a scalar function, and then they plotted it (click the image to enlarge):

You can see the global maximum around t = 9.5. But then they had to come to grips with the “clear, convincing, and correct” rule. If you just *say* that the time is around 9.5, which it obviously is, then is that *convincing*? How could you make this more convincing, or irrefutably convincing? And convincing to whom? These are the right questions to ask about graphs that purport to solve a problem.

Some groups took a numerical approach, using *Mathematica’s* Table command — which we did not discuss in class, so this had to have been discovered on their own somehow — and either defined speed as a scalar function as above and made a table for it, or in one group’s case, made a table for the average rate of change in position from \(t\) to \(t + h\) and let \(h \to 0\). All the numerical groups made a graph of speed first to get a visual read on the general vicinity of the maximum before using the table to home in on the precise value.

And at least three groups went dumpster-diving through the Help system to look for *Mathematica* functions that might be useful, eventually stumbling across the **FindMaximum** command. Lest anyone thinks this is bypassing the mathematics to let the computer do the work, realize that the syntax for this function is not trivial. If you just use **FindMaximum** naively, it returns the local maximum for speed near t = 1.1. Students had to learn to eyeball the graph and feed it a starting value (probably because the function uses Newton’s Method or something similar). So even though *Mathematica* “did all the work”, students still had to think about whether the answer **FindMaximum** gave them made sense and then adjust their setup accordingly.

What struck me most about the work on this lab was that nobody — nobody! — did what the textbook wanted them to do, which was to take the derivative of speed, set it equal to 0, and then solved for t. That’s shocking! This is the canonical optimization method from Calculus 1, well within Mathematica’s skill set, and all students had to do in the lab is set up that calculation and hit Enter. Not only did nobody take this approach, only one group even *considered* it. When I asked the class about this later, they all remembered this technique when asked to recall it, but when given a problem in which it could be useful, it did not spring to mind. What does this say about our attempts to drill such algorithms into students?

*Top image: http://www.flickr.com/photos/oberazzi/*