About the Course
This course is the computer science department’s introductory course. The two primary goals are to introduce the general field of computer science and to introduce the concept of programming.
Introduction to software development through algorithmic problem solving and procedural abstraction. Programming in the small. Fundamental control structures, data modeling, and file processing. Significant emphasis on program design and style.
Schedule
Week | Date | Readings | Sessions & Labs | Assignments |
---|---|---|---|---|
1 | Tue, 08/22 | Intro to the course and computer science | ||
Wed, 08/23 | Lab 01: Getting started in the lab | responses | |||
Thu, 08/24 | ch.1 | Intro to programming | slides | ||
2 | Tue, 08/29 | ch.2 | Variables and expressions | slides | |
Wed, 08/30 | Lab 02: Getting started with Python | |||
Thu, 08/31 | ch.3 | Data types | slides | ||
3 | Tue, 09/05 | ch.4 | Introducing conditionals and selection statements | |
Wed, 09/06 | Lab 03: Conditionals and selection statements | |||
Thu, 09/07 | ch.4 | Conditionals (continued) | Assignment 1 | |
4 | Tue, 09/12 | ch.5 | Introducing repetition | slides | |
Wed, 09/13 | Lab 04: Loops | |||
Thu, 09/14 | ch.5 | Loops (continued) | Assignment 2 | |
5 | Tue, 09/19 | ch.5 | Nested loops | |
Wed, 09/20 | Lab 05: Loops-2 | |||
Thu, 09/21 | Review and exam prep | code used in class | Assignment 3 | ||
6 | Tue, 09/26 | Exam - 1a (concepts) | ||
Wed, 09/27 | Exam - 1b (programing) | |||
Thu, 09/28 | Algorithms and Program Development | slides | |||
7 | Tue, 10/03 | ch.7 | Introducing strings | slides | |
Wed, 10/04 | Lab 06: Strings | |||
Thu, 10/05 | ch.7 | String methods | Assignment 4 | |
8 | Tue, 10/10 | ch.7 | String methods (continued) alphabet problem | slides | |
Wed, 10/11 | Lab 07: Strings-2 | |||
Thu, 10/12 | ch.12 | Reading and writing files | slides | Assignment 5 | worksheet | |
9 | Tue, 10/17 | Reading and writing files | ||
Wed, 10/18 | Lab 08: Lists | |||
Thu, 10/19 | ch.8 | Lists | slides | ||
10 | Tue, 10/24 | ch.6 | Introducing functions | slides | Assignment 6 | csv data |
Wed, 10/25 | Lab 09: Functions | |||
Thu, 10/26 | ch.6 | Functions and lists (continued) | slides-1 | slides-2 | ||
11 | Tue, 10/31 | ch.8 | Introducing dictionaries | slides-1 | slides-2 | Assignment 7 | hw07.zip |
Wed, 11/01 | Lab 10: Dictionaries | |||
Thu, 11/02 | Review and exam prep | |||
12 | Tue, 11/07 | Exam - 2a (concepts) | Assignment 8 | hw8_data.csv | commenting style | |
Wed, 11/08 | Exam - 2b (programing) | |||
Thu, 11/09 | Namespaces and Memory | slides | |||
13 | Tue, 11/14 | Functional decomposition | slides | ||
Wed, 11/15 | Lab 11: Program design | |||
Thu, 11/16 | Program design (continued) | |||
THANKSGIVING BREAK | ||||
14 | Tue, 11/28 | Introducing sets | functional cohesion | a game of war | sets | ||
Wed, 11/29 | Lab 12: Sets | |||
Thu, 11/30 | Intro to searching | slides | |||
15 | Tue, 12/05 | Searching (cont.) | Assignment 9 | holy-grail.txt | stoplist.txt | html-functions.py | |
Wed, 12/06 | Lab 13: Analyzing customer data | |||
Thu, 12/07 | Wrap-up and final review | |||
16 | Tue, 12/14 | Final exam |