COMP 206 lecture notes