CompSci 101, Spring 2019

Compsci 101: Introduction to Computer Science


See the course syllabus for details about the class.

Course Description

Introduction to practices and principles of computer science and programming and their impact on and potential to change the world. Algorithmic, problem-solving, and programming techniques in domains such as art, data visualization, mathematics, natural and social sciences. Programming using high-level languages and design techniques emphasizing abstraction, encapsulation, and problem decomposition. Design, implementation, testing, and analysis of algorithms and programs. No previous programming experience required.

Required Background: NONE

This course is designed for those with no programming experience.

Required Textbook

Clicking on the link below will take you to the Runestone Interactive E-book. This is a free book required for Compsci 101 at Duke. You will need to register for the book by specifying a username. For the course name choose DukeCS101SP19 -- this will allow you to track your progress and for us to track the class' progress.
How To Think Like a Computer Scientist - Learning with Python: Interactive Edition
by Jeffrey Elkner, Allen B. Downey, and Chris Meyer

How to get the book:

Main Links

Class's Box folder with lecture slides and code

Links from lecture


Recorded Classes for 101.01

Recorded Classes for 101.02

My Digital Hand - use your NetID email to create an account

Yo Teach App