This course provides a broad overview of computer science. You will learn about the basic areas of the discipline--algorithms (the foundation of computer science), what goes on inside a computer, how to design an algorithm and write a program to solve a problem on the computer, how your program is translated to a form the computer can "understand," some theory (can a computer solve anything?), social issues, and some applications in networks, artificial intelligence and environmental studies. Weekly labs provide experiments with concepts presented in class. Programming is done in C++.
This course is required for majors, but is a self-contained course designed to appeal to non-majors looking for a general introduction to computer science.
Prerequisites: None! No previous knowledge of computer science is required.
Instructor: Laura Toma
Office: 219 Searles Hall 
Email: ltoma@bowdoin.edu 
Office hours: M,T,W,Th 4-5pm. Send me an email to set up a different time.
Class Email: csci107@bowdoin.edu
Class webpage: http://www.bowdoin.edu/~ltoma/teaching/cs107/fall03/
Bowdoin class webpage: http://academic.bowdoin.edu/courses/f03/csci107
Main topics:
Course material:
Grading policy
Course Outline
| Date | Topic | Reading | 
| Sept 8 | Introduction and overview. | Chapter 1 | 
| Sept 10, Sept 15 | Algorithm design. | Chapter 2 | 
| Sept 17, Sept 22, Sept 24, 29 | Efficiency of algorithms. | Chapter 3 | 
| Oct 1 | EXAM 1 | Chapter 1,2 & 3 | 
| Oct 6, Oct 8 | Logic, gates, circuits. | Chapter 4 | 
| Oct 13, Oct 15 | Machine organisation. | Chapter 5 | 
| Oct 22 | Programming languages. | Chapter 6 | 
| Oct 27, 29, Nov 3,5 | Programming in C++. | Chapter 7 | 
| Nov 10 | EXAM 2 | Chapter 4,5,6,7 | 
| Nov 12, 17 | Models of computation and computability. | Chapter 10 | 
| Nov 19, 24 | Artificial intelligence.. | Chapter 12 | 
| Dec 1 | Applications of computer science to environmental studies.?? | Handout | 
| Dec 2, 3, 8, 9 | Social issues: student presentations | Chapter 14 | 
| Dec 17 at 9am | FINAL EXAM | 
Students are expected to follow the Bowdoin Computer Use Policy and the Academic Honor Code.