Princeton University
Computer Science Dept.

Computer Science 111
Computers and Computing

Edward Felten

Fall 2000


Directory


See the announcements page for final exam details.

Course Summary

This course is intended for students from the humanities and social sciences who want a one-course introduction to computers, and have little or no computer experience. No mathematics or science background is assumed. The course is a broad introduction to computer science. Emphasis is on understanding how computers really work. Also addressed are essential limitations of the computer, such as undecidability, as well as future prospects for artificial intelligence and online access to the world's knowledge. Many of the motivating examples for course topics will come from the World Wide Web.

The laboratory is complementary to the classroom work, uses PCs, and is based on the Internet and the World Wide Web. Students will ``surf'' the internet and construct their own home pages in the first three weeks. They will add to their home pages throughout the semester, while exploring a broad spectrum of practical applications, including graphics and digital sound. The final labs are a gentle introduction to programming in Java.

Comparison of 100-level Computer Science Courses

The Department of Computer Science offers three 100-level courses: 109, 111 and 126. COS109 and COS111 are both intended for students from the humanities and social sciences who want a one-course introduction to computers, and who have little or no computer experience beyond word processing and Web surfing. Overall, the two courses will cover similar material. However, the courses have different emphases, and many topics will receive significantly different treatments. The average technical depth will be similar in the two courses. The courses will share early labs, but diverge thereafter. The workload is intended to be about the same. No mathematics or science background is assumed.

COS111 is a broad introduction to the fundamental ideas of computer science and the influence of these ideas on modern technology. Classic computer science questions will be investigated: How is information represented? How do modern computer systems work? How are computational tasks accomplished through algorithms? What are the limits of computation? Examples are taken from current widespread applications such as searching the Web and computer game playing. The goal of this course is to give students an understanding of computers and computing that will allow them to recognize and appreciate the difference between fundamental capabilities and limitations of computing and fleeting artifacts of today's technology, to quickly adapt as users to the rapid advances in technology, and to use technological understanding in the social assessment of computational solutions to a variety of problems.

COS109 will also give students an introduction to computing, but is less computer-science oriented and will spend less time on computer science per se. Topics and case studies will be motivated by current issues and events that involve computing and computers, and will include discussion of how hardware and software work; what programming is and why it is hard; how the Internet and the Web operate; usability, reliability; electronic commerce; security, privacy. It will also touch on fundamental ideas from computer science, and some of the inherent limitations of computers. Topics will be covered at sufficient depth for students to understand how technology works, how it affects the world they live in, and how to use this knowledge to make intelligent decisions about technology.

A student cannot get credit for both COS109 and COS111. Both courses satisfy the quantitative reasoning (QR) AB distribution requirement. Neither course satisfies the BSE computing requirement.

COS126 is a technical introduction to computer science. It is also a broad introduction to the fundamental ideas of computer science, but at more technical depth. Students in COS126 also develop programming skills. COS126 is the only introductory computer science course that serves as prerequisite to more advanced computer science courses and that can be used to satisfy the BSE computing requirement. It also satisfies the quantitative reasoning (QR) AB distribution requirement. COS 126 CAN be taken for credit by students who have taken either of COS111 or COS109.


Administrative Information

Lectures: MWF at 11:00--11:50am, 105 Computer Science.

Labs: Each student enrolls in one 2hr, 50min. lab section. The exact times of the lab sections have not been finalized because final enrollments are needed to do so. The available lab times will be some subset of M T W and Th 1:30 - 4:20 and 7 - 9:50 in E203 EQUAD. Details will be given in class and posted here as soon as they are available.

Professor: Edward Felten, 419 CS Building, 258-5906, felten@cs.princeton.edu, Office hours Monday 3-4pm or by appointment.

Course secretary: Tina McCoy, 410 CS building, 258-1746, tmmccoy@cs.princeton.edu

Graduate teaching assistants:

Nitin Garg, 316 CS Building, 258-5386, nitin@cs.princeton.edu, office hours Fri 2-4 or by appointment
Ruoming Pang, 313 CS Building, 258-6126 rpang@cs.princeton.edu, office hours MW 3:15-4:15 or by appointment
Iannis Tourlakis 417 CS Building, 258-6324, itourlak@cs.princeton.edu, office hours TuTh 5:30-6:30 or by appointment

The easiest way to reach any of us to make an appointment or ask a quick question is by email. Feel free to call, but most of us check our email more often than our voice mail.