Frequently Asked Questions

I'm thinking about declaring the Computer Science major. When and how can I do that?

To declare the major, students need to meet at least one of the following two requirements:

  • Have completed at least two CMPU major-required courses (e.g., 101, 102, 145) for a letter grade, and earned an average of C (2.0) or higher in those courses.
  • Have completed CMPU-101 with a grade of C (2.0) or higher, be currently enrolled in a second CMPU course (i.e., CMPU-102 or CMPU-145), and have received a midterm exam grade of B− or above.

If you meet the requirements and are interested in declaring the major, please fill out and submit this form so you can be assigned an advisor.

I'm thinking about declaring the Computer Science correlate. When and how can I do that?

To declare the correlate, students need meet at least one of requirements listed above for declaring the major, and have previously declared a major other than Computer Science.

If you are interested in declaring the correlate, please contact a non-visiting faculty member in the department.

What are the requirements for a CS correlate?

Computer Science 101, 102 and 145; 240 or 241, plus at least one additional 200-level Computer Science course and one graded 300-level Computer Science course. Students are advised to consult with the department to determine the courses most appropriate to their interests. No course numbered 200 or higher may be elected NRO and counted toward the requirements for the correlate. An average grade of C (2.0) or higher across correlate courses is required.

What prerequisites are needed for CMPU-101?

There are no prerequisites for CMPU-101. The course starts with the basics and builds incrementally from there.

What if I've never done any programming before and I'm not very mathematically inclined? Is it possible for me to learn how to program?

Certainly! CMPU-101 has weekly lab sessions in which students gain hands-on experience programming. The professor and multiple student coaches are always on hand to assist with any questions that may come up during the lab. This kind of one-on-one guidance has proven to be very helpful.

How do we access software needed to do assignments?

Every Computer Science student gets their own CS Department computer account that has access to all of the software used in any CS course.

I know Java, can I place out of CMPU-102?

CMPU-102 consists of two parts – the first is an introduction to object-oriented programming and Java; the second covers data structures. Students who are proficient in both Java and data structures are allowed to place out of the course by completing the largest programming assignment, and taking the final exam. To arrange this, please contact a CMPU-102 instructor at the start of the semester.

I have a conflict with the lab. Can I come late/leave early?

Unfortunately, if you have a conflict with the lab, the registrar considers it a conflict with the course and will not let you register. Our labs have been carefully scheduled to accommodate the course's content, including midterm tests and hands-on activities that can take the whole time period. If you want to take a CMPU course, you must be able to attend the full time of all lectures and all labs.

Many of our courses use the extended lab time to give exams and it is imperative that you have the whole time period to finish.

I have a conflict with one lab, but I can make the other. Can I switch labs sections?

Our lab sessions are closely linked with the lectures, and you are expected to attend that lab that corresponds to your lecture's section. We understand that scheduling conflicts and other commitments can result in difficult choices, but switching to another lab section is not permitted. This policy is in place to ensure the smooth functioning of our lab sessions and to maintain fairness for all students. Lab sections are carefully organized to align with the course content, and any changes disrupt this structure.]]

to come…