Course Project: assignment 2