Computer Science and Engineering

CSE 20 testout exam

What is the CSE 20 Testout exam?

The CSE 20 testout exam offers a way for students with a working knowledge of Python to skip CSE 20 and proceed directly to CSE 30 or other CSE courses.

CSE 20 is the introductory class to Python in the Computer Science and Engineering Department at UC Santa Cruz. CSE 20 is a required class for all new CSE students (joining UCSC in Fall 2019 or later), except for those who have a waiver. The waiver can be obtained in two ways:

  1. Having passed a course that articulates to the equivalent of CSE 20, or
  2. Passing the CSE 20 testout exam.

Who should take the CSE 20 testout?

We strongly encourage every incoming student to take the CSE 20 testout exam.

The CSE 20 testout exam offers every student valuable feedback on their knowledge of Python. We advise every student to take the exam. Students whose knowledge of Python is weak may have a better learning experience at UCSC by taking CSE 20 first, then by enrolling in classes for which they are not fully prepared.

When can I take the CSE 20 Exam?

The 2024 CSE 20 testout exam will be available in July and September.

Registration is required for the exam. Students can register for and take both July and September exams. If a student registers and later decides not to take an exam, it is not necessary to “unregister” or otherwise notify us.

CSE professor and students


Petitions are only considered for current students.  Incoming transfer students will have courses reviewed over summer. 

Computer Science Course Substitution Petition (PDF)

Computer Science Waiver or Exception to Policy Petition (PDF)

Instructions for Computer Science Course Petitions:

1. Gather as much course information as possible about the course you are hoping to substitute for the requirement.

  • The petition will ask for course website and instructor contact info.
  • A course syllabus or other detailed list of topics covered in the course plus the title of any textbook (if applicable) is also needed.
  • Catalog descriptions are generally not enough information.
  • The more information you are able to provide, the better your chances for a successful petition are!

2. Fill out a Computer Science Course Substitution Petition. Copies of this petition can be found outside of the undergraduate advising office or can be printed from this page.

3. Print a copy of your Courses Student Advising Summary. Students are responsible for providing their advising summary. Please review these instructions for accessing and downloading your student advising summary.

4. Scan and send the petition and your Courses Student Advising Summary to the Baskin Engineering Undergraduate Program Director.

  • Petitions should be emailed to
  • Be sure that your email includes your Name and your Student ID number in the subject of the email.

5. You will receive an email when a decision on the petition has been reached. The department makes their best effort to turn petitions around as quickly as possible. However, some decisions can take 2-4 weeks, depending on the request. (Due to faculty availability, there may be delays on results for petitions submitted during Summer.)

Last modified: May 24, 2024