This is the website for the Spring 2024 offering of CS 3130.

You’ll probably find the schedule link above most useful.

1 Learning Outcomes

As a result of taking this course, you should learn

2 Readings

We have created several writeups for this course:

(The original version of these was written by Professor Tychonievich.)

We will augment these with various examples, online articles, and other resources.

2.1 Environment for assignments

We will test your assignments on an environment similar to the department’s Linux machines that are accessible via SSH.

Unlike some offerings of CSO1, you are welcome to use an IDE of your choice (that doesn’t write your code for you) as long as your submission will work when we test it from a command line-like environment.

A lot of students have had success using VSCode and its SSH support to access the department machines, as is (for example) described in the Fall 2024 CSO1’s first lab. If using VSCode, you may find it helpful to install the C/C++ and Makefile extensions.

In addition, for accessing the department machines remotely, you may find these writeups helpful:

2.2 Old quizzes/exams

On the study materials link above, you can find some old exams and quizzes.

3 Getting Help

4 Course Staff

Charles Reiss
Office: Rice 205.
Email: creiss@virginia.edu
Telephone: 434-924-8274
Office Hours: (see office hours page)
TAs
Agi Luong, AJ Nye, Alexander, Alex Ning, Andrew Ma, Anmol Sandhu, Austin Tran, Ava Lipshultz, Bertram Zhai, Brian Xiao, Chance Rose, Charles Fish, Dylan Crotty, Haizhou Yu, Han Yan, Hieu, Hugo Abbot, Jiaji Ma, Kaitlyn Wee, Kevin Zhao, Khyati Kiyawat, Lars Christensen, Paul Karhnak, Pranav Ramkumar, RJ Hudson, Saarthak Gupta, Sara Inoue, Sidhardh Burre, Tavis Palmer, Thomas Arnold, Tong Zhou, Yingming Ma