Course Meeting Time

Lecture: Tu/Th 10:05-11:20 am in Bryan Center Griffith Theater

Picture of Griffith Theatre.

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

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 DukeCS101SP24 — 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:

  • This book is an electronic book and is free. However, it costs money to run the server for this electronic book. This book will allow you to experiment with Python examples right in the book.
    We strongly encourage giving a donation to help support the book. We suggest $10.
  • Follow these instructions:
    Here are instructions on how to sign up for the book.