Sneaking in Extra Material Daniel Joyce Department of Computing Sciences Villanova University Villanova, PA, USA, 19085 daniel.joyce@villanova.ed u 1. Introduction Did you ever wish you could sneak some extra material into a course but it just doesn't fit with the syllabus and there's not enough time to add another unit to an already crowded calendar? In this Tips and Techniques I described how I snuck some computing history into an introductory programming course. So, the pattern was set. I would give an assignment description, write a little bit about how it ties into some aspect o f computing, and provide a link to a related web site for the curious. H e r e is a list o f t h e a s s i g n m e n t s t h a t I m a n a g e d to p r e s e n t f o l l o w i n g this p a t t e r n : 1. 2. Encoding and decoding secret messages were connected to Alan Turing's life and work. Creating an applet to draw "art" in its window was, with a bit o f a stretch, related to Donald Knuth and his series titled "The Art o f Computer Programming". Hey, I never claimed the connections between the assignments and history would be perfect! A program that holds a conversation with its user is more clearly related to Joseph W e i z e n b a u m ' s "Turing Test" program Eliza. For an exercise in repetition I noted that it was the repetition inherent in engineering work that prompted pioneers like the German engineer Conrad Zuse to search for mechanical aids. Implementing the dice game Pig was related to the relationship between computers and games. Running multiple simulations o f the Pig game and collecting and presenting information about the results was tied to the use o f computers for simulations and modeling. Extending the previous assignment to present the information as a histogram was tied to the use o f computers for information visualization. at 2. Context When I found myself teaching an introductory programming course for the first time in many years, in the Fall o f 1999, I decided to try to include some exposure to computing history as part o f the course. Part o f the impetus for this mini-project was the fact that the first programming assignment that I gave to the class involved programs to encode and decode secret messages. I was struck by the fact that one o f the earliest uses o f computers, during World War 2, was related to this first assignment. So, I decided to tie the description of the assignment to computing history. Once I got started, it became a challenge to also tie later assignments to some aspect o f computing history. All together, I linked 7 o f my 10 programming assignments to computing history and/or some aspect o f the m o d e m use o f computers. Hopefully this provided the students with a realistic context for the "toy" programs they were developing. 3. 4. 5. 6. 3. Application My first programming assignment required the students to write two programs, one to encode a string so that it is difficult to read, and one to decode the string. The assignment description was posted on the web and began as follows: "The early development o f computers was hastened by the need for computing power during World War 2 ... in England, computing pioneer/genius Alan Turing continued his work on cryptanalysis (coding and decoding messages), work which helped the Allies immensely during the war. Read about this chapter (and others) o f Turing's interesting life: Alan Turing - A short bio~ranhv." The last five words o f the above description were a web link to an interesting essay about the life o f Turing. The problem introduction was, o f course, followed by a description o f the required program functionality along with some sample input and output. 7. The assignment descriptions are available http://www.csc.vill.edu/-joyce/csc 1051/fal199/intro.html. 4. Results If nothing else, I had some fun making the assignments and tying them to computing history. It would be fair to ask i f the students actually followed the links and read the historical information. Based on the results o f a history related surprise bonus question, that I included on the first test, I would have to report that the students did not seem to absorb much o f the historical information during the first third o f the semester. But the good news is that they did much better on the history related "surprise" bonus questions on the remaining tests! Imagine that.
/lp/association-for-computing-machinery/sneaking-in-extra-material-panel-session-ZmclAwcX0a