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 have very similar 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 todays 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.