CPSC 101b Great Ideas in Computer Science (Spring 2018)
-
Description
-
A gentle introduction to some of the most important ideas in computer
science: What the computer is; how it works; what it can do and what it
cannot do, now and in the future. Topics include algorithms, elementary
programming, hardware, language interpretation, software engineering,
complexity, models of computation, and artificial intelligence. No previous
programming experience required.
-
Instructor
-
Stanley C. Eisenstat, 208 Watson (432-1246)
Office hours: TBA and by appointment
(see http://sce.cs.yale.edu )
-
Teaching Fellow
-
Peizhen Guo
Office hours: TBA
-
Undergraduate Learning Assistants
-
Maya Jeyendran
Office hours: TBA
-
Textbooks
-
Brian Kernighan, Understanding the Digital World: What You Need to Know About
Computers, the Internet, Privacy, and Security, Princeton University Press,
2017
-
John MacCormick, Nine Algorithms That Changed the Future: The Ingenious Ideas
That Drive Today's Computers, Princeton University Press, 2012
-
Coursework
-
There will be 6-8 assignments requiring an average of 3-5 hours per week.
-
There will be in-class examinations on Wednesday, February 28th, and
Wednesday, April 25th.
-
Homework will constitute ~40% of the final grade; the examinations will
constitute the remainder.
-
Late Homework Policy
-
Homework that is not submitted by the time specified in the assignment will
be assessed a penalty of 15% per late class day or part thereof, and MAY not
be graded at all if more than ten days late.
-
Other Resources
-
Web Page: http://zoo.cs.yale.edu/classes/cs101
-
Newsgroup: See link on class web page
-
The Gilligan's Island Rule
-
When discussing an assignment with other students, you may write on a board
or a piece of paper, but you may not retain any written or electronic record
of the discussion. Moreover, you must engage in a full hour of mind-numbing
activity (e.g., watching back-to-back episodes of Gilligan's Island) before
you work on the assignment again. This ensures that you can reconstruct what
you learned from the discussion, by yourself, using your own brain. The same
rule applies to nonstudents and on-line sources.
-
Topics Covered/Emphasized (tentative)
-
Algorithms
-
Information representation
-
Data compression, error correction, and cryptography
-
Parallelism and concurrency
-
Computability and tractability
-
Elementary programming in JavaScript
CPSC-101b-01/16/18