Basic Information

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.

This website is subject to change as more content is added. Check it often!

Readings before class - ZyBook "participation" activities and readings are due before the class they are assigned.  Each section usually takes on average 10 minutes complete (although some might take a little more time and some might take a little less time).  "Challenge" activities are optional and may be used as examples in class. Chapter sections marked as optional will not be graded, but they will better help you understand Python.

Topics/Notes - Any class notes will be linked here. If you miss a class, screencasts are provided through eLearning. (Note - screencasts are only meant as note suppliments. You may miss things written on the board or in-class activities/bonus points.)

Assignments - Assignments should be submitted on the program submission system before they are due. The system will automatically run your program and report any errors. If you do not understand what the system means if it returns an error, it is your responsibility to ask. Assignments can be turned in up to two days late with a 10% penalty deducted per day.



Date Readings before class Topics/Notes Assignments
1/13 Get the online textbook:
Instructions here
Intro - Course Introductions No programming assignment this first week.
1/15 zyBook 1.1 - 1.2 Session One - Understanding the history and basics of computers  
1/16   Lab #1 in WRT 112 (check your assigned lab times)  
1/17 zyBook 1.3 Session Two - Numerical representation  
1/20
NO CLASS - Holiday  
1/22 zyBook 1.4 - 1.7 Session Three - Finish numerical representation, Lab #2 Programming Preperation  
1/23   Lab #2 in WRT 112  
1/24
zyBook 1.8 - 1.10 Session Four - Starting to write programs
(Notes and examples from zyBook)
HW #1 (due 1/29 at 11:59pm)
1/27 zyBook 1.11 - 1.13 Session Five - More with data and types
(Notes and examples from zyBook)
 
1/29 zyBook 2.1 - 2.2 Session Six - Introducing Branching in Python
(Notes and examples from zyBook)
 
1/30   Lab #3 in WRT 112  
1/31 zyBook 2.3 - 2.4 Session Seven - Boolean and Relational Operators
(Notes and examples from zyBook)
HW #2 (due 2/5 at 11:59pm)
2/3 zyBook 2.5 Session Eight - More if/else
(Notes and examples from zyBook)
 
2/5 zyBook 3.1 - 3.3
Session Nine - Introducing For and While Loops  
2/6   Lab #4 in WRT 112  
2/7
zyBook 3.4 - 3.5 Session Ten - Lab Debrief and More Practice HW #3 (due 2/12 at 11:59pm)
2/10 zyBook 3.6 - 3.7 Session Eleven - Advanced Looping  
2/12 zyBook 3.8 - 3.9 Session Twelve - Nested looping  
2/13   Lab #5 in WRT 112  
2/14 Session Thirteen- Lab Debrief
HW #4 (due 2/19 at 11:59pm)
2/17 Powerpoint notes Session Fourteen- Algorithms and Program Development  
2/19 zyBook 4.1 - 4.2 Session Fifteen - Introduction to Strings  
2/20   Lab #6 in WRT 112  
2/21   Session Sixteen - Working with Strings HW #5 (due 2/26 at 11:59pm)
2/24 zyBook 4.3 - 4.4 Session Seventeen - More with Strings - Methods  
2/26 zyBook 4.5 Session Eighteen - More with Strings - Penny Math  
2/27   Lab #7 in WRT 112  
2/28   Session Nineteen - Lab Debrief  
3/2   Session Twenty- Exam prep, various examples, and wrap up  
3/4 Note: Test in Sabin 102 In-class Exam #1  
3/5 Note: Test in 112 Wright Hall In-lab Exam #1  
3/6 Session Twenty One - Files  
3/9 zyBook 5.1-5.2 Session Twenty Two - More Files
3/11 zyBook 6.1-6.2 Session Twenty Three - Defining your own functions HW #6 (due 3/27 at 11:59pm)
3/12
  Lab #8 in WRT 112  
3/13 zyBook 6.4 Session Twenty Four - Lab 8 Debrief, more on functions  
3/23   Session Twenty Five - Function wrapup, code comments
New online format of class: Video here
Today's class content: Video here
 
