Computer Science Program
Department of Mathematics,
Statistics, and Computer Science
Old Music Hall
St. Olaf College
Northfield, MN 55057-1098
(507) 646-3113
(507) 646-3116 FAX
cs@stolaf.edu
Richard Brown, Director
cs-director@stolaf.edu
Donna Brakke,
Academic Administrative Assistant
brakke@stolaf.edu
|
|
|
CS Advising Information
Here are some collected advising resources for Computer Science
(CS). For more information, see the
CS program director
or talk to a CS professor.
Computer Science Placement --
intended for both incoming students and academic advisers.
Planned offerings of CS courses --
forecasts which courses we intend to offer when, several terms in
the future, for long-term planning.
All about CS courses...
Up next -- some coming CS courses:
The quick guide to CS advising -- a
summary of the standard advice.
To double, or not to double... -- Which
combinations of CS courses work well taken in the same term, and
why.
The Quick Guide to CS Advising
The items below summarize the most important things to
know about CS advising, whether you're a student or an advisor.
Computer Science (CS) is not the same
as programming. CS is about the concepts behind computing
systems; we use programming as an investigative tool. CS students
develop strong technical, programming, and communication skills
because those skills are necessary to explore the concepts of
computing in depth.
The introductory course CS 121
(CS1) has no prerequisites. In particular, no prior
experience with programming or computer science is necessary.
The only requirement for CS1 is good
college-level study skills---students need enough discipline to keep
current with the daily work.
CS 121 (CS1) provides a
"hands-on" survey
of the recurring concepts of CS, which
relate to all forms of
computing and remain relevant over time. CS1 is suitable as a
standalone course for persons interested in a liberal-arts style
survey of CS. CS1 satisfies the [MAR] graduation requirement.
The accelerated introductory course
CS 125 (CS1+) includes the combined material
of CS 121 (CS1) and
CS 251 (SD) in a single course.
The prerequisite for CS1+ is sufficient prior programming
experience in C++ or Java, or permission of instructor.
The three "second courses" in
CS---CS 231 (MFC),
CS 241 (HD), and CS 251
(SD)---may be taken in any order.
Also, any of these "second courses" can serve as a final
course in a satisfactory two-course introduction to CS, with emphasis
on mathematics (MFC), hardware (HD), or software (SD).
CS 251 (SD) is the central course
in CS at St. Olaf, because SD provides the software development
background needed for further study in CS---the same background that
is so valuable for computing-related careers and for interdisciplinary
applications of CS. The combination of CS1-SD makes for a desirable
two-course introduction to CS.
CS 251 (SD) requires a lot of
time, because developing good programming skills requires a
great deal of practice. That's why the combination of SD and its required
lab CS 252 (SDL) receives 1.25 credits. Plan
for the extra workload when choosing courses taken during the same
term as SD.
To keep your options open for a CS major, finish
CS 251 (SD) by the end of the sophomore year,
and CS 263 (ESD) by the end of the junior
year. The latest possible start on a CS major would require
CS 125 (CS1+) in the first term of the junior
year, for those with prior C++ or Java programming experience. See
the CS program director to explore
options for a CS major.
CS 263 (ESD) explores the
humanities and social-science aspects of CS. Ethical issues are
inescapable in any substantial applications of computing. ESD
includes a large-scale formal ethical analysis of a real computing
system within its actual social milieu.
CS 263 (ESD) satisfies the
[ORC] graduation requirement, and it satisfies [EIN] for those
who have already completed [BTS-T]. (Note that [BTS-T] is a
prerequisite for the [EIN] requirement.)
St. Olaf's CS courses are
organized into three tiers. For terms offered, see the
Planned offerings of CS courses page.
Foundation courses:
CS 121 (CS1),
CS 125 (CS1+);
CS 231 (MFC),
CS 241 (HD),
CS 251 (SD).
"Breadth-first" introductory and intermediate courses.
Major requires 3 or 4 (depending on CS1+ vs. CS1/SD).
Core courses:
CS 233 (TC),
CS 253 (ADS),
CS 263 (ESD),
CS 273 (OS),
CS 276 (PL),
CS 284 (CSA).
These have foundation courses as prerequisites.
Together with the foundation courses, these span the discipline of
Computer Science. Major requires 4 core courses
as described elsewhere.
Advanced courses:
CS 300 (TOP),
CS 315 (BI),
CS 336 (LP),
CS 350 (AP),
CS 390 (CAP).
These have core courses as prerequisites. Major
requires CAP and 2 electives (either core or advanced).
Doubling up on CS courses
Which combinations of CS courses go best together in a single term?
This question's answer depends on the person, of course... But we can
make some suggestions based on contrasts among the content of
St. Olaf's CS courses.
CS 231 (MFC) can be paired with
just about any other CS course, because MFC's mathematical
content contrasts with just about any course for which MFC isn't a
prerequisite. Thus, for example MFC and CS 251
(SD) makes a good combination for most people: SD involves a lot
of program implementation, and MFC is more focused on theory. MFC
also balances well with other implementation-intensive courses, and
with the ethics course CS 263 (ESD).
CS 263 (ESD) can be paired with
just about any other CS course that isn't a prerequisite for
ESD, because the ethics/social science emphasis of ESD
contrasts with most other CS courses. ESD has a large team project,
as do most implementation-oriented courses. However, ESD's project
focuses on ethical analysis, social-science methods, and
communication skills, not on programming.
CS 241 (HD) can be paired with
most other CS courses, since it's emphasis on hardware
concepts and structures contrasts with other CS courses, and its
programming projects are modest. For example, HD and
CS 253 (ADS) are often taken together, and HD
is a good fit with CS 284 (CSA). Also, HD may
be taken as a co-requisite for CS 273 (OS)
during the same term.
The following courses have major emphasis on
implementation projects:
Less advanced students may wish to avoid taking
more than one of these courses in the same term, while they are first
developing their skills with programming-intensive projects.
Director of Computer Science
E-mail:
cs-director@stolaf.edu
Prof. Dick Brown
E-mail:
rab@stolaf.edu
Office: OMH 305
Phone: 507-646-3860
|
|
Feedback
|
We'd love to hear from you: inquiries,
corrections, broken links, comments, suggestions---whatever! Send
e-mail to cs@stolaf.edu. |
|
|
|