Courses

Courses are offered in a wide range of areas.  The Computer Science Department offers a full program that is covered in detail in the Stanford University Bulletin. Course prerequisites are usually stated quite briefly so please contact the instructor with questions.  If the instructor is unavailable, you can also ask other students who have taken the course or the Course Advisor (advisor@cs.stanford.edu) about what to expect. Use your judgment when deciding whether or not you are adequately prepared to take a course. No one will ask you to prove that you have taken the prerequisites.

There are also many courses relevant to computer science taught in other departments (e.g., mathematics, psychology, linguistics, philosophy, statistics, and many School of Engineering departments.)

Stanford is also an excellent place to take classes in the sciences, business, medicine, dance, athletics, art, music and even film.

Foundation Courses

The foundation courses provide coverage of basic fundamental concepts used throughout Computer Science. The foundation courses cover logic, automata and complexity (CS 103), probability theory (CS 109, Stat 116, CME 106, or MS&E 220), algorithmic analysis (CS161), computer organization and systems, (CS107), and principles of computer systems (CS110).

If you were a computer science major as an undergraduate, chances are you’ll be able to waive some or all of the foundation courses.  The specific courses that you can waive will depend on the school at which you took your corresponding course work and whether the contents of the courses match sufficiently. The person who will decide which courses you can waive will be your faculty advisor once you are on campus, generally during your first quarter in the Masters program.