My daughter has a strong interest in theoretical computer science, and she has just been admitted to several different universities as a freshman. She is just a bright student, not a genius, with a bit of research experience in cryptography and randomness stuff, and a semifinalist in a couple of national competitions. She intends to continue graduate study in theoretical CS, or a closely related subfield, after finishing her undergraduate degree.

Given her strong interest in eventual graduate study, what criteria should we take into account in choosing where to enroll as an undergraduate? How can we tell which undergrad programs best prepare their students for graduate school?

  • 2
    Not an answer, but: all of the universities you list are excellent. If your daughter is interested in grad school, she should make sure to (a) ask about undergraduate research programs, and see whose answers she likes (there should be some sort of contact info in the admissions material), but (b) ultimately pick the university where she thinks she will be the happiest. The research experience basically consists of prolonged failure, and being happy about her life will make facing that less daunting.
    – Neel Krishnaswami
    Commented Apr 2, 2013 at 12:53

6 Answers 6


Although I'm sure you already realize this, you shouldn't let a laser focus on your daughter's professional development control her choice of which school to attend. (Influence, sure, but not control. And yes: HER choice.) Given your daughter's background and experience, she will likely be very successful no matter where she enrolls. I've seen very successful theoretical computer scientists come from a huge variety of undergraduate programs, not all of which were associated with strong graduate CS programs. It is at least as important for her to find a place where she feels (and not just is) supported and challenged, both by her faculty and her peers. Otherwise, no matter how strong the department is on average, it won't be a good fit for her personally.

There is absolutely no substitute for a personal visit to each campus, if you can manage it. Let her drop into the comptuer science department, get a feel for the community vibe, sit in on a class, talk to a professor or two if she can, hang out in the dorms. Meanwhile, you go somewhere else. Go'way. Shoo.

But if you really want hard data, I recommend that you—or better yet, your daughter—directly contact the computer science departments at the schools where she's been admitted, describe her experience and her goals (which should make them very eager to attract her), and then ask questions like the following:

  • How many students graduated from your program in the last five years?
  • How many / what fraction of those students are currently enrolled in strong computer science PhD programs?
  • How many / what fraction of your current undergraduates are involved in research with your faculty?
  • How many of your faculty do research in theoretical computer science?
  • [The Hail Mary:] Would you mind asking one of them to contact me? I'd like to ask some more questions.

Beware the answer "I don't know", or qualitative waffle like like "quite a lot" that really mean "I don't know". Ask for numbers. Ask for examples. Channel your inner Cuba Gooding Jr: Show me the data!

Your first contact will almost certainly be answered by someone on the administrative staff, who may not have the data you want at hand. Be prepared make an appointment to speak over the phone (or Skype or whatever) with the director of undergraduate programs or another faculty member. If you do speak over the phone, try to keep your conversation short and to the point; these people are very very busy.

Don't bother asking admissions officers these questions; Chances are very high that they just don't know. You really need to contact the departments directly.

Another good place to look is the list of current and past winners and runners-up for the Computing Research Association's Outstanding Undergraduate award, which specifically recognizes undergraduate research. A significant fraction of winners did their undergraduate research in theoretical computer science. Also, a significant fraction of winners were not enrolled in departments with a top-10 graduate program.

But as Anonymous Mathematician notes in a comment, you shouldn't take the CRA list too seriously; some departments are more interested in awards like this and push hard for their students to be selected. The fact that some prominent departments have few or no students on this list may reflect a disinterest in this particular award, not in undergraduate research in general.