3/25 zyBook 7.1-7.3 Session Twenty Six - Introducing Lists
Today's class content: Video here
3/26   Lab #9 - Zoom link (Only staffed between 8am-10am)
lab09.py and tester.py
Lab video here (download lab09.py and tester.py above)
 
3/27 zyBook 7.4-7.5 Session Twenty Seven - More Lists
Today's class content: Video here
HW #7 (due 4/3 at 11:59pm)
Video introduction here
3/30 zyBook 7.7-7.8
Session Twenty Eight - Lists - Indexing and Sorting
Today's class content: Video here
 
4/1 Read this class handout Session Twenty Nine- Intro to Functional Decomposition
Today's class content: Video here
 
4/2
Lab #10 and HW #8 are the same (due 4/10)
For help on homework (optional), join the Zoom link here
(Lab zoom link staffed from 8:00am-10:00am on 4/2 only)
 
4/3 zyBook 10.1 - 10.2 Session Thirty - More Design
Today's class content: Video here
HW #8 Watching Sessions 29-31
(due 4/10 at 11:59pm)
4/6
zyBook 10.3 - 10.4 Session Thirty One - Design Wrap-Up and Tuples
Today's class content: Video here
 
4/8 Session Thirty Two - Using Files and Lists to Parse Text
Today's class content: Video here
HW #9 (due 4/13 at 11:59pm)
Video - garbage lines?
Video - How to make points list
4/9   Lab #11- Use Zoom link on eLearning (Only staffed between 8am-10am)
Lab due Friday 4/10 at 11:59pm on the autolab
(You should do the lab sheet, but no need to turn it in)
 
4/10 Session Thirty Three - Introduction to Dictionaries
Today's class content: Video here


4/13 zyBook 8.1 and 8.2 Session Thirty Four - Word Frequency Analysis
Today's class content: Video here
 
4/15 zyBook 8.3 and 8.4 Session Thirty Five- Namespaces and Memory
Today's class content: Part one, Part two
HW #10 (due 4/20 at 11:59pm)
Video introducing homework
Video for questions
Question on last function
4/16   Lab #12- Use Zoom link on eLearning (Only staffed between 8am-10am)
Lab due Friday 4/17 at 11:59pm on the autolab
(You should do the lab sheet, but no need to turn it in)
 
4/17
  Review of Lab Twelve
Today's class content: Video here


Note: Prof. Jacobson will be taking over the class until the end of the semester. (Dr. Diesburg will be going on medical leave.) Please watch your email and eLearning for announcements from Prof. Jacobson concerning the rest of the class and the class final. Please continue doing the readings, labs, homeworks, and watching the class videos below.

Date Readings before class Topics/Notes Assignments
4/20 zyBook 9.1 Session Thirty Five - Sets
Today's class content: Video here
 
4/22 zyBook 11.1-11.3 Session Thirty Six - Intro to Searching
Today's class content: Video here
HW #11 (due 4/27 at 11:59pm)
Video introducing homework
Homework Questions
Decoded Final Study Guide
4/23   Lab #13- Use Zoom link on eLearning (Only staffed between 8am-10am)
Lab due Friday 4/24 at 11:59pm on the autolab
(You should do the lab sheet, but no need to turn it in)
 
4/24   Session Thirty Seven - Review Searching and Big O Analysis
Be sure to watch the videos linked under the notes for a demonstration of sorting algorithms
Today's class content: Video here
4/27 zyBook 11.5-11.8
Session Thirty Eight - Intro to Sorting
Today's class content: Video here
 
4/29   Session Thirty Nine - In-class review session for final
Note: this video talks about having two separate exams for the final. Instead, you will be having one combined final during finals week.
Today's class content: Video here
 
4/30 Lab is optional for study questions. See announcements on eLearning.  
5/1   Session Forty - Final Review
Note: this video talks about having two separate exams for the final. Instead, you will be having one combined final during finals week.
Click here for Instructions for the spring 2020 final
Today's class content: Video here