Information for Prospective Graduate Students

I am retired from the university and no longer supervise graduate students. There are many fine computer science PhD programs, and there are almost surely several that would accept you. To that end, below is my advice for winning an NSF graduate fellowship and my ranked list of CS Phd Programs.

National Science Foundation Graduate Fellowships

All PhD students in any reputable CS PhD program can expect to receive a full scholarship plus a stipend to cover living expenses. You are none the less encouraged to apply for a National Science Foundation Graduate Fellowships. These fellowships do not provide a financial advantage to you, but they give you an enormous edge in graduate admissions! They tell the school that you are extraordinary and they the NSF will pay for your expenses so there is less risk in admittting you.

There are two kinds of fellowships for computer science. The first is the tradtional NSF Graduate Research Fellowship. Winners typically have already peformed significant undergraduate research. People from groups targeted by NSF for diversity (female, black, Hispanic, or Pacific-islander) are encouraged to submit even if their undergraduate research experience is less extensive. You apply for this fellowship early in your senior undergraduate year.

NSF Graduate Research Fellowship Application

The second program is named CSgrads4US and is only for students interested in going into a CS PhD program. It is unique in that it is mainly targeted at people who have been working in industry and are several years past graduation - although currently applicants do not need to already be working in industry. It also is unique in that it provides a year of mentoring support to help winners learn how to apply to a Phd program. It is less competitive than traditional NSF Graduate Fellowships, and has an even greater emphasis on diversity. Applicants are not required to have undergraduate research experience or to have majored in computer science, although they should provide evidence that they have completed most of the undergraduate courses expected for a CS major.

NSF CSgrad4All Fellowship Application

My USA and Canada Computer Science PhD Program Ranking

This list is loosely based on csrankings.org, which ranks US CS graduate programs on the basis of average number publications in the top CS conferences per tenure-track faculty member. Schools have been grouped into tiers and alphabetized within each tier, to emphasize that order within a tier is not significant. Several Canadian universities have been added. The Tier 1 group agrees with the top set of computer science programs as selected by most ranking organizations, such as US News. The splitting points for the other tiers are based on my own judgement, and others may disagree. Please note that the best school for your specific interests might be in any of the tiers. All universities listed have many excellent faculty and graduate students. The purpose of this list is to help students applying to graduate school to think of a range of options, and to avoid disappointment that could result from applying to too narrow a range of programs. Each Tier 1 school receives many thousands of applications for a few dozen openings each, so even a very strong student can be unlucky. Be sure to include some Tier 3 and 4 schools in your set of applications. Tier 3 and 4 schools tend to receive very few applications from US citizens or permanent residents, so any such applicant will have a good chance of acceptance.

About the Application Essay

For all schools, take the following advice about your essay to heart: explain your interest in research and why you want to earn a PhD. Refer to classes you took and research you have read about on your own outside of class. Do not tell your life story f rom childhood; this is not like an essay for undergraduate school. Show that you are intellectually curious and can communicate clearly. Describe the areas of CS that interest you the most and why. You are not expected to have a research topic; in fact, describing an extremely detailed project could put you at a disadvantage, because professors want students to contribute to their research agendas. However, you should write about the areas you want to investigate in a way that demonstrates your competency. It is fine to say you are undecided between two areas, such as theory and AI.

AI and Machine Learning

At this point in time, most students who apply to US CS PhD programs say they want to study AI or machine learning. As a result, even very strong applicants to US universities in this area will often be turned away. Students should also consider applying to Canadian Universities that have strong AI / machine learning research groups: University of Toronto, University of Alberta, and if you speak French, Universite de Montreal.

TIER 1:

Typical successful applicant has: Schools

TIER 2:

Typical successful applicant has: Schools

TIER 3:

Typical successful applicant has: Schools

TIER 4:

Typical successful applicant has: Schools