Eugene has an interesting discussion on what students should concentrate on for a career in Computer Science.
Yesterday, our department hosted a “preview day” for high school seniors who are considering majoring in computer science here at UNI. During the question-and-answer portion of one session, a student asked, “What courses should we take in our senior year to best prepare to study CS?” That’s a good question, and one that resulted in a discussion among the CS faculty present.
For most computer science faculty, the almost reflexive answer to this question is math and science. Mathematics courses encourage abstract thinking, attention to detail, and precision. Science courses help think like an empiricist: formulating hypotheses, designing experiments, making and recording observations, and drawing inferences. A computer science student will use all of these skills throughout her career.
I began my answer with math and science, but the other faculty in the room reacted in a way that let me know they had something to say, too. So I let them take the reins. All three downplayed the popular notion that math, at least advanced math, is an essential element of the CS student’s background.
We ended up closing our answer to the group by saying that studying whatever interests you deeply — and really learning that discipline — will help you prepare to study computer science more than following any blanket prescription to study a particular discipline.