Skip to main content.

Schedule

In general, labs assigned on Tuesday are due on Friday BEFORE CLASS.

Lecture slides will be posted after class.

All dates are tentative. The schedule will be updated as the semester progresses.

WEEK DAY Slides & Examples Topic & Reading Assignments

Week 1

Jan 19

Slides

Lab 0

Lab Slides

Introduction to Computer Science, CSCI111

Introduction to Algorithms
Writing and running programs in Python

Computing with numbers

HtTLaCS, Chapters 1--2

Review course web page and syllabus.

An Introduction to Computational Thinking

Lab 0 - Intro to Linux and Course Resources - due Friday

Write up of Broader Issue, posting in the Canvas discussion:

Jan 20

Slides

Jan 22

Slides

Week 2

Jan 25

"Free" Drop/Add ends

Slides
Examples

Numeric, String Operations

Input

Development Process

HtTLaCS, Chapters 2--3

Object-oriented programming

HtTLaCS, Chapter 4

Using an API - Graphics library API
graphics.py

Pre Lab 1 Assignment in interactive textbook, under "Assignments"; Basically the first 3 chapters -- reading and problems; due Tuesday, before class.

Broader Issue - Cathy O'Neil: Do Algorithms Perpetuate Human Bias? Read her bio and then watch the TED talk and write your summary on Canvas.

Jan 26

Lab 1
Slides

Jan 27

Slides
Examples

Jan 29

Slides
Examples

Week 3

Feb 01

Slides
Examples

Using an API - Graphics library API
graphics.py

For Loops (HtTLaCS, Chapter 4)

Using Modules, Calling functions (HtTLaCS, Chapter 5)

"Lab2 Prep" assignment in HtTLaCS, due before lab on Tuesday.

Lab 2 - Advanced Arithmetic and Object-Oriented Programming

Feb 02

Lab 2
Slides

Feb 03

Slides
Examples

Feb 05

Slides
Examples

Week 4

Feb 08

Slides
Examples

Using Modules, Calling functions

Defining our own Functions

HtTLaCS, Chapters 5, 6

Lab 3 Preparation Assignment, due before lab on Tuesday.

Broader Issue: This isn't a news article, but it's really important to know how Google search works. (Optional: find out how other search engines work.) Make sure you access all the info, like clicking on the various headings/interactive pieces. Also read Google faces third antitrust lawsuit for allegedly manipulating searches Summarize both in one post.

Lab 3 - For Loops, Functions, and Animation

Feb 09

Slides

Lab 3

Feb 10

Slides
Examples

Feb 12

Slides
Examples

Week 5

Feb 15

Slides
Examples

Functions HtTlaCS, Chapter 6

Selection, HtTlaCS, Chapter 7

Lab 4 preparation assignment

Exam 1 Preparation

No Broader Issue this week

Lab 4

Feb 16

Lab 4
Slides

Feb 17

Slides
Examples

Feb 19

Exam 1

Week 6

Feb 22

Slides
Examples

Selection, HtTlaCS - Chapter 7

Indefinite Loops (while), HtTlaCS - Chapter 8

Strings, HtTlaCS - Chapter 9

Lab 5 Preparation assignment in HtTlaCS

Broader Issues: Read both articles and write one summary:

Feb 23

Lab 5
Slides

Feb 24

Slides
Examples

Feb 26

Slides
Examples

Week 7

Mar 01

Slides
Examples

Strings, HtTlaCS - Chapter 9

Non-Lab 6 Preparation assignment in HtTlaCS, due Thursday at 5 p.m.

Non-Lab 6: Strings, due Friday before class.

Mar 02

Winter Term Break Days

Mar 03

Mar 05

Slides
Examples

Strings, HtTlaCS - Chapter 9

Data Representation

Week 8

Mar 08

Slides
Examples

Strings, Formatting, Data Representation

Lists, HtTlaCS - Chapter 10

Files, HtTlaCS - Chapter 11

Lab 7 Preparation assignment in HtTlaCS

Broader Issue: What Is Cryptocurrency?

Lab 7--Indefinite Loops, ASCII, String Formatting

Mar 09

Lab 7
Slides

Mar 10

Slides
Examples

Mar 12

Slides
Examples

Week 9

Mar 15

Slides
Examples

Files, HtTlaCS - Chapter 11

Dictionaries, HtTlaCS - Chapter 12

Exception handling, HtTlaCS - Chapter 13

Lab 8 Preparation in HtTlaCS

Broader Issue: Read Your Apps Know Where You Were Last Night, and They’re Not Keeping It Secret

Optionally, read these more recent articles:

Mar 16

Lab 8
Slides

Mar 17

Slides
Examples

Mar 19

Slides
Examples

Week 10

Mar 22

Slides
Examples

Defining and designing our own Classes, HtTlaCS - Chapter 16

Lab 9 Preparation in HtTlaCS

Exam 2 Preparation Document

No broader issue

Mar 23

Slides
Lab 9
Examples

Mar 24

Slides
Examples

Mar 26

Exam 2

Week 11

Mar 29

Slides
Examples

Developing larger programs

Designing Classes
HtTlaCS - Chapter 17

Linear vs. Binary search

Lab 10 Preparation in HtTlaCS

Lab 10: Building a Social Network

Mar 30

Slides
Lab 10
Examples

Mar 31

Slides
Examples

Apr 02

mid-Winter Term Break

Week 12

Apr 05

Slides
Examples

Searching

2D Lists

Python compared with other programming languages

Computer Science Wrapup

Lab 11 Preparation in HtTlaCS -- very short. Also review the binary search code

Lab 11 - Searching the Social Network and 2D Lists

Broader Issue: Read the following two web pages ("articles" isn't an accurate description):

Optional: under "The Reading List" - Chapter 1: The Software Update That Changed Reality - on the origin of the news feed

Final Exam Preparation

Apr 06

Slides
Lab 11

Apr 07

Slides
Examples

Apr 09

Slides

Week  

Apr 12

Final Exam

Apr 13

Apr 14

Apr 16