|From US National Library of Medicine (CS 101 poster: small/large)|
CS 101: An Introduction to Computer Science for Everyone
Instructor: Prof. Jason Hartline, Office Hours: Monday 1:30-2:30, Ford 3-329.
Lectures: Monday and Wednesday, 11-11:50, Tech Auditorium.
Teaching Assistants: Nour Alharithi, Enrico Deiana, Madhav Suresh, Aishwarya Vaikuntam, Kai Yeh.
Sections: Friday, various times.
- Aishwarya: Monday, 10-11am, Ford 3-210.
- Nour: Tuesday, 4-5pm, Ford 3-210.
- Enrico: Wednesday, 2:30-3:30pm, Ford 3-210.
- Kai: Thursday, 11-12am, Ford 3-210.
- Madhav: Friday, 10-11am, Ford 3-333.
Computation is ubiquitous: DNA contains biological programs and is a part of all lifeforms, the human brain is a powerful computer, and the digital computer has revolutionized most aspects of our society. The primary goal of this course is to explore the whats, whys, and hows of computer science.
|CS 101, a conversation (video, click to watch)|
The topics covered include the theory of computation (what computers can compute), algorithms for efficient computation (what to tell a computer to compute), programming languages (how to tell a computer what to compute), artificial intelligence (how your computer can do things your brain does), computational biology (how DNA-based biological systems are like programs), computer systems (e.g., how computers work together in networks like the Internet), computer vision and graphics (how computers can gather and convey useful visual information) and human computer interaction (easy, natural ways to get what you need and want from computers).
In this course, students will learn what the computer science major is all about. Coursework will be reading and writing about computer science topics and their impact in the world. (There will be no computer programming in this course.)
This course is a required course in the Computer Science Curriculum and also satisfies the Weinberg Area III (Social and Behavioral Sciences) Distribution. The target audience of this course is freshmen and sophomores; advanced students can satisfy the computer science major's 101 requirement by instead taking an additional breadth course.
This course surveys many topics in computer science and lectures will be given by Northwestern professors who research and teach advanced courses in these topics. Lecturers include Prof. Jason Hartline, Prof. Fabian Bustamante, Prof. Bryan Pardo, Prof. Nicole Immorlica, Prof. Ronen Gradwohl, Prof. Robby Findler, Prof. Jack Tumblin, Prof. Haoqi Zhang, and Prof. Brenna Argall.
Reading and Media
Reading and media viewing assignments will be taken from popular press and computer science journals. Sources include: The Atlantic, The Economist, WIRED, Communications of the ACM (CACM), TED Talks, XRDS: the ACM student magazine, The Huffington Post, The New York Times, and Scientific American. A single pdf with the reading for each week can be downloaded from the pages for each week linked above.
Attendance, Participation, and Grading
Attendance of and participation in lectures and discussion sections is mandatory. Students who miss an occasional lecture or section can make it up by making substantial contribution to the discussion of course material on Piazza.
- Students should contribute to classroom discussions by asking and answering questions and (when asked) providing discussion of lecture topics and reading assignments.
- Students should participate in discussion sections by being involved in activities during the discussion section and in out-of-section followup work.
- Students should participate in online discussion on Piazza. Possible online contributions include relating assigned reading and lecture material to current events, culture, and articles in popular media and discussion thereof.
- Students will answer short-essay questions on Mechanical TA and conduct peer reviews of the answers of fellow students.
Grades will be weighted as follows: 40% projects, 20% participation, 40% Mechanical TA. There are no exams. Mechanical TA essays and peer reviews will not be accepted late. Except as explicitly noted, Canvas accepts projects up to two days late; late projects turned in before submissions close on Canvas will be deducted 10% of their grade; projects will not be accepted after submissions close.
The syllabus page shows a table-oriented view of the course schedule, and the basics of course grading. You can add any other comments, notes, or thoughts you have about the course structure, course policies or anything else.
To add some comments, click the "Edit" link at the top.