Plan Your Courses
Multiple Languages and Tracks Available
The Program In Computing (PIC) offers a variety of courses that use programming languages such as Python, C++, JavaScript, and Java. From the 1980s until 2026, students needed to take PIC 10A, an introduction to programming in C++, before any of the other PIC courses. However, from 2027 onwards, there is a Python-centric track available to PIC students that begins with PIC 1.
| Python-centric | Classic | |||||
|---|---|---|---|---|---|---|
| Python | Misc. | C++ | Python | Misc. | Java | |
| no prerequisites | 1 | 10A | ||||
| after 1 and/or 10A | 16A | 16A | ||||
| after 10A and/or 16A | 40A | 40A | ||||
| after 16A | 16B | V!!! | 16B | V!!! | ||
| after 10A | 10B | 20A | ||||
| after 10B | 10C | |||||
Python-centric Track
A student who wishes to focus their attention on Python can take "PIC 1: Spreadsheets, Programming, and Their Application to Data Science" followed by "PIC 16A: Python with Applications I". Moreover, students who take PIC 1 in Winter 2027 and PIC 16A in Spring 2027 can expect to see an exciting new course (clandestinely titled PIC V!!!) offered in Fall 2027 that will have PIC 16A as its only prerequisite. They can also consider "PIC 40A: Introduction to Programming for Internet" and "PIC 16B: Python with Applications II".
Classic Track
C++ is still used extensively today and it remains one of the world's most popular programming languages. The classic track that starts with PIC 10A is still available. Furthermore, if a student starts off with the Python-centric track and then wishes to learn some C++, there are no restrictions. One can take PIC 10A after taking PIC 1 and PIC 16A and some students may wish to take PIC 1 so that they are better prepared for PIC 10A.
Examples
- Python-centric path to PIC 16B — PIC 1, PIC 16A, PIC 16B
- Python-centric path to PIC V!!! — PIC 1, PIC 16A, PIC V!!!
- Classic track to PIC 16B — PIC 10A, PIC 16A, PIC 16B
- Classic track to PIC V!!! — PIC 10A, PIC 16A, PIC V!!!
- The connoisseur's track — PIC 1, PIC 10A, PIC 16A, PIC 40A, PIC 20A, PIC 10B, PIC 16B, PIC 10C, PIC V!!!
Prerequisites
To help resolve any confusion about what order you are allowed to take PIC courses, here is the full list of prerequisites.
| Course | Prerequisites |
|---|---|
| PIC 1 | None |
| PIC 10A | None |
| PIC 10B | PIC 10A |
| PIC 10C | PIC 10B |
| PIC 16A | PIC 1 or PIC 10A |
| PIC 16B | PIC 16A |
| PIC 20A | PIC 10A |
| PIC 40A | PIC 10A or PIC 16A |
| PIC V!!! | PIC 16A |
Course Planner
| Position | Course | Comment |
|---|---|---|