Department of Computer Science
CS 50 - Computing: Tools and Issues
Fall 2007 Syllabus
- COURSE OBJECTIVES: Computer science has insinuated
itself into many aspects of our lives. What is computer science? What
are it distinctions and similarities with related disciplines,
especially mathematics and the sciences? What are the core elements of
computer science and how do they reveal themselves in our everyday
lives? What do we need to know about computer science in order to
function effectively in a technological world?
This course
helps prepare students to address these questions. First, we will take
a first-hand look at the nature of programming and its role in computer
science. Second, we will explore the nature of the Internet -- how it
is designed, managed, and used effectively in commercial, academic, and
governmental applications. Finally, we will examine some key social and
ethical issues that have important places in a technological world;
issues like intellectual property, privacy, and Internet security.
Course Web site: blackboard.bowdoin.edu
- Course e-mail address: csci050@bowdoin.edu
- Class meeting time (attendance required): TTh
2:30-3:55pm, Searles 223
Problem session meeting time
(attendance optional): To be determined, Searles 128
PRIMARY TEXT (required): Schneider and Gersting, Invitation to Computer Science
A C++ programming tutorial -- at the course web site,
Additional readings -- at the course web site.
INSTRUCTOR: Allen Tucker, 82 Federal Street
E-mail address: allen@bowdoin.edu
Office Hours: MW
4:00-5:00 in Searles 224, or by arrangement
Phone: x3131
COURSE WORK:
The course will combine lectures, laboratory experiences,
readings,
and short papers that allow you to substantively engage the central
themes of the course. A modest amount of programming in C++ will
accompany the laboratory component. Additional laboratory work will
include the use of simulators and models that add hands-on experiences
to other topics encountered in the readings.
The course includes three examinations; each one is open
book and
non-cumulative. All assignments and examinations will contribute to
your course grade. You are expected to follow the Bowdoin College Honor
Code in all course work.
Many of the lab problems may be solved collaboratively. Some additional
out-of-class lab sessions will be conducted by the instructor;
attendance at these sessions is optional.
COURSE OUTLINE:
Week beginning |
Topics |
Lectures
|
Readings |
Labs |
Aug 27, Sept 3
|
What is computer science?
Algorithm design
|
unit1.ppt
unit2.ppt
|
Ch 1, 2 |
asst1.html
|
Sept 10 |
Algorithm efficiency
|
unit3.ppt
|
Ch 3
|
asst2.html |
Sept 17 |
Programming in C++
|
unit4.ppt
|
Ch 8.3-8.6
|
asst3.html
asst4.html
|
Sept 24
|
(*** Test #1 ***) |
|
|
|
Oct 1, 8
|
C++ Functions and
Graphics
Programming |
unit5.ppt
|
Ch 8.7, 8.9
|
asst5.html |
Oct 15
|
Computing Tools: Logic, Gates, and Circuits
|
unit6.ppt
|
Ch 4
|
asst6.html |
Oct 22, 29
|
Computing Tools: the Internet
|
unit7.ppt
|
Ch 7
|
asst7.html |
Nov 5
|
(*** Test #2 ***) Tuesday Nov 6
|
|
|
|
Nov 12
|
Computing Issues: Internet Security and Privacy |
unit8.ppt
|
Ch 13.4, 15.2.3 |
asst8.html
|
Nov 19, 26
|
Computing Tools: Databases and E-Commerce |
unit9.ppt
|
Ch 13.2, 13.3 |
asst9.html
|
Dec 3
|
Computing Issues: Artificial Intelligence
|
unit10.ppt
|
Ch 14
|
asst10.html
|
Dec 10
|
Friday Dec 14, 9:00am
(*** Test #3 ***) |
|
|
|
|