The purpose of this intro to CS assignment was to give students practice with modularity and method design in a fun application: designing virtual 3D city environments. Students were provided with various overloaded methods for drawing primitive 3D shapes (e.g. cylinders, ellipsoids, rectangular prisms) in different colors and proportions. Students had put these shapes together in methods that drew different city objects (e.g. tree, fire hydrant, stop light, sedan)
In the process of making these methods, students got practice reading method documentation of the primitive shapes, as well as writing their own method documentation for the method parameters specifying positions and orientations of each city object.
Once the individual city objects were completed, students went one level of abstraction higher and created a method to make a city block consisting of all of the objects together. Finally, they then made a method to call the city block in a loop to create an entire city consisting of multiple city blocks.
Once the students satisfied the primary objective of making a basic city, they were required to make a creative submission to submit to the class "art contest,” which is the primary motivation to share this assignment; I’ve run this assignment 4 semesters now, and ever time students went miles beyond what I would have expected. Therefore, I think I accidentally stumbled into a well of student creativity, and I want to share this with other instructors to help students get excited about CS at the intro level.
Sat 23 MarDisplayed time zone: Pacific Time (US & Canada) change
13:45 - 15:00 | Nifty AssignmentsNifty Assignments at Oregon Ballroom 203 Chair(s): Nick Parlante Stanford University, Julie Zelenski Stanford University, Dave Reed Creighton University, Michael Guerzhoy University of Toronto | ||
13:45 12mTalk | Simulating Election VotesGlobalHybridCC Nifty Assignments Aleksandr Popov National Research University Higher School of Economics | ||
13:57 12mTalk | Exploring the Scurry of Squirrels in Central ParkHybridCC Nifty Assignments Rachel Frisbie Department of Computational Mathematics, Science, and Engineering; Michigan State University, Devin Silvia Department of Computational Mathematics, Science, and Engineering; Michigan State University, Marcos Caballero Michigan State University, Rachel Roca Department of Computational Mathematics, Science, and Engineering; Michigan State University, Amanda Bowerman Computational Mathematics, Science, and Engineering, Krithi Sachithanand Computational Mathematics, Science, and Engineering | ||
14:10 12mTalk | Infinity WarHybridCC Nifty Assignments | ||
14:22 12mTalk | Modular Virtual 3D Cities AssignmentHybridCC Nifty Assignments Christopher Tralie Ursinus College | ||
14:35 12mTalk | Alphabear Partial SolverHybridCC Nifty Assignments Ryan Dougherty United States Military Academy | ||
14:47 12mTalk | The Fingerprint Assignment: An Interdisciplinary Assessment for CS I EducationHybridCC Nifty Assignments Christian Servin El Paso Community College, Ivan Alonso El Paso Community College, Emiliano Garcia El Paso Community College |