A CS Degree at WPI

What can I expect from a CS graduate degree at WPI?

This is a question that many new students at our department seem to ask themselves. We will try to give an answer on this page. While it is quite obvious what the purpose of a PhD program is (we will still talk about it below), it is not so clear what a MS degree enables you to do. Consider the following statement, shamelessly ripped from the UC Berkeley website and slightly edited.
Why go to graduate school?

An undergraduate program teaches you the core ideas of computer science, and gives you some practice in the craft of computer programming, but can only give you a basic introduction to any particular specialty within the field. There are two kinds of reasons for continuing on to graduate study. One is to prepare for a research career, in which your goal is to advance the state of the art, rather than to put current technology to work. Students with this goal generally seek a Ph.D. degree. In particular, the Ph.D. is a requirement for appointment as a professor at a research university. (At some universities, including Berkeley, and WPI, an M.S. degree is an intermediate step toward the Ph.D.; at others, including Stanford, the Ph.D. can be the first graduate degree earned.) The other reason is to learn in greater detail, and in greater depth, about some specific area within CS, to help further a career in industry. Students with this goal may seek an M.S. degree as their final target.
What is graduate school like?

Graduate programs are more varied in their requirements than undergraduate programs. Some schools, including Berkeley, require a thesis or project for the master's degree. Other schools, including Stanford, offer course-work-only master's programs. The differences in doctoral programs are even greater, and the quality of the faculty is all-important at the Ph.D. level. Generally speaking, graduate classes are usually smaller than undergraduate classes, with more contact with the professor. Grade competition is less intense because there is much less concern with grade point averages. However, graduate school is serious business. Graduate students are generally highly motivated and fully engaged in their work. [...] You will probably find that they enjoy what they are doing.
What does that mean for my MS degree?

A graduate program in Computer Science at WPI builds upon an undergraduate education in CS. Many basic skills of a CS student are expected of an applicant. In particular, that means that you will not be taught how to program in a CS graduate program. All CS courses except CS501 have as their prerequisite the knowledge of a structured or object-oriented programming language. And even in CS501, you will not learn a programming language. You will also not be taught the use of specific operating systems, application software or software development tools. If you think that you will need Windows NT, MS Office, Visual Basic, Visual Studio, (D)COM, ActiveX, Active Server Pages, or anything like that in your future job, you have to learn it yourself. The purpose of a MS program is to teach you the underlying principles of Computer Science, such as theoretical CS, principles of operating systems and networks, software engineering, design and principles of database systems, computer graphics, visualization, artificial intelligence, etc. You are expected to gain skills that you will need to perform well in your job not only now (with the knowledge of one certain programming language), but also in the future, when you have to adapt to changes in computer applications. Over the next few months, we will try to gather some information from senior students as to what they were doing in their summer jobs and how the contents of their WPI classes related to those jobs.
That sounds scary!!!

Well, maybe it does, but it shouldn't scare you. We are trying to give you an idea as to what to expect from a graduate program. Even if you don't have a CS background and don't have much programming experience, you can do fine in the MS program. It just means that you'll have to work harder on things that CS undergraduates already know, such as learning how to program or learning how to use operating systems other than Windows {9{5|8}|NT} and you have to make an effort to do that yourself. Once you start to work in the real world, you will also be expected to pick up new programming languages or concepts yourself without a course. The MS work merely helps you to do this quicker and more thorough, and gives you a chance to understand underlying concepts of Computer Sience (which is called Information Science in many other languages, and should therefore not even exlusively focus on computers at all...).
What about a PhD?

PhDs are a complicated matter... there are no general rules for a PhD. Try talking to other PhD students and read some of the material available on the Web.


Last modified by CS-GSO, Friday, 17-Sep-2004 14:21:12 EDT