SUNY Geneseo Department of Computer Science
Spring 2004
Last updated January 14, 2004
Time and Place: Lecture:
TR 2:00 - 3:15, Welles 121
Lab: M 10:30 - 12:20, South 345
Lab: M 1:30 - 3:20, South 345
Final Exam: Thursday, April 29, 12:00 - 3:00
Instructor: Doug Baldwin
Office: South 320
Phone: 245-5322
E-Mail: baldwin@geneseo.edu
Office Hours:
W 1:00 - 2:00, R 9:30 - 10:30, or By Appointment
WWW Pages:
Syllabus: http://www.cs.geneseo.edu/~baldwin/csci141/spring2004/syllabus.html
Lecture Notes: http://www.cs.geneseo.edu/~baldwin/csci141/spring2004/lectures.html
Exercises: http://www.cs.geneseo.edu/~baldwin/csci141/spring2004/exercises.html
Mailing List: csci14101-spr04-l@geneseo.edu
"Computer science" is one of those phrases that should be instantly suspect: a "computer" is a machine made by humans; "science" generally denotes the study of some natural, or at least not-human-made, phenomenon. How, then, can there be a science in computers? In fact, the phrase "computer science" is a misnomer. It should really be "computing science", because there is a great deal in the abstract notion of computing that is not made by humans: Algorithms that can be applied in any form (software, hardware, etc.), limits to how efficiently things can be computed and even to what can be computed, etc. These things are the heart of computer science.
Computer scientists study these things in three characteristic ways: by designing algorithms and their concrete realizations, by deducing properties of algorithms through mathematical theory, and by conducting experiments to verify the physical reality of theoretical predictions. This course is an introduction to all three of these "methods of inquiry", and to the ways in which they help one understand computing.
Prerequisite: CSci 119
Upon completing this course, students who meet my expectations will be able to...
The required text for this course is pre-publication chapters from
D. Baldwin & G. Scragg, Algorithms and Data Structures: The Science of Computing
You can get the necessary chapters from Sundance Books.
The main programming language for this course will be Java, which is available through the CodeWarrior programming environment in the Computer Science Department labs. You can purchase your own copy of CodeWarrior, for Macintosh or Windows computers, if you wish. See the Manufacturer's Web Page for details.
Materials from Last Time I Taught this Course are available at http://www.cs.geneseo.edu/~baldwin/csci141/fall2003/
An embryonic Companion Web Site for the text is at http://www.cs.geneseo.edu/~baldwin/sc/
Docunentation for the standard Java Class Library is available at http://java.sun.com/j2se/1.4.1/docs/api/
The following dates are best estimates. They may well change as students' actual needs become apparent. Refer to the Web version of this syllabus for the most current information, I will keep it as up-to-date as possible:
First Two Weeks | Overview |
Late January - February | Recursion |
March 2 | Hour Exam 1 |
March | Lists |
March 30 | Hour Exam 2 |
Early April | Trees |
Late April | Limits of Computing |
April 29 | Final Exam |
Your grade for this course will be calculated from your grades on exercises, exams, etc. as follows:
Homework (approx. 3 - 5) | 10% |
Labs (1 per week) | 15% |
Hour Exams | 20% apiece |
Final | 30% |
Mini-Assignments and Readings | 5% |
I will accept work that is turned in late, but with a 10% per day compound late penalty. For example, homework turned in 1 day late gets 10% taken off its grade; homework turned in 2 days late gets 10% taken off for the first day, then 10% of what's left gets taken off for the second day. Similarly for 3 days, 4 days, and so forth. I round grades to the nearest whole number, so it is possible for something to be so late that its grade rounds to 0.
Every Geneseo student has to satisfy a writing requirement in their major in order to graduate. The official Computer Science writing requirement is printed in the Geneseo College Bulletin. To summarize the requirement's main points, every Computer Science major must maintain an acceptable quality of writing throughout their computer science coursework. Any student whose writing is deemed unacceptable on three or more occasions during their first 28 credit hours of Computer Science coursework towards the major is required to take an additional writing course, typically in the English Department.
Written work you do for this course (lab reports, project reports, etc.) will be evaluated for acceptability under this requirement.
My policy on group work for this course, which is on-line at http://www.cs.geneseo.edu/~baldwin/collab-intro.html is an important part of this syllabus. A printed copy accompanies the printed copy of this syllabus.
SUNY Geneseo will make reasonable accommodations for persons with documented physical, emotional or learning disabilities. Students should consult with the Director in the Office of Disability Services (Tabitha Buggie-Hunt, 105D Erwin, 245-5112) and their individual faculty regarding any needed accommodations as early as possible in the semester.