[I'm a theoretical computer scientist at a top-10 CS department; I serve on my department's graduate admissions committee.]

  • JeffE, thanks for migrating my post to the `right' place and answering with great insights. Among them, I am particularly stunned to see the list of Computing Research Association's Outstanding Undergraduate Research awardees/runner-ups over the last 7 years. In particular, I do not see one most prominently ranked CS dept in the west coast and one prominently ranked theoretical CS dept in the midwest producing NONE in this list, and one most prominently ranked CS dept in the east coast prouducing VERY FEW for its size and fame in this list. This is really stark surprising. Should I read someth
    – user15429
    Commented Apr 5, 2013 at 15:03
  • These sorts of lists mean something, but I wouldn't take them too seriously. Some departments are very interested in particular awards and push hard for their students to be selected (for example, by writing over the top letters of support), while some don't. If this reflects a department-wide atmosphere of support for students, then it could be a valuable consideration in where to study, but I think it often just reflects which departments happen to have one or two faculty members who really care about this particular award. Commented Apr 5, 2013 at 16:15

Best researchers go to Universities where they get the best students to teach, and the best students go to Universities where they get good education and enough attention from the faculty. So, things balance out. Departmental reputation and standard University ranking tables are perfectly fine to use as a guide to decide where to go. Pretty much all the top departments will have good strength in Theoretical Computer Science. You will need to look closely only if you are looking at lower-ranking Universities, which might have strength in some areas but not others.

There is also no conflict between good undergraduate education and good grad school, because the grad students do contribute to teaching. They run tutorials/discussions and help students with questions and exercises. So, a department that is good at grad school is also likely to be good in undergraduate teaching.

There can be a bit of difference between private Universities and State Universities. Because private Universities are more dependent on the tuition fees and alumni donations, they are likely to spend more effort on undergraduate teaching. State Universities also tend to have larger class sizes, something to consider if you are looking for "personalized attention". You can't ask for too much personalized attention because, if that is what the faculty are engaged in, they are not going to have much time for research and, as a result, the quality of the department would go down in the long run.

If you are really after personalized attention, then you might consider Liberal Arts Colleges rather than Universities. Undergraduate teaching is their No. 1 focus. They don't normally have a grad school. While the faculty would engage in some research, research is not considered the top priority. Teaching is.

  • 2
    +1 but think its simplistic. there has been noted a tension between undergraduate education & research as noted by many authorities & alluded to in the question. a relevant (and old) ref on this is why the professor cant teach by morris kline. in some ways the tension is heightened since the book was published.
    – vzn
    Commented Apr 1, 2013 at 15:00
  • 3
    Your last paragraph is particularly important. Sometimes smaller (particularly liberal arts) departments that have strong research (not all do) provide much more support for undergraduates than departments where professors are too busy completing difficult research to hold an undergrad's hand as they start. That said, this is really a school-by-school thing and you're much better off asking students at individual places than getting a big list here.
    – SamM
    Commented Apr 2, 2013 at 22:28

It is commonly said that the only university that counts is the one you've graduated from last. If your daughter wants to eventually earn a PhD, the graduate school she attends will most likely figure more importantly to her future employability than her undergraduate school.

With that in mind, it is also true that many undergraduate schools with some of the top graduate schools in CS also produce excellent candidates for graduate school, primarily because the number of undergraduate research opportunities are greater, and also because it can be assumed that there is a good deal of correlation between the quality of the graduate program and the quality of the undergraduate program.

However, it would be wise to also consider the strength of the undergraduate program from the standpoint of all the normal factors that go into choosing an undergraduate school, e.g., (1) the kind of student your daughter is, and (2) whether the undergraduate program will give her what she needs as a student holistically. For example, some phenomenal CS programs are at schools where class sizes can be in the hundreds (e.g., UC Berkeley), but if your daughter thinks she would get swallowed up in a giant class, that probably isn't the place for her. A smaller school with smaller classes might be more appropriate, even if the CS program is weaker as a whole.

Finally, the top two (in my opinion) factors that will affect your daughter's success in getting into graduate school are:

  1. Her grades (despite what some prominent and highly successful members of this community have achieved). Getting a 4.0 from any decent school in a particular major is better than a 2.5 from the best school in the country.

  2. Undergraduate research, with published results. Just doing research is important, but having published results will help her case significantly.

Bottom line: I suggest choosing a school where your daughter feels comfortable, and with enough of a research program that she could get involved with research as an undergraduate.

  • 1
    despite what some prominent — and very lucky. I agree that good grades are cricial, but fantastic grades are not. Speaking with my admissions-committee hat on, anything above about 3.5 is noise, especially if you have undergrad research experience.
    – JeffE
    Commented Apr 4, 2013 at 12:48
  • I should add: ...unless you are applying from a lesser-known school with no opportunities for research experience, in which case you really should aim for straight A+s.
    – JeffE
    Commented Apr 4, 2013 at 14:40

Selecting a school is a very challenging thing to do. Just because a school has top-quality research faculty doesn't necessarily mean they have top-quality teaching faculty (brilliant researchers are not always the best communicators, unfortunately). The best way to get one-on-one time with a professor is usually to corner them during their office hours and keep asking questions until they insist they need to leave.

Wherever your daughters ends up, encourage her to start making a connection with individual faculty members as early as possible. Faculty are almost always happy to bring new students into their labs, and there is funding available for undergraduates who are interested in research. Many universities offer REUs (research experience for undergraduates). The primary issue I've come across is that these programs have difficulty finding undergraduates to give money to.

As far as grad school goes: tell her to make good grades and get involved with a lab. Everything else will fall into place (and that's a long way off, anyways).

  • 2
    "The best way to get one-on-one time with a professor is usually to corner them during their office hours and keep asking questions until they insist they need to leave." -> Not only is this bad advice, but it also gives a bad image of professors!
    – J..y B..y
    Commented Apr 3, 2013 at 8:31

Have her go to the school where she would be least distracted. Princeton is better than NYU, as it is farther from Broadway (1 hr vs. half-hour). Yale is even better (3 hours). Urbana-Champaign is impossible to beat in that regard -- cornfields for hours to drive (and you can still deny her of a car), she would have nothing else to do but study.

I guess I would also want to make sure that the university's regular math program is good. If she can get a credit for non-math AP courses, that's great, as it will clear some time to do real work in college; math and CS will have to be retaken, or taken at a higher level of expectations, and/or in the honors college. Some good quantitative bridge courses like biology or psychology may be something else to pique her interest to do something CS-related that is funded by another substantive field (many of the great discoveries are being made at the disciplinary boundaries). Knowing what you are going to do for the rest of your life at 18 is incredibly boring -- sounds more like a lawyer than an academician!


here are some standard rankings/surveys that might be helpful. for very elite schools, they are all highly rigorous, and maybe unique nonacademic features particularly appealing to your daughter (eg "culture/atmosphere", which is difficult to objectively characterize) might shift the balance.

the last 2 links are based on Shanghai Jiao Tong University's graduate school of education which recently ranked the world's best universities in computer science, based according to their academic or research performance in each subject field. it ranks 9 of the top 10 in the US. good luck!

  • Vzn, thanks for the ranking list. But I guess undergrad training is different from ranking? Foe example, how about grad school placement rate of these schools? I'd be further interested in hearing insider's voice which places put more emphasis on undergrad student education/research experience by faculty. I'm not in this field, but what I hear is that profs in CS are very busy and have big numbers of grad students to deal with, so generally do not have time/interest for undergrad kids? Perhaps differ person by person, so that's why I'd like to solicit insiders' voice. Thanks.
    – user15429
    Commented Mar 30, 2013 at 16:43
  • Also, please consider registering for a StackExchange account, so that it's clear that this comment and the original post have the same author. You can register anonymously.
    – JeffE
    Commented Mar 30, 2013 at 22:32
  • Vzn, thanks again, and sharpening my query. Indeed, I am soliciting advice on (1) which place offers the best undergrad research opportunity with profs, (2) which place best prepares students for grad. School and have best grad. School placement record?
    – user15429
    Commented Mar 31, 2013 at 3:04
  • 13
    Um... I'm not vzn.
    – JeffE
    Commented Mar 31, 2013 at 4:48

You must log in to answer this question.