Frequently Asked Questions (Undergraduate Programs)

Who is the Director of Undergraduate Studies (DUS) in Computer Science?

Prof. Cal Newport is the Director of Undergraduate Studies. His office is 356 St. Mary’s Hall.

Prof. Philip Buffum is the Associate Director of Undergraduate Studies. His office is 342B St. Mary’s Hall.

The DUS is responsible for the B.S., A.B., and minor programs.

Who is the Director of the Computer Science, Ethics, and Society (CSES) major?

Prof. Cal Newport is the Director of the CSES major. His office is 356 St. Mary’s Hall.

How do I declare a CS major?

If you are in the College, write to the DUS in Computer Science to obtain approval. Please indicate whether you intended to pursue the B.S. or the A.B. degree. The DUS will assign you a departmental advisor. With this information, you can complete the Academic Program Changes form. If you are not in the College, then you need to transfer to the College to major in computer science.

How do I declare the CSES major?

If you are in the College, write to the Director of the CSES major to obtain approval. The Director will assign you a departmental advisor. With this information, you can complete the Academic Program Changes form. If you are not in the College, then you need to transfer to the College to pursue the CSES major.

How do I declare a CS minor?

If you are in the College, NHS, or SFS, you can declare a minor in computer science by talking to your advising dean. If you are in the MSB, you must fill out the MSB’s minor declaration form.

How do I declare the Concentration in Technology, Ethics, and Society (TES)?

The TES Concentration is open to students who are pursuing the B.S. or the A.B. in computer science. If CS is your declared major, then you can complete the Academic Program Changes form to declare the concentration. Departmental approval is not necessary.

Can I take a COSC course using the pass/fail option?

Students can use the pass/fail option for Computer Science I (COSC 1020) and our courses for non-majors, such as Introduction to Computer Science: Python (COSC 1010). All other COSC courses must be taken for a letter grade. Note that courses taken pass/fail count as free electives and can not count toward any program requirements.

What corollary math electives should I take?

The corollary math electives you take depend largely on your interests. It is common for students majoring in computer science to take some combination of courses on calculus, linear algebra, probability, and statistics, but depending on your interests other courses may be relevant. Probability and statistics are important for a wide variety of areas of computer science, such as algorithms, artificial intelligence, data science, machine learning, and security. Topics from linear algebra are important for computer graphics, machine learning, and data science. Topics from calculus, especially multivariate calculus, come up in machine learning and neural networks. We mentioned the importance of probability and statistics for the study of algorithms, but depending on your interests, courses on graph theory or combinatorics might also be relevant. Courses on hardware, algorithms, and artificial intelligence include topics from symbolic logic. As you progress through the curriculum and as your interests in computer science develop, we recommend that you consult with your departmental advisor when selecting math electives.

How do I obtain permission to take CS courses outside the department?

You must obtain permission to count CS courses taken outside of the department toward your CS degree requirements. These courses include external electives, summer courses, Consortium courses, and study-abroad courses. We strongly recommend that you obtain permission before enrolling to ensure the courses will count toward your degree requirements.

To approve courses, the DUS consults with faculty teaching comparable courses and with the Undergraduate Committee. This process may take up to one week or longer depending on how busy we all are. Please make sure you account for this process when you start preparing your proposal for the classes you want to take. The department maintains a list of approved and unapproved courses.

  • If a course you want to take is on that list and we have approved it, then the DUS does not need to consult with the faculty to approve it. However, the DUS must approve the course for individual students to ensure that they have taken the appropriate prerequisite courses and are otherwise prepared to enroll in the course.
  • If a course you want to take is not on that list, then the DUS has to consult with the faculty as described. When you seek approval for a course, it is important to find and provide as much information about the course as you can. To seek approval, please use the External CS Course Approval form. You will also need to notify the DUS by e-mail that you have completed the entries for the form. Because of the work required, please limit requests to three courses per institution.

Note that the College has its own criteria for courses for transfer credit. Once you complete an approved course, you need to complete the Evaluation of Transfer Credit form.

Can CS majors take graduate-level courses to fulfill their degree requirements?

Yes. B.A. and B.S. students can take graduate-level courses with the permission of the instructor. Graduate-level courses count as major electives. After obtaining permission from an instructor, you need to complete the Registrar’s Add/Drop Form and obtain the instructor’s signature. You must then take the completed form to the Registrar’s Office.

Can CS minors take graduate-level courses to fulfill their degree requirements?

No. The faculty decided that the minor requirements do not adequately prepare students for graduate-level coursework. It may be the case that a minor who has completed their requirements has the preparation to take a graduate-level class, in which case they can take it as a free elective with the instructor’s permission.

How can I work as an undergraduate course assistant (Student Academic Assistant)?

Individual instructors recruit and manage the course assistants for their classes. Professor Woods recruits and manages the course assistants for COSC-1020 and COSC-1030. If you would like to work as a course assistant for a course, contact the course’s instructor.

How can I get involved in research?

Please visit the page for Undergraduate Research for relevant information.

How can I find information about jobs and internships?

For jobs and internships, you should join Handshake, which is Georgetown’s recruiting platform. Jodi Schneiderman (js4612@georgetown.edu ; 202.687.3576) in the Cawley Career Center is a good contact. Her portfolio includes computer science. Once you join Handshake, you will receive messages from her about tech-related events. The Cawley Career Center also maintains the page Careers in Technology. The department also hosts career and recruiting events, which we advertise through the undergraduate email list.