COT 3100: Optional Programming Assignments