Course Level
CS1
Knowledge Unit
Fundamental Programming Concepts
Collection Item Type
Assignment
Synopsis

This Python programming assignment requires students to seek evidence to help answer the following conjecture: True or False? Tolkien wanted his readers to fully appreciate that his elves were large, thus he used the word “tall” (or other variants such as “big”, “giant”, “large”, etc.) in close proximity to the name of an elf (e.g., “Legolas”, “Galadriel” or even the generic word, “elf”). Learning goals include problem decomposition (functions), extending existing code, technical writing, building an app to handle a wide range of input texts, and writing scripts to produce Excel-ready (comma-separated value) output.

Recommendations

This assignment requires students to focus on technical writing of their experimental method and results rather than writing software. Although many of the students are good writers, I find that they do not have adequate experiences with technical writing. I spend class time to show how to professionally format Figures and Tables, including adequate legends for each figure and table. 

I still find it surprising how many students cannot confidently work in Excel to massage and format data.  I recommend adequate time be reserved for class time to show students how to professionally prepare and format results.

Engagement Highlights

The conjecture, that Tolkien might use "tall" near "elf" so the reader will think his elves are large enables anyone to have a "gut feeling" about the answer, but until recently, empirically verifying it was much harder. To write scripts that find and report evidence is empowering, yet comes with responsibility when describing the definitions made and metrics used. A specific focus on students' technical writing is made, including the pipeline of tools leading to a final report: Python script, Excel, Word.

Materials and Links

Computer Science Details

Programming Language
Python

Material Format and Licensing Information

Creative Commons License
CC BY-NC