Sci355 Detailed Lecture Notes