Advice for a student going into Computer Science

I was recently asked what kind of advice I would give to someone who wants to study Computer Science. Where to go, what to study? The best article on the matter, at least the best I ever saw, is Undergraduation by Paul Graham.

Here is an amusing quote:

The social sciences are also fairly bogus, because they’re so much influenced by intellectual fashions. If a physicist met a colleague from 100 years ago, he could teach him some new things; if a psychologist met a colleague from 100 years ago, they’d just get into an ideological argument.

Or this one…

Another way to figure out which fields are worth studying is to create the dropout graph. For example, I know many people who switched from math to computer science because they found math too hard, and no one who did the opposite. People don’t do hard things gratuitously; no one will work on a harder problem unless it is proportionately (or at least log(n)) more rewarding. So probably math is more worth studying than computer science.

Published by

Daniel Lemire

A computer science professor at the University of Quebec (TELUQ).

One thought on “Advice for a student going into Computer Science”

  1. Don’t go in computer science or do it only if at least you expect to get Ph. D. Today all applied science domain (computer excluded) are progressively claiming that programming is an exclusive tasks for professionals of their own technological domain. By example , the telecom. and networking programming is more and more exclusively reserved to electrical engineering. In some country , like mine (province of Québec) , professional engineering Assoc. , are next to forbid computer scientist to program in any engineering related domain including software engineering event if in the last duty there’s no such mandated requirement.

    For the best bet , go in engineering. I have experienced working with engineer and in term of salary they progressing faster, they had a better security employment (they are protected by a kind of union here) and therefore they are less stressed by their work and often they have less work load. This is my point of view

Leave a Reply

Your email address will not be published. Required fields are marked *

To create code blocks or other preformatted text, indent by four spaces:

    This will be displayed in a monospaced font. The first four 
    spaces will be stripped off, but all other whitespace
    will be preserved.
    Markdown is turned off in code blocks:
     [This is not a link](

To create not a block, but an inline code span, use backticks:

Here is some inline `code`.

For more help see