Do you want to understand the magic that makes our computers work? CSCI 0300 is your chance to master that magic.

Lectures: Tuesday/Thurday, 1:00-2:20pm (initially); various times – Location: Zoom.
MissiveSyllabusScheduleStaffOffice Hours
InfrastructurePiazzaGrading server
Lecture feedbackLecture code

Announcements

Course Summary

The goal of CSCI 0300/CS 300 is to teach the fundamentals behind the "magic" of computer systems from the hardware level to the global internet. We'll cover the ideas, principles and abstractions that unify computer systems design – from how your laptop runs multiple programs at the same time, to how companies like Instagram, AirBnB, and Google operate large websites, to how easy it is to exploit security vulnerabilities on badly designed systems. This is a great class for students who are interested in learning what systems programming is, how systems work, and why these systems are so critical to modern technology.


CSCI 0300 highlights

Testimonial and Reviews

"...the resources section, the final quiz, the lectures, labs and lecture notes, all have been immensely helpful in my preparation for interviews. Just today in an interview I got asked to explain how virtual memory works and was able to explain it correctly. I was also able to give intuition on why it is necessary. [...] Overall, this interview was one I really wanted to ace and I’m really glad it went well - all thanks to CS131."
— Spring 2020 CSCI 1310 (CS131) student.

See also the Critical Review's CSCI 1310 review from Spring 2020.

Prior offerings. This course was previously offered as CSCI 1310 in Spring 2020.

Enrollment. CSCI 0300/CS 300 is open to anyone who has completed the introductory sequence (i.e., CSCI 0160, 0180, or 0190).

Course Email: cs0300headtas@lists.cs.brown.edu.