Applying for Admission to CS 190

Enrollment in CS 190 will be limited to 18 students and requires permission of the instructor. If you wish to take the class, you must submit an application by email to John Ousterhout (ouster@cs) by Friday, December 8, 2023, at 11:59 P.M. Admissions decisions will be announced by Friday, December 15. In recent years the class has been significantly oversubscribed, so I can't promise admission. Applications received after the deadline will be considered only if there are unfilled places in the class (extremely unlikely).

Your application should consist of a single email message containing a copy of your transcript and answers to the following questions:

  1. What program are you in and when do you expect to graduate? If you are a coterm student, list both your expected BS and MS graduation dates.
  2. Outside of course work, what significant programming experiences have you had, if any? Describe up to three such experiences with a single sentence each, including the nature of the system, your role, and the language(s) you used.
  3. What experience do you have programming in C++? We will be using C++ for the class projects, so some prior experience is important.
  4. In your opinion, what are the most important things that distinguish well-designed code from poorly-designed code? Note: focus on qualities of the code, not the features that it implements (e.g. "usability" is a good property for applications, but it doesn't say much about the code).
  5. What do you you enjoy most about programming? What do you enjoy least?
  6. Is there someone else applying for the class that you would like to work with as partner (all projects will be done in teams of 2)? If so, please identify that person; where practical, I'll try to admit both members of a team. Naming a partner will neither help nor hurt your chances of admission.
  7. If you have not taken CS 111 plus CS 112 (or CS 140E or CS 212) at Stanford but have taken an equivalent class elsewhere, provide a brief description of that class (did it have a significant implementation project?) and include your grade for the class.
  8. If you have applied to CS 190 in a previous year and were not admitted, please mention that.
  9. Will you be back from holiday vacation in time to attend the first day of class (January 8)?
  10. Will you be able to attend the final exam slot in person (3:30-6:30 PM on Wednesday, March 20, 2024)? We will use this slot for the final code review.
  11. Will you need to miss classes during the quarter? If so explain why (visit days for PhD applicants, athletic events, etc.) and when the absences are likely to occur.
  12. Don't forget to include your Stanford transcript!

Keep your answers short and to the point; focus on what is most important. All of your answers should fit in no more than about 400 words.

CS 111 and CS 112 are essential prerequisites for this class (they ensure that you have done some fairly heavy-duty programming). I am unlikely to admit people who have not fulfilled this prerequisite (either CS 140E or CS 212 is acceptable as an alternative). In addition, students who will leave Stanford by June 2024 will receive priority for admission.