TITLE: Taking Projects to an Extreme AUTHOR: Eugene Wallingford DATE: February 11, 2005 4:17 PM DESC: Is it possible for a homework assignment to leave students with no reasonable alternative to changing how they write programs? ----- BODY: One of my favorite TV shows back when I was little guy in the 1970s was The Paper Chase. It was a show about a group of law students, well, being law students. It was based on a 1973 movie of the same name. It's not the sort of show that tends to hang around the TV schedule very long; it lasted only a year or two on network television. Even still, I fell in love with the quiet drama of university life while watching this show. Whether you remember the show or not, you may well know its most famous character, Professor Charles W. Kingsfield, Jr., played with panache by the eminent John Houseman. Professor Kingsfield was in many ways the archetype for the brilliant scholar and demanding yet effective university teacher that one so often sees on film. Growing up, I always hoped that I might encounter such a professor in my studies, certain that he would mold me into the great thinker I thought I should be. In all my years of study, I came across only one teacher who could remind me of Kingsfield: William Brown, an old IBM guy who was on the faculty at Ball State University until his retirement. Many professors demanded much of us, and some were brilliant scholars, but only Dr. Brown had the style that made you feel honor in the fear that you might not meet his standard. I had plenty of great professors at Ball State, but none like Dr. Brown. Why this reminiscence on a Friday afternoon 20 or 25 years later? I thought of John Houseman and a particular episode of The Paper Chase yesterday afternoon. The episode revolved around a particularly laborious assignment that Kingsfield had given his Contracts class. (Kingsfield made contract law seem like the most lively intellectual topic of all!) The assignment required students to answer one hundred questions about the law of contracts. Some of these questions were relatively routine, while others demanded research into hard-to-find articles and journals from way back. Of course, students worked together in study groups and so shared the load across four or five people, but even so the assignment was essentially impossible to complete in the time allotted. While sharing their despair, our protagonists -- Mr. Ha-a-a-rt and his study group -- stumbled upon a plan: why not share the load with other study groups, too? Soon, all the study groups were working out trades. They couldn't trade answers one for one, because some groups had worked on the hardest questions first, so the answers they offered were more valuable than those of a group that had cherry-picked the easy ones first. By the end of the episode, the groups had drawn up contracts to guide the exchange of information, executed the deals, and submitted a complete set of answers to Kingsfield. As the students submittted the assignments, some worried that they had violated the spirit of individual work expected of them in the classroom. But Hart realized that they had, in fact, fulfilled Kingsfield's plan for them. Only by negotiating contracts and exchanging information could they conceivably complete the assignment. In the process, they learned a lot about the law of contracts from the questions they answered, but they had learned even more about the law of contracts by living it. Kingsfield, the master, had done it again. So, why this episode? Yesterday I received an e-mail message from one of our grad students, who has read some of my recent entries about helping students to learn new practices. (The most recent strand of this conversation started with this entry.) He proposed:
... I wonder if you have considered approaches to teaching that might include assigning projects or problems that are darned-near unsolvable using the methods you see the students using that you wish to change? ... you can't really force anyone to open up or see change if they don't feel there is anything fundamentally wrong with what they are doing now.
This is an important observation. A big part of how I try to design homework assignments involves finding problems that maximize the value of the skills students have learned in class. Not all assignments, of course; some assignments should offer students an opportunity to practice new ideas in a relatively stress-free context, and others should give them a chance to apply their new knowledge to problems that excite them and are methodology-neutral. But assigning problems where new practices really shine through is essential, too. Kingsfield's approach is a form of Extreme Exercise, where students can succeed only if they follow the program laid out in class. In university courses on programming and software development, this is a bigger challenge than in a law school. It is Conventional Wisdom that the best programmers are ten or more times more productive than their weakest colleagues. This disparity is perhaps nowhere wider than in the first-year CS classroom, where we have students everywhere along the continuum from extensive extracurricular experience and understanding to just-barely-hanging-on in a major that is more abstract and demanding than previously realized. Kingsfield's approach works better with a more homogeneous student body -- and in an academic environment where the mentality is "sink or swim", and students who fail to get it are encouraged to pursue another profession. I still like the idea behind the idea, though, and think I should try to find an exercise that makes, say, test-driven design and refactoring the only real way to proceed. I've certainly done a lot of thinking along these lines in trying to teach functional programming in my Programming Languages course! Practical matters of educational psychology confound even our best efforts, though. For example, my reader went on to say:
If a teacher can come up with scenarios that actually ... require the benefits of one approach over the other, I suspect that all but the most stubborn would be quick to convert.
In my years as a teacher, I've been repeatedly surprised by the fact that no, they won't. Some will change their majors. Others will cling to old ways at the cost of precious grade points, even in the face of repeated lack of success as a programmer. And, of course, those very best students will find a way to make it work using their existing skills, even at the cost of precious grade points. Really, though, why we penalize students very much for succeeding in a way we didn't anticipate? With the image of Professor Kingsfield firmly planted in my mind, I will think more about how the right project could help students by making change the only reasonable option. I could do worse than to be loved for having the wisdom of Kingsfield. And, as always, thanks to readers for their e-mail comments. They are an invaluable part of this blog for me! -----