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 07

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.

Register for the interactive textbook by going to the textbook site and then register, creating a username/password for the course. Use the code WLU_CSCI111_W19 for the course name. While the book and registration is free, please consider donating $15 to help with their costs of hosting and development.

An Introduction to Computational Thinking

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

Write up of Broader Issue, posting in Sakai forum:

Jan 08

Lab 0 - introduction to Linux and HTML

Slides

Jan 09

Slides

Jan 11

Drop/Add ends

Slides

Week 2

Jan 14

Slides
Examples

Numeric, String Operations

Input

HtTLaCS, Chapters 2--4

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

Broader Issue - Algorithm accountability: What happens when an algorithm is sexist? New guidelines seek accountability Read the article. Check out the articles linked in the text about the questionable algorithms to get the idea of what the articles are about, and choose one article to read. Write one summary of the two articles.

Optional: Algorithmic accountability: Algorithms are designed to make our lives easier. The problem is, they're designed by us. This article is a little long and perhaps a bit alarmist, but thought-provoking.

Jan 15

Lab 1
Slides

Jan 16

Slides
Examples

Jan 18

Slides
Examples

Week 3

Jan 21

Martin Luther King Jr. Day

Jan 22

Lab 2
Slides

Object-oriented programming

HtTLaCS, Chapter 4

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.

No Broader Issue because short week

Jan 23

Slides
Examples

Jan 25

Slides
Examples

Week 4

Jan 28

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 How Do You Solve A Google Problem Like Rick Santorum's? Summarize both in one summary.

Jan 29

Slides

Lab 3 - For Loops, Functions, and Animation

Jan 30

Slides
Examples

Feb 01

Slides
Examples

Week 5

Feb 04

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 05

Lab 4
Slides

Feb 06

Slides
Examples

Feb 08

Exam 1

Week 6

Feb 11

Slides
Examples

Control Statements, 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:

Lab 5--Conditionals

Feb 12

Lab 5
Slides

Feb 13

Slides
Examples

Feb 15

Slides
Examples

Week  

Feb 18

Washington Break

Feb 19

Feb 20

Feb 22

Week 7

Feb 25

Slides
Examples

Strings, HtTlaCS - Chapter 9

Data Representation

Lab 6 Preparation assignment in HtTlaCS

Lab 6: Advanced Conditions, Indefinite Loops, and Strings.

Broader Issue: Read and write a response to the following article: Your Apps Know Where You Were Last Night, and They’re Not Keeping It Secret

Feb 26

Lab 6
Slides

Feb 27

Slides
Examples

Mar 01

Slides
Examples

Week 8

Mar 04

Slides
Examples

Lists, HtTlaCS - Chapter 10

Files, HtTlaCS - Chapter 11

Lab 7 Preparation assignment in HtTlaCS

Read about recent winners of the Turing Award (Computer Science's Nobel Prize) and their work in cryptography: Stanford cryptography pioneers Whitfield Diffie and Martin Hellman win ACM 2015 A.M. Turing Award

Optional: Read about Turing, a hero of computer science

Lab 7--Strings, ASCII, and lists

Mar 05

Lab 7
Slides

Mar 06

Slides
Examples

Mar 08

Slides
Examples

Week 9

Mar 11

Slides
Examples

Files, HtTlaCS - Chapter 11

Exception handling, HtTlaCS - Chapter 13

Modules

Dictionaries, HtTlaCS - Chapter 12

Lab 8 Preparation in HtTlaCS

Net Neutrality is an important topic for you to understand. This seems to be a good overview, although it does not cover the recent bills proposed in Congress. THE WIRED GUIDE TO NET NEUTRALITY

And, for funzies: A story about Burger King's Video on Net Neutrality

Mar 12

Lab 8
Slides

Mar 13

Slides
Examples

Mar 15

Slides
Examples

Week 10

Mar 18

Slides
Examples

Defining and designing our own Classes, HtTlaCS - Chapter 16

Lab 9 Preparation in HtTlaCS

Exam Preparation Document

No broader issue

Lab 9: Dictionaries and Defining Classes

Mar 19

Slides
Lab 9
Examples

Mar 20

Slides
Examples

Mar 22

Exam 2

Week 11

Mar 25

Slides
Examples

Developing larger programs

Designing Classes
HtTlaCS - Chapter 17

Linear vs. Binary search

Recursion

Lab 10 Preparation in HtTlaCS

Broader Issue -- next Friday

Mar 26

Slides
Lab 10
Examples

Mar 27

Slides
Examples

Mar 29

Slides
Examples

Week 12

Apr 01

Slides
Examples

2D Lists

Python compared with other programming languages

Computer Science Wrapup

Lab 11 Preparation in HtTlaCS -- very short; also review classes if you're struggling with them and with the binary search code, especially with respect to how to modify it to search a list of Person objects by name.

Lab 11

Broader Issue: Read both articles and summarize in one post:

Final Exam Preparation

Apr 02

Slides
Lab 11

Apr 03

Slides

Examples

Apr 05

Slides

Week  

Apr 08

Final Exam

Apr 09

Apr 10

Apr 12