CPSC 304: A Survey of Computer Science for Non-Majors

This course provides students with an accessible, informative and (at times) entertaining exploration of many different computing topics. It emphasizes familiarity with a broad array of subjects within computer science rather than depth, helps debunk common misconceptions, and motivates and provides background for further formal or independent study in the area. Topics that could be covered in the course include computing hardware, data representation, data compression, artificial intelligence techniques, data structures, computer networks, security and privacy, and image processing, among others. This course does not include significant programming or advanced mathematics.

CPSC 304 (formerly 399.04) is only intended for students outside of computer science and other programming intensive disciplines. It is not open for registration to majors in Computer Science, Bioinformatics, Electrical Engineering, Software Engineering, Computer Engineering, Natural Sciences with a primary concentration in Computer Science or any student with at least 3 units of courses numbered 300 or above and labelled Computer Science, Software Engineering or Software Engineering for Engineers.

Frequently Asked Questions

Q: Is this a 'Learn to Use Microsoft Office' course?
A: No! This course is a broad introduction to concepts and subjects within computer science. It is not a course about a particular software package.

Q: What do you mean when you say 'This course does not include significant programming or advanced mathematics'?
A: Computer programming and advanced mathematics are both important for computer science. In this course I might show you a computer program that does something interesting and highlight the key steps in it, but I'd never expect you to memorize the program or recreate it. I might expect you to recall what the key steps were. Similarly, I might show you a calculation that involves advanced mathematics, tell you what it does and why that's important. While I might expect you to recall why it's important I'd never expect you to be able to reproduce the calculation or apply it to a different set of values.

Q: Do I have to do any math at all in this course?
A: You will be expect to do some arithmetic including addition, subtraction, multiplication, division and remainder operations as we will need such arithmetic when we examine binary numbers and some cryptography topics. A small number of exam questions could include arithmetic.

Q: The course is full but I want to take it. Can you help me?
A: I think so. Send me some email and I'll try to get more seats added to the course.

Important Dates

This course will be offered in person for Spring 2023 with the lectures streamed and recorded using Zoom. The Zoom meeting information can be found in D2L once your register for the course. Students will need to be present on campus for two in-person midterm exams and the in-person final exam.

The date information below is tentative (but believed to be correct). Official information will be provided on the course information sheet.

  • Wednesday May 3, 2023: Classes begin
  • Monday May 22, 2023: No class due to the Victoria Day Holiday
  • Wednesday May 24, 2023: Midterm Exam 1 during class timefrom 1:00pm to 1:40pm
    • Exam room: ENA 201
    • After the exam is complete there will be a 20 minute break and then class will continue from 2:00pm to 3:45pm.
  • Wednesday June 7, 2023: Midterm Exam 2 during class time from 1:00pm to 1:40pm
    • Exam room: ENA 201
    • After the exam is complete there will be a 20 minute break and then class will continue from 2:00pm to 3:45pm.
  • Wednesday June 14, 2023: Final class
  • Final Exam: Date and time to be determined
    • The exam will be sometime on June 19, June 20, or June 21, 2023, scheduled by the registrar.

Assessments

All exams are closed-book with no aids permitted.

  • Midterm Exam 1
    • During class time (1:00pm to 1:40pm) on Wednesday May 24, 2023
    • Location: ENA 201
    • Multiple Choice
    • Weight: 25%
    • In-person
  • Midterm Exam 2
    • During class time (1:00pm to 1:40pm) on Wednesday June 7, 2023
    • Location: ENA 201
    • Multiple Choice
    • Weight: 25%
    • In-person
  • Final Exam
    • Date and time to be determined
    • Multiple Choice
    • Weight: 50%
    • In-person

Support Materials
  • Textbook: None
  • Most of the PowerPoint slides will be posted in D2L.