Frequently Asked Questions

Which courses are in which category, as far as major requirements are concerned?

Please visit this page for an up-to-date inventory.

When should I take my theory courses?

We strongly recommend that you take your first theory course no later than the first quarter of your third year. The major requires three theory courses. It is technically possible to take the theory courses as late as the fourth year, but this leads to rushed and potentially hectic scenarios and we recommend against it. We have had several students trying to manage various complicated last-minute maneuvers to fulfill the theory requirement; take our word for it, it’s not a situation you want to be in.

What related courses can I take for the BS?

To request related courses for the BS, please fill out this form:

Related courses for the BS need to follow a few rules:
They must be all from the same field (or very related like math and stats) and a field to which you can apply computer science.

They cannot be CMSC courses (if they are cross-listed, you must consult the major advisor), satisfied through AP credit performance courses (music, art, drama), foreign language courses, or going towards a minor degree.

If your interests lie farther afield, i.e., if you would like us to consider a course outside the realm of obviously-related content, be prepared to make a case, and make sure you get any such courses approved in advance before you make plans about them.

For the following fields, you may choose from the following pre-approved courses in that area:
– Econ: 198, 199, 200, 201, 20010, 202, 20210
– Math/Stat: any course not cross-listed in CS
– Physics: any course a) not cross-listed in CS, b) not phys 220
– Chemistry: any course at or above 111. You may not use 111-112 if you are using them to satisfy your physical sciences requirement.
– Linguistics: 20001, 20101, 20201, 20202, 20301, 21000, 21600, 26040

I took one of the retired introductory sequences (1x1-1x2-154)? How do I find my degree requirements?

Students who completed one of the retired sequences should see the CS entry in the archived 2021-22 catalog. Here is a link.

I received AP Credit for Physics 121 and 122, not 131 and 132. May this be used to satisfy the physical sciences requirement?

Yes. If you have credit for PHYS 12100 and PHYS 12200, you may use it. If you have credit for PHYS 12100 only, you may follow up with any of PHYS 12200, 13200, or 14200 (assuming you have fulfilled whatever other prerequisites may be required to take any of those, or gotten consent). If you have AP credit for PHYS 12200 only and you would like to backtrack to complete a two-course PHYS sequence, we recommend PHYS 13100 or PHYS 14100, because PHYS 12100 has chemistry prerequisites that, if you fulfill, you will incidentally fulfill your physical sciences requirement along the way.

I'm a second or third year, and I'm having trouble getting into the classes I want. Should I sit on the sidelines and wait?

Probably not. We have high demand for our courses and you should expect that you might not always get your top choices. Keep moving forward and take the courses you can get into. Along the way, you might be pleasantly surprised and broaden your interests unexpectedly. And it’s important to keep making progress towards your degree.

Can I take a year abroad and count courses towards my degree?

Sometimes, yes; make sure you get any such transfer credits approved beforehand. Furthermore, please be aware of these relevant rules:
– No more than two transfer credits can be applied to the CS major.
– No more than one theory course and one systems course can be applied to the CS major.
– No course during study abroad may be used as part of the introductory sequence for the CS major or CS minor.

Can I take courses at other colleges or universities?

Once you begin your career at the University of Chicago, you can take courses from other universities only with extenuating circumstances. Study abroad has slightly different rules (see above). Make sure to get any such courses approved in advance, and be aware of these relevant rules:
– No more than two transfer credits can be applied to the CS major.
– No more than one theory course and one systems course can be applied to the CS major.
– No course from another university may be used as part of the introductory sequence for the CS major or CS minor. (Please note that this rule differs in the case of transfer students.)

Students must earn a grade of B or better for the courses to count towards her/his degree.

Can I count a course both towards a specialization and a major sequence requirement?

You may not. A specialization course may not also be counted towards either the PL and Systems sequence or the Theory sequence.

If I’m completing a specialization, do I have to take extra CS courses?

No. Students must take three courses from an approved list in lieu of three major electives. This means, of the five electives required for your BX degree, three of them will be going towards your specialization.

Where is the online petition to receive transfer credit?

I’m interested in graduate school. What courses should I take?

Try to cultivate and develop a deep interest in a particular topic, to give your graduate school search and application a shape and direction. Also, consider getting involved in research while you’re here. Graduate school is all about research, so you should do some before you make long term plans about it.

I would like to take graduate courses. What courses can I take for credit?

You are encouraged to take graduate courses if you are interested in the content, feel you can keep up with the material, and/or are pursuing the Honors designation on your degree. Some graduate courses are structured such that individual learning is not assessed. As a result, only some graduate courses may be taken and count as CS electives or towards the Honors degree. Please visit this page for an up-to-date list.

Can I fulfill CS major or minor requirements with MPCS courses?

Sorry, no. MPCS courses may not be counted towards your CS major or minor. We do, however, offer a joint program.

How do I sign up for a graduate course once I have chosen one?

There is a consent form online (it’s on your \”classes\” site, where if you hit the \”request\” button, it gives you a form). Print the form, fill it out (if necessary), hand it to the instructor, and then turn it in to the registrar once the instructor signs it.

Can I declare a CS major just in case, even if I'm not sure I'll be going through with it?

You may declare a CS major up to and including the end of your fourth year. There is no consequence to declaring a major and then not fulfilling it, other than the obvious consequence of not completing the major itself, and furthermore you cannot graduate without having completed at least one major somehow. Having said all that, we discourage students from declaring a CS major speculatively; you should declare the major only if you intend to complete it.

I would like to do research as an undergraduate. How do I go about doing it?

We do not at present have a formal on-ramp for undergraduates interested in research. Consider approaching a faculty member after having taken one or more courses with them and having developed a special interest in the work. You can count one Reading and Research course as an elective towards your major; perhaps start by arranging Reading and Research with that faculty member and allow the work to progress organically from there. You should speak up if you aspire to do research; it is very unlikely anyone will invite you to do research out of the blue – you need to make your intentions known.

We do recommend joining the #research channel on the CS Slack space.

How do I complete a thesis?

Students in computer science may write a Bx (BA/BS) thesis to complete a major elective (CMSC 29900) and/or as part of their requirements for Computer Science Honors.

The Bx thesis, generally written in the fourth year, should be a substantial research paper. The project should be pursued largely independently, with faculty guidance and input. The thesis should demonstrate competence and scholarship in the chosen area, displaying the ability to understand and synthesize a wide range of readings (beyond material assigned in standard coursework).

Please see the Bx Thesis page for more information.