Blogs (4) >>

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 Mar

Displayed 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
12m
Talk
Simulating Election VotesGlobalHybridCC
Nifty Assignments
Aleksandr Popov National Research University Higher School of Economics
13:57
12m
Talk
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
12m
Talk
Infinity WarHybridCC
Nifty Assignments
Yashas Ravi Rutgers University (self), Ana Paula Centeno Rutgers University
14:22
12m
Talk
Modular Virtual 3D Cities AssignmentHybridCC
Nifty Assignments
Christopher Tralie Ursinus College
14:35
12m
Talk
Alphabear Partial SolverHybridCC
Nifty Assignments
Ryan Dougherty United States Military Academy
14:47
12m
Talk
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