Course Timetable
APSC_V 160 - 2025S
Analysis and simulation, laboratory data acquisition and processing, measurement interfaces, engineering tools, computer systems organization, programming languages. Credit will only be given for one of: APSC 160, CPSC 301, or EOSC 211. This course is not eligible for Credit/D/Fail grading. [3-2-0]
Section | Term | Days | Time | Instructor(s) | Webpage | Details |
---|---|---|---|---|---|---|
921 | Term 1 | Mon Tue Wed | 9:00 AM - 11:00 AM | farshida |
CPSC_V 100 - 2025S
Meaning and impact of computational thinking. Solving problems using computational thinking, testing, debugging. How computers work. No prior computing experience required. Not for students with existing credit for or exemption from CPSC 107, CPSC 110 or APSC 160. [3-1-0]
Section | Term | Days | Time | Instructor(s) | Webpage | Details |
---|---|---|---|---|---|---|
921 | Term 2 |
CPSC_V 103 - 2025S
Computation as a tool for systematic problem solving in non-computer-science disciplines. Introductory programming skills. Not for credit for students who have credit for, or exemption from, or are concurrently taking CPSC 110 or APSC 160. No programming experience expected. [3-0-1]
Section | Term | Days | Time | Instructor(s) | Webpage | Details |
---|---|---|---|---|---|---|
911 | Term 1 | Tue Thu | 11:00 AM - 2:30 PM |
CPSC_V 107 - 2025S
Fundamental computation and program structures. Continuing systematic program design from CPSC 103. [3-2-0] Prerequisite: CPSC 103.
Section | Term | Days | Time | Instructor(s) | Webpage | Details |
---|---|---|---|---|---|---|
V01 | Term 1 & 2 | Mon Wed | 1:30 PM - 3:30 PM | Vsevolod (Seva) Lynov |
CPSC_V 110 - 2025S
Fundamental program and computation structures. Introductory programming skills. Computation as a tool for information processing, simulation and modelling, and interacting with the world. [3-3-0]
Section | Term | Days | Time | Instructor(s) | Webpage | Details |
---|---|---|---|---|---|---|
911 | Term 1 |
CPSC_V 121 - 2025S
Physical and mathematical structures of computation. Boolean algebra and combinations logic circuits; proof techniques; functions and sequential circuits; sets and relations; finite state machines; sequential instruction execution. [3-2-1] Prerequisite: Principles of Mathematics 12 or Pre-calculus 12. Corequisite: One of CPSC 107, CPSC 110.
Section | Term | Days | Time | Instructor(s) | Webpage | Details |
---|---|---|---|---|---|---|
V01 | Term 1 & 2 | Mon Wed | 10:00 AM - 12:00 PM | Jordon Johnson | ||
921 | Term 2 | Mon Wed Fri | 9:30 AM - 12:00 PM |
CPSC_V 210 - 2025S
Design, development, and analysis of robust software components. Topics such as software design, computational models, data structures, debugging, and testing. [3-2-0] Prerequisite: One of CPSC 107, CPSC 110.
Section | Term | Days | Time | Instructor(s) | Webpage | Details |
---|---|---|---|---|---|---|
921 | Term 2 | Tue Thu | 9:30 AM - 1:00 PM | Mehrdad Oveisi |
CPSC_V 213 - 2025S
Software architecture, operating systems, and I/O architectures. Relationships between application software, operating systems, and computing hardware; critical sections, deadlock avoidance, and performance; principles and operation of disks and networks. [3-3-0] Prerequisite: All of CPSC 121, CPSC 210.
Section | Term | Days | Time | Instructor(s) | Webpage | Details |
---|---|---|---|---|---|---|
921 | Term 2 | Tue Thu | 9:00 AM - 12:30 PM | Jordon Johnson |
CPSC_V 221 - 2025S
Design and analysis of basic algorithms and data structures; algorithm analysis methods, searching and sorting algorithms, basic data structures, graphs and concurrency. [3-2-0] Prerequisite: One of CPSC 210, CPEN 221 and either (a) one of CPSC 121, MATH 220 or (b) a score of 68% or higher in MATH 226.
Section | Term | Days | Time | Instructor(s) | Webpage | Details |
---|---|---|---|---|---|---|
911 | Term 1 | Mon Wed Fri | 1:30 PM - 4:00 PM | Geoffrey Tien |
CPSC_V 304 - 2025S
Overview of database systems, ER models, logical database design and normalization, formal relational query languages, SQL and other commercial languages, data warehouses, special topics. [3-0-1] Prerequisite: CPSC_V 221 or DSCI_V 221.
Section | Term | Days | Time | Instructor(s) | Webpage | Details |
---|---|---|---|---|---|---|
921 | Term 2 | Mon Wed Fri | 1:30 PM - 4:00 PM | Gittu George |
CPSC_V 310 - 2025S
Specification, design, validation, evolution and construction of modern software systems, within the context of socially and professionally relevant domains such as ethics, intellectual property, and information security. [3-2-0] Prerequisite: All of CPSC 213, CPSC 221.
Section | Term | Days | Time | Instructor(s) | Webpage | Details |
---|---|---|---|---|---|---|
921 | Term 1 & 2 | Tue Thu | 9:30 AM - 11:00 AM | Nicholas Bradley | Course Page |
CPSC_V 317 - 2025S
Computer networking, basic communication protocols, network infrastructure and routing. Common application-level protocols and principles associated with developing distributed applications. [3-0-1] Prerequisite: CPSC_V 213 and either CPSC_V 221 or DSCI_V 221.
Section | Term | Days | Time | Instructor(s) | Webpage | Details |
---|---|---|---|---|---|---|
911 | Term 1 | Tue Thu | 11:00 AM - 2:30 PM |
CPSC_V 320 - 2025S
Systematic study of basic concepts and techniques in the design and analysis of algorithms, illustrated from various problem areas. Topics include: models of computation; choice of data structures; graph-theoretic, algebraic, and text processing algorithms. [3-0-1] Prerequisite: All of (a) CPSC_V 221 or DSCI_V 221, (b) at least 3 credits from COMM_V 291, BIOL_V 300, MATH or STAT at 200 level or above.
Section | Term | Days | Time | Instructor(s) | Webpage | Details |
---|---|---|---|---|---|---|
921 | Term 2 | Mon Wed Fri | 9:30 AM - 12:00 PM |
CPSC_V 330 - 2025S
Application of machine learning tools, with an emphasis on solving practical problems. Data cleaning, feature extraction, supervised and unsupervised machine learning, reproducible workflows, and communicating results. [3-0-1] Prerequisite: Either (a) one of CPSC_V 203, CPSC_V 210, CPEN_V 221, DSCI_V 221 or (b) MATH_V 210 and one of CPSC_V 107, CPSC_V 110.
Section | Term | Days | Time | Instructor(s) | Webpage | Details |
---|---|---|---|---|---|---|
911 | Term 1 | Mon Wed Fri | 10:00 AM - 1:00 PM | Firas Moosvi |
CPSC_V 416 - 2025S
Concepts and design of distributed systems. Communication architecture and models for interprocess communication. Process migration, naming, distributed file systems, fault tolerance, and concurrency control. [3-0-0] Prerequisite: One of CPSC 313, CPEN 331 and one of CPSC 317, ELEC 331.
Section | Term | Days | Time | Instructor(s) | Webpage | Details |
---|---|---|---|---|---|---|
921 | Term 2 | Tue Thu | 2:00 PM - 5:30 PM | Mike Feeley | Course Page |
CPSC_V 430 - 2025S
Impact of computer technology on society; historical perspectives; social and economic consequences of large-scale information processing systems and automatic control; legal and ethical problems in computer applications. Computers and the individual: machine versus human capabilities, fact and fancy; problematic interface between man and machine. [3-0-0] Prerequisite: 3 credits of Computer Science and at least third-year standing.
Section | Term | Days | Time | Instructor(s) | Webpage | Details |
---|---|---|---|---|---|---|
911 | Term 1 |
CPSC_V 455 - 2025S
Hands-on project, mentored by industry experts, integrating skills relevant to early career in the computing industry: technical skills, communication, teamwork, networking and portfolio building. [2.5-2-0] Prerequisite: One of CPSC 310, CPEN 321.
Section | Term | Days | Time | Instructor(s) | Webpage | Details |
---|---|---|---|---|---|---|
901 | Term 1 & 2 | Sat | 10:00 AM - 3:30 PM | Chris Kerslake |