| |
For Prospective Students
For a general overview of the options among first-year Computer
Science courses at UW,
see the page
of the same name in the CS 135 course Web space.
The main qualifications for CS 145 are ability to reason and
think abstractly, and enthusiasm for learning.
Good English
reading and listening comprehension skills, and the ability to
take notes, are also important.
Prior experience in programming is not necessary; in fact, it
can be a drawback if it closes one's mind to other ways of doing
things. CS 145 is different from anything you will have
encountered elsewhere. Whether you are planning on being a CS
major, taking more CS non-major courses, or stopping after your
two required CS courses makes no difference.
Students who score 80 or above on the Euclid math contest or
Honourable Mention or above in the senior Canadian Computing
Competition (CCC) may pre-enroll themselves into CS 145 (though,
as a courtesy to the instructor, it would be nice if such
students could provide the information below). Other
students require instructor consent. Both sets of students
should read through this whole Web page carefully. To apply
for instructor consent, please
e-mail the instructor (see the Personnel page for details)
with the following information:
- Your full name and UW student number.
- Your Grade 11 and 12 high school marks. This doesn't have
to be an official transcript.
- Your score on the Euclid contest, CCC, and other
high-school academic contests you may have written.
- Information about extracurricular activities and interests
as you might have provided on your AIF (Additional Information
Form) as part of your application to the Faculty of Mathematics.
- Any other information that you think may be pertinent to your
case.
Here are some possible indicators that CS 145 might be right
for you. Note that you should not consider something on this
list definitive, nor should you consider something not on this
list irrelevant.
Good performance on math contests. While math
contests are not necessarily good predictors of performance in
university courses, they do involve some of the skills needed
in CS 145.
Good performance on programming contests.
Programming contests are, paradoxically, even further from
being good predictors of performance, as they typically
involve code which is written hastily without regard to
clarity and deemed "correct" if it passes a few automated
tests. Nevertheless, those who enjoy or do well on such
contests should consider taking CS 145. Be warned, though,
that the kinds of things done in preparation for such contests
have little to do with CS 145, so please don't bother if
you're not open to new ways of looking at things.
In the past, some students who did well in programming
contests have been disappointed with CS 145, as it didn't
just say to them, "Here's the language, here are the
libraries, do what you want." (They probably were
disappointed by the rest of the CS curriculum as well, but
that's another issue.)
Excellent marks in ALL high school courses.
Weaknesses in communication or an inability to appreciate
subjects besides math and CS should be considered warning
signs that CS 145 may not be appropriate. Students taking
this course should have an open mind and should value diversity.
Being female. If you're female and you're reading
this page, chances are that CS 145 is right for you. Women
tend to underestimate their abilities and turn down
opportunities like this when they shouldn't. In past offerings
of CS 135, women (both CS majors and non-CS majors) have been
among the top students in the class. (Conversely, men
tend to overestimate their abilities and believe they're
entitled to such opportunities. If you're a male reading this
page, think carefully about this.)
The percentage of women going into CS has been dropping in
recent years. It's not that women can't do CS, but that they
don't think, based on what they've learned about it in high
school, that it's going to be rewarding. CS 145 aims to
demonstrate that it can be rewarding, and you don't have to
be majoring in CS to take the course. (CS 135 and CS 115 also
have this goal, so don't feel that you have to take CS 145 to
gain insight.)
Here are some reasons why people might want to take CS 145
that are not good reasons:
Lots of experience in programming. High school
experiences in programming tend to be very different from
university experiences. CS 135 isn't going to repeat much of
what you may have seen. Extensive experience in one language
or languages that are very similar (Java, C++, Turing, Visual
Basic) can, if you're not careful, lead you to dismiss or
downplay the importance of other approaches. That can
actually get in the way of the insights necessary to solve
problems. More than half of the students who stayed to the end of
CS 145 in previous years were not CS majors, and many of them
had no previous experience in programming.
High marks in high school CS courses. There is
almost no correlation between marks in high school CS and
marks in first-year CS at UW. This is especially true of CS 145.
The most challenging course is the most
prestigious. By the time you get to third year, no one
will be able to tell if you took CS 145 or not, and no one
will really care. Even before that, the mere fact that you are
taking or have taken CS 145 is not as important as what you
actually got out of the course(s) that you took, and that will
become evident when someone questions you or places you in a
situation where you have to make use of what you learned. You
should take the course which is appropriate for your level of
ability and your interests. Many UW Math applicants find that
very little in high school is challenging, but standards are
higher in university, especially in advanced courses like CS
145.
If you wish to ask any questions regarding your particular
situation, please e-mail the instructor. There is contact
information on the Personnel page.
|