Course Level
CS1
Knowledge Unit
Fundamental Data Structures
Collection Item Type
Lab
Synopsis

In this lab (Lab 13) students work individually or collaboratively on sets in Python. This lab introduces the concept of sets through analysis of two movies using data from the Internet Movie Database (IMDB). Students create a dictionary with values from these movies and process the info to determine such things as intersections between movies on actors and co-actors. This lab was inspired by the work of Bill Punch and Richard Enbody, Michigan State University.

The authors of this material were awarded a 2015 NCWIT Engagement Excellence Award for this assignment. Learn more on NCWIT's awards page.

Recommendations

Add sections within the lab where students are required to discuss among themselves and vote on the key benefits of performing these tasks as a way to encourage Student Interactions. Incorporate well structured collaborative learning techniques such as Pair Programming, so students can work side by side and switch roles as "driver" and "navigator".

This is lab 13 of a introduction to computing course in Python. See sequencing in the syllabus and course schedule. Additional guidelines for student success on this assignment and throughout the course can be found in the syllabus.

Engagement Highlights

This lab is engaging for students as it uses current actors and movies and thus employs Relevant and Meaningful Content. The instructor also provides an introductory video to frame the lab. Low stakes checkpoints (testing suites) are given throughout the assignment as a way for students to test code. This is an illustration of Student Centered Assessment.

Computer Science Details

Computer Science Topic(s)
algorithm
dictionary
sets
Programming Language
Python

Material Format and Licensing Information

Material Format
PDF
Technology Platform Required
Desktop
Creative Commons License
CC BY

Author's Institutional Information

Institution Type
Master's Colleges and Universities I
Community Type
City Small

Comments

Submitted by alvaro.monge on November 8, 2016

Permalink

I just adopted this assignment. I've modified it as follows. (1) the main script prompts the user to execute one of the two functions, prompting for additional input as required by each function, (2) the function to compare movies can take an arbitrary number of movie names rather than just two movies, (3) the function to find co-actors does not output, instead a list is returned and the output is done elsewhere.