Computer Science: where to start


We’ve redesigned our core first year Computer Science courses from the ground up, making them relevant and practical for students from all fields of study. We have created a sequence of three courses: CMPT 140, 141, and 145.  It’s a single stream of courses with 2 entry points, depending on your background. The two entry points are described below:

Introduction to Creative Computing (CMPT 140)

The Creative Computing (CMPT 140) course is designed to be a challenging and fun introduction to computing for students who have little or no background in computer science or programming. The course emphasizes building computer programs in a graphical and interactive environment using the Python programming language, which is a useful tool for everyone.

CMPT 140 starts with no assumptions about your background in computer science.  If you never had the opportunity to study programming before, this is an excellent place to start. You won’t be the only one in the class who has never done any programming!  In fact, students who have done programming before have their own starting point (CMPT 141).  

Students who finish CMPT 140 can be confident moving on to CMPT 141.  In our experience, students who learn computer science without any background in programming do as well as, or better than, students who have some background. So, if you have taken CMPT 140, you will be perfectly prepared to take CMPT 141.

Introduction to Computer Science (CMPT 141)

An introduction to computer science and problem solving using procedural programming. This course introduces the basic computer science and computer programming principles. These concepts are applied to problem solving applications such as data analysis and visualization, simulation, text processing, and image processing. The programming skills acquired in this course are applicable in all fields of study, the work-place, and personal projects. 

CMPT 141 is the starting point for two kinds of students:
  • Students with CS30, or roughly equivalent experience, can start with CMPT 141. Some students may already have programming experience, so we recommend that they start with CMPT 141, instead of CMPT 140. 
  • Students who are pretty good in math should feel confident starting at CMPT 141, even if they’ve not done any computer science before.  By "pretty good at math" we mean that you’re taking MATH 110, or equivalent, or you already have credit for it. 
    • Important Note: CMPT 141 won’t need any particular math knowledge; we’re far more interested in the by-products of math class: good analytical skills, logical and deductive reasoning skills, attention to detail, which are all identified as useful in learning computer science.  Of course, you’ll need a little math (everyone always needs a little math!), but nothing to be intimidated by.