Computation, programs and programming play a vital role in the work of scientists, engineers, artists and other professionals: they allow us to organize, store, analyze and visualize information; create animations, music, and online communities; control devices in our environment; develop computational models and simulations; and much much more.
The major goal of this course is to introduce students to a systematic method for solving hard design problems. Going forward in your career you will of course learn additional techniques, but the design method covered in 110 will serve you well whenever you face a difficult design problem—whether it is program design or a problem from another field entirely. Previous students have said:
Studying computer science inspired me to think about problems differently and take a more systematic approach to them.
Program design is applicable not only to computer science, but numerous areas of life. It is essential in the development of problem solving skills.
The course is designed to be interesting, accessible and useful for all UBC students—CS majors and non-majors alike. No prior programming experience is assumed, and very little math and science background is required. The course will also prepare you to learn more Computer Science skills and concepts in the future, either through formal courses or on your own.
UBC CPSC 110 builds upon the edX Systematic Program Design courses, and provides additional material for UBC students. But note that 110 uses its own separate copy of the edX course - read below for how to enrol in that copy.
You can access the course materials needed through https://edge.edx.org/courses/course-v1:UBC+CPSC110-101+2016W2/
Please note that you will need to submit your application before noon on Thursday, May 11th. The exam will be the evening of May 15th, and more details will be provided to those who register.
For information on how to apply, see https://www.cs.ubc.ca/students/undergrad/courses-deadlines/cpsc-110-challenge-exam
If you are NOT a UBC student but are interested in learning the course material
You can find much of the content through edX.
Note that although students on the wait list are not allowed to attend labs, you can complete them and see a TA during DLC hours for feedback — this will not give you the lab marks, but you will be excused from these labs once you are moved into the class.
I'm registered in a lecture section, but all the lab sections that fit my course schedule are full. What should I do?
I'm registered in a lecture section and a lab section, but I want to switch into a different lab section that is full. Can you get me into the lab section